快速原型方法和设备的制作方法

文档序号:6361985阅读:183来源:国知局
专利名称:快速原型方法和设备的制作方法
技术领域
本发明涉及用于生产产品的方法,诸如原型。本发明还涉及用于实现根据本发明的方法的设备和通过根据本发明的方法或设备获得的产品。本发明尤其能够对叠置的层进行几次连续平版印刷以生产三维的产品。本发明的领域因此更具体地但是非限制地为快速原型(rapid prototyping)和立体平版印刷。
背景技术
用于通过堆叠多个层来生产三维产品的工艺(典型地为原型)是已知的,例如立体平版印刷或丝沉积(或用于“熔融沉积成型”的FDM)。立体平版印刷原理如下:
I)将至少一个投影图像投影到光反应层,所述光反应层在投影有投影图像的区域固化;然后2)将被固化的层覆盖新的光反应树脂层;然后3)再次将至少一个投影图像投影到该新的光反应层,将步骤2)和3)重复所需的次数以制造三维的产品。通常,每层的投影图像不同。例如,为了制造球,此图像由直径从球的第一顶点向球的中心增加然后从球的中心向球的第二顶点减小的盘构成。这种技术使得在不需要机械加工的情况下直接由光聚合性树脂制成三维的产品。层的正在固化的图像或待固化的图像也称为定位点图像。投影图像可远小于待固化的区域。对于同一层,因此需要若干次投影。例如,对于由边为30厘米的正方形构成的定位点图像,由边为10厘米的正方形构成的投影图像被相继且并排地投影9次。通过丝沉积进行的快速原型存在于熔化穿过在高温下加热的喷嘴的树脂(通常为塑料),以使从喷嘴出来由树脂熔化的丝(10分之一毫米量级)并且沉积此丝以将其熔化粘合在先前沉积的层上。在通过堆叠多个层(与材料去除操作的加工工具不同)生产三维(3D)产品的处理中,存在将三维(3D)信息转换成表示各层的一系列二维(2D)截面信息的步骤。这些层在例如立体平版印刷中可以是平坦的,或者例如在丝沉积的情况下可以是弯曲的。用于将3D文件转换成2D文件的传统技术包括计算与生产期间的一堆实际的层对应的一堆数学截面。一旦表示待生产产品的截面的几何信息可获得,则对2D截面信息进行进一步的处理,并因此针对每个层获得适于所用技术的生产2D信息。例如,在具有激光器和检流计镜的原型机(立体平板印刷、激光烧结)中可将路径定义成矢量(轮廓矢量、填充矢量)。对于利用丝沉积进行的生产,方法类似但是最佳路径是不同的,因为将材料沉积的物理头的动力学非常不同于由镜子偏转的光影响的动力学。在其它示例中,例如在具有直射光投影(或用于“数字光处理”的DLP)或具有带喷嘴的印刷头的原型机的情况下,可使用矩阵定义而非矢量定义。处理一个层包括定义该层的位于待生产的产品的材料中的像素。为此,参照图1应用下面的算法(“扫描线填充”)。对于待处理的每个截面:-将网格I应用于层2,-对于网格的每行3(也可对列重复): 从该行的末尾开始向截面的其它边缘(图1中从左到右),通过更新初始值为“0”的计数器“材料中入口 /出口的数量”(考虑到网格的边缘处没有材料):每当用于进入材料的界线4相交时,计数器增加1,每当用于离开材料的界线5相交时,计数器减去I ; 每当像素相交时,计数器的状态如下:如果计数器大于0,则像素被标记为处于由轮廓4、5限定的对象内,在其它情况下,像素被标记为处于由轮廓4、5限定的对象外。图中的网格I更一般地可以是具有例如蜂窝形式的任何铺设。然后不对“行”或“列”进行重复而是沿着所用铺设的优选轴进行重复。这种处理具有一些缺陷。首先,它需要相当长的计算时间。为了不使生产机器在此处理中固定,并且由于此处理的复杂性,此处理应该在独立于生产机器的专用计算机上执行,这实际上意味着将信息从计算器传递至生产机器的另一控制计算机的另一步骤。而且,由此这个传递步骤,生产信息应该被约束在一定量内以阻止传递花费太多的时间,因而限制了待生产产品的空间分辨率。最后,此处理的自然并行化易于实现:对于每个截面的处理可独立地且并行地进行。这些处理对于层与层之间非常可能花费不同的时间,例如随着各层的进入和离开界线的数量而变化。因此,在一般的情况下,一层与另一层的处理将具有不同的持续时间并且必须使用每层处理内部的迭代机制,并且层处理之间具有复杂的同步。通过相似的方式,在这些处理的一个中,从区域的一端到另一端的路径线可并行执行(上述的步骤2)。这是与界面处理可比较的情况:线将比其它的情况更复杂,随着进入和离开线相交数量而变化,并且具有迭代算法和复杂的同步。因此能够想到应用复杂但非“大量的”并行性,其仅为“MMD” (“MultipleInstruction on Multiple Data (多指令多数据),,)类型而不为 “SIMD” (“SingleInstruction on Multiple Data (单指令多数据)”)类型,然而认为,SIMD算法可能更有效,但是被限制为适用于特别简单的操作。提醒一下,SIMD并行性是由Flynn分类定义的四种操作模式之一,并且指定若干计算单元并行操作的操作模式,使得相同的指令随时间并行地应用于若干数据以产生若干结果。本发明的目的是提供能够解决上述缺陷中的至少一个的平版印刷方法或装置。

