CN114714627B - 针对3d打印控制软件碰撞检测系统及其检测方法 - Google Patents
针对3d打印控制软件碰撞检测系统及其检测方法 Download PDFInfo
- Publication number
- CN114714627B CN114714627B CN202210384945.2A CN202210384945A CN114714627B CN 114714627 B CN114714627 B CN 114714627B CN 202210384945 A CN202210384945 A CN 202210384945A CN 114714627 B CN114714627 B CN 114714627B
- Authority
- CN
- China
- Prior art keywords
- information
- upper computer
- wifi module
- parts
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
- B29C64/393—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
- B33Y50/02—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Chemical & Material Sciences (AREA)
- Engineering & Computer Science (AREA)
- Materials Engineering (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Optics & Photonics (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种针对3D打印控制软件碰撞检测系统及其检测方法,包括:3D打印上位机、内置于3D打印上位机内的WIFI模块与处在WLAN内的后台终端;所述3D打印上位机经由WIFI模块与后台终端连接;运行在3D打印上位机上的单元包括检测单元;有效避免了现有技术中在3D打印中通过零件的外接矩形来判定两个零件是否发生碰撞存在判定失败、导致空心零件内部的有效空间不能有效利用、导致基板上有效摆放零件空间的浪费的缺陷。
Description
技术领域
本申请涉及3D打印控制检测技术领域,具体涉及一种针对3D打印控制软件碰撞检测系统及其检测方法。
背景技术
随着3D打印研发技术的不断突破,3D打印已经成功应用于航空航天、生物医疗、建筑、汽车等领域,并不断取得突破性进展。
在实际打印零件时,打印机仓室内基板版面上可以同时打印多个彼此独立的零件。如何识别这些零件的模型数据在实际打印时是否相互干扰而导致最终成形的零件被破坏完整性是非常重要的,具体而言,相互干扰的状况就像,打印两个相互独立的牙冠的模型,但是在事先进行零件排版时将他们在空间位置上没有完全隔离开来,没有完全体现彼此独立的空间存在区域,导致打印时这两个牙冠在空间位置上出现重叠,最终导致打印出来的牙冠是无效、废弃的样品。即这两个牙冠在打印时出现了“碰撞”。
在使用3D打印机进行零件的3D打印时,在一个打印批次中可以同时打印多个零件。需要判定这些多个零件的模型数据在空间位置上会不会存在互相的重叠或交叉。要确保这些零件的模型数据在空间位置上是彼此独立的,不能存在物体在空间位置上的交错影响。这时就需要进行零件的模型数据彼此之间的碰撞检测。
两个零件之间存在交错影响,如图1所示左边三边形零件与右边四边形零件在空间位置上存在重叠。这种摆放方式是错误的,导致打印出来的零件是废弃、无效的。
3D打印控制软件中对零件进行碰撞检测时通常采用的检测算法是外接矩形检测。外接矩形检测算法是先给零件实体套上一个外接长方形,在进行零件打印时两个物体间碰撞检测时,只需要检测它们的外接矩形是否发生了重叠。
在使用排版软件创建零件的模型数据时,排版软件会自动计算出当前零件的外接矩形的区域范围。并在模型数据文件中产生一条外接矩形的X坐标最小值和最大值,以及Y坐标最小值和最大值,用以表示这个零件的外接矩形的空间位置大小。就像,<Bounds xmin="-10.1012" ymin="-43.5619" xmax="20.7368" ymax="54.7351"></Bounds>。
当对两个零件进行碰撞检测时,就比较他们各自的外接矩形所圈定的区域是否重叠与交叉。可以通过比较这两个外接矩形的X坐标与Y坐标的大小关系。就像,xmin1 <xmin2 < xmax1 < xmax2, 就表示出现了碰撞;或者ymin1 < ymin2 < ymax1 < ymax2, 也表示出现了碰撞。 如果,xmin1 < xmax1 < xmin2 < xmax2,就表示没有碰撞;或者 ymin1< ymax1 < ymin2 < ymax2,也表示没有碰撞。这里仍旧以图1中的两个零件为例,做出他们的外接矩形,如图2所示,他们的外接矩形发生了重叠就可以判定他们之间存在“碰撞”。
相反地,如果这两个零件的外接矩形不重叠或交叉,就像图3所示,表示这两个零件没有发生“碰撞”。
从上面的算法分析来看,通过零件的外接矩形来判定两个零件是否发生碰撞有一定的可行性。但是这种外接矩形检测碰撞方法也存在缺陷,存在判定失败的案例。如图4所示,外部环状零件圈定的范围内部是空心的,其中里面包含一个内部的菱形零件。这个环状的外接矩形肯定与内部菱形的外接矩形重叠、交叉,根据外接矩形的检测算法认定这两个零件在空间位置上发生碰撞;其实这两个零件在打印时互不干扰。但是,这样一来,在摆放零件时必须要把类似这种形状的零件彼此分开,导致空心零件内部的有效空间不能有效利用;尤其是基板范围很窄,而且空心零件的空心区域又特别大,会导致基板上有效摆放零件空间的浪费。所以,就需要在此基础上提出新的碰撞检测算法。
发明内容
为解决上述问题,本申请给出了一种针对3D打印控制软件碰撞检测系统及传递方法,有效避免了现有技术中在3D打印中通过零件的外接矩形来判定两个零件是否发生碰撞存在判定失败、导致空心零件内部的有效空间不能有效利用、导致基板上有效摆放零件空间的浪费的缺陷。
为了克服现有技术中的不足,本申请给出了一种针对3D打印控制软件碰撞检测系统及传递方法的解决方案,具体如下:
一种针对3D打印控制软件碰撞检测系统,包括:
3D打印上位机、内置于3D打印上位机内的WIFI模块与处在WLAN内的后台终端;
所述3D打印上位机经由WIFI模块与后台终端连接;
运行在3D打印上位机上的单元包括检测单元;
所述检测单元用于在打印零件之前,每增加一个零件,先检测软件界面上的零件的电子模型与基板的位置关系,即判定零件的外接矩形与基板区域的位置关系;如果零件的外接矩形四个顶点全部落在基板区域内,那么表示零件的外接矩形区域全部落在基板区域内,则表示零件与基板不存在碰撞,该零件能够正常打印;如果零件的外接矩形的四个顶点不是全部都落在基板区域内,就使用凸包算法判定,即先获得零件在平面上的凸包,将凸包上的点逐个检测是否落在基板区域内,如果凸包上各个点都落在基板区域内,就认为零件与基板不存在碰撞,如果凸包上有一个点落在基板区域外,就认为当前零件与基板区域发生碰撞;还用于检测了当前零件与基板是否存在碰撞之后,如果当前零件总数目仅有一个,就不需要之后操作;如果当零件数目至少为两个,就要检测每两个零件之间是否存在碰撞;任意选择两个零件进行碰撞检测,将当前选择的两个零件中的一个零件在平面上投影,获得当前零件在平面上的凸包T1;如果该零件的电子模型内部存在空心区域,就获得该空心区域对应的凸包T2,则该零件的凸包就是由凸包T1和凸包T2构成一个封闭环形区域;如果该零件的电子模型数据内部不存在空心区域,则该零件的凸包就是由凸包T1构成一个封闭区域;依照同样的方法,再计算出另一个零件的凸包;将这两个零件对应的凸包进行比较,如果两个零件的凸包不重叠或不交叉,就认为两零件不存在碰撞;如果发现两个零件的凸包有重叠或交叉,就认为这两个零件存在碰撞。
WIFI模块包括控制芯片、参数操控单元、暂存空间与信息交互单元;
所述暂存空间,其包含事先设置的子暂存空间一与事先设置的子暂存空间二;事先设置的子暂存空间一用于存放帧种类是即时帧的信息帧;事先设置的子暂存空间二用于存放帧种类是非即时帧的信息帧;
所述信息交互单元,其用于经WLAN中的后台终端收取信息;信息交互单元还用于认定所收取到的信息帧的帧种类是不是为即时帧,若认定所收取的信息帧的帧种类为即时帧,把信息帧存放到事先设置的子暂存空间一;若认定信息帧的帧种类是非即时帧,把信息帧存放到事先设置的子暂存空间二;
所述参数操控单元,其用于登记暂存空间的信息积聚消息,据此形成用于代表暂存空间的存放信息量的参数消息一;与运算事先设置回数的信息传递时隙的均值,据此形成用于代表传递时隙的均值的参数消息二;
所述控制芯片,其用于经暂存空间取出信息到3D打印上位机的主存空间。
所述3D打印上位机,其包含触发启动处置单元、定时侦听处置单元、规则变动单元与主存关联单元;
所述触发启动处置单元,其用于在交互方法是触发启动方法时取出且处置信息;
所述定时侦听处置单元,其用于在交互方法是定时侦听方法时取出且处置信息;
所述规则变动单元,其用于取得WIFI模块的参数消息,据此依据参数消息认定是不是符合变动要求;若参数消息一不低于事先设置的积聚临界量,或参数消息二不高于事先设置的时长临界量,就让3D打印上位机与WIFI模块间的交互方法是定时侦听方法,若参数消息一低于事先设置的积聚临界量,或参数消息二高过事先设置时长临界量,就让3D打印上位机与WIFI模块间的交互方法是触发启动方法。
一种针对3D打印控制软件碰撞检测系统的检测方法,包括如下步骤:
步骤1:在打印零件之前,每增加一个零件,先检测软件界面上的零件的电子模型与基板的位置关系,即判定零件的外接矩形与基板区域的位置关系;
步骤2:如果零件的外接矩形四个顶点全部落在基板区域内,那么表示零件的外接矩形区域全部落在基板区域内,则表示零件与基板不存在碰撞,该零件能够正常打印;
在步骤2中,判定零件的外接矩形四个顶点全部落在基板区域内的方法,包括:分别计算零件的外接矩形四个顶点的坐标和基板区域的圆心坐标之间的距离,如果所得到的四个距离都低于基板区域的半径,就判定出零件的外接矩形四个顶点全部落在基板区域内。
步骤3:如果零件的外接矩形的四个顶点不是全部都落在基板区域内,就使用凸包算法判定,即先获得零件在平面上的凸包,将凸包上的点逐个检测是否落在基板区域内,如果凸包上各个点都落在基板区域内,就认为零件与基板不存在碰撞,如果凸包上有一个点落在基板区域外,就认为当前零件与基板区域发生碰撞;
在步骤3中,将凸包上的点逐个检测是否落在基板区域内的方法,包括:逐个计算凸包上的点的坐标和基板区域的圆心坐标之间的距离,如果所得到的该距离低于基板区域的半径,就判定出凸包上的该点落在基板区域内。
步骤4:增加了第一个零件之后,之后每增加一个零件就返回步骤1执行,检测了当前零件与基板是否存在碰撞之后,如果当前零件总数目仅有一个,就不需要之后操作;如果当零件数目至少为两个,就要检测每两个零件之间是否存在碰撞;
步骤5:任意选择两个零件进行碰撞检测,将当前选择的两个零件中的一个零件在平面上投影,获得当前零件在平面上的凸包T1;如果该零件的电子模型内部存在空心区域,就获得该空心区域对应的凸包T2,则该零件的凸包就是由凸包T1和凸包T2构成一个封闭环形区域;如果该零件的电子模型数据内部不存在空心区域,则该零件的凸包就是由凸包T1构成一个封闭区域;依照同样的方法,再计算出另一个零件的凸包;将这两个零件对应的凸包进行比较,如果两个零件的凸包不重叠或不交叉,就认为两零件不存在碰撞;
如果发现两个零件的凸包有重叠或交叉,就认为这两个零件存在碰撞;
在步骤5中,倘若发现两个零件间存在碰撞,通过移动零件的位置来让两零件不存在碰撞,每次移动位置后重新进行两零件的碰撞检测,同时在移动零件过程中也要确保不和基板发生碰撞。
在步骤5中,判定两个零件的凸包不重叠或不交叉的方法,包括:判定两个零件的凸包的所有点的坐标是不是有相同的,如果没有相同的,就表示两个零件的凸包不重叠或不交叉。
步骤6:选择另外两个零件进行碰撞检测,直到所有两两组合的零件检测完毕,彼此都不存在碰撞,才能认为当前零件排版正确,能够进行正常零件打印。
所述3D打印上位机内的零件的电子模型是经由WIFI模块收取后台终端传来的零件的电子模块,这样就达成了3D打印上位机经由WIFI模块与后台终端间的信息交互;
所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,包括:
步骤7-1:认定是不是WIFI模块的信息交互单元收取到信息帧,若认定WIFI模块的信息交互单元没收取信息帧,就继续守候,所述信息帧就是用帧格式执行所述信息交互的信息的信息帧;
步骤7-2:若认定WIFI模块的信息交互单元收取到信息帧,认定信息帧的帧种类是不是为即时帧;
所述认定信息帧的帧种类是不是为即时帧的方法,其包括:WIFI模块的信息交互单元认定信息帧的种类信息项是不是代表事先设置的数;若认定信息帧的种类信息项代表事先设置的数,交互单元认定信息帧的帧种类为即时帧。
步骤7-3:若认定信息帧的帧种类是即时帧,把信息帧存放到事先设置的子暂存空间一,暂存空间包含事先设置的子暂存空间一与事先设置的子暂存空间二;
步骤7-4:若认定信息帧的帧种类是非即时帧,把信息帧存放到事先设置的子暂存空间二;
步骤7-5:取得WIFI模块的参数消息,参数消息包含用于代表暂存空间的存放信息量的参数消息一与用于代表传递时隙的均值的参数消息二内的一个以上;
所述参数消息一与参数消息二的认定,其包括:WIFI模块的参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一;参数操控单元依照信息传递次序登记持续的事先设置回数的传递时隙;而参数操控单元依据事先设置回数和持续的事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二。
步骤7-6:依据所取得的WIFI模块的参数消息,让3D打印上位机与WIFI模块间的交互方法在定时侦听方法与触发启动方法间变动。
所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,还包括:
形成WIFI模块的参数消息;
所述形成WIFI模块的参数消息的方法,包括:
步骤8-1:WIFI模块的参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一;
步骤8-2:参数操控单元依照信息传递次序登记持续的事先设置回数的传递时隙,各回传递时隙代表经WIFI模块传递暂存空间的信息到3D打印上位机收取结束信息且WIFI模块传递后一回暂存空间的信息前的时长;
步骤8-3:参数操控单元依据事先设置回数与持续的事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二。
所述步骤7-6具体包括:
步骤7-6-1:3D打印上位机认定有没有符合变动要求的状况是不是出现改变,若3D打印上位机认定有没有符合变动要求的状况没出现改变,就转到7-6-8去执行;
步骤7-6-2:若3D打印上位机认定有没有符合变动要求的状况出现改变,3D打印上位机依据所述状况出现改变的消息,在事先设置的队列内存进事先设置信息一,事先设置信息一代表3D打印上位机要变动到的实际交互方法;
步骤7-6-3:WIFI模块用事先设置的时长取出事先设置的队列的信息;
步骤7-6-4:WIFI模块认定所取出事先设置的队列的信息是不是为事先设置信息一;
若WIFI模块认定所取出事先设置的队列的信息并不是事先设置信息一,就返回步骤7-6-3去执行;
步骤7-6-5:若WIFI模块认定所取出事先设置的队列的信息是事先设置信息一,WIFI模块在事先设置的队列存进事先设置的信息二,事先设置的信息二代表WIFI模块要与3D打印上位机共同变动到实际交互方法;
步骤7-6-6:3D打印上位机认定事先设置的队列是不是被存进事先设置的信息二;
步骤7-6-7:若3D打印上位机认定事先设置的队列被存进事先设置的信息二,变动3D打印上位机到实际交互方法。
步骤7-6-8:若3D打印上位机认定事先设置的队列没被存进事先设置的信息二,3D打印上位机保持现时交互方法。
认定事先设置的积聚临界量或者事先设置的时长临界量的方法,包括:
步骤7-1-1:设置事先设置的积聚临界量与事先设置的时长临界量,事先设置的时长临界量高过WIFI模块的总传递时长;
步骤7-1-2:经由WIFI模块,朝3D打印上位机传递事先设置的个数临界量的信息帧,各个信息帧中包含有效信息与检错码;
步骤7-1-3:在3D打印上位机处,依据各个信息帧内所具有的检错码,确认3D打印上位机是不是完全无误收取到事先设置个数的信息帧的有效信息;
步骤7-1-4:若3D打印上位机确认3D打印上位机没完全无误收取到事先设置个数的信息帧的有效信息,执行如下随意一条直到确认3D打印上位机完全无误收取到事先设置个数的信息帧的有效信息:
减小事先设置的积聚临界量;加大事先设置的时长临界量。
本发明的有益效果为:
先进行基板与零件的碰撞检测。确保各个零件在基板的有效区域内打印;接着进行零件与零件之间的碰撞检测。确保零件两两之间不侵犯空间位置; 而零件与基板之间碰撞检测,先使用外接矩形进行碰撞的粗检测,若零件的外接矩形全部落在基板区域内,就认为彼此不碰撞;若零件的外接矩形存在部分落在基板区域外部,这时需要使用凸包算法进行精检测,使用凸包区域再次进行零件与基板的碰撞检测;每两个零件之间的碰撞检测算法,先计算出第一个零件在平面区域的投影,然后计算出凸包T1,若该零件存在内部空心区域,就计算出空心区域的凸包T2,则该零件就由T1和T2组合成一个封闭环形区域;若该零件不存在内部空心区域,则该零件就由T1构成了一个封闭区域。使用同样的方法,计算出另一个零件的凸包;判定这两个零件的凸包区域是不是存在重叠或交叉,来进行碰撞检测,这样就改善了3D打印控制软件的碰撞检测的成功率,减小了判定失败的可能,可有效利用空心零件内部的有效空间,不会让基板上有效摆放零件空间浪费。有效避免了现有技术在3D打印中经由零件的外接矩形来判定两个零件是不是发生碰撞存在判定失败、导致空心零件内部的有效空间不能有效利用、导致基板上有效摆放零件空间的浪费的缺陷。
附图说明
图1是3D打印的左边三边形零件与右边四边形零件在空间位置上存在重叠的示意图。
图2是图1的两个零件的外接矩形的示意图。
图3是两个零件的外接矩形不重叠或不交叉的示意图。
图4是一种两个零件的外接矩形示意图。
图5是本发明的零件的外接矩形完全落在基板区域内的一种结构示意图。
图6是零件与基板不存在碰撞的结构示意图。
图7是零件与基板发生碰撞的结构示意图。
图8是本发明的两个零件不存在碰撞的结构示意图。
图9是本发明的两个零件发生碰撞的结构示意图。
图10是本发明的步骤1到步骤3的流程图。
图11是本发明的步骤4到步骤6的流程图。
图12是本发明的步骤7-1到步骤7-3的流程图。
图13是本发明的步骤7-4到步骤7-6的流程图。
具体实施方式
在实际打印零件时,打印机仓室内基板版面上可以同时打印多个彼此独立的零件。如何识别这些零件的模型数据在实际打印时是否相互干扰而导致最终成形的零件被破坏完整性是非常重要的,本发明提出了一种新颖的零件的模型数据打印的碰撞检测算法。先检测每个零件与基板是否存在碰撞,然后检测每个零件之间是否存在碰撞。
下面将结合附图和实施例对本申请做进一步地说明。
如图1-图13所示,针对3D打印控制软件碰撞检测系统,包括:
3D打印上位机、内置于3D打印上位机内的WIFI模块与处在WLAN内的后台终端;3D打印上位机就是计算机。后台终端能够是笔记本电脑或者计算机。
所述3D打印上位机经由WIFI模块与后台终端连接;
运行在3D打印上位机上的单元包括检测单元;
所述检测单元用于在打印零件之前,每增加一个零件,先检测软件界面上的零件的电子模型与基板的位置关系,即判定零件的外接矩形与基板区域的位置关系;如果零件的外接矩形四个顶点全部落在基板区域内,那么表示零件的外接矩形区域全部落在基板区域内,则表示零件与基板不存在碰撞,该零件能够正常打印;如果零件的外接矩形的四个顶点不是全部都落在基板区域内,就使用凸包算法判定,即先获得零件在平面上的凸包,将凸包上的点逐个检测是否落在基板区域内,如果凸包上各个点都落在基板区域内,就认为零件与基板不存在碰撞,如果凸包上有一个点落在基板区域外,就认为当前零件与基板区域发生碰撞;还用于检测了当前零件与基板是否存在碰撞之后,如果当前零件总数目仅有一个,就不需要之后操作;如果当零件数目至少为两个,就要检测每两个零件之间是否存在碰撞;任意选择两个零件进行碰撞检测,将当前选择的两个零件中的一个零件在平面上投影,获得当前零件在平面上的凸包T1;如果该零件的电子模型内部存在空心区域,就获得该空心区域对应的凸包T2,则该零件的凸包就是由凸包T1和凸包T2构成一个封闭环形区域;如果该零件的电子模型数据内部不存在空心区域,则该零件的凸包就是由凸包T1构成一个封闭区域;依照同样的方法,再计算出另一个零件的凸包;将这两个零件对应的凸包进行比较,如果两个零件的凸包不重叠或不交叉,就认为两零件不存在碰撞;如果发现两个零件的凸包有重叠或交叉,就认为这两个零件存在碰撞。
WIFI模块包括控制芯片、参数操控单元、暂存空间与信息交互单元;接口可为USB接口。暂存空间能设于WIFI模块的主存中,控制芯片同参数操控单元、暂存空间与信息交互单元均通讯相连。
所述暂存空间,其就像包含事先设置的子暂存空间一与事先设置的子暂存空间二;事先设置的子暂存空间一就像用于存放帧种类是即时帧的信息帧;事先设置的子暂存空间二就像用于存放帧种类是非即时帧的信息帧;
所述信息交互单元,其用于经WLAN中的后台终端收取信息;信息交互单元还用于认定所收取到的信息帧的帧种类是不是为即时帧,若认定所收取的信息帧的帧种类为即时帧,把信息帧存放到事先设置的子暂存空间一;若认定信息帧的帧种类是非即时帧,把信息帧存放到事先设置的子暂存空间二;
所述参数操控单元,其用于登记暂存空间的信息积聚消息,据此形成用于代表暂存空间的存放信息量的参数消息一;与运算事先设置回数(就像三回)的信息传递时隙的均值,据此形成用于代表传递时隙的均值的参数消息二;
所述控制芯片,其就像用于经暂存空间取出信息到3D打印上位机的主存空间。
所述3D打印上位机,其就像包含触发启动处置单元、定时侦听处置单元、规则变动单元与主存关联单元;
所述触发启动处置单元,其用于在交互方法是触发启动方法时取出且处置信息;就像,若3D打印上位机收取了WIFI模块所传递的触发启动指令,触发启动处置单元执行处置,据此经由控制芯片经暂存空间执行信息取出;
所述定时侦听处置单元,其用于在交互方法是定时侦听方法时取出且处置信息;就像,在定时侦听方法下,定时侦听处置单元反复经由控制芯片经暂存空间执行信息取出。
所述规则变动单元,其用于取得WIFI模块的参数消息(参数消息就像包含:
用于代表暂存空间的存放信息量的参数消息一与用于代表传递时隙的均值的参数消息二),据此依据参数消息认定是不是符合变动要求;若参数消息一不低于事先设置的积聚临界量,或参数消息二不高于事先设置的时长临界量,就让3D打印上位机与WIFI模块间的交互方法是定时侦听方法,若参数消息一低于事先设置的积聚临界量,或参数消息二高过事先设置时长临界量,就让3D打印上位机与WIFI模块间的交互方法是触发启动方法。
一种针对3D打印控制软件碰撞检测系统的检测方法,包括如下步骤:
步骤1:在打印零件之前,每增加一个零件,先检测软件界面上的零件的电子模型与基板的位置关系,即判定零件的外接矩形与基板区域的位置关系;增加一个零件就是把待打印的该零件放置在3D打印舱室内的基板上。本发明中的外接矩形均为最小外接矩形。上位机的软件界面上有一个模拟摆放零件的电子模型的圆形基板。
步骤2:如果零件的外接矩形四个顶点全部落在基板区域内,那么表示零件的外接矩形区域全部落在基板区域内,则表示零件与基板不存在碰撞,该零件能够正常打印;如图5所示,圆圈表示基板区域,三角形表示零件的形状,三角形外围四边形表示该零件的外接矩形。零件的外接矩形完全落在基板区域内,该三角形零件与基板没有发生碰撞,可以正常打印。
在步骤2中,判定零件的外接矩形四个顶点全部落在基板区域内的方法,包括:分别计算零件的外接矩形四个顶点的坐标和基板区域的圆心坐标之间的距离,如果所得到的四个距离都低于基板区域的半径,就判定出零件的外接矩形四个顶点全部落在基板区域内。
步骤3:如果零件的外接矩形的四个顶点不是全部都落在基板区域内,就使用凸包算法(Graham扫描算法)判定,即先获得零件在平面上的凸包,将凸包上的点逐个检测是否落在基板区域内,如果凸包上各个点都落在基板区域内,就认为零件与基板不存在碰撞,如图6所示,图6中六边形表示零件,六边形外接的矩形表示零件的外接矩形,圆圈表示基板区域。如果凸包上有一个点落在基板区域外,就认为当前零件与基板区域发生碰撞,如图7所示;凸包就是将指定图像的最外层的点连接起来构成的凸多边形,它能包含点图像中所有的点。
在步骤3中,将凸包上的点逐个检测是否落在基板区域内的方法,包括:逐个计算凸包上的点的坐标和基板区域的圆心坐标之间的距离,如果所得到的该距离低于基板区域的半径,就判定出凸包上的该点落在基板区域内。
步骤4:增加了第一个零件之后,之后每增加一个零件就返回步骤1执行,检测了当前零件与基板是否存在碰撞之后,如果当前零件总数目仅有一个,就不需要之后操作;如果当零件数目至少为两个,就要检测每两个零件之间是否存在碰撞;
步骤5:任意选择两个零件进行碰撞检测,将当前选择的两个零件中的一个零件在平面上投影,获得当前零件在平面上的凸包T1;如果该零件的电子模型内部存在空心区域,就获得该空心区域对应的凸包T2,则该零件的凸包就是由凸包T1和凸包T2构成一个封闭环形区域;如果该零件的电子模型数据内部不存在空心区域,则该零件的凸包就是由凸包T1构成一个封闭区域;依照同样的方法,再计算出另一个零件的凸包;将这两个零件对应的凸包进行比较,如果两个零件的凸包不重叠或不交叉,就认为两零件不存在碰撞;如图8所示环形区域表示一个零件、环形区域内的圈状区域表示另一个零件,则两个零件不存在碰撞。如果发现两个零件的凸包有重叠或交叉,就认为这两个零件存在碰撞;如图9所示一个环形零件与一个圆形零件发生碰撞。
在步骤5中,倘若发现两个零件间存在碰撞,通过移动零件的位置来让两零件不存在碰撞,每次移动位置后重新进行两零件的碰撞检测,努力使他们彼此不碰撞,同时在移动零件过程中也要确保不和基板发生碰撞。
在步骤5中,判定两个零件的凸包不重叠或不交叉的方法,包括:判定两个零件的凸包的所有点的坐标是不是有相同的,如果没有相同的,就表示两个零件的凸包不重叠或不交叉。
步骤6:选择另外两个零件进行碰撞检测,直到所有两两组合的零件检测完毕,彼此都不存在碰撞,才能认为当前零件排版正确,能够进行正常零件打印。
另外,在实际运用中,所述3D打印上位机内的零件的电子模型常常是经由WIFI模块收取后台终端传来的零件的电子模块,这样就达成了3D打印上位机经由WIFI模块与后台终端间的信息交互。
目前的经由WIFI模块的信息交互的方法内,就像在WIFI模块同3D打印上位机间的信息交互方法内,WIFI模块往往运用触发启动的方法执行信息交互。
在目前的经由WIFI模块的信息交互技术内,在WIFI模块和3D打印上位机间的信息交互量不高时,普遍用触发启动方法执行信息传递的WIFI模块交互方法宜于改善3D打印上位机的功能;然而,在信息交互量不低时,普遍用触发启动方法执行信息传递的交互方法常常因为触发启动不断执行间歇太短而让3D打印上位机的功能被显著削弱。
总之,目前的经由WIFI模块的信息交互的方法带有的缺点如下:当信息交互量不低时,常常因为触发启动不断执行让间歇时长太短,最终让3D打印上位机的功能被显著削弱。
也就是说,在经由WIFI模块的信息交互的方法下,WIFI模块往往运用触发启动的方法执行信息交互,在信息交互量不低,另外信息帧和信息帧间的传递间歇时长很低时,那么3D打印上位机触发启动不断执行让间歇时长太短,这时3D打印上位机被触发启动的执行占用,还有同其关联的内核调用,让3D打印上位机功能被显著削弱;所以,目前的经由WIFI模块的信息交互的方法,在信息交互量不低,常常因为触发启动不断执行让间歇时长太短,最终让3D打印上位机的功能被显著削弱。
要克服上述缺点,经过改进,本发明给出了一种经由WIFI模块的信息交互的技术;在该技术内,经由在同零件的电子模块传递期间,3D打印上位机可依据WIFI模块的参数消息所代表的暂存空间的存放信息量或传递时隙的均值来执行触发启动与定时侦听的机动变动,本申请可让所变动的实际交互方法匹配传递时隙的均值与暂存空间的存放信息量,宜于WIFI模块与3D打印上位机的现时信息传递与收取功能,所以可降低在信息交互量不低条件下的资源花销。
针对3D打印控制软件碰撞检测系统,包含WIFI模块、3D打印上位机、接口与WLAN。WIFI模块与3D打印上位机经由接口执行信息交互。
经过改进,所述3D打印上位机内的零件的电子模型是经由WIFI模块收取后台终端传来的零件的电子模块,这样就达成了3D打印上位机经由WIFI模块与后台终端间的信息交互,这里的信息能够是收取后台终端传来的零件的电子模块;
所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,包括:
步骤7-1:认定是不是WIFI模块的信息交互单元收取到信息帧,若认定WIFI模块的信息交互单元没收取信息帧,就继续守候,所述信息帧就是用帧格式执行所述信息交互的信息的信息帧;该认定能经WIFI模块的控制芯片认定。所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法能在WIFI模块上运行,亦可在3D打印上位机上进行。
进一步的,在步骤7-1前,还包括:认定3D打印上位机是不是在运行态,若认定3D打印上位机在运行态,认定事先设置的积聚临界量与事先设置时长临界量。
步骤7-2:若认定WIFI模块的信息交互单元收取到信息帧,认定信息帧的帧种类是不是为即时帧,WIFI模块设有暂存空间与信息交互单元;
所述认定信息帧的帧种类是不是为即时帧的方法,其包括:WIFI模块的信息交互单元认定信息帧的种类信息项是不是代表事先设置的数;若认定信息帧的种类信息项代表事先设置的数,交互单元认定信息帧的帧种类为即时帧。就像,信息交互单元依据信息帧的种类信息项是不是为9018来判定信息帧是不是为即时帧,若信息帧的种类信息项是9018,就是即时帧,不然就是一般的非即时帧,即时帧就是要求即时传递的信息帧,这个依据用户的具体要求而定。
步骤7-3:若认定信息帧的帧种类是即时帧,把信息帧存放到事先设置的子暂存空间一,暂存空间包含事先设置的子暂存空间一与事先设置的子暂存空间二;暂存空间的信息守候3D打印上位机来执行取出,所述事先设置的子暂存空间一,其就像用于存放帧种类是即时帧的信息帧。
步骤7-4:若认定信息帧的帧种类是非即时帧,把信息帧存放到事先设置的子暂存空间二;所述事先设置的子暂存空间二,其就像用于存放帧种类是非即时帧的信息帧。
步骤7-5:取得WIFI模块的参数消息,参数消息包含用于代表暂存空间的存放信息量的参数消息一与用于代表传递时隙的均值的参数消息二内的一个以上;
就像,WIFI模块传递触发启动指令;3D打印上位机收取到触发启动指令后,经由控制芯片取出暂存空间的信息(就是信息帧);还有3D打印上位机处的模式变动单元取得WIFI模块的参数消息,据此依据参数消息认定是不是符合变动要求。
所述参数消息一与参数消息二的认定,其包括:WIFI模块的参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一;参数操控单元依照信息传递次序登记持续的事先设置回数的传递时隙(这里,各回传递时隙代表经WIFI模块传递暂存空间的信息到3D打印上位机收取结束信息且WIFI模块传递后一回暂存空间的信息前的时长);而参数操控单元依据事先设置回数和持续的事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二。
步骤7-6:依据所取得的WIFI模块的参数消息,让3D打印上位机与WIFI模块间的交互方法在定时侦听方法与触发启动方法间变动。
就像,若3D打印上位机确认传递时隙的均值不高于事先设置时长临界量,就认定要变动的实际交互方法是定时侦听方法;而让3D打印上位机与WIFI模块间的交互方法是定时侦听方法的方法,其包括:3D打印上位机告知WIFI模块禁止触发启动方法;而WIFI模块的规则操控单元禁止触发启动方法,据此3D打印上位机与WIFI模块间的交互方法变动到定时侦听方法。
所述在定时侦听方法与触发启动方法间变动的方法,其包括:在3D打印上位机处,认定是不是符合变动要求,变动要求包含如下随便一条:
参数消息一不低于事先设置的积聚临界量;参数消息二不高于事先设置时长临界量;
若认定符合变动要求,使得3D打印上位机和WIFI模块之间的交互方法为定时侦听方法;若认定不符合变动要求,让3D打印上位机与WIFI模块间的交互方法是触发启动方法。
于是,在3D打印上位机经由WIFI模块与后台终端间的信息交互期间,3D打印上位机可依据WIFI模块的参数消息所代表的暂存空间的存放信息量或传递时隙的均值来执行触发启动与定时侦听的机动变动,本申请可让所变动的实际交互方法匹配传递时隙的均值与暂存空间的存放信息量,匹配于WIFI模块与3D打印上位机的现时信息传递和收取功能(就像,3D打印上位机的触发启动的执行功能),所以可减小在信息交互量不低状况下的资源花销。
所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,还包括:
形成WIFI模块的参数消息;
所述形成WIFI模块的参数消息的方法,包括:
步骤8-1:WIFI模块的参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一;
就像,WIFI模块的参数操控单元会对现时暂存空间的积聚状况执行总计;就像,参数操控单元登记存放到事先设置的子暂存空间一的即时帧;登记存放到事先设置的子暂存空间二的非即时帧;并把存放到事先设置的子暂存空间一的即时帧与存放到事先设置的子暂存空间二的非即时帧的帧数执行总计,据此形成用于代表暂存空间的存放信息量的参数消息一。
步骤8-2:参数操控单元依照信息传递次序登记持续的事先设置回数的传递时隙,各回传递时隙代表经WIFI模块传递暂存空间的信息到3D打印上位机收取结束信息且WIFI模块传递后一回暂存空间的信息前的时长;
而事先设置回数,其就像是依照信息传递次序的持续三回;另外,事先设置回数亦能是其他的回数;另外,WIFI模块传递的暂存空间的信息不光包含存放到事先设置的子暂存空间一的即时帧,亦包含存放到事先设置的子暂存空间二的非即时帧,因为即时帧与非即时帧均为要经由接口传递到3D打印上位机的;所以,与要总计持续事先设置回数的包含即时帧与非即时帧的传递时隙。
步骤8-3:参数操控单元依据事先设置回数与持续的事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二。
由此可知,本申请可经由参数消息一与参数消息二正确监控WIFI模块与3D打印上位机的现时信息传递与收取功能,以此宜于3D打印上位机正确判定之后实际交互方法为触发启动方法或定时侦听方法。
所述步骤7-6具体包括:
步骤7-6-1:3D打印上位机认定有没有符合变动要求的状况是不是出现改变,该变动要求包含如下随便一条:参数消息一不低于事先设置的积聚临界量;参数消息二不高于事先设置时长临界量;若3D打印上位机认定有没有符合变动要求的状况没出现改变,就转到7-6-8去执行;
步骤7-6-2:若3D打印上位机认定有没有符合变动要求的状况出现改变,3D打印上位机依据所述状况出现改变的消息,在事先设置的队列内存进事先设置信息一,事先设置信息一代表3D打印上位机要变动到的实际交互方法;就像,事先设置信息一代表不一样的数,分别代表实际交互方法为定时侦听方法和触发启动方法。
就像,3D打印上位机认定有没有符合变动要求的状况出现改变后,就像参数消息二改变成不高于事先设置时长临界量,就在事先设置的队列存进事先设置信息一,且让事先设置信息一的数代表3D打印上位机要变动到定时侦听方法。
步骤7-6-3:WIFI模块用事先设置的时长取出事先设置的队列的信息;因为WIFI模块不了解3D打印上位机什么时候执行交互方法的变动,所以要用事先设置的时长定时的取出事先设置的队列的信息,据此即时面对3D打印上位机的交互方法变动执行回应。
步骤7-6-4:WIFI模块认定所取出事先设置的队列的信息是不是为事先设置信息一;
若WIFI模块认定所取出事先设置的队列的信息并不是事先设置信息一,就返回步骤7-6-3去执行;
步骤7-6-5:若WIFI模块认定所取出事先设置的队列的信息是事先设置信息一,WIFI模块在事先设置的队列存进事先设置的信息二,事先设置的信息二代表WIFI模块要与3D打印上位机共同变动到实际交互方法;事先设置的信息二同事先设置信息一有差异。
步骤7-6-6:3D打印上位机认定事先设置的队列是不是被存进事先设置的信息二;就像,3D打印上位机取出事先设置的队列的信息,据此确认WIFI模块是不是已回应。
步骤7-6-7:若3D打印上位机认定事先设置的队列被存进事先设置的信息二,变动3D打印上位机到实际交互方法。
步骤7-6-8:若3D打印上位机认定事先设置的队列没被存进事先设置的信息二,3D打印上位机保持现时交互方法。
经由运用上述手段,本申请可让WIFI模块与3D打印上位机端可共同的执行交互方法的变动,防止出现WIFI模块与3D打印上位机内的一方位于定时侦听方法,另一方位于触发启动方法的情形。
认定事先设置的积聚临界量或者事先设置的时长临界量的方法,包括:
步骤7-1-1:设置事先设置的积聚临界量与事先设置的时长临界量,事先设置的时长临界量高过WIFI模块的总传递时长,总传递时长包含一回传递即时帧的时长与一回传递非即时帧的时长之和;就像,3D打印上位机在运行态时,设置事先设置的积聚临界量与事先设置的时长临界量。
步骤7-1-2:经由WIFI模块,朝3D打印上位机传递事先设置的个数临界量的信息帧,各个信息帧中包含有效信息与检错码,各个信息帧的有效信息同其他的信息帧的有效信息有差异;
所述事先设置的个数临界量,其为相应于3D打印上位机所可处置的最高信息量;经由把事先设置的个数临界量配置为对应于3D打印上位机所可处置的最高信息量,宜于取得依据3D打印上位机的最高处置功能恰当设置事先设置的积聚临界量与事先设置的时长临界量。
各个信息帧内包含着有效信息与检错码,它同其他的信息帧的有效信息与检错码均是不一样的;本申请经由让各个信息帧相互不一样,以此达成3D打印上位机更加正确的辨别是不是带有有效信息的恶意修改,就像信息被掩盖。
检错码能够是海明码;经由该各个信息帧内的有差别的有效信息与依据有效信息而形成的检错码,本申请能正确监控或检出WIFI模块和3D打印上位机间的信息传递或存放期间常常出现的瑕疵。
步骤7-1-3:在3D打印上位机处,依据各个信息帧内所具有的检错码,确认3D打印上位机是不是完全无误收取到事先设置个数的信息帧的有效信息;
步骤7-1-4:若3D打印上位机确认3D打印上位机没完全无误收取到事先设置个数的信息帧的有效信息,执行如下随意一条直到确认3D打印上位机完全无误收取到事先设置个数的信息帧的有效信息:
减小事先设置的积聚临界量;加大事先设置的时长临界量。
就像,若面对一信息帧,依据检错码检出信息帧有误,那么3D打印上位机没完全收取到事先设置个数的信息帧的有效信息,就形成没完全无误收取到事先设置个数的信息帧的有效信息的缘故,往往经步骤7-1-1所设置的事先设置的积聚临界量与事先设置的时长临界量不恰当而使然,就像,若事先设置的时长临界量给得太低,3D打印上位机所收取的信息常常被恶意修改篡改,所以,要让事先设置的时长临界量加大;再就像,若事先设置的积聚临界量太高,常让事先设置的子暂存空间一与事先设置的子暂存空间二的信息超出范围或者被掩盖,所以,要减小事先设置的积聚临界量;经由减小增加事先设置的积聚临界量或加大事先设置的时长临界量,直到确认3D打印上位机完全无误的收取到事先设置个数的信息帧的有效信息,那么现时变动后的事先设置的积聚临界量与事先设置的时长临界量为匹配于现时3D打印上位机收取信息功能的相应临界量。
于是,本申请能依据不一样3D打印上位机由于功能、硬件限制或者环境不一样而形成的3D打印上位机收取功能的差别而设置匹配的交互方法变动要求,确保传递信息的正确度。
详细而言,所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,具体包括:
WIFI模块的信息交互单元认定是不是收取到信息帧;
若信息交互单元认定收取到信息帧,认定信息帧的帧种类是不是为即时帧;
若信息交互单元认定信息帧的帧种类是即时帧,吧信息帧存放到暂存空间的事先设置的子暂存空间一,而若认定信息帧的帧种类为非即时帧,把信息帧存放到暂存空间的事先设置的子暂存空间二;
参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一,且依据事先设置回数与所总计的持续事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二;
控制芯片面向暂存空间的信息执行信息取出来用于经暂存空间取出信息到3D打印上位机的主存关联单元;若认定现时交互方法是触发启动方法,触发启动处置单元经由控制芯片执行信息取出;具体而言,WIFI模块经由传递RX触发启动,3D打印上位机收取到触发启动后执行处置,据此经由控制芯片执行信息取出;
规则变动单元取得参数操控单元所形成的参数消息,确认是不是符合变动要求(就像,确认传递时隙的均值是不是不高于事先设置的时长临界量);
若规则变动单元认定符合变动要求,认定要变动到的实际交互方法是定时侦听方法;
把现时交互方法变动到定时侦听方法;
定时侦听处置单元经由控制芯片反复执行信息取出。
规则变动单元取得参数操控单元所形成的参数消息,据此确认是不是符合变动要求;
若规则变动单元获认定不符合变动要求,认定要变动到的实际交互方法是触发启动方法;
把现时交互方法变动到触发启动模式;
触发启动处置单元经由控制芯片执行信息取出。
本申请可让所变动的实际交互方法匹配WIFI模块与3D打印上位机的现时信息传递和收取功能,所以可减小在信息交互量不低情形下的资源花销。
以上以用实施例说明的方式对本申请作了描述,本领域的技术人员应当理解,本公开不限于以上描述的实施例,在不偏离本申请的区域的状况下,能够做出各种变化、改变和替换。
Claims (8)
1.一种针对3D打印控制软件碰撞检测系统,其特征在于,包括:
3D打印上位机、内置于3D打印上位机内的WIFI模块与处在WLAN内的后台终端;
所述3D打印上位机经由WIFI模块与后台终端连接;
运行在3D打印上位机上的单元包括检测单元;
所述检测单元用于在打印零件之前,每增加一个零件,先检测软件界面上的零件的电子模型与基板的位置关系,即判定零件的外接矩形与基板区域的位置关系;如果零件的外接矩形四个顶点全部落在基板区域内,那么表示零件的外接矩形区域全部落在基板区域内,则表示零件与基板不存在碰撞,该零件能够正常打印;如果零件的外接矩形的四个顶点不是全部都落在基板区域内,就使用凸包算法判定,即先获得零件在平面上的凸包,将凸包上的点逐个检测是否落在基板区域内,如果凸包上各个点都落在基板区域内,就认为零件与基板不存在碰撞,如果凸包上有一个点落在基板区域外,就认为当前零件与基板区域发生碰撞;还用于检测了当前零件与基板是否存在碰撞之后,如果当前零件总数目仅有一个,就不需要之后操作;如果当零件数目至少为两个,就要检测每两个零件之间是否存在碰撞;任意选择两个零件进行碰撞检测,将当前选择的两个零件中的一个零件在平面上投影,获得当前零件在平面上的凸包T1;如果该零件的电子模型内部存在空心区域,就获得该空心区域对应的凸包T2,则该零件的凸包就是由凸包T1和凸包T2构成一个封闭环形区域;如果该零件的电子模型数据内部不存在空心区域,则该零件的凸包就是由凸包T1构成一个封闭区域;依照同样的方法,再计算出另一个零件的凸包;将这两个零件对应的凸包进行比较,如果两个零件的凸包不重叠或不交叉,就认为两零件不存在碰撞;如果发现两个零件的凸包有重叠或交叉,就认为这两个零件存在碰撞;
WIFI模块包括控制芯片、参数操控单元、暂存空间与信息交互单元;
所述暂存空间,其包含事先设置的子暂存空间一与事先设置的子暂存空间二;事先设置的子暂存空间一用于存放帧种类是即时帧的信息帧;事先设置的子暂存空间二用于存放帧种类是非即时帧的信息帧;
所述信息交互单元,其用于经WLAN中的后台终端收取信息;信息交互单元还用于认定所收取到的信息帧的帧种类是不是为即时帧,若认定所收取的信息帧的帧种类为即时帧,把信息帧存放到事先设置的子暂存空间一;若认定信息帧的帧种类是非即时帧,把信息帧存放到事先设置的子暂存空间二;
所述参数操控单元,其用于登记暂存空间的信息积聚消息,据此形成用于代表暂存空间的存放信息量的参数消息一;与运算事先设置回数的信息传递时隙的均值,据此形成用于代表传递时隙的均值的参数消息二;
所述控制芯片,其用于经暂存空间取出信息到3D打印上位机的主存空间。
2.根据权利要求1所述的针对3D打印控制软件碰撞检测系统,其特征在于,所述3D打印上位机,其包含触发启动处置单元、定时侦听处置单元、规则变动单元与主存关联单元;
所述触发启动处置单元,其用于在交互方法是触发启动方法时取出且处置信息;
所述定时侦听处置单元,其用于在交互方法是定时侦听方法时取出且处置信息;
所述规则变动单元,其用于取得WIFI模块的参数消息,据此依据参数消息认定是不是符合变动要求;若参数消息一不低于事先设置的积聚临界量,或参数消息二不高于事先设置的时长临界量,就让3D打印上位机与WIFI模块间的交互方法是定时侦听方法,若参数消息一低于事先设置的积聚临界量,或参数消息二高过事先设置时长临界量,就让3D打印上位机与WIFI模块间的交互方法是触发启动方法。
3.一种针对3D打印控制软件碰撞检测系统的检测方法,其特征在于,包括如下步骤:
步骤1:在打印零件之前,每增加一个零件,先检测软件界面上的零件的电子模型与基板的位置关系,即判定零件的外接矩形与基板区域的位置关系;
步骤2:如果零件的外接矩形四个顶点全部落在基板区域内,那么表示零件的外接矩形区域全部落在基板区域内,则表示零件与基板不存在碰撞,该零件能够正常打印;
步骤3:如果零件的外接矩形的四个顶点不是全部都落在基板区域内,就使用凸包算法判定,即先获得零件在平面上的凸包,将凸包上的点逐个检测是否落在基板区域内,如果凸包上各个点都落在基板区域内,就认为零件与基板不存在碰撞,如果凸包上有一个点落在基板区域外,就认为当前零件与基板区域发生碰撞;
步骤4:增加了第一个零件之后,之后每增加一个零件就返回步骤1执行,检测了当前零件与基板是否存在碰撞之后,如果当前零件总数目仅有一个,就不需要之后操作;如果当零件数目至少为两个,就要检测每两个零件之间是否存在碰撞;
步骤5:任意选择两个零件进行碰撞检测,将当前选择的两个零件中的一个零件在平面上投影,获得当前零件在平面上的凸包T1;如果该零件的电子模型内部存在空心区域,就获得该空心区域对应的凸包T2,则该零件的凸包就是由凸包T1和凸包T2构成一个封闭环形区域;如果该零件的电子模型数据内部不存在空心区域,则该零件的凸包就是由凸包T1构成一个封闭区域;依照同样的方法,再计算出另一个零件的凸包;将这两个零件对应的凸包进行比较,如果两个零件的凸包不重叠或不交叉,就认为两零件不存在碰撞;
如果发现两个零件的凸包有重叠或交叉,就认为这两个零件存在碰撞;
步骤6:选择另外两个零件进行碰撞检测,直到所有两两组合的零件检测完毕,彼此都不存在碰撞,才能认为当前零件排版正确,能够进行正常零件打印;
所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,包括:
步骤7-1:认定是不是WIFI模块的信息交互单元收取到信息帧,若认定WIFI模块的信息交互单元没收取信息帧,就继续守候,所述信息帧就是用帧格式执行所述信息交互的信息的信息帧;
步骤7-2:若认定WIFI模块的信息交互单元收取到信息帧,认定信息帧的帧种类是不是为即时帧;
步骤7-3:若认定信息帧的帧种类是即时帧,把信息帧存放到事先设置的子暂存空间一,暂存空间包含事先设置的子暂存空间一与事先设置的子暂存空间二;
步骤7-4:若认定信息帧的帧种类是非即时帧,把信息帧存放到事先设置的子暂存空间二;
步骤7-5:取得WIFI模块的参数消息,参数消息包含用于代表暂存空间的存放信息量的参数消息一与用于代表传递时隙的均值的参数消息二内的一个以上;
步骤7-6:依据所取得的WIFI模块的参数消息,让3D打印上位机与WIFI模块间的交互方法在定时侦听方法与触发启动方法间变动。
4.根据权利要求3所述的针对3D打印控制软件碰撞检测系统的检测方法,其特征在于,在步骤2中,判定零件的外接矩形四个顶点全部落在基板区域内的方法,包括:分别计算零件的外接矩形四个顶点的坐标和基板区域的圆心坐标之间的距离,如果所得到的四个距离都低于基板区域的半径,就判定出零件的外接矩形四个顶点全部落在基板区域内;
在步骤3中,将凸包上的点逐个检测是否落在基板区域内的方法,包括:逐个计算凸包上的点的坐标和基板区域的圆心坐标之间的距离,如果所得到的该距离低于基板区域的半径,就判定出凸包上的该点落在基板区域内;
在步骤5中,倘若发现两个零件间存在碰撞,通过移动零件的位置来让两零件不存在碰撞,每次移动位置后重新进行两零件的碰撞检测,同时在移动零件过程中也要确保不和基板发生碰撞;
在步骤5中,判定两个零件的凸包不重叠或不交叉的方法,包括:判定两个零件的凸包的所有点的坐标是不是有相同的,如果没有相同的,就表示两个零件的凸包不重叠或不交叉;
所述3D打印上位机内的零件的电子模型是经由WIFI模块收取后台终端传来的零件的电子模块,这样就达成了3D打印上位机经由WIFI模块与后台终端间的信息交互。
5.根据权利要求4所述的针对3D打印控制软件碰撞检测系统的检测方法,其特征在于,所述认定信息帧的帧种类是不是为即时帧的方法,其包括:WIFI模块的信息交互单元认定信息帧的种类信息项是不是代表事先设置的数;若认定信息帧的种类信息项代表事先设置的数,交互单元认定信息帧的帧种类为即时帧;
所述参数消息一与参数消息二的认定,其包括:WIFI模块的参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一;参数操控单元依照信息传递次序登记持续的事先设置回数的传递时隙;而参数操控单元依据事先设置回数和持续的事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二。
6.根据权利要求5所述的针对3D打印控制软件碰撞检测系统的检测方法,其特征在于,所述3D打印上位机经由WIFI模块与后台终端间的信息交互方法,还包括:
形成WIFI模块的参数消息;
所述形成WIFI模块的参数消息的方法,包括:
步骤8-1:WIFI模块的参数操控单元登记暂存空间的信息积聚消息,据此形成参数消息一;
步骤8-2:参数操控单元依照信息传递次序登记持续的事先设置回数的传递时隙,各回传递时隙代表经WIFI模块传递暂存空间的信息到3D打印上位机收取结束信息且WIFI模块传递后一回暂存空间的信息前的时长;
步骤8-3:参数操控单元依据事先设置回数与持续的事先设置回数的传递时隙,运算传递时隙的均值,据此形成参数消息二。
7.根据权利要求6所述的针对3D打印控制软件碰撞检测系统的检测方法,其特征在于,所述步骤7-6具体包括:
步骤7-6-1:3D打印上位机认定有没有符合变动要求的状况是不是出现改变,若3D打印上位机认定有没有符合变动要求的状况没出现改变,就转到7-6-8去执行;
步骤7-6-2:若3D打印上位机认定有没有符合变动要求的状况出现改变,3D打印上位机依据所述状况出现改变的消息,在事先设置的队列内存进事先设置信息一,事先设置信息一代表3D打印上位机要变动到的实际交互方法;
步骤7-6-3:WIFI模块用事先设置的时长取出事先设置的队列的信息;
步骤7-6-4:WIFI模块认定所取出事先设置的队列的信息是不是为事先设置信息一;
若WIFI模块认定所取出事先设置的队列的信息并不是事先设置信息一,就返回步骤7-6-3去执行;
步骤7-6-5:若WIFI模块认定所取出事先设置的队列的信息是事先设置信息一,WIFI模块在事先设置的队列存进事先设置的信息二,事先设置的信息二代表WIFI模块要与3D打印上位机共同变动到实际交互方法;
步骤7-6-6:3D打印上位机认定事先设置的队列是不是被存进事先设置的信息二;
步骤7-6-7:若3D打印上位机认定事先设置的队列被存进事先设置的信息二,变动3D打印上位机到实际交互方法;
步骤7-6-8:若3D打印上位机认定事先设置的队列没被存进事先设置的信息二,3D打印上位机保持现时交互方法。
8.根据权利要求7所述的针对3D打印控制软件碰撞检测系统的检测方法,其特征在于,认定事先设置的积聚临界量或者事先设置的时长临界量的方法,包括:
步骤7-1-1:设置事先设置的积聚临界量与事先设置的时长临界量,事先设置的时长临界量高过WIFI模块的总传递时长;
步骤7-1-2:经由WIFI模块,朝3D打印上位机传递事先设置的个数临界量的信息帧,各个信息帧中包含有效信息与检错码;
步骤7-1-3:在3D打印上位机处,依据各个信息帧内所具有的检错码,确认3D打印上位机是不是完全无误收取到事先设置个数的信息帧的有效信息;
步骤7-1-4:若3D打印上位机确认3D打印上位机没完全无误收取到事先设置个数的信息帧的有效信息,执行如下随意一条直到确认3D打印上位机完全无误收取到事先设置个数的信息帧的有效信息:
减小事先设置的积聚临界量;加大事先设置的时长临界量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210384945.2A CN114714627B (zh) | 2022-04-13 | 2022-04-13 | 针对3d打印控制软件碰撞检测系统及其检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210384945.2A CN114714627B (zh) | 2022-04-13 | 2022-04-13 | 针对3d打印控制软件碰撞检测系统及其检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114714627A CN114714627A (zh) | 2022-07-08 |
CN114714627B true CN114714627B (zh) | 2023-07-18 |
Family
ID=82244671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210384945.2A Active CN114714627B (zh) | 2022-04-13 | 2022-04-13 | 针对3d打印控制软件碰撞检测系统及其检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114714627B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116968316B (zh) * | 2023-09-22 | 2024-02-20 | 易加三维增材技术(杭州)有限公司 | 模型碰撞检测方法、装置、存储介质和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002153657A (ja) * | 2000-11-22 | 2002-05-28 | Heiwa Corp | 遊技機管理装置および遊技機管理プログラムを記録した記録媒体 |
CN101184626A (zh) * | 2005-05-30 | 2008-05-21 | 爱克发印艺公司 | 防碰撞方法及检测器 |
CN105469406A (zh) * | 2015-11-30 | 2016-04-06 | 东北大学 | 一种基于包围盒与空间划分的虚拟物体碰撞检测方法 |
CN105590339A (zh) * | 2015-12-15 | 2016-05-18 | 广州南沙3D打印创新研究院 | 三维模型的碰撞检测方法及系统 |
EP3627255A1 (en) * | 2018-09-20 | 2020-03-25 | XYZprinting, Inc. | Method for detecting object border of 3d printer |
CN111652908A (zh) * | 2020-04-17 | 2020-09-11 | 国网山西省电力公司晋中供电公司 | 一种虚拟现实场景的操作碰撞检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8041509B2 (en) * | 2008-08-19 | 2011-10-18 | Analytical Graphics, Inc. | System and method of addressing nonlinear relative motion for collision probability using parallelepipeds |
-
2022
- 2022-04-13 CN CN202210384945.2A patent/CN114714627B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002153657A (ja) * | 2000-11-22 | 2002-05-28 | Heiwa Corp | 遊技機管理装置および遊技機管理プログラムを記録した記録媒体 |
CN101184626A (zh) * | 2005-05-30 | 2008-05-21 | 爱克发印艺公司 | 防碰撞方法及检测器 |
CN105469406A (zh) * | 2015-11-30 | 2016-04-06 | 东北大学 | 一种基于包围盒与空间划分的虚拟物体碰撞检测方法 |
CN105590339A (zh) * | 2015-12-15 | 2016-05-18 | 广州南沙3D打印创新研究院 | 三维模型的碰撞检测方法及系统 |
EP3627255A1 (en) * | 2018-09-20 | 2020-03-25 | XYZprinting, Inc. | Method for detecting object border of 3d printer |
CN111652908A (zh) * | 2020-04-17 | 2020-09-11 | 国网山西省电力公司晋中供电公司 | 一种虚拟现实场景的操作碰撞检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114714627A (zh) | 2022-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109840504B (zh) | 物品取放行为识别方法、装置、存储介质及设备 | |
CN114714627B (zh) | 针对3d打印控制软件碰撞检测系统及其检测方法 | |
CN104268498B (zh) | 一种二维码的识别方法及终端 | |
CN109931942B (zh) | 机器人路径生成方法、装置、机器人和存储介质 | |
EP2920730B1 (en) | Method for authenticating capacitive touch | |
EP2639743A2 (en) | Image processing device, image processing program, and image processing method | |
EP2736012A1 (en) | Object identification system and program | |
CN109886189A (zh) | 指纹模板获取方法及相关装置 | |
CN106781659B (zh) | 一种车位状态基准值标定方法和装置 | |
CN111126286A (zh) | 车辆动态检测方法、装置、计算机设备及存储介质 | |
CN111767912A (zh) | 标记点识别方法、装置、设备和存储介质 | |
EP4170616A1 (en) | Information processing system, information processing device, and information processing method | |
CN112286780A (zh) | 识别算法的测试方法、装置、设备及存储介质 | |
CN110969612A (zh) | 二维码印刷缺陷检测方法 | |
CN110909816A (zh) | 图片识别方法和装置 | |
CN115719351A (zh) | 一种车辆充电口识别方法及相关设备 | |
CN115856874A (zh) | 毫米波雷达点云降噪方法、装置、设备及存储介质 | |
CN113870223A (zh) | 设备屏幕漏液检测方法及装置 | |
CN115527241A (zh) | 指纹模板更新方法、装置、嵌入式设备及存储介质 | |
CN115131726A (zh) | 一种车位检测方法、装置、设备及介质 | |
CN111709912A (zh) | 一种圆弧边缘检测方法、装置及存储介质 | |
CN117974767B (zh) | 一种连接器的目标区域定位方法 | |
CN113050612A (zh) | 印刷有定位标识的介质、图像处理方法及自动导引车 | |
KR102519131B1 (ko) | 태그 기반 로봇 제어기의 작업 궤적 생성 방법 및 장치 | |
CN116968316B (zh) | 模型碰撞检测方法、装置、存储介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |