第5章 运动控制器SFC程序的设计开发
运动控制器Q173的运动程序需要用专门的软件MT-developer来编制,其主要方法是用SFC图构成整个运动程序,本章将根据包装机的工作要求,总结出编制SFC图的方法。
5.1 实用的SFC编程方法
编程思路:所有使用运动控制器机床的工作模式都可以分为JOG模式、回原点模式、手轮模式和自动模式。
5.2 SFC图的构建技巧
构建整机程序的基础思路如下:
1)“原点返回”“手轮运行”“JOG运行”“自动运行”四种工作模式是必不可少的。
2)将每个基本工作模式最基本的工作流程编成一个“子程序”,然后一级一级地调用“子程序”。
3)编程方法是先构建“主程序”和“模式选择程序”,然后一级一级填空。
5.2.1 主程序SFC图
主程序仅仅只是一个对“工作模式选择子程序”的调用程序。
通过“急停信号”的ON/OFF实现“调用或退出”子程序。
主程序SFC流程框图如图5-1所示。
编制主程序的目的之一,就是只用一个急停信号就可以停止整个程序的运行,这样可使系统的安全得到保证。通过参数设定主程序上电后就运行,不受任何条件限制。主程序处于不断的“跳跃循环”过程,这样就能实时监测“急停信号”的出现。
图5-1 主程序SFC流程框图
5.2.2 工作模式选择流程图
工作模式选择流程图如图5-2所示。
“工作模式选择子程序”用于“选择各工作模式”,每个工作模式是一个子程序,用选择信号选定或退出子程序。
图5-2 工作模式选择流程图
“退出子程序”是运动控制器特有的指令(CLR)。在图5-2中,G62~G65是模式选择判断条件,如果某一条件满足就选择对应的“工作模式”;G88~G91是退出某工作模式选择判断条件,如果某一条件满足就立即退出对应的“工作模式”,转入重新选择判断。
这些条件判断程序可以在“顺序控制程序”中编制(由信息程序和参数刷新),也可以在本身的G步中做运算。
构建模式选择程序的好处是可以在一个模式内设置运行条件和检查问题,而不受其他模式的影响。模式选择程序是第2级子程序。
5.2.3 JOG模式的SFC图
JOG模式的SFC图如图5-3所示。
注意在JOG模式中,没有K步,只有“计算”步,因为JOG的速度设置和正反转起动只需要起动或停止某个M信号,如图5-3中的“FS13步”,所以可以用“顺序控制程序”处理。还必须注意在程序中的END指令,END指令表示程序结束,在子程序中表示子程序结束同时回到“源程序”中。在本流程中就是回到“工作模式选择流程图”的G62处,因此,如果G62=ON,就又执行JOG程序一次。但是JOG程序的G67条件步本身就是对JOG选择模式条件的判断,所以当程序执行到G67时,同时G88=ON,程序就执行跳转到P0,如果G67=OFF,则JOG程序总在执行FS13步,即不断执行FS13步赋值和计算。
图5-3 JOG模式的SFC图
注意:“FS操作步”是扫描执行的工步,“F操作步”是一次执行的工步。
5.2.4 手轮模式运行子程序SFC
手轮模式运行子程序SFC如图5-4所示。
图5-4 手轮模式运行子程序SFC
手轮模式运行子程序的程序结构与JOG模式完全相同,所以也采用了END指令。
5.2.5 回原点模式子程序SFC
回原点模式子程序SFC如图5-5所示。
回原点模式子程序包括:对各轴单独回原点的选择和起动的工作流程,以及对“全部轴回原点”(子程序)的选择和退出的工作流程。
图5-5 回原点模式子程序SFC
注意:整个程序没有END指令,而是跳跃循环。如果本子程序的退出结束指令CLR不起动,就处于不断的“跳跃循环”中。
“CLR(退出并结束指定程序)”指令的功能如下:
1)如果其指定的是“主程序”本身,则退出并结束“主程序”。如果该主程序含有“SUB子程序”,则一并退出并结束该“子程序”,不管子程序有多少级。
2)从“SUB子程序”中也可以执行对主程序的“CLR”指令。
5.2.6 自动模式子程序SFC
自动模式下的各流程选择如图5-6所示。
实际工作时,自动模式下是动作要求最多的状态,最好将其归纳为不同的工作流程,由于有多种自动流程,所以也必须做自动状态下的工作流程选择,这种选择与工作模式选择类似(以包装机为例构成自动模式下各运行程序)。
1)“自动状态下的相位微调子程序”是在自动运行过程中驱动虚2~虚7轴做(增量型)定位的程序,只在全自动运行状态下有效,所以用一个条件G300同时起动,用G310同时解除。
2)“手动状态下相位调整子程序”实际上是各轴的定位程序(增量型)。
3)“各轴回印版基准点”实际上是各轴的绝对位置定位程序。
小结:整个包装机的SFC程序由以下6级程序构成:
第1级——主程序。
第2级——工作模式选择子程序。
第3级——各工作模式子程序。
第4级——各自动流程子程序。
图5-6 自动模式下的各流程选择
第5级——全自动流程内的“全轴回印版原点子程序”。
第6级——“全轴回印版原点子程序”内“轴微动脱离原点区域子程序”。
可以看出用子程序调用方式编程逻辑关系明确,安全条件也容易设置,是首选的编程序方法,也是快速构成程序的方法。所以,SFC程序的编程方法可以用一句话总结:“调用子程序,退出子程序”。
5.3 对SFC图用软元件的说明
1)K步——运动指令步。指令各轴的运行方式。
2)F步——运算步。在F步中可以进行各种运算。
3)FS步——扫描型运算步。该运算步反复扫描执行,而F步只执行一次(相当于脉冲执行型和周期执行型的区别)。
运算步的计算指令有:①赋值运算;②发运动专用指令;③SET/RST指令;④数据处理(DIN、DOUT)等。
4)P——调用子程序指令。指定要调用的子程序。
5)CLR——退出子程序指令。指定要退出的子程序。
6)G——条件满足,立即跳转。
7)GN——条件满足,而且必须等待上一步执行完成再跳转。在G步中,可以进行各种运算。但其最关键的“转移条件”必须写在最后一步,该条件满足就“转移”。转移条件有以下三种:①位器件表达式,如M100.;②比较条件表达式,如D0>D100(相当于使用了字元件);③SET D=××;RST D=×××,当SET、RST指令的逻辑条件满足时,立即“转移”,同时进行SET/RST处理。
位元件表达式(如M100)、比较条件表达式(如D0>D100),只能作为转移条件写在“最后的语句”中,不可以写在其他部分。SET/RST语句可以写在其他部分。
5.4 结束语
使用SFC图是迅速建立工作机械工作模式的一种简明方法。由于各种工作机械的工作模式都可以套入固定的类型,因此本文提供的方法可以适用大部分工作机械。