一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于数控系统的干涉检查方法、设备及存储介质与流程

2022-02-20 19:18:39 来源:中国专利 TAG:


1.本技术涉及数控技术领域,具体涉及一种基于数控系统的干涉检查方法、设备及存储介质。


背景技术:

2.在数控系统的加工过程中,由于刀具与工件表面接触点并非理论上的尖点,因此需要沿原始加工路径偏移一段长度,偏移的长度等于刀具半径的距离,这样才能加工出正确的工件尺寸,此过程即刀具半径补偿。补偿后的实际路径可能有干涉,导致过切并损坏零件,因而需要进行干涉检查,但对一些动辄百万行级别的雕铣加工代码,想要实时进行全路径干涉检查不太现实,只能采用离线方式,或者实时进行相邻路径干涉检查,前者会严重降低加工效率,而后者可能会漏过部分干涉路径。


技术实现要素:

3.本技术主要解决的问题是提供一种基于数控系统的干涉检查方法、设备及存储介质,能够动态调整干涉检查缓冲区的大小,提高干涉检查的准确度,降低误判概率。
4.为解决上述技术问题,本技术采用的技术方案是:提供一种基于数控系统的干涉检查方法,该方法包括:将当前编程路径的数据添加到干涉检查缓冲区,其中,干涉检查缓冲区包括至少三段相邻的编程路径的数据;获取干涉检查缓冲区中相邻路径之间的夹角的最大值;根据夹角的最大值调整干涉检查缓冲区的容量;将当前编程路径分别与干涉检查缓冲区中其他编程路径进行干涉检查,以判断当前编程路径与其他编程路径是否存在干涉;若存在干涉,则发出警告信号,停止加工。
5.为解决上述技术问题,本技术采用的另一技术方案是:提供一种干涉检查设备,该干涉检查设备包括互相连接的存储器和处理器,其中,存储器用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的基于数控系统的干涉检查方法。
6.为解决上述技术问题,本技术采用的另一技术方案是:提供一种计算机存储介质,该计算机存储介质用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的基于数控系统的干涉检查方法。
7.通过上述方案,本技术的有益效果是:将当前编程路径的数据添加到干涉检查缓冲区,根据编程路径之间夹角的最大值来动态调整干涉检查缓冲区的容量,使得干涉检查缓冲区的容量可变,然后将当前编程路径与干涉检查缓冲区中其他编程路径分别进行干涉检查,能够进行实时干涉检查,保证实时性,缩短检查时间,提高加工效率;且由于可以调整干涉检查缓冲区的容量,可以降低因干涉检查区间太小造成的误判概率。
附图说明
8.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于
本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
9.图1是不同过渡类型的编程路径与补偿路径的示意图;
10.图2是编程路径存在干涉的示意图;
11.图3是本技术提供的基于数控系统的干涉检查方法一实施例的流程示意图;
12.图4是本技术提供的基于数控系统的干涉检查方法一实施例中路径夹角的示意图;
13.图5是不同转接类型的编程路径与补偿路径的示意图;
14.图6是本技术提供的基于数控系统的干涉检查方法另一实施例的流程示意图;
15.图7是编程路径存在干涉的另一示意图;
16.图8是本技术提供的干涉检查设备一实施例的结构示意图;
17.图9是本技术提供的计算机存储介质一实施例的结构示意图。
具体实施方式
18.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
19.为弥补刀具半径或刀具磨损,cam(computer aided manufacturing,计算机辅助制造)软件生成的零件加工指令经常包含刀具偏置指令g41(左刀补)和g42(右刀补),数控系统在接收到这些指令后,根据加工方向、加工平面、所设置的偏置值及过渡类型在原始路径上进行偏移,如图1所示,图1(a)和图1(b)分别为右刀补的直线过渡和圆弧过渡。根据相邻两段编程路径的夹角α的大小,刀具半径补偿在交点处有插入型、伸长型及缩短型三种转接类型,编程路径的转接点与补偿后路径的交点之间的连线为交点矢量;根据转接类型,在编程路径的转接处会产生1-2个交点矢量。
20.现有数控系统的半径补偿实时干涉检查通常是通过判断转接处产生的交点矢量是否相交,如果相交,则认为补偿后的刀具中心点路径会切坏工件,即存在干涉。如图2所示,程序段1、程序段2以及程序段3有两个交点p1、p2,与进行刀具半径补偿后新的交点构成两个交点矢量v1、v2,图中交点矢量v1、v2相交,认为存在干涉,数控系统发出干涉告警,停止加工;如果交点矢量v1、v2不相交,则读取下一程序段4(图中未示出),与程序段3有交点p3(图中未示出),补偿后构成交点矢量v3(图中未示出),判断交点矢量v2与交点矢量v3是否相交,重复上述步骤直至所有相邻编程路径都进行了干涉判断。该干涉检查方法有一明显缺点,即交点矢量v1没有与交点矢量v3进行干涉判断,因此可能遗漏干涉路径,导致切坏工件。
21.另外一种常见的半径补偿干涉检查方法为离线全局干涉检查,先将所有编程路径进行半径补偿,求出全部的交点矢量,然后相互进行干涉判断。以图2为例,在求得交点矢量v1、v2、v3后,进行三次干涉判断:交点矢量v1与v2是否相交、交点矢量v1与v3是否相交以及交点矢量v2与v3是否相交,全部不相交则认为干涉检查通过,有任何一组交点矢量相交则认为会造成干涉。如果想要进行全局干涉检查,则必须将所有的编程路径编译后,再依次进
行干涉判断。假设刀具移动的路径段数为n,判断两个直线段是否相交需要单位时间,则会产生n-1个交点,最大会有2(n-1)个交点矢量,由于交点自身的两个交点矢量不需要进行干涉判断,则进行全局干涉检查所需的时间复杂度和空间复杂度如下所示:
22.时间复杂度:4(n-2) 4(n-3)