发明内容
此目的由用于生产产品的方法实现,该方法包括(典型地从对象的描述性数据)确定有限空间的点位于被分解成基本表面的对象之内或之外,该对象通常对应于待生产的产品或对应于待生产的产品的一部分或一层或一片,其特征在于,对于尝试确定位于对象之内或之外的每个工作点,该方法包括:-在与专用于工作点的 计数器相关联的经过工作点的线、以及与专用于工作点的图像的计数器相关联的经过工作点的图像(平移、旋转、平移和旋转的组合等)的线之中确定至少一个线;以及-在每个基本表面上重复进行以下操作: 搜索基本表面与经过工作点的线和经过工作点的图像的线中的一个线之间的交叉点, 如果交叉点存在,则修改计数器;以及-根据专用于工作点的计数器确定工作点位于对象之内或之外。每条线可以是直线或曲线。在第一替代方式中,根据本发明的方法的特征在于:-确定至少一个线的步骤包括确定与专用于工作点的计数器相关联的、经过工作点的线;和/或-重复步骤包括,在每个基本表面上重复以下操作: 搜索该基本表面与经过工作点的线之间的交叉点; 如果该交叉点存在,则修改计数器;以及-确定工作点位于对象之内或之外的步骤包括根据专用于工作点的计数器的值确定工作点位于对象之内或之外。在此第一替代方式 中,线可经过原点,并且修改计数器的步骤可包括: 如果交叉点相对于线的原点位于工作点之后,对计数器不进行修改;以及 如果交叉点相对于线的原点不在工作点之后,根据线的交叉点相对于原点对应于线进入对象的入口或对应于线离开对象的出口,不同地修改计数器。在第二替代方式中,根据本发明的方法的特征在于:-确定至少一个线的步骤包括确定与专用于工作点的计数器相关联的经过工作点的线以及与专用于工作点的图像的计数器相关联的经过工作点的图像的线;和/或-方法还包括将基本表面分离成两个不同的组,即,相对于运动方向进入对象的一组表面和离开对象的一组表面;和/或-重复步骤包括在每个基本表面上重复以下操作: 如果表面为进入表面,则搜索该基本表面与经过工作点的线之间的交叉点,并且如果该交叉点存在,则修改与工作点相关联的计数器; 如果表面为离开表面,则搜索该基本表面与经过工作点的图像的线之间的交叉点,并且如果该交叉点存在,则修改与工作点的图像相关联的计数器;和/或-确定工作点位于对象之内或之外的步骤包括:根据专用于工作点的计数器和专用于工作点的图像的计数器,确定工作点位于对象之内或之外。在此第二替代方式中,根据专用于工作点的计数器和专用于工作点的图像的计数器确定工作点位于对象之内或之外的步骤可包括:比较专用于工作点的计数器与专用于工作点的图像的计数器。在此第二替代方式中,对于所有的工作点和工作点的图像,经过这些点的线优选是平行的。在两种替代方式中,对于所有的工作点和工作点的图像,经过这些点的线可以是平行或不是平行的。
优选地,对于所有的工作点和工作点的图像,经过这些点的线在有限空间内不交叉。空间可以是三维空间或二维空间。如果空间是三维空间,则工作点在工作表面中被收集,并且经过工作点的每条线和经过工作点的图像的每条线优选地与经过此工作点的工作表面垂直。该工作表面可对应于待沉积以通过快速原型生产产品的层或层的至少一部分。可针对若干基本表面随时间并行地执行重复步骤。对于至少一个基本表面,可针对若干工作点随时间并行地执行重复步骤。并行执行的所述重复步骤优选地通过固定的运行时间同步,不通过等待任务结束进行同步。优选地,经过一个工作点的每条线不同于经过其他工作点的其他线。典型地,之前描述的根据本发明的方法的步骤中的至少一个,优选地之前描述的根据本发明的方法的步骤中的每个不是纯粹抽象或纯粹智力方式实现的,而是包括对技术手段的利用。典型地,之前描述的根据本发明的方法的步骤中的每个可至少由一个计算机、一个中央处理或计算单元、一个模拟电子电路(优选为专用的)、一个数字电路(优选为专用的)和/或一个微处理器(优选为专用的)和/或软件工具实现。一旦确定了哪个空间点位于对象之内或之外,根据本发明的方法可包括通过快速原型和/或通过层堆叠,例如通过立体平板印刷或通过丝沉积生成产品。根据本发明的另一方面,提供了用于实现根据本发明的方法生产产品的设备,包括用于确定(典型地通过对 象的描述性数据)有限空间的点位于被分解成基本表面的对象之内或之外的装置,对象典型地对应于待生产的产品或对应于待生产的所述产品的一部分或一层或一片,其特征在于,对于尝试确定位于对象之内或之外的每个工作点,该设备包括:-用于在与专用于工作点的计数器相关联的经过工作点的线、以及与专用于工作点的图像的计数器相关联的经过工作点的图像的线之中确定至少一个线的装置;以及-用于在基本表面的每个基本表面上重复进行以下操作的装置: 搜索基本表面与来自经过工作点的线和经过工作点的图像的线中的单个线之间的交叉点, 如果交叉点存在,则修改计数器;以及-用于根据专用于工作点的计数器确定工作点位于对象之内或之外的装置。每条线可以是直线或曲线。在第一替代方式中,根据本发明的设备的特征在于,-用于确定至少一个线的装置包括用于确定与转用于工作点的计数器相关联的、经过工作点的线的装置;和/或-用于重复的装置包括,在每个基本表面上重复下面的操作: 搜索该基本表面与经过工作点的线之间的交叉点; 如果该交叉点存在,则修改计数器;和/或-用于确定工作点位于对象之内或之外的装置包括用于根据专用于工作点的计数器的值确定工作点位于对象之内或之外的装置。在此第一替代方式中,线可经过原点,并且用于重复的装置可被配置为根据下面的方式修改计数器: 如果交叉点相对于线的原点位于工作点之后,对计数器不进行修改;以及 如果交叉点相对于线的原点不在工作点之后,根据线的交叉点相对于原点对应于线进入对象的入口或对应于线离开对象的出口,不同地修改计数器。在第二替代方式中,根据本发明的设备的特征在于:-用于确定至少一个线的装置包括用于确定与专用于工作点的计数器相关联的经过工作点的线以及与专用于工作点的图像的计数器相关联的经过工作点的图像的线的装置;和/或-所述设备还包括用于将基本表面分离成两个不同的组,即相对于运动方向进入对象的一组表面和离开对象的一组表面的装置;和/或-用于重复的装置包括用于在每个基本表面上重复下面的操作的装置: 如果表面为进入 表面,则搜索该基本表面与经过工作点的线之间的交叉点,并且如果该交叉点存在,则修改与工作点相关联的计数器; 如果表面为离开表面,则搜索该基本表面与经过工作点的图像的线之间的交叉点,并且如果该交叉点存在,则修改与工作点的图像相关联的计数器;和/或-用于确定工作点位于对象之内或之外的装置包括:用于根据专用于工作点的计数器和专用于工作点的图像的计数器,确定工作点位于对象之内或之外的装置。在此第二替代方式中,用于根据专用于工作点的计数器和专用于工作点的图像的计数器确定工作点位于对象之内或之外的装置可包括:用于比较专用于工作点的计数器与专用于工作点的图像的计数器的装置。在此第二替代方式中,对于所有的工作点和工作点的图像,经过这些点的线优选地是平行的。在两种替代方式中,对于所有的工作点和工作点的图像,经过这些点的线可以是平行或不是平行的。优选地,对于所有的工作点和工作点的图像,经过这些点的线在有限空间内不交叉。空间可以是三维空间或二维空间。如果空间是三维空间,则工作点在工作表面中被收集,并且经过工作点的每条线和经过工作点的图像的每条线优选地与经过此工作点的工作表面垂直。该工作表面可对应于待沉积以通过快速原型生产产品的层或层的至少一部分。用于重复的装置可被配置成针对若干基本表面在时间上并行地执行重复。对于至少一个基本表面,用于重复的装置可被配置成针对若干工作点在时间上并行地执行重复。根据本发明的装置还可包括用于通过固定的运行时间、并行执行的重复同步而不通过等待任务结束进行同步的装置。优选地,经过一个工作点的每条线不同于经过其他工作点的其它线。
典型地,之前描述的根据本发明的装置中的至少一个、优选地之前描述的根据本发明的装置中的每个通过技术手段实现。典型地,之前描述的根据本发明的装置中的装置可至少包括一个计算机、一个中央处理或计算单元、一个模拟电子电路(优选为专用的)、一个数字电子电路(优选为专用的)和/或一个微处理器(优选为专用的)和/或软件工具。根据本发明的装置还可包括用于一旦确定了位于对象之内或之外的空间点则通过快速原型和/或层堆叠例如通过立体平板印刷或丝沉积生产产品的装置。根据本发明的又一方面,提供了通过根据本发明的生产方法或通过根据本发明的生产设备获得的产品。


