可编程序控制器(plc)的应用中,我们常会碰到对继电器控制系统的改造问题,这时我们往往要参考原有的继电器控制电路来编制plc的应用程序。因此,在编程时,我们应注意plc控制系统与继电器控制系统工作方式上的一些不同。
1.扫描方式不同
我们看一个例子:一个继电器控制回路如图1所示。
图一
因继电器控制系统是以“并行”方式工作的,而且其触点的通断需要一定的动作时间。所以当该电路起动后,时间继电器kt延时时间到时,kt是否能继续保持通电状态,需要同时考虑“并行”的两个动作过程:kt的常闭延时触点断开,ka1失电,ka1常开触点断开;kt的常开延时触点闭合,ka2得电,ka2常开触点闭合。这两个过程作用的结果,来决定kt的状态。同时,触点动作时间的存在,使得电路出现时序竞争。因此该电路不能可靠工作。如果加人虚框中的回路,并如图1把ka2的常开触点换成ka3的常开触点(见图1中括号)。结果是kt动作后,kt自身失电,就不会继续保持通电状态。
同样是这个电路,我们用plc来实现,梯形图如图2所示。 plc是以“串行”方式工作的,也就是以扫描的方式,循环地、连续地、顺序地,逐条执行程序的方式工作。同时在plc中,软触点的动作可认为是瞬时完成的,且其能把本次动作的结果记忆保持到下一次扫描运算时为止。即具有记忆保持功能。按这样一个顺序“串行”的工作方式,梯形图动作顺序如下:
图二
当在某一扫描周期中t38延时到后,则:网络1中t38 常闭触点断开(off) q0.0 off(无输出);网络2中t38常开触点闭合(on),q0.1 on;网络3中q0.0常开触点off,q0.1常开触点on,t38继续保持通电状态。而且不论我们在q0.1与t38之间再加多少级前面继电器电路所加的虚框中的回路,并把q0.1常开触点换成所加回路最后一级继电器的常开触点,t38仍能继续保持通电状态。
2.输入控制方式不同
我们再看一个例子。大家都比较熟悉的电动机正反转控制电路,见图3。
图三
在这个电路里面,启动按钮我们使用sb1、sb2的常开按钮,而停止按钮则使用的是sb3的常闭按钮。plc程序里面也是这样设计的。(见图4)
图四
但是我们给plc设计硬件输入时,停止按钮sb3却不能像继电器控制电路那样使用常闭触点而是使用的常开触点,见图5。这是为什么呢?这是因为继电器控制电路里按钮开关直接控制接触器的线圈,而在plc控制程序里,按钮开关控制的却是与之对应的输入继电(i),而由这个输入继电器再去控制其触点,不能把硬件按钮开关看出程序里的软触点,就相当是拐了个弯一样。程序里的软触点受相应的输入继电器控制,而输入继电器的状态又受外部所接的输入信号元件(比如按钮开关)的控制。这是初学者容易搞混淆的地方。
图五
假设这个例子里的停止按钮sb3我们像继电器控制电路一样,使用常闭触点的话,那么plc一上电,sb3对应的输入继电器i0.2立即为on,则相应的软触电i0.2就会改变状态常闭触点立即就断开了,如果再按下启动按钮sb1,输出继电器q0.0或q0.1就不会有输出,即一直为off。
通过全面的两个例子我们知道同样的电路,由于继电器控制系统和plc控制系统工作方式上的差异,两者会有不同的动作结果。注意到这一点,我们在编程时,就会避免犯不应该的错误。同时学会plc这样一些特点,会编出功能更强、更好的程序。
plc编程最容易犯的错
在编制plc程序时,不管是新手还是老手,都会犯下这种低级错误。因为这种错误是非语法上的,所以用编程软件也不能检查出错误之处。此错误一旦发生,自己有时还很难发现,直至上机调试运行时,所控设备不能运行或运行到某个位置停止不前,才察觉出来有问题,再对plc程序逐条逐句查找分析,或采取对程序逐条逐句执行,费时费工。
那么究竟是什么问题易使我们犯下这种低级错误呢?继电器电气控制的固有思维,在编制程序时,某个或几个输入点采用物理常闭触点(如停止开关、行程限位开关),在程序中,仍延续继电器电气控制方式编制,即仍采用常闭接点作为导通条件使用。
下面用一个简单的启停与自锁电路示例来说明。
根据上图编制的不能运行的错误plc程序如下:
plc上电后,x000、x002常闭点就会断开。即逻辑值为“0”
y0=(y0+x001)×x000×x002
从上面数字逻辑表达式可知,在按下启动按钮sb1后,x001的逻辑值为“1”,而y0的逻辑值永远不会变化,始终为“0”。原因是与plc内部输入电路有关,以下是plc内部输入等效电路:
正确的plc程序如下:
plc上电后,x000、x002常开点就会闭合。即逻辑值为“1”
y0=(y0+x001)×x000×x002
只要按下启动按钮sb1后,x001的逻辑值为“1”,y0逻辑值就为“1”。松开启动按钮sb1,x001的逻辑值为“0”但y0逻辑值为“1”,y0与x001是或的关系,保证了y0逻辑值始终为“1”,即自锁。直至按下停止按钮或出现过载 (fr0动作),y0的逻辑值才变为“0”。
通过上面的简单示例可知,新手可能还未弄懂外部为常闭输入时,经plc内部输入电路后逻辑值发生了“非”的变化。以及继电器电气控制固有思维影响,老手是出于疏忽。这虽然是低级错误,也易发生在程序编制过程中。
七天物联网智能家居实战学习笔记(六)
华硕灵耀3评测 美中不足的是它的接口实在太少了
高速SI应用中对各种层压材料进行介电常数和介电损耗精确提取的方法
变频器柜外部接线的作用
商汤科技助推增强现实标准建设 拓展产业生态
PLC编程最容易犯的错
开关电源控制芯片M51995及其应用
什么是口腔CBCT,口腔CBCT具备哪些优势
管理5G天线设计的功耗的方法与分析
索尼XZ Premium什么时候上市?索尼XZ Premium国行终于亮相,在京东和天猫正式预售
智能镜子显示屏将引领我们进入智能互联时代
Moku:Go让物理实验教学变得简单易懂——数字逻辑与控制的应用
详解 TI AWR1642汽车短距离雷达(SRR)参考设计
在航天和卫星动力系统中使用宽带隙半导体要克服三个关键的挑战
5G加持的人工智能会有怎样的新花样
iOS11beta3怎么样?iOS11beta3更新功能介绍,iOS11beta3怎么降级?苹果推送ios11Beta3越狱还有希望吗?
铁路巡检机器人的六大功能
蒸汽回收机的工作原理,它发挥的作用有哪些
语音数据集在智能家居中的应用与挑战
工业机器人的应用越来越普及,并成为推动工业4.0的重要力量