4=2n
2-6n 4≈o(n2)
23.空间复杂度:o(n)
24.在实际加工过程中,cam软件生成的工件加工程序往往在数万到数十万行之间,特别是雕铣程序可能达到数百万行,如果想要进行全局干涉检查,则需要数万亿次干涉判断,显然在实时性上无法满足要求,因此全局干涉检查往往采用离线方式,即在加工前先在电脑上进行干涉检查,通过后再拿到数控系统上加工。该方法增加了一个环节导致不确定性变大,且在使用不同的刀具或刀具磨损后需要重新进行干涉检查,严重影响加工效率。
25.参阅图3,图3是本技术提供的基于数控系统的干涉检查方法一实施例的流程示意图,该方法包括:
26.步骤31:将当前编程路径的数据添加到干涉检查缓冲区。
27.该干涉检查缓冲区用于暂存编程路径的数据,其包括至少三段相邻的编程路径的数据;干涉检查缓冲区具有一初始容量,可根据实际加工经验以及待加工程序路径的长度和夹角,设置干涉检查缓冲区的容量n,容量n可以为3~20,当n=3时,其为能进行干涉检查的最短路径段数。
28.步骤32:获取干涉检查缓冲区中相邻路径之间的夹角的最大值。
29.例如,如图4所示,干涉检查缓冲区存放有三段相邻的编程路径a、b和c的数据,当前编程路径为编程路径a,分别检测编程路径a和编程路径b之间的夹角α1的大小以及编程路径b和编程路径c之间的夹角α2的大小,在获得夹角α1和夹角α2之后,比较两者的大小,得到干涉检查缓冲区中夹角的最大值。
30.步骤33:根据夹角的最大值调整干涉检查缓冲区的容量。
31.根据编程路径之间的夹角α的大小,半径补偿在交点处分为三种转接类型:插入型、伸长型以及缩短型。
32.在一具体的实施例中,如图5所示,当夹角α《90
°
时,补偿后会在转接处插入一段新路径,即转接类型为插入型,如图5(a)所示;当90
°
≤α《180
°
时,对补偿后的路径延长求交点,即转接类型为伸长型,如图5(b)所示;当α≥180
°
时,对补偿后的路径缩短求交点,即转接类型为缩短型,如图5(c)所示。
33.当α《180
°
时,刀具绕着待加工工件外边移动,称为外边加工;当α≥180
°
时,刀具绕着待加工工件内边移动,称为内边加工,内边加工刀补后的路径与接下来的路径干涉的概率会增大。因此本实施例引入了如下干涉检查缓冲区大小动态调整规则:获取当前干涉检查缓冲区中最大夹角α
max
,当α
max
《180
°
时,干涉检查缓冲区的容量为初始容量,当α
max
≥180
°
时,干涉检查缓冲区的容量调整为初始容量的2倍。
34.步骤34:将当前编程路径分别与干涉检查缓冲区中其他编程路径进行干涉检查,以判断当前编程路径与其他编程路径是否存在干涉。
35.在对干涉检查缓冲区的容量调整之后,可以将当前编程路径与其他路径进行干涉检查,其他编程路为干涉检查缓冲区中除当前编程路径以外的编程路径。
36.步骤35:若当前编程路径与其他编程路径存在干涉,则发出警告信号,停止加工。
37.将当前编程路径与其他编程路径进行干涉检查时,如果存在干涉,则停止加工,如果不存在干涉,则将当前编程路径与其他编程路径中的下一个编程路径进行干涉检查,重复之前的操作,直至将当前编程路径与其他编程路径中的每条编程路径都进行了干涉检查或存在干涉检查后退出流程;例如,如图4所示,将编程路径a与编程路径b进行干涉检查,如果干涉,则发出警告信号,如果未干涉,则将编程路径a与编程路径c进行干涉检查。
38.区别于现有技术,本实施例提供了一种基于数控系统的干涉检查方法,根据编程路径之间夹角的最大值来动态调整干涉检查缓冲区的容量,使得干涉检查缓冲区的容量可变,然后将当前编程路径与干涉检查缓冲区中其他编程路径分别进行干涉检查,进行自适应实时干涉检查,由于可以调整干涉检查缓冲区的容量,在保证实时性的同时能够降低因干涉检查区间太小造成的误判。
39.参阅图6,图6是本技术提供的基于数控系统的干涉检查方法另一实施例的流程示意图,该方法包括:
40.步骤601:读取新的编程路径,以作为当前编程路径。
41.数控系统读取新的加工行并进行编译,即读取新的编程路径,可读取编程路径对应的终点坐标,将已处理完的编程路径的终点作为当前编程路径的起点坐标。
42.步骤602:获取当前编程路径与上一段编程路径之间的夹角。
43.根据当前编程路径的终点坐标以及上一段编程路径的起点坐标和终点坐标,计算出夹角;例如,上一段编程路径的起点坐标和终点坐标分别为a(x1,x2)和b(x1,x2),当前编程路径的终点坐标为c(x3,x3),则夹角从而根据坐标值计算出夹角的大小。
44.步骤603:根据当前编程路径与上一段编程路径之间的夹角和补偿方向得到过渡类型。
45.刀具半径补偿就是计算刀具中心轨迹的各个转接点的坐标值,计算方法与轮廓线型(直线或圆弧)、转接类型(缩短型、伸长型或插入型)以及刀补状态(建立状态、进行状态、撤销状态和非刀具半径补偿状态)有关;夹角、补偿方向与过渡类型具有映射关系,例如,刀补状态为建立状态,且为右刀补时,轮廓线型为直线-直线或直线-圆弧,当α《90
°
时,转接类型为插入型;当90
°
≤α《180
°
时,转接类型为伸长型;当α≥180
°
时,转接类型为缩短型。
46.步骤604:根据当前编程路径的数据、上一段编程路径的数据以及过渡类型生成当前补偿路径的数据。
47.获取新的编程路径与上一段编程路径之间的夹角之后,可根据夹角、补偿方向和过渡类型生成当前补偿路径,当前编程路径的数据包括交点矢量,干涉检查缓冲区包括相邻的两段编程路径对应的交点矢量。
48.步骤605:根据当前补偿路径与上一段补偿路径的交点以及当前编程路径与上一段编程路径的交点,得到交点矢量。
49.在一具体的实施例中,获取当前编程路径与上一段编程路径之间的交点,记作第一交点;获取当前补偿路径与上一段补偿路径之间的交点,记作第二交点;将第二交点的坐
标与第一交点的坐标对应相减,得到交点矢量。
50.步骤606:将当前编程路径对应的交点矢量存入干涉检查缓冲区。
51.将根据当前编程路径和补偿路径生成的交点矢量存入干涉检查缓冲区。
52.步骤607:获取干涉检查缓冲区中相邻路径之间的夹角的最大值。
53.步骤608:判断干涉检查缓冲区中相邻路径之间的夹角是否大于预设夹角。
54.在一具体的实施例中,该预设夹角为180
°
,获取当前干涉检查缓冲区中相邻路径的最大夹角α
max
,如果α
max
《180
°
,则执行步骤612,如果α
max
≥180
°
,则执行步骤609。
55.步骤609:若干涉检查缓冲区中相邻路径之间的夹角大于预设夹角,则将干涉检查缓冲区的容量调整为预设容量。
56.在干涉检查缓冲区中相邻路径之间的夹角大于预设夹角时,可对干涉检查缓冲区的容量进行调整,使得干涉检查缓冲区的容量为预设容量,该预设容量大于干涉检查缓冲区的初始容量,具体地,预设容量为初始容量的两倍。
57.在一具体的实施例中,若干涉检查缓冲区中相邻路径之间的夹角大于预设夹角,则判断干涉检查缓冲区的容量是否为预设容量;若干涉检查缓冲区的容量为预设容量,则将当前编程路径分别与干涉检查缓冲区中其他编程路径进行干涉检查,执行步骤610;若干涉检查缓冲区的容量不为预设容量,如干涉检查缓冲区的容量小于预设容量,则将干涉检查缓冲区的容量增加到预设容量。
58.步骤610:判断当前编程路径对应的交点矢量与干涉检查缓冲区中其他交点矢量是否相交。
59.为了判断当前编程路径与干涉检查缓冲区中其他编程路径是否存在干涉,可以将当前编程路径所对应的交点矢量分别与干涉检查缓冲区中其他编程路径所对应的交点矢量依次进行干涉检查,判断交点矢量是否相交;若当前编程路径对应的交点矢量与其他交点矢量相交,则判定存在干涉;若当前编程路径对应的交点矢量与其他交点矢量不相交,则判定为不存在干涉。
60.步骤611:若当前编程路径与其他编程路径存在干涉,则发出警告信号,停止加工。
61.例如,当前干涉检查区中编程路径对应的交点矢量分别为v1、v2和v3,当前编程路径对应的交点矢量为v1,将交点矢量v1与交点矢量v2进行是否相交的判断,若相交,则干涉报警,退出流程;若不相交,则判断交点矢量v1和v3是否相交,若相交,则报警,若不相交,则可准备利用刀具对待加工工件进行加工。
62.步骤612:在干涉检查缓冲区中相邻路径之间的夹角小于预设夹角时,判断干涉检查缓冲区的容量是否为初始容量。
63.如果干涉检查缓冲区中相邻路径之间的夹角小于预设夹角,则表明当前无需增加干涉检查缓冲区的容量,甚至在干涉检查缓冲区的容量比较大时,可减少干涉检查缓冲区的容量。
64.步骤613:若干涉检查缓冲区的容量不为初始容量,则设置缓冲减少标志位,将干涉检查缓冲区的容量减少至初始容量。
65.若干涉检查缓冲区的容量大于初始容量,则设置缓冲减少标志位,减少干涉检查缓冲区的容量,并执行步骤610;若干涉检查缓冲区的容量为初始容量,则直接执行步骤610。
66.步骤614:在不存在干涉时,判断是否具有缓冲减少标志位。
67.如果当前编程路径对应的交点矢量与干涉检查缓冲区中其他交点矢量均不相交,则检查是否有干涉检查缓冲区的缓冲减少标志位,如果具有缓冲减少标志位,则执行步骤615,否则执行步骤616。
68.步骤615:若具有缓冲减少标志位,则将干涉检查缓冲区的容量减少到初始容量,并将当前编程路径的数据从干涉检查缓冲区移出。
69.若具有缓冲减少标志位,则减少干涉检查缓冲区的容量到初始容量,将干涉检查缓冲区头部多出来的路径发送到下一处理模块,然后执行步骤616,其中,干涉检查缓冲区头部多出来的路径为最早进入干涉检查缓冲区的路径。
70.步骤616:若不具有缓冲减少标志位,则判断当前干涉检查缓冲区中的编程路径的数量是否等于干涉检查缓冲区的容量。
71.如果不具有缓冲减少标志位,则检查干涉检查缓冲区是否已满,如果当前干涉检查缓冲区中的编程路径的数量等于干涉检查缓冲区的容量,则执行步骤617;若当前干涉检查缓冲区中的编程路径的数量不等于干涉检查缓冲区的容量,则执行读取新的编程路径,以作为当前编程路径的步骤,重复上述流程直至没有新的路径或者报警退出。
72.步骤617:若当前干涉检查缓冲区中的编程路径的数量等于干涉检查缓冲区的容量,则将当前编程路径的数据从干涉检查缓冲区移出。
73.将干涉检查缓冲区头部的路径发送到下一模块,然后执行步骤601,重复上述流程直至没有新的路径或者报警退出。
74.在一具体的实施例中,如图7所示,假设干涉检查缓冲区大小设为6,如果干涉检查缓冲区的大小保持不变,则程序段8在补偿后与程序段7产生的交点p7处的交点矢量不会与p1处的交点矢量进行干涉判断,因此会遗漏该处干涉点,导致切坏工件。而采用本技术的方法,在对程序段2和程序段3补偿后,由于程序段2和程序段3之间的夹角大于180
°
,则将干涉检查缓冲区的容量扩大至12,因而可对交点p7处的交点矢量与p1处的交点矢量进行干涉判断,由于p7处的交点矢量和p1处的交点矢量相交,因而此时系统会报警,及时停止加工,避免切坏工件。
75.在进行干涉检查时,根据路径夹角确定干涉检查缓冲区的大小,在极限情况下也能满足数控系统的实时性需求而不用转做离线干涉检查,相比离线干涉检查,可缩短干涉检查时间,实现实时性;同时能动态调整干涉检查缓冲区的大小,由于内边加工更有可能产生干涉,在内边加工时增大干涉检查缓冲区的容量,使得内边加工路径与更多附近的路径进行干涉判断,降低误判概率。
76.参阅图8,图8是本技术提供的干涉检查设备一实施例的结构示意图,干涉检查设备80包括互相连接的存储器81和处理器82,其中,存储器81用于存储计算机程序,计算机程序在被处理器82执行时,用于实现上述实施例中的基于数控系统的干涉检查方法。
77.由于可根据路径夹角来动态调整,干涉检查设备80可满足数控系统的实时性要求,并尽可能避免干涉误判,避免出现过切削。
78.参阅图9,图9是本技术提供的计算机存储介质一实施例的结构示意图,计算机存储介质90用于存储计算机程序91,计算机程序91在被处理器执行时,用于实现上述实施例中的基于数控系统的干涉检查方法。
79.存储介质90可以是服务端、u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
80.在本技术所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
81.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
82.另外,在本技术各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
83.以上仅为本技术的实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献