通过阅读以非限制性方式详细描述的实现方案和实施方式以及下面的附图,本发明的其它优点和特征将变得显而易见,在附图中:图1示出了根据现有技术状态的方法;图2示出了根据本发明的方法的不同数据;图3示出了根据本发明的方法的第一示例性实现方案;

图4示出了通过根据本发明的方法的第一示例性实现方案获得的若干重叠的聚合层的叠加;图5示出了根据本发明的方法的第二示例性实现方案中的不同点以及这些点的图像;以及图6示出了根据本发明的方法的第二示例性实现方案。现在将参考图2至图6描述根据本发明的通过快速原型生产产品的方法的不同实施方式。为此,考虑至少为待生产产品的一部分的对象0 (参考标号6)。对象0为如下的对象:-在三维空间E中(3D对象),如图2所示,在这种情况下,3D对象对应于待生产的3D产品,或者-在二维空间E中,如图3和图5所示:在这种情况下,二维空间中的2D对象典型地对应于待构造的3D产品的一片;这一片可包括待构造的3D产品的任何倾斜或其它片,优选地竖直片,但是优选地不包括待沉积以通过快速原型生产产品的水平层之一。而且,在对象为二维的情况中,随后描述的每个表面Sp Sj, P或R为具有零宽度的表面,即为一条线。通过二维空间,典型地表示为:-可分解为点或像素的层叠结构或表面或平面,或者-可沿2个空间方向X和Y分解为体素且具有沿第三个空间方向Z的单个体素厚度的层。通过三维空间,典型地表示可分解为体素并且厚度比沿三个空间方向X、Y和Z中的每个方向的一个体素大的空间。参考图2,首先描述在本发明的示例性方法中所操作的或理解根据本发明的示例性方法所需的不同数据和信息。首先,进行若干假设。
典型地以至少一个数据计算机文件的形式描述对象O。假设待描述的对象0处于有限的空间E内。空间E是欧氏空间。对象0的描述能够毫无疑义地确定E的点是否为对象0的一部分。这可表示对在一些受损文件(所谓的打开文件)中发现的模糊处的纠正。许多软件都能对这些文件进行手动或自动的纠正。在本发明所描述的示例的范围内,所有的模糊处已经被移除。对象0的描述表现为将对象0分解成若干定向的表面且优选为平坦的基本表面Si:O = US>例如,如果以快速原型的事实标准(即以一些定向三角形的形式)描述对象0,则满足此条件。这种标准被称为STL (对于“立体平版印刷”而言)。如果对象0是CAD软件的格式,则总是存在遵守任意高精度的原始格式的STL接口。通过对象0的这些描述性数据执行根据本发明的方法,如果在三维空间E中描述对象0,则对象0的描述性数据采用将对象0分解成若干定向的非空区域且优选地为平坦的基本表面Si的形式,或者如果在二维空间E中描述对象0,则对象0的描述性数据采用将对象0分解成若干定向的且优选 地为笔直的基本线Si (为了简化描述也称为基本表面)。在本文中,每个索引i或j为I与M之间的自然整数,其中M例如可以是工作点Di的总数或分别为基本表面Si或S」的总数。工作平面P (参考标号7 )被定义成通过其法线N (参考标号8 )定向。投影F被定义成使不属于P的E的任意点X (根据所考虑的点或为Ae或为Y或为Di)与属于P的点Ap关联,或者指示不存在满足投影的P的点,即F是不适用的。当F适用时,Ap表示成X的F投影到P中的点F (X).p (参考标号9)或甚至表示成Di的F投影到P中的点F(Di).p。F满足下面的条件:a.具有作为投影到P中的相同点Ap的E的点集合是一维连续的、可导的,表示
成F{AP}(或甚至根据所考虑的点表示成F {F(X).p}、F (F(Di).p......,还表示成F {F (X)}、
F {F (Di)}……}。因此可在此集合上定义曲线坐标、以及任意点的切线。i.F(X).V 表示 X 沿 F{F(X).p}的曲线坐标,iiF(X).n表示F{F(X).p}在点X处的切线。b.E的点仅可具有F的单个投影(更正式地:如果X具有其投影F(X).p,Y具有其投影F (Y).p并且F (X).p不与F (Y).p混淆,那么X不与Y混淆)。c.沿集合F{AP}的“曲线坐标”组成F {AP}的序关系。例如对于具有不平行于P的投影方向和无穷的透视点的“正射”投影,或对于从将Ap定义成直线(AiAe)与P的交叉点的透视点A1 (如果有的话)开始的投影,满足条件a和b。在相关的情况下,不再基于直线定义投影,而是基于对光学系统中的光路建模(虚线),例如考虑所用装置的几何变形来定义投影。很简单地在曲线坐标等于沿原点与所考虑的点之间的F{AP}的直线距离时,满足条件C。然而,对于具有其它约束条件(使用齐次坐标)的计算的相容性原因,优选获得该线性距离的倒数,其中原点不在P上,整体乘以一个常数。算法也应用在其它示例性单调函数上。重要的是,能够将序关系应用于F{AP}的元素,比较它们之间的值并且确保该比较是可传递的。然后,集合D =Ua (参考标号10)考虑了 E的工作点Di (参考标号11),对于Di,
r11
具有投影F,并且应该确定每个工作点是否为对象0的一部分。理想地,该集合包括许多点(例如,成千上万),以发挥目标SMD模型的最大优势。根据本发明的方法对于几十至几千万元素都可以很好地工作。这里根据下面的步骤I至IV对其进行描述(图2):1.任选地,0的子集0’ (参考标号14)由下式确定:=
i使得对象0’的描述具有将对 象0’分解成选自被定向且优选为平坦的Si的若干基本表面S」(参考标号15)的形式。确定这种子集的益处在图2中示出:对于包括壳体34和翼片35的对象0,仅包括壳体34而不包括翼片35的对象0’仅可被考虑以确定集合D的点Di是否位于壳体34内因此是否位于对象0内。子集0’通过如下方式确定: 通过保持0’ =0 (在这种情况下,Sj的集合对应于Si的集合,并且在下面的描述中用Si取代S」和用0取代0’就足够了),或者 任选地通过根据下面的步骤a和b实现过滤器:a.确定P的包含所有F(Di).p的区域R (参考标号16)b.确定0的子集0’使得0中不是0’的一部分的元素没有对属于R的P的投影F。这种分类步骤传统地用在计算机科学中以通过将其局部地应用于更小的子集(在此仅为可在R中具有投影的0的元素)来减少计算时间。I1.对于属于D的任何元素Di,即对于被试图确定位于对象0’内或对象0’外的每个工作ADi,确定经过此工作点的线F{F(Di).p}(参考标号12),并且确定沿FKDi).p}的工作点Di的曲线坐标F(Di).V (参考标号13)。如果E是三维空间,则如图2所示巧妙地选择:-工作点Di的集合D,在工作平面或工作表面36中待收集的这些点Di,平面或表面36优选地对应于待沉积以通过快速原型生产产品的多层之一,以及-每条线F{F(Di).p}以通过与此线相关联的点Di横向于平面或表面36。这能够使随时间并行的迭代(后面描述的步骤IV)的数量最大化,并且使用于快速原型的同一层的所有工作点(像素或体素)的操作能够随时间同时进行迭代。II1.尝试确定位于对象0’内或对象0’外的每个工作点Di并且因此任意线F(F(Di)-P),与专用于此工作点Di的、被表示为F(Di)-C的计数器相关联,并且该计数器的值被初始化为O。IV.在每个基本表面SiI,迭代进行下面的操作:对于属于0’的任意元素Sj,其法线被表不成Nj (参考标号17)。对于属于D的任意Di,计算FtF(Di).p}与Sj之间的交叉点。换句话说,搜索基本表面Sj与经过工作点Di的线F(F(Di).p}之间的交叉点:1.如果没有交叉点,行进至下一 Dii1.如果存在交叉点I (参考标号18),并且如果F(I).0F(Di).V,即如果交叉点I相对于线的原点F(Di).v=0沿线F{F(Di).p}位于工作点Di的位置之后,行进至下一 Diii1.如果F⑴ V彡F (Di) V,即交叉点I相对于线的原点F (Di) V=O沿线F {F (Di) p}位于工作点Di的位置之前或之上,以及: 如果标量积,<.厂(/),">0,即如果表面Sj为线进入对象0’的表面,则根据进入修改来修改F (Di).c (典型地F (Di).c增加I个单位),或者 否则(如果标量积A;,<0,即如果表面S」为线从对象0’离开的表面),则
根据具有与进入修改相反的值的离开修改来修改计数器F(Di).c(典型地F(Di).c减小I个单位)。V.从F(Di).c的符号推导出使01属于或不属于对象0’的事实:当且仅当F(Di).c>0时,Di属于O’。换句话说,根据专用于工作点Di的计数器F(Di).c的正值或负值(或符号),确定该工作点位于对象0’之内还是之外。根据本发明的方法的几乎所有计算都在步骤IV期间执行,步骤IV具有如下的必要特征: 计算可以是简单的(通过仔细地选择F,它例如能够以平面与直线之间的交叉点的形式实现) 所用的基·本操作(标量积、矩阵积)本质上为矢量的因此易于并行 操作的最大持续时间是有界的(无环)并且只要操作具有重要的结果(S卩,如果我们不行进至下一 Di),对于各操作而言是相同的 所需的数据很少(需要S」和Di),并且全部独立于其他中间操作的结果&和Di是待解决问题的直接数据。根据本发明的方法因此尤其适于以SMD形式实现: 对所有并行任务来说程序指令是共用的 数据不依赖于任何中间操作 同步是不重要的,只需简单固定的运行时间。而且,根据原点位置的选择和/或编程选择,步骤IV的子段i至iii例如根据下面的选择可改变:1.如果没有交叉点,则行进至下一 Dii1.如果存在交叉点1(参考标号18),并且如果F(I).V彡F(Di).V,即如果交叉点I相对于线的原点F(Di)I=O沿线FtF(Di).p}位于工作点Di的位置之前,则行进至下一 Diii1.如果F(I).v>F(Di).v,即如果交叉点I相对于线的原点F(Di).v=0沿线F(F(Di)-P)位于工作点Di的位置之后,以及: 如果标量积/ '(/).// > 0,即如果表面Sj为线进入对象0’的表面,则根据进入修改来修改F (Di).c (典型地F (Di).c增加I个单位),或者 否则(如果标量积//,_/ '(/)./MO,即如果表面Sj为线离开对象0’的表面),则根
据具有与进入修改相反的值的离开修改来修改计数器F (Di).c(典型地F (Di).c减小I个单位)。本发明第一实施方式的详细示例(图3)
现在将参考图3描述根据本发明的方法的第一示例性实现方案。这是截面视图,以便相对于与图2类似的视图简化描述。在此示例中,空间E因此为二维。尝试确定所有三个点D= (D1 ;D2 ;D3}是否属于O。对象0是由基本表面SpS2、S3和
S4构成的矩形。下面/表示线F{F(Di).p}与表面S」的交叉点。根据本发明的方法然后包括下面的步骤:1.将所有F(Di).c初始化为O。2.计算所有 F (Di).V3.处理 S1a.处理 D1i 计算/丨,其存在i1.F( /,' ).v>F(Di).vii1.A/;./ '(/;< 0 , W此 F(D1) C 减小 I 个单位b.处理 D21.计算/丨,其不存在c.处理 D3
1.计算/,,其不存在4.处理 S2a.处理 D11.计算/〗,其存在i1.F(/,2).V>F(Di).Vii1.N2-Fif-)Ji > 0,因此 F (D1) c 增加 I 个单位b.处理 D21.计算/22,其不存在c.处理 D31.计算厂,其不存在5.处理 S3a.处理 D11.计算^,其不存在b.处理 D21.计算其存在i1.F(/;).v>F(D2).vii1.N3-F(I:) n > 0,因此 F(D2) c 增加 I 个单位c.处理 D31.计算i苴不存在
6.处理 S4a.处理 D11.计算/苴不存在b.处理 D2i 计算/24,其存在i1.F(/_:)_v<F(D2)-Vc.处理 D31.计算/4其不存在7.最后的确定步骤:在运行结束处,存在如下情况:a.F(D1).c=0_l+l=0,因此D1不属于0:点D1位于对象0之外。b.F(D2).c=0+l=l,因此D2属于0:点D2位于对象0之内。c.F(D3).C=O,因此D3不属于0:点D3位于对象0之外。本发明相对于现有技术状态的区别和优点为了确定E的点属于或不属于对象0或0’,不必强制计算中间结构(层、体素堆等),因为E可以 直接是3维空间。因此,如果对象0是与待生产的3D产品对应的3D对象,能够根据本发明的方法确定空间E中位于对象0之内的点,然后仅在此之后通过立体平板印刷或丝沉积等将对象0切割成待一个接一个沉积的层。这尤其能够根据对位于对象0内或外的点进行确定的结果使得切割尤其是切割的定向得到优化。相反地,能够开始将3D产品切割成多个层,然后将每个层构成2维对象0,针对该2维对象0,尝试根据本发明的方法确定位于该对象0内的点。此计算的结果不再用于推断与E的其它点相关的任何情况。当然,一些数据用于若干计算中,但是它们构成问题的初始数据。用于任何对(i,j)的F{F(Di).p}与\_之间的交叉点计算使元素j对于所有的元素i介入若干次,反之亦然。然而,介入若干次的这些元素不是计算的结果而是数据,这就是为什么不需要复杂的同步来等待结果,也不需要特定排序的指令。根据本发明,没有必要存储交叉点的存在或坐标,因此它们没有被存储。应该注意,通过对图3中所示的发明与图1的现有技术的状态进行比较,根据本发明,线F{F(Di).p}可以是不平行的。在这种情况下,优选地,与点Di相关联的线F(F(Di).p}的集合在空间E内不交叉。参考图3,因此点A位于空间E之外。与现有技术状态的主要区别在于,根据本发明,每个计数器与一个且单个点或像素或体素相关联,而根据现有技术的状态,每个计数器与在线3上对齐的像素集合相关联。与一个点相关联的每个计数器不同于与其它点相关联的计数器。换句话说,根据本发明,至少存在与工作点一样多(对于第一示例性实施方式与工作点一样多,对于随后描述的第二示例性实施方式为工作点的两倍)的计数器,而根据现有技术的状态,存在比点少得多的计数器,因为单个计数器可与几千个对齐的像素相关联。根据本发明的方法的主要优点是,它能够极快地实现。确实,根据本发明,可通过如下方式执行关于基本表面Sj与经过工作点Di的线的每个交叉点的计算:-对于若干、甚至所有基本表面Sj随时间并行(即同时或者无需等待另一交叉点计算的结果),和/或-对于若干、甚至所有工作点Di随时间并行(即同时或无需等待另一交叉点计算的结果)。简单地说明此技术优点:-根据图1所示的现有技术的状态,如上所述,从线3的末尾开始向截面的其它边缘延伸,更新初始值为“0”的计数器“材料中的入口 /出口的数量”,并且每当像素相交时,检查计数器的状态:如果大于0,则像素被标记为位于材料中,否则为其它情况。因此容易理解,有必要进行计算、在计算之前进行与像素19相关的确定和进行与像素20相关的确定:不能对独立于其他的每个像素或点进行计算,应该有必要一个接一个连续地进行与在线3上对齐的几千个像素对应的几千次计算。-相反地,根据先前参考图3描述的本发明的第一示例性实施方式,可随时间并行地执行用于搜索交叉点和确定计数器3a、3b、3c、4a、4b、4c、5a、5b、5c、6a、6b和6c的修改的若干计算或甚至所有计算,然后可随时间并行地执行确定工作点Dp D2或D3是位于对象0之内或之外的若干或甚至全部步骤7a、7b和7c。本发明因此尤其适于SMD形式的实现方案: 根据本发明的方法的用于搜索交叉点和确定计数器的修改的任务或指令(在程序或专用的模拟或数字电路或专用微处理器中编码)对所有配对点Di和表面S」来说是公共的,并且因此可并行地执行 用于这些任务或指令的数据不依赖于任何中间操作 同步这些任务(一 个任务代表单个重复步骤,即在刚描述的实施方式中的单个集合[IVi和IVii和IViii]和在稍后将描述的实施方式中的单个步骤VII1.1)或VII1.1i))因简单固定的运行时间而变得不重要,因为这些任务的最大持续时间是有界的(无环),并且只要操作具有重要的结果(即,只要存在暗示修改计数器的交叉点),对于各操作而言是相同的。典型地,现在将描述如何进行同步。定义时间上限,时间上限等于这些任务的最大持续时间,即等于存在暗示修改计数器的交叉点的重复步骤(在刚描述的实施方式中标记为IV或在随后描述的实施方式中标记为VIII)。然后,将描述这如何典型地在处理器内发生:-首先,准备充足的信息来执行(典型地上百万次)“重复步骤”,-然后,这些重复步骤是通过基本表面收集的,-然后,这些重复步骤是展开的一个表面接一个表面,因此在队列中建立多个(典型地,数百万个)小任务;当队列为空时,这些任务分布在多个(典型地,数百个)计算节点上,-然后,当所有计算节点准备好时,它们总是一起开始。每个节点处理一个基本任务,-然后,等待每个节点的计算结束。固定地定义基本任务的持续时间,不管这个基本任务是什么,持续时间是恒定的,并且该持续时间等于时间上限。当每个节点在不同的数据上运行相同的任务时,固定地定义节点的持续时间,不管考虑的节点是什么,持续时间是恒定的。因此,所有节点花费相同的时间运行,不管结果如何(不管是否存在交叉点,不管计算计数器是否被修改),这是因为节点的持续时间被固定地定义。因此,通过固定的运行时间在彼此之间“同步”任务或重复;-然后,通过重新填充计算节点和通过重新开始它们的同时运行进行重复,直到队列为空。因此,不存在需要监视重复或计算运行的结束的复杂同步。总的时间可通过知晓队列大小而预测到,无需知晓计算的单个结果,但是如果通过等待计算的运行结束进行同步则需要知晓计算的单个结果。因此,本发明与现有技术的状态相反,其促使人们想到清除其计算的不重要(无交叉点)的节点以将它们重新排列在队列之后是有用的,尤其在MMID机器的情况下。根据本发明,可在SIMD中操作,不重要的节点不是自由的,因为它们被迫同时运行其SIMD组的当前任务的当前指令。然而,性能优于受到不重要任务影响的节点被重新分配到作好准备的任务的情况。本发明的讲一步改讲从纯粹机械角度了解产品的3D内部对相应产品的良好生产而言是不够的。常常,针对方法的参数使得应该稍微地修改此信息。例如在立体平板印刷中,参考图4,层22在之前沉积的另一层23上的聚合深度21高于沉积的层22的厚度24,以确保层之间的良好粘附(即“过聚合”)。参考图4,结果是,如果单独使用描述正在聚合的层的信息,从满足3D产品的尺寸的观点来看固化的区域没有必要是最优的。在连续层为水平的轮廓截面的图4的示例中,可看出产品的壁33越不竖直,相对于待生产的产品的理论轮廓的尺寸误差25、26和27越大:对于竖直壁,误差27为0,对于接近竖直的壁,误差25很小,以及对于接近水平的壁,误差26很大。传统使用的解决方案是对截面进行比较。这在专利EP0555369B1中描述为复杂操作。更复杂的是,当仅截面被处理时关键信息丢失:的确,误差典型地依赖于壁与竖直方向的角度(参考图4)。 本发明的进一步改进还能够考虑过聚合,实质上不会增加计算时间,同时优选地管理随机分布在产品上的任何角度,并且仍容易地在SMD中实现。在对于每个点Di,投影F使得F {F (Di).p}是直线的具体情况中,至少局部地(处于
包括Di和0’的空间区域中),在上述步骤IV.1ii中使用的表达式./.1/),"减少为表达式
NfFiD1In ,其可在开始步骤IV之前预计算并制成表格。如果额外的F使得全部F(I),).
是相等的(例如,如果F是正射投影),则表达式(■ l \!) n现在仅依赖于N」,即依赖于正被处理的表面S」。上面的操作IV然后可以下面的方式重写,通过将其应用至两组补充的Sj,而不会引起运行时间的变化(其为相同计算的书写重组)。如果N表示不同的/'’(/),)."(假设全部相同),现在用下面的步骤取代之前描述的步骤IV:IV.对于属于0’的任何元素Sj,其法线被表示成Nj并且0’被分成两个新的互补子集O+和0_使得:1.子集0+包含0’的所有Sj (表示成巧),它们的标量积Nj.N为正或零,基本表面$因此为用于进入对象0’的表面;以及
i1.子集0_包含0’的所有Sj (表示成&),它们的标量积Nj.N为负,基本表面巧
因此为用于离开对象0’的表面。V.对于属于0+的元素Sj,并且对于属于D的任何Di,计算(光栅化)F{F(Di).p}与Sj之间的交叉点1.如果存在交叉点I,并且如果F⑴.v>F (Di).V,则F(Di).c增加IV1.对于属于0_的元素Sj,并且对于属于D的任何Di,计算(光栅化)F{F(Di).p}与间的交叉点。1.如果存在交叉点I,并且如果F (I)-OF(Di).V,则F(Di).c减小I。想法是不再使用单个点集合D,而是使用被表示为D+和D_的两个集合,并且将与O+和0_相关的处理应用在它们对应的集合上。通过明智地选择D+和D_,可计算针对方法的补偿。参考图5考虑例如立体平板印刷中的过聚合问题。波束冲击根据入射角将一部分液体固化成一定的形状,并且根据功率将该部分液体固化成一定的深度。将集合D+ (参考标号28)定义成位于层的液体表面处的工作点之一,并且将集合D_(参考标号29)定义成位于聚合区域的下端处的点集合。因此,对于D+的每个点Di,现在所谓的化(参考标号30)对应于D—的点(参考标号31),D_是D沿两个立体平板印刷层之间的分离方向和沿层的聚合深度32向下平移的D的图像。从算法观点,没有强制D+和D—是平坦的,但是在所考虑的示例中,D+位于液体表面的平面中,并且D_是略微弯曲的表面,其甚至可以近似为用于光学装置所适合的一些机器的平面。然后算法被稍微修改,现则采取下面的形式:1.任选地,确定0的子集0’°r = Us;使得对象0’的描述具有将对象0’分解成从定向的且优选为平坦的Si选择的若干基本表面Sj: 通过保持0’ =0 (在这种情况中,Sj的集合对应于Si的集合,并且在后面的描述中用Si取代S」和用0取代0’就足够了),或者 任选地通过执行以下步骤实现过滤器:1.确定P的包含所有的最小区域Ri1.确定0的子集0’使得0中不是0’的一部分的的元素没有对属于R的P的投影F。这种分类步骤传统地用于计算机科学中以通过将其局部地应用于更小的子集(在此仅为可在R中具有投影的0的元素)来减少计算时间。I1.根据针对生产方法的法则,其暗示在对象0’中同时存在所考虑的点A+和得到的点(或图像)D;(典型地通过之前描述的聚合深度平移每个A+),通过具有投影F且希望知道是否应该被选择为生产产品的点A+的集合D+构造图像点^的集合D_。D—表示包括D+的每个点A+的得到 的点(或图像)化的集合。II1.对于属于D+的每个兀” 1即对于被尝试确定它是位于对象0’之内或之外的每个工作点Di+,计算或确定:-经过工作点D;的线F{F(D; ).p},以及- F( ).p,工作点 I)沿 F {F( I); ).p}的曲线坐标。IV.在尝试确定位于对象0’之内或之外的任何D因此在任何线F{F(D,+ ).p}:处,与专用于此工作点的表示为F(A+)-C的计数器相关联。该计数器的值被初始化为O。V.对于属于D-的任何图像点,计算或确定:-经过得到的A+的点(或图像)A—的线f{f(d「).p},优选地与线F{F(D,+).p}混淆的线F{F(D「).P},以及- F(D; ).V,点 D「沿 F {F( Di ).p}的曲线坐标V1.在任何D「处,因此在任何线F{F(D「).p}处,与专用于此得到的点或图像的表示成F(Z)..).c的计数器相关联。该计数器的值被初始化为O。VI1.对于属于0’的任何元素Sp %表示其法线,并且创建两个新的子集0+和0_使得0+包含0’的S」,其标量积Nj.N为正或0,以及0_的所有其他。换句话说,基本表面分离成两个独立的组,用于进入对象0’的表面f的组0+和用于离开对象0’的表面巧的组0_,
进入和离开对象0’相对于运动方向32定义。VII1.然后,在每个基本表面Sj上重复下面的操作:i)对于属于0+的任何元素Sj,即如果表面Sj为进入表面$,并且对于属于D+的任何, 搜索和计算基本表面A与经过工作点A+的线F{F(A+).p}之间的交叉点。而且,如果此交叉点I存在,并且如果F(I).v> F( A+).v,则根据对穿过表面的路径的修改来修改计数器F(£0.c (典型地,F(A+)X增加I个单位)。ii)对于属于0的任何兀素Sj,即如果表面Sj为离开表面S并且对于属于D的任何珥,搜索和计算基本表面&与经过工作点A「的线F{F(D「).P)之间的交叉点。而且,如果此交叉点I存在,并且如果F_U).v> F( Di )、则根据对穿过表面的路径的修改来修改计数器F(A「).c (典型地,F(I) )c增加I)。IX.对于每个工作点A+,根据专用于工作点A+的计数器和专用于该工作点的图像的计数器确定工作点A+位于对象o’之内或之外。更精确地,对于每个工作点A+,通过对专用于工作点A+的计数器与专用于该工作点的图像巧的计数器进行比较确定此工作点A+位于对象o’之内或之外。选择以下内容:-满足条件“F(A+).C>F(_D「).C”的D作为位于对象0’之内的工作点,-其它点D,+(F(D,+ ).C^F(D「).C )作为位于对象0’之外的工作点。
详细示例(图6)参考图6,截面视图示出了如何利用根据本发明的改进方法在仅当A及其对应的巧均位于材料中时使点A+聚合。在此示例中根据本发明的方法包括下面的步骤:1.将所有F(/J>, ).C初始化为02.计算所有 F(/.)/).V3.将所有F( D:)-C初始化为04.计算所WF(/), ).V5.处理 &a.处理D1+1.¥(ll).V> F(A+)-V,因此F(I^+)X增加 Ib.处理D2+1.F(/2+).V> F(/)2 ).V,因`此F(£>2+).C增加 Ic.处理D+i F( /:: ) V< F( /X ).V,因此 F( /)- ) C 不变6.处理a.处理 A—1.F(I1 ).v< F(J), ).v,因此F(/.); ).c不变b.处理 i>2一1.s与F (F(A ).p}之间没有交叉点c.处理 £>1.斤与F{F(D3)P丨之间没有交叉点7.处理*S2a.处理A1.S-2与F { F( A ).P }之间没有交叉点b.处理D2一1.F( I2 ).\> F( D2 ).V,因此F( D1 ).C 增加 Ic.处理K1.F( A ).v< F(£>3-).v,因此 F( /), ).c 不变在运行结束时: ( F( I); ).C=O+ 1 = 1 ) > ( F( IX ).c=0 ),W此,D1 被选择为位于对象 0 内。
(、F(/J2).c=0+l = l ) = ( F(Z)2).C=O1 = 1』,因此,D2 没有被选择为位于对象0内。
( F( /).; ).C=0 ) = ( F( ]), ).C=0 ),因此,D3没有被选择为位于对象0内。当然,本 发明 不限于刚描述的示例并且可对这些示例进行许多替换而不背离本发明的范围。
权利要求
1.用于生产产品的方法,包括确定有限空间的点(11;30)位于被分解成基本表面(15)的对象(14 ;6)之内或之外,所述对象对应于待生产的产品或者对应于待生产的产品的一部分或一层或一片, 其特征在于,对于尝试确定位于所述对象之内或之外的每个工作点(11 ;30),所述方法包括: -在与专用于所述工作点的计数器相关联的经过所述工作点(11 ;30)的线、以及与专用于所述工作点的图像(31)的计数器相关联的经过所述工作点的所述图像的线之中确定至少一个线(12);以及 -在所述基本表面中的每个基本表面上重复进行以下操作: 搜索所述基本表面(15)与经过所述工作点(11 ;30)的线(12)和经过所述工作点的所述图像(31)的线中的一个线之间的交叉点, 如果所述交叉点存在,则修改计数器;以及 -根据专用于所述工作点(11 ;30)的计数器确定所述工作点位于所述对象之内或之外, 每个前述步骤至少由计算机、中央处理或计算单元、模拟电子电路、数字电子电路、微处理器和/或软件工具实现。
2.根据权利要求1所述的方法,其特征在于, -确定至少一个线 的步骤包括确定与专用于所述工作点的计数器相关联的、经过所述工作点的线; -重复步骤包括,在所述基本表面中的每个基本表面上重复以下操作: 搜索该基本表面与经过所述工作点的线之间的交叉点; 如果该交叉点存在,则修改计数器;以及 -确定所述工作点位于所述对象之内或之外的步骤包括根据专用于所述工作点的计数器的值确定所述工作点位于所述对象之内或之外。
3.根据权利要求2所述的方法,其特征在于,所述线经过原点,并且修改计数器的步骤包括: 如果所述交叉点相对于所述线的原点位于所述工作点之后,对所述计数器不进行修改;以及 如果所述交叉点相对于所述线的原点不在所述工作点之后,根据所述线的交叉点相对于所述原点对应于所述线进入所述对象的入口或对应于所述线离开所述对象的出口,不同地修改所述计数器。
4.根据权利要求1所述的方法,其特征在于, -确定至少一个线的步骤包括确定与专用于所述工作点的计数器相关联的经过所述工作点的线以及与专用于所述工作点的所述图像的计数器相关联的经过所述工作点的图像的线; -所述方法还包括将所述基本表面分离成两个不同的组,即,相对于运动方向进入所述对象的一组表面和离开所述对象的一组表面; -所述重复步骤包括在所述基本表面中的每个基本表面上重复以下操作: 如果所述表面为进入表面,则搜索该基本表面与经过所述工作点的线之间的交叉点,并且如果该交叉点存在,则修改与所述工作点相关联的计数器; 如果所述表面为离开表面,则搜索该基本表面与经过所述工作点的所述图像的线之间的交叉点,并且如果该交叉点存在,则修改与所述工作点的所述图像相关联的计数器; -确定所述工作点位于所述对象之内或之外的步骤包括:根据专用于所述工作点的计数器和专用于所述工作点的所述图像的计数器,确定所述工作点位于所述对象之内或之外。
5.根据权利要求4所述的方法,其特征在于,根据专用于所述工作点的计数器和专用于所述工作点的所述图像的计数器确定所述工作点位于所述对象之内或之外的步骤包括:对专用于所述工作点的计数器与专用于所述工作点的所述图像的计数器进行比较。
6.根据权利要求4或5所述的方法,其特征在于,对于所有的工作点和这些工作点的图像,经过这些点的线是平行的。
7.根据权利要求1至5中任一项所述的方法,其特征在于,对于所有的工作点和这些工作点的图像,经过这些点的线不是平行的。
8.根据前述权利要求中任一项所述的方法,其特征在于,对于所有的工作点和这些工作点的图像,经过这些点的线在所述有限空间内不交叉。
9.根据前述权利要求中任一项所述的方法,其特征在于,所述空间为三维空间。
10.根据权利要求9所述的方法,其特征在于,所述工作点(11)在工作表面(36)中收集,并且经过工作点的每条线(12)和经过工作点的图像的每条线与经过该工作点(11)的工作表面(36)垂直。
11.根据权利要求10所述的方法,其特征在于,所述工作表面(36)对应于待沉积以通过快速原型生产所述产品的层或层的至少一部分。
12.根据权利要求1至8中任一项所述的方法,其特征在于,所述空间为二维空间。
13.根据前述权利要求中任一项所述的方法,其特征在于,针对若干基本表面随时间并行地执行所述重复步骤。
14.根据前述权利要求中任一项所述的方法,其特征在于,对于至少一个基本表面,针对若干工作点随时间并行地执行所述重复步骤。
15.根据权利要求13或14所述的方法,其特征在于,并行地执行的所述重复步骤通过固定的运行时间同步。
16.根据前述权利要求中任一项所述的方法,其特征在于,还包括:一旦确定了位于所述对象之内或之外的空间点,就生产所述产品。
17.用于实现前述权利要求中任一项的方法来生产产品的设备,包括用于确定有限空间的点位于被分解成基本表面的对象之内或之外的装置,所述对象对应于待生产的产品或对应于待生产的产品的一部分或一层或一片, 其特征在于,对于尝试确定位于所述对象之内或之外的每个工作点,所述设备包括: -用于在与专用于所述工作点的计数器相关联的经过所述工作点的线、以及与专用于所述工作点的图像的计数器相关联的经过所述工作点的所述图像的线之中确定至少一个线的装置;以及 -用于在所述基本表面的每个基本表面上重复进行以下操作的装置: 搜索所述基本表面与来自经过所述工作点的线和经过所述工作点的图像的线中的单个线之间的交叉点, 如果所述交叉点存在,则修改计数器;以及 -用于根据专用于所述工作点的计数器确定所述工作点位于所述对象之内或之外的装置, 前述的每个装置至少包括一个计算机、一个中央处理或计算单元、一个模拟电子电路、一个数字电子电路、一个微处理器和/或软件工具。
18.根据权利要求17所述的装置,其特征在于,还包括用于一旦确定了位于所述对象之内或之外的空间点就生产所述产品的装置。
19.通过根据权利要求1至16中任一项所述的生产方法或通过根据权利要求17或18所述的生产设备所获得的 产品。
全文摘要
本发明涉及用于生产产品的方法,其中针对待被确定位于对象之内或之外的每个工作点(11;30)执行下面的步骤,该对象典型地对应于待生产的产品或对应于待生产的产品的一部分(一层,一片),即在与专用于工作点(11;30)的计数器相关联的经过该工作点的线与专用于工作点的图像(31)的计数器相关联的经过该工作点的图像(31)的线之中确定至少一个线(12);在每个基本表面上,(i)搜索基本表面(15)与来自经过工作点(11;30)的线(12)和经过工作点的图像(31)的线中的一个线之间的交叉点,以及(ii)如果该交叉点存在,则修改计数器,以重复的方式执行步骤(i)和(ii);以及根据专用于工作点(11;30)的计数器确定工作点位于对象之内或之外。本发明适于在快速原型和立体平板印刷中使用。
文档编号G06F17/50GK103229176SQ201180048990
公开日2013年7月31日 申请日期2011年10月14日 优先权日2010年10月15日
发明者安德烈-卢克·阿拉尼克 申请人:菲迪亚斯技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1