PLC程序设计,一般均采用直觉法,也就是说它植基于电路设计者本身之学习经验,较为主观及直接。须经历一段瞎子摸象的尝试错误(tryanderror)时期,对程序进行除错之后才能符合所需功能或动作要求;因此设计出来的程序因人而异,除了原程序设计者之外,使用者或维修人员较不易理解其动作流程,亦即程序的可读性较低。但程序设计其实有些许脉络可循,只是坊间的书籍很少提及这一部分。以下姑且抱着野人献曝的心情,以『三相感应电动机故障警报控制』电路为例,由传统电工图转换为阶梯图的过程,浅谈程序设计,相信尔后对于相关的回路转换或程序设计,您或许可触类旁通。
1
已知的三相感应电动机故障警报控制电路,其传统电工图,如图1所示:2)按下启动按钮pb1,电磁接触器mc动作,电动机立即运转,指示灯rl亮,绿灯gl熄。3)按下停止按钮pb2,电磁接触器mc断电,电动机停止运转,指示灯rl熄,绿灯gl亮。4)电动机在运转中,因过载或其它故障原因,致使积热电驿th-ry动作,电动机停止运转,蜂鸣器bz发出警报,指示灯rl熄,绿灯gl亮。5)按下按钮开关pb3,蜂鸣器bz停止警报,白灯wl亮,绿灯gl亮,红灯rl熄。6)故障排除后,按下积热电驿th-ry复归杆,则白灯wl熄,绿灯gl亮,红灯rl熄,可以重新起动电动机。使用PLC,就是以软件程序来取代硬件配线。传统电工图当中,主电路是PLC无法取代的;plc可以取代的部分,是控制电路。由传统电工图转换为阶梯图的个步骤,就是i/o编码,亦即将传统电工图中的输入/输出组件,先行确定其在PLC中所拟对应之外部输入/输出端子编号,以及外部输入组件接线方式是采用a/b接点。
输入/输出组件经i/o编码,并决定外部输入组件是采用a/b接点接线方式后,PLC外部接线图如图2所示。图中所示为丰炜vigor-vb系列plc机种,采用npn接线,也可以用24v端子与s/s端子并接。
(1)将电工图中控制电路直接转成对应阶梯图。因为PLC阶梯图中规定,接点在前,输出线圈则必须位于回路的后。故首先须重新绘制电工图,将图中接点与输出线圈位置适度变更,以符合PLC阶梯图的要求,重新绘制后的电工图,如图3所示。
图3 重新绘制后的电工图
(2) 以i/o编码后的组件编号,取代电工图中的输入/输出组件,此处要留意的是,th-ry的c-a接点及c-b接点要独立出来,各自成为一个控制回路,如图4所示。
图4 i/o编码后的的电工图
(3)将图4所示的电工图,向左旋转90°,之后再垂直翻转(upsidedown),即可成为plc阶梯图,但因:y1、x0接点,输出线圈y1和y2,不符合一般编程软件格式,故须适度更正,如图5右方所示。
※若您使用visio来绘制电工图,则向左旋转90°,之后再垂直翻转,就变得很easy。
(4)使用编程软件绘制之阶梯图,如图6所示,与适度翻转并修正后的阶梯图,完全相同。
将阶梯图转换为指令,则如下所示:
传统电工图完整转换后之PLC外部输入/输出接线与阶梯图。使用软件程序取代硬件配线后之PLC外部输入/输出接线与阶梯图,如下图7所示。PLC其研发目的在于取代以继电器为主之顺序控制,亦即使用软件程序以取代硬件配线,因此祇要改变其软件程序即可改变其控制的顺序,而轻易的达成控制上之不同需求。一般的PLC系以传统继电器控制回路为基础发展而来,并将继电器的接点和线圈予以符号化,当转换成一般的阶梯图或指令之后,即可实现其控制。