逻辑检查、编译均以梯级为单位,梯级是互相影响的行组成的最小单元,如图1所示为一梯级:
编译是“从上至下,从左至右”,按PLC逻辑顺序逐个单元编译的。但在编辑器中,存储的只是行与行之间的顺序以及每行中各列元素的信息,逻辑检查、编译还需要行内或行间元素互相影响的信息,如下:
4 通讯模块及PLC执行模块
1)扫描过程
扫描过程就是对地址映象区刷新的过程,地址映象区是在数控系统中定义的固定存储区,各模块之间通过地址映象区进行通讯,如图2所示。其中:
扫描时从硬件端口及数控系统读入X,F,P寄存器的内存到此数据链中;同时一输出运算结果到G,Y,B寄存器。
2)PLC执行模块
在数控系统中的PLC根据所处理的机床突发事件的实时性要求,可分为高级PLC和低级PLC,前者主要处理紧急停止、超程、循环启动和进给保持等实时性要求高的事件;后者处理机床控制板输入和辅助功能(M,S,T>等实时性要求较次的事件,并日_均采用中断方式来定时周期地执行。
华中数控系统中的解决方案是:做一个常驻内存程序PLC.COM,每隔一定时间就被激活,扫描、执行一次,它包括如下重要数据:
在初始化时,系统读入数据,形成单向链表;之后,数控系统将周期性地扫描链表、调用执行程序plc().poc2()。
5 结束语
综上所述,对特定机床,只需编写相应的梯形图程序,将编译后的结果提供给CNC系统即可,无须改动CNC系统程序,使得CNC系统和PLC部分的独立性和通用性都有所提高;同时,为其他语言所编写PLC程序提供了统一的数据接口。