PLC的程序资源
前面说到对于PLC梯形图来说是从左到右、自上而下进行扫描运算。如果是语句表编程就是从上到下扫描运算。程序的编制是符合它(软件创作方)的语法。在编程过程中有很多可以利用的软件资源。比如PLC内部的中间继电器M、定时器T、计数器C恐怕就脱胎于继电联锁年代的上述元件。而且数量非常庞大,设想一下如果没有PLC,就是比如相当于FX2这样的PLC的这些内部元件如果要是实实在在的元件那要装满多少个控制柜?在国内早期的控制系统设计中,像歩进选线控制器(老式电话总机用)都曾用到过。比较高级的KJS-210程控柜都舍不得用。然而现在对应于它们的是PLC内部的S(状态),有数百个之多,应用非常自如。还有数据寄存器D,可以作为T、C等设定值,可以读入模拟量作数字运算,可以有断电保存区域等等。
以上还仅仅是冰山一角,就像前面曾经提到的矩阵指令,普通认为输入一点就是一点,像小型PLC只能最大到入出256点。然而如果用矩阵指令,这一点如果和晶体管输出的N点(最大到8)组合成不同的时序,按时序先后读入的话,就拓展到8*N点的输入。
变址寄存器Z、V有什么用?如果输入的值(例如8421码)读入变址寄存器,就可以用来调用不同的数据寄存器块或动用不同的程序。
以上只是泛泛的列举,有什么功能,需要什么功能,那是工艺、设备、操作的需要,要通过编程来实现。所以对于编程来说,从编程手册设想、挖掘它的潜能达到预定目标不容易。需要反复的编程、调试,好在并不需要全盘的了解、细读整本的编程手册。而是对必须要用到的指令熟练即可。事实上,即便是PLC方的技术支持,也不太可能对每条指令都了如指掌。我几年前在用欧洲一款小型PLC时,和同品牌变频器是通过PLC的内部通讯协议(经485口)运行的。运行没有任何问题,但反馈的运行速度读不到,经多次联系技术支持,还是没有实现这一功能。其实这也应该可以理解,作为技术支持来说,接受理论培训多,不一定实际应用过。所以,能在设备出厂前将主要程序框架和一些比较专一、特殊的功能先行调试到位那就很理想。但遗憾的是国内绝大多数工程项目都是“快餐”,少有“从容不迫”者,因此对编程的要求就更高了,唯一的办法就是编程熟练、再熟练。
前面说到过Work2这款软件,由于是梯形图编程,对恐怕是普通电工也不困难,因为基于逻辑连锁控制。关键是可以离线模拟,这点太重要了。我记得前两年在某个工厂就有举行(电工及相关技术人员)编程比赛的。作为一个基本的电控应用工具,我认为应该被更多人(特别是相关人员)所掌握。