随着数控设备的普及,无论是从事数控设备的制造还是数控设备维修的专业人员,对PLC控制程序的特点和应用都需要熟练的掌握。在这里,我们对国内目前常用的发那科0i、西门子802D、华中08 软件三种数控系统,在PLC编程中各自的特点、区别及应用,作一个简单的介绍。
1 三种数控系统PLC指令的特点
PLC编程常用的位操作、定时、计数、比较、运算、传送、赋值、跳转等指令在三种系统中的作用及功能都大致相同。而发那科和华中08 软件系统,为了便于机床PLC编程简化,增加了不少的功能指令。比如说发那科和华中系统中就提供了专门为刀库或刀架选刀控制的ROT旋转功能指令,在PLC程序中,运用ROT功能指令,就很方便地实现捷径选刀功能,相比西门子系统编写的捷径选刀判断程序简化了许多。另外,在发那科系统中,还应用了PMC 与CNC之间读、写窗口数据的读写指令WINDR(W),PMC 不仅能很方便地读取CNC的一些信息(如当前日期),而且可通过PMC向CNC 写入更多的窗口信息(如参数、宏变量等)。
应用举例:发那科0i 系统,通过编写PLC程序读取系统当前的时间。
其中D500为数据地址,它存放功能代码。如果本程序要读取当前系统时间,则将D500 写入系统当前时间的功能代码151,并在数据表中,将D500 对应的参数设为0,类型设为1,数据设为5,D510 的对应的参数设为0,类型设为1,数据设为100。当ACT=1 时,执行WINDR 功能后,数据表中的D510,D512,D514 的数据将会分别更新为当前系统的年份、月份和日期。
华中08 软件系统中的PLC指令基本上与发那科一致,只不过是功能指令比发那科少了许多。
2 三种数控系统PLC程序的结构特点
西门子PLC程序分主程序、子程序块,在主程序块中编写调用各子程序块,在子程序中可采用局部变量进行编程。而发那科和华中系统,将PLC程序划分为第一级(优先)和第二级优先顺序两级程序,第一级优先执行,扫描时间比第二级短。一般要求第一级程序尽可能短,否则将延长整个程序的执行时间。特别是对于华中08软件系统,在尽量缩短第一级程序的同时,应将需要高速处理的信号和程序段必须放在第一级程序段进行处理。比如机械手刀库中机械手扣刀位、停止位等一些短暂信号的程序段,必须要放到第一级程序中,否则会引起误动作。