CN104076736B - 基于教导指令实现运动控制多分支同步执行的方法 - Google Patents
基于教导指令实现运动控制多分支同步执行的方法 Download PDFInfo
- Publication number
- CN104076736B CN104076736B CN201410334721.6A CN201410334721A CN104076736B CN 104076736 B CN104076736 B CN 104076736B CN 201410334721 A CN201410334721 A CN 201410334721A CN 104076736 B CN104076736 B CN 104076736B
- Authority
- CN
- China
- Prior art keywords
- branch
- instruction
- teaching
- limb
- execution
- 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
Landscapes
- Numerical Control (AREA)
Abstract
本发明涉及一种工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的方法包括支持多分支同步执行的数控加工教导文件生成处理操作和多分支同步执行运动控制处理操作,所述的支持多分支同步执行的数控加工教导文件生成处理操作。采用该种基于教导指令实现运动控制多分支同步执行的方法,使数控系统可以同步执行多个其他不相冲突的动作,使机床进行更高效的加工,极大提高了机床加工效率,在相同时间内可以执行更多操作,节省人力成本,能够为社会创造更多价值;其中使用的一整套自定义保存机制能够确保加工数据的安全保存,并在系统资源的开销上相对较小,提高了系统的整体效率,工作性能稳定可靠、适用范围较为广泛。
Description
技术领域
本发明涉及领域工业控制系统领域,特别涉及机械手控制系统的应用技术领域,具体是指一种工业控制系统中基于教导指令实现运动控制多分支同步执行的方法。
背景技术
现有数控系统中使用教导方式编辑教导文件进行加工的,都是把数控系统上的一整套功能操作分成各种不同的教导指令,一般是使用顺序执行的方式从教导文件中的第一条指令开始执行到最后一条指令直至结束,即执行了一次加工文件。有些教导文件中可能存在跳转指令,虽然顺序有些变动,但是运行的实际效果仍然是按照特定的顺序一条接一条指令的顺序执行。
在对数控系统的实际操作中,有一些教导指令相互之间是不冲突的,理论上可以同时执行以完成机床和控制系统的某种功能需求。机床和控制系统的某些动作可能耗时还比较多,即对应的教导指令中的某些步骤可能在执行的过程中需要特定的时长,如果在此过程中数控系统无法同时执行其他不冲突的动作,将会对最终的加工效率造成一定的影响,无法达到最优的加工效果。长时间累积下来,也会对最终的经济效益有很大的影响。
为了解决上述问题,迫切需要一种使用并行方式多分支同步执行数控教导指令的方案,使数控系统可以在执行某一动作的过程中同步执行多个其他不相冲突的操作。
发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能够确保数控系统在执行某一动作的过程中同步执行多个其他不相冲突的动作、显著提高机床的加工效率、在相同的时间内可以执行更多操作、工作性能稳定可靠、适用范围较为广泛的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法。
为了实现上述的目的,本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法如下:
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其主要特点是,所述的方法包括支持多分支同步执行的数控加工教导文件生成处理操作和多分支同步执行运动控制处理操作,所述的支持多分支同步执行的数控加工教导文件生成处理操作,包括以下步骤:
(1.1)所述的系统根据用户操作,生成包含分支指令集的教导指令集合并进行存储;
(1.2)所述的系统根据所述的教导指令集合生成支持多分支同步执行的数控加工教导文件并进行存储;
所述的多分支同步执行运动控制处理操作,包括以下步骤:
(2.1)所述的系统根据用户操作,载入所述的支持多分支同步执行的数控加工教导文件,并解析成为标准数控加工指令;
(2.2)所述的系统创建分支链表,并将需要同步执行的各个分支添加至该分支链表中;
(2.3)所述的系统执行到分支操作时,通过定时装置遍历监控所述的分支链表,控制各个分支的同步执行处理;
(2.4)所述的系统继续执行分支操作之后的其他数控加工指令。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的分支指令集中包括分支指令和合并分支指令。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的将教导指令集合并进行存储,包括以下步骤:
(1.1.1)将所述的教导指令集合在所述的系统中以子程序的形式进行保存;
(1.1.2)将所述的子程序以预设的数据格式保存在系统的硬盘中。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的根据教导指令集合生成支持多分支同步执行的数控加工教导文件并进行存储,包括以下步骤:
(1.2.1)所述的系统根据所述的教导指令集合生成主程序文件,且该主程序文件中包含有分支指令和对应的合并分支指令,且所述的分支指令和对应的合并分支指令成对出现;
(1.2.2)所述的系统在所述的分支指令与对应的合并分支指令之间生成需要同步执行的至少两个分支,每个所述的分支中均具有独立运动指令集合,且分属于不同分支中的独立运动指令集合之间彼此互不冲突;
(1.2.3)所述的系统将所述的主程序程序以预设的数据格式保存在系统的硬盘中。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的独立运动指令集合中包含有由相应的操作指令所分解得到的多步原子操作步骤,且每步所述的原子操作步骤中均包含有执行该原子操作所需要的信息。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的分支中还可以包括对子程序的调用。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的创建分支链表,包括以下步骤:
(2.2.1)所述的系统中的解析器在解析数控加工教导文件的过程中,当解析到所述的分支指令时创建该分支链表;
(2.2.2)所述的解析器将系统中的分支标示位设置为TRUE。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的通过定时装置遍历监控所述的分支链表控制各个分支的同步执行处理,包括以下步骤:
(2.3.1)所述的定时装置持续扫描所述的分支标示位是否为TRUE;
(2.3.2)如果否,则重复上述步骤(2.3.1);
(2.3.3)如果是,则所述的定时装置周期性的扫描遍历所述的分支链表,并依次判断该分支链表中每一个节点所对应的分支的步骤是否已经执行完毕;
(2.3.4)如果执行完毕,则返回步骤(2.3.3)继续扫描遍历所述的分支链表;
(2.3.5)如果未执行完毕,则按照顺序逐一判断该分支中的每一步原子操作步骤是否已执行;
(2.3.6)如果未执行,则执行该步原子操作步骤所对应的操作动作;否则返回上述步骤(2.3.5),直到所有的原子操作步骤均执行完毕,返回上述步骤(2.3.4);
(2.3.7)当所述的定时装置检测到所有的节点所对应的分支的步骤均执行完毕后,该定时装置将所述的分支标示位设置为FLASE,并返回步骤(2.4)。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的执行该步原子操作步骤所对应的操作动作,包括以下步骤:
(2.3.6.1)系统控制执行所述的原子操作步骤所对应的操作动作;
(2.3.6.2)设置该部原子操作步骤所对应的继续向下执行标识位为TRUE。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的判断原子操作步骤是否已执行,具体为:
(2.3.5.1)所述的定时装置判断该原子操作步骤所对应的继续向下执行标识位是否为TRUE;
(2.3.5.2)如果是,则返回已执行的结果;如果否,则返回未执行的结果。
该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的原子操作步骤为置端口操作或者延时操作时,所述的步骤(2.3.6.1)中还包括以下步骤:
(2.3.6.1.1)将时间参数减去一个扫描周期,以更新时间;
(2.3.6.1.2)继续执行下一步的原子操作步骤。
采用了该发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,由于其中增加了分支的教导指令,最终用户可以更方便地使用数控系统,让机床加工中能够并行执行操作步骤,使数控系统可以在执行某一动作的过程中同步执行多个其他不相冲突的动作,从而使机床可以进行更高效的加工,极大的提高了机床的加工效率,在相同的时间内可以执行更多操作,节省人力成本,能够为社会创造更多价值;同时其中使用的一整套自定义的保存机制能够确保加工数据的安全保存,并在系统资源的开销上相对较小,提高了系统的整体效率,工作性能稳定可靠、适用范围较为广泛。
附图说明
图1为本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的文件保存过程示意图。
图2为本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的教导指令解释示意图。
图3为本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的分支执行原理示意图。
图4为本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的分支同步执行过程的流程图。
图5为本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的分支内部拆分过程示意图。
图6为本发明的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法中的分支执行过程整体示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1至图6所示,该工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其中包括支持多分支同步执行的数控加工教导文件生成处理操作和多分支同步执行运动控制处理操作,所述的支持多分支同步执行的数控加工教导文件生成处理操作,包括以下步骤:
(1.1)所述的系统根据用户操作,生成包含分支指令集的教导指令集合并进行存储;该分支指令集中包括分支指令和合并分支指令;该将教导指令集合并进行存储,包括以下步骤:
(1.1.1)将所述的教导指令集合在所述的系统中以子程序的形式进行保存;
(1.1.2)将所述的子程序以预设的数据格式保存在系统的硬盘中;
(1.2)所述的系统根据所述的教导指令集合生成支持多分支同步执行的数控加工教导文件并进行存储,包括以下步骤:
(1.2.1)所述的系统根据所述的教导指令集合生成主程序文件,且该主程序文件中包含有分支指令和对应的合并分支指令,且所述的分支指令和对应的合并分支指令成对出现;
(1.2.2)所述的系统在所述的分支指令与对应的合并分支指令之间生成需要同步执行的至少两个分支,每个所述的分支中均具有独立运动指令集合,且分属于不同分支中的独立运动指令集合之间彼此互不冲突;该独立运动指令集合中包含有由相应的操作指令所分解得到的多步原子操作步骤,且每步所述的原子操作步骤中均包含有执行该原子操作所需要的信息;该分支中还可以包括对子程序的调用;
(1.2.3)所述的系统将所述的主程序程序以预设的数据格式保存在系统的硬盘中;所述的多分支同步执行运动控制处理操作,包括以下步骤:
(2.1)所述的系统根据用户操作,载入所述的支持多分支同步执行的数控加工教导文件,并解析成为标准数控加工指令;
(2.2)所述的系统创建分支链表,并将需要同步执行的各个分支添加至该分支链表中;该创建分支链表,包括以下步骤:
(2.2.1)所述的系统中的解析器在解析数控加工教导文件的过程中,当解析到所述的分支指令时创建该分支链表;
(2.2.2)所述的解析器将系统中的分支标示位设置为TRUE;
(2.3)所述的系统执行到分支操作时,通过定时装置遍历监控所述的分支链表,控制各个分支的同步执行处理,包括以下步骤:
(2.3.1)所述的定时装置持续扫描所述的分支标示位是否为TRUE;
(2.3.2)如果否,则重复上述步骤(2.3.1);
(2.3.3)如果是,则所述的定时装置周期性的扫描遍历所述的分支链表,并依次判断该分支链表中每一个节点所对应的分支的步骤是否已经执行完毕;
(2.3.4)如果执行完毕,则返回步骤(2.3.3)继续扫描遍历所述的分支链表;
(2.3.5)如果未执行完毕,则按照顺序逐一判断该分支中的每一步原子操作步骤是否已执行,具体为:
(2.3.5.1)所述的定时装置判断该原子操作步骤所对应的继续向下执行标识位是否为TRUE;
(2.3.5.2)如果是,则返回已执行的结果;如果否,则返回未执行的结果;
(2.3.6)如果未执行,则执行该步原子操作步骤所对应的操作动作;否则返回上述步骤(2.3.5),直到所有的原子操作步骤均执行完毕,返回上述步骤(2.3.4);该执行该步原子操作步骤所对应的操作动作,包括以下步骤:
(2.3.6.1)系统控制执行所述的原子操作步骤所对应的操作动作;当原子操作步骤为置端口操作或者延时操作时,所述的步骤(2.3.6.1)中还包括以下步骤:
(2.3.6.1.1)将时间参数减去一个扫描周期,以更新时间;
(2.3.6.1.2)继续执行下一步的原子操作步骤;
(2.3.6.2)设置该部原子操作步骤所对应的继续向下执行标识位为TRUE;
(2.3.7)当所述的定时装置检测到所有的节点所对应的分支的步骤均执行完毕后,该定时装置将所述的分支标示位设置为FLASE,并返回步骤(2.4);
(2.4)所述的系统继续执行分支操作之后的其他数控加工指令。
在实际使用当中,本发明的技术方案的具体实现过程如下:
1、通过教导编辑出来的文件,其由基本的教导指令组成,教导指令是程序加工的基本单位。为了方便解析,编辑之后的教导文件以一种自定义格式的数据保存。
2、由于程序全是通过教导编辑出来的,不会载入其他文件。因此在这里生成并保存的文件没必要按照GM指令格式设计,那样会提高解析难度。只要系统内部能够识别并解析就可以了。因此设计生成的需要保存的文件是我们自己定义的格式,方便解析,也方便修改后的保存。例如:可以定义“G011”代表Y直线运动到坐标11;定义“G131”代表将速度设为速度参数的31%;“G270”代表置输出端口y07为0;“G3721”等待输入端口x72为1。
3、程序中可以进行教导编辑和保存的文件有主程序和子程序的区分,可以教导主程序也可以教导子程序。主程序和子程序都是使用自定义的数据格式保存。其中主程序和子程序中都可以呼叫子程序,都可以包含分支指令。
4、教导之后的文件在加工之前会被解析成标准的数控加工指令,即GM指令,最终使用标准格式的加工文件进行加工。请参阅图1所示,描述的是把教导文件最终转换成数控加工文件的过程。
5、这里所谓的分支是指:在达到某种条件或是执行文件到某一行时,某些规定好的动作需要同时执行,这些同时并且按照各自顺序执行的动作就是分支。请参阅图2所示。
若无分支指令,正常的执行顺序将是按照从上到下的顺序依次执行,而此处在步骤【2】开始执行之后,步骤【3】【4】【5】同时执行,且互不影响。在步骤【3】【4】【5】都执行完毕后,【6】才执行,然后才进行下一步的执行。执行的示例如图3所示。
1)程序开始后执行普通的数控加工指令(这里需要说明的是教导文件中的全部指令都被封装成了一个个的小子程序,普通教导程序的每一步都只可能是通过教导编辑出来的数控指令,例如,可能是呼叫子程序/直线运动/延时中的一种指令)
2)当遇到分支开始的标志时,开始分支功能。这里假设有三个分支:【分支1】、【分支2】、【分支3】,这三个分支在【开始分支】后同时执行,并且互不干扰(即并行运动)。
3)在全部分支执行完毕之后才完成下面的【合并分支】,然后继续向下执行。
4)这里的【分支1】、【分支2】、【分支3】的内容其实就是一般的【子程序/直线/延时】,也就是G/M指令的集合。之所以称之为【分支】是因为不同【分支】是同时执行的,而不是按照顺序一个个执行的。
6、分支的执行原理
要实现多个操作同时运动,而现有的解析器同一时间最多支持一个分支的解析和运动。这就得想其他的办法解决多分支并行运动的问题。可以想到,每个分支,除了轴运动,其他全部都只是操作端口、延时或是速度等指令,这些动作完全可以不用解析器完成,而且每个操作需要耗费的时长各不相同。本发明把含有轴运动的的分支交由解析器完成,其他分支在其他地方完成。通过比选,综合考虑解析速度和执行效率,我们使用函数指针的形式来完成分支功能。
其中每一步操作的示例图如图5所示,假设【分支一】的GM指令的功能可以描述为:置Y11号端口为开启状态,暂停200ms,然后置Y11号端口为关闭状态。我们将这个分支做如下分解。
如图5所示,假设一个分支有3个步骤,那么我们可以把每个步骤当成一个原子操作,三个按顺序执行的原子操作组合成了这个分支。每个原子操作都可以用函数实现出来,那么可以将这个分支分成3个按顺序执行的函数。开始执行分支一时,首先判断分支一是否已经执行完毕,已执行完毕则直接跳过,控制流转交到分支二;未执行则开始执行分支的步骤一。执行步骤一时调用相关函数设置端口Y11为开启;然后设置继续向下执行标识位为true;被设置为继续向下执行的标识位为true的原子操作步骤,下次扫描到时会自动被跳过。由于步骤一设置继续向下执行标识位为true,下面会执行步骤二,首先会更新统计时间,判断设定时长(200ms)是否已到?如果时间到了,设置继续向后执行的标识位为true;如未到,设置继续向后执行的标识位为false,并且把控制流转到分支二的执行流程中。直到下一个扫描周期才会继续进入步骤二的执行逻辑。直到步骤二执行完毕,分支一的执行流才会进入步骤三,执行时会调用函数,设置Y11端口为关闭;然后会设置继续向后执行的标识位为true。如此,分支一的所有步骤都已经被执行完成,会把分支一的是否向后执行的标识位设置为true。
请参阅图4所示:我们把一组分支中的各个分支放在一个分支的链表中,每一个分支包含分支中的每一步原子操作,每一步原子操作步骤对象包含执行该操作需要的全部信息。分支的链表是解析加工文件时解析到分支指令时创建的,在执行分支操作时首先由一个定时装置定时扫描整个分支链表,首先扫描到分支一,然后判断该分支的步骤是否已经执行完毕,如果执行完毕则直接处理下一个分支,如果没有执行完毕则开始判断该分支的第一步原子操作,通过标识位判断该步骤是否已经执行过了,如果没有执行过,则执行该步对应的操作,否则直接执行下一步。需要特别指出的是,一个原子操作步骤,如果是置端口操作,或是延时操作,则会将时间参数减去一个扫描周期,达到更新时间的目的,并且继续到下一步操作而不是停止在当前步骤,直到一个分支的所有步骤都执行完毕,会给出分支执行完毕的标识。一次扫描周期会把整个分支链表中包含的所有需要执行的原子操作步骤都遍历一次,直到所有的操作都已执行完成之后给出分支执行完毕的标识。主程序会继续执行分支以外的其他操作。整个分支在执行的过程中,由于定时器的扫描周期短,实际应用中的一些操作步骤耗时和一个扫描周期相比要长很多,因此使用分支功能之后加工效率能有非常明显的提升。
本发明的一种具体实施方式,可以按下列步骤进行:
(1)通过控制系统教导出一套教导指令,并把教导出来的指令集合在控制系统中选择以子程序的形式保存,此时子程序以特定的数据格式保存在硬盘中。
(2)通过控制系统教导出一个主程序文件,主程序中需要包含分支和合并分支两种指令。在分支之后合并分支之前教导出一些不互相冲突的独立运动指令集合,其中可以包含对子程序的调用。教导完成之后的主程序也以特定格式保存在硬盘上。
(3)载入该教导文件,此时控制系统会对教导文件进行解析。选择使用当前的主程序开始在数控系统上进行加工操作。我们可以看到在程序执行到分支指令后的各个分支动作时,这些机床运动操作是同步执行的,而不是一步步的按照既定顺序等一步骤执行完成之后才执行下一个步骤操作。
本发明中的在工控中实现分支教导的方法,其中具有以下特点:
(1)机床加工文件使用教导出来的教导指令集合;
(2)教导文件和子程序文件都以自定义格式保存数据。
(3)教导指令中可以呼叫子程序。
(4)可以对子程序进行教导和编辑,也可以对主程序进行教导和编辑,主程序可以调用子程序,子程序同样可以调用子程序。
(5)教导文件的基本组成部分是教导指令,分支指令是教导指令的一种。
(6)分支指令和合并分支之间可以包含多个不相互冲突的功能分支,在解析执行的过程中这些分支是同步执行的。如分支一要求X轴向正方向运动,分支二要求X轴向负方向运动,此类不能同时执行的操作步骤视为有冲突的分支功能操作。
(7)分支指令和合并分支指令必须成对出现。
(8)位于分支指令和合并分支指令之间的每个教导指令被视为一个分支,一个分支可以包含对机床的多个操作指令。
(9)分支操作运行时会把每一个分支中的每个操作指令分解成多个最小的原子操作,这些原子操作是不能继续拆分的。
(10)在分支执行的过程中使用了高精度的定时器,在极短的时间内遍历了各分支中所有的原子操作。
(11)在分支的执行过程中遇到一些需要固定延时时间才能完成的动作,会在每一次扫描时把固定延时时间参数减去一个扫描周期,达到更新时间的目的,并且继续到下一步原子动作而不是停止在当前动作中。
(12)分支指令中包含的多个分支,其执行顺序是并行同步执行的。
采用了上述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,由于其中增加了分支的教导指令,最终用户可以更方便地使用数控系统,让机床加工中能够并行执行操作步骤,使数控系统可以在执行某一动作的过程中同步执行多个其他不相冲突的动作,从而使机床可以进行更高效的加工,极大的提高了机床的加工效率,在相同的时间内可以执行更多操作,节省人力成本,能够为社会创造更多价值;同时其中使用的一整套自定义的保存机制能够确保加工数据的安全保存,并在系统资源的开销上相对较小,提高了系统的整体效率,工作性能稳定可靠、适用范围较为广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (11)
1.一种工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的方法包括支持多分支同步执行的数控加工教导文件生成处理操作和多分支同步执行运动控制处理操作,所述的支持多分支同步执行的数控加工教导文件生成处理操作,包括以下步骤:
(1.1)所述的系统根据用户操作,生成包含分支指令集的教导指令集合并进行存储;
(1.2)所述的系统根据所述的教导指令集合生成支持多分支同步执行的数控加工教导文件并进行存储;
所述的多分支同步执行运动控制处理操作,包括以下步骤:
(2.1)所述的系统根据用户操作,载入所述的支持多分支同步执行的数控加工教导文件,并解析成为标准数控加工指令;
(2.2)所述的系统创建分支链表,并将需要同步执行的各个分支添加至该分支链表中;
(2.3)所述的系统执行到分支操作时,通过定时装置遍历监控所述的分支链表,控制各个分支的同步执行处理;
(2.4)所述的系统继续执行分支操作之后的其他数控加工指令。
2.根据权利要求1所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的分支指令集中包括分支指令和合并分支指令。
3.根据权利要求2所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的将教导指令集合进行存储,包括以下步骤:
(1.1.1)将所述的教导指令集合在所述的系统中以子程序的形式进行保存;
(1.1.2)将所述的子程序以预设的数据格式保存在系统的硬盘中。
4.根据权利要求2所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的根据教导指令集合生成支持多分支同步执行的数控加工教导文件并进行存储,包括以下步骤:
(1.2.1)所述的系统根据所述的教导指令集合生成主程序文件,且该主程序文件中包含有分支指令和对应的合并分支指令,且所述的分支指令和对应的合并分支指令成对出现;
(1.2.2)所述的系统在所述的分支指令与对应的合并分支指令之间生成需要同步执行的至少两个分支,每个所述的分支中均具有独立运动指令集合,且分属于不同分支中的独立运动指令集合之间彼此互不冲突;
(1.2.3)所述的系统将所述的主程序以预设的数据格式保存在系统的硬盘中。
5.根据权利要求4所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的独立运动指令集合中包含有由相应的操作指令所分解得到的多步原子操作步骤,且每步所述的原子操作步骤中均包含有执行该原子操作所需要的信息。
6.根据权利要求4所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的分支中还包括对子程序的调用。
7.根据权利要求4所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的创建分支链表,包括以下步骤:
(2.2.1)所述的系统中的解析器在解析数控加工教导文件的过程中,当解析到所述的分支指令时创建该分支链表;
(2.2.2)所述的解析器将系统中的分支标示位设置为TRUE。
8.根据权利要求7所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的通过定时装置遍历监控所述的分支链表控制各个分支的同步执行处理,包括以下步骤:
(2.3.1)所述的定时装置持续扫描所述的分支标示位是否为TRUE;
(2.3.2)如果否,则重复上述步骤(2.3.1);
(2.3.3)如果是,则所述的定时装置周期性的扫描遍历所述的分支链表,并依次判断该分支链表中每一个节点所对应的分支的步骤是否已经执行完毕;
(2.3.4)如果执行完毕,则返回步骤(2.3.3)继续扫描遍历所述的分支链表;
(2.3.5)如果未执行完毕,则按照顺序逐一判断该分支中的每一步原子操作步骤是否已执行;
(2.3.6)如果未执行,则执行该步原子操作步骤所对应的操作动作;否则返回上述步骤(2.3.5),直到所有的原子操作步骤均执行完毕,返回上述步骤(2.3.4);
(2.3.7)当所述的定时装置检测到所有的节点所对应的分支的步骤均执行完毕后,该定时装置将所述的分支标示位设置为FLASE,并返回步骤(2.4)。
9.根据权利要求8所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的执行该步原子操作步骤所对应的操作动作,包括以下步骤:
(2.3.6.1)系统控制执行所述的原子操作步骤所对应的操作动作;
(2.3.6.2)设置该步原子操作步骤所对应的继续向下执行标识位为TRUE。
10.根据权利要求9所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,所述的判断原子操作步骤是否已执行,具体为:
(2.3.5.1)所述的定时装置判断该原子操作步骤所对应的继续向下执行标识位是否为TRUE;
(2.3.5.2)如果是,则返回已执行的结果;如果否,则返回未执行的结果。
11.根据权利要求9所述的工业控制系统中基于教导指令实现运动控制多分支同步执行的方法,其特征在于,当所述的原子操作步骤为置端口操作或者延时操作时,所述的步骤(2.3.6.1)中还包括以下步骤:
(2.3.6.1.1)将时间参数减去一个扫描周期,以更新时间;
(2.3.6.1.2)继续执行下一步的原子操作步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410334721.6A CN104076736B (zh) | 2014-07-15 | 2014-07-15 | 基于教导指令实现运动控制多分支同步执行的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410334721.6A CN104076736B (zh) | 2014-07-15 | 2014-07-15 | 基于教导指令实现运动控制多分支同步执行的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104076736A CN104076736A (zh) | 2014-10-01 |
CN104076736B true CN104076736B (zh) | 2017-02-15 |
Family
ID=51598068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410334721.6A Active CN104076736B (zh) | 2014-07-15 | 2014-07-15 | 基于教导指令实现运动控制多分支同步执行的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104076736B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6568152B2 (ja) * | 2017-06-30 | 2019-08-28 | ファナック株式会社 | 数値制御装置 |
CN113630462B (zh) * | 2021-08-09 | 2022-06-03 | 北京城建设计发展集团股份有限公司 | 一种数据中台实现设备下控的方法与系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101609321A (zh) * | 2009-07-24 | 2009-12-23 | 上海奈凯电子科技有限公司 | 一种利用子程序调用实现机床运动控制的方法 |
CN102436188A (zh) * | 2011-09-29 | 2012-05-02 | 南京国电南自轨道交通工程有限公司 | 基于对象的多路分支程序控制实现方法 |
JP2012206239A (ja) * | 2011-03-30 | 2012-10-25 | Seiko Epson Corp | ロボットコントローラー |
CN103576614A (zh) * | 2013-11-13 | 2014-02-12 | 东华大学 | 一种多轴运动控制系统 |
-
2014
- 2014-07-15 CN CN201410334721.6A patent/CN104076736B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101609321A (zh) * | 2009-07-24 | 2009-12-23 | 上海奈凯电子科技有限公司 | 一种利用子程序调用实现机床运动控制的方法 |
JP2012206239A (ja) * | 2011-03-30 | 2012-10-25 | Seiko Epson Corp | ロボットコントローラー |
CN102436188A (zh) * | 2011-09-29 | 2012-05-02 | 南京国电南自轨道交通工程有限公司 | 基于对象的多路分支程序控制实现方法 |
CN103576614A (zh) * | 2013-11-13 | 2014-02-12 | 东华大学 | 一种多轴运动控制系统 |
Non-Patent Citations (2)
Title |
---|
多轴运动的数字控制新技术;黄志军;《科技创新导报》;20111231(第8期);第120页 * |
采用多分支广义表方法实现基于web的数控铣削仿真;罗亚波 等;《机械工程学报》;20030831;第39卷(第8期);第71-75页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104076736A (zh) | 2014-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9798312B2 (en) | Numerical control device | |
CN104076736B (zh) | 基于教导指令实现运动控制多分支同步执行的方法 | |
JP2016162205A (ja) | 複数系統をグループ化することにより制御を一元管理できる制御装置 | |
CN109318225A (zh) | 用于控制码垛机器人的方法、装置及系统 | |
CN105522284A (zh) | 一种激光快速扫描切割的方法 | |
CN102968539A (zh) | 一种格式图纸的批量快速生成方法 | |
WO2016067401A1 (ja) | 数値制御装置、nc加工装置およびnc加工方法 | |
CN107991991A (zh) | 一种基于加工工艺云知识库的数控机床智能控制系统及其工作方法 | |
CN104423368A (zh) | 通过对多个系统进行分组而统一管理控制的控制装置 | |
CN109551478A (zh) | 一种基于集散控制系统的双机器人主从协调控制方法 | |
CN101957942A (zh) | 一种应用于钢厂的事故预案专家系统 | |
CN103941627B (zh) | 一种基于plc编程中sfc到梯形图的转换方法 | |
CN115023673A (zh) | 处理装置和处理方法 | |
JP2000020114A (ja) | モーションコントローラのプログラム作成および実行方法 | |
CN109991924B (zh) | 一种用于数控系统远程客户端实时监控的通讯方法及系统 | |
CN105930583A (zh) | 一种基于装备多领域对象模型的自动化系统及其设计方法 | |
CN113433892B (zh) | 多通道数控系统中的同步控制方法 | |
CN106886198B (zh) | 一种多通道式数控系统加工进度指令控制系统及方法 | |
US11960890B2 (en) | Heterogeneous embedded method and device for tabular processing and execution of operation flow | |
CN104133421A (zh) | 一种基于流程控制的运动控制代码解析方法 | |
CN103309863A (zh) | 电子地图的任务的处理方法和装置 | |
CN111673754B (zh) | 基于主从协调的机器人控制方法及系统 | |
CN106325221B (zh) | 事先通知辅助功能的执行的数值控制装置 | |
Andersson et al. | Coordination of operations by relation extraction for manufacturing cell controllers | |
Schuh et al. | Tracking control of deterministic I/O automata |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |