在编制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内部输入电路后逻辑值发生了“非”的变化。以及继电器电气控制固有思维影响,老手是出于疏忽。这虽然是低级错误,也易发生在程序编制过程中。
- DC2027A-B,使用 LTC4364HDE-2 浪涌抑制器和理想二极管控制器的演示板可保护负载免受高压瞬变
- 基于VNI8200XP-32的八通道高端驱动器
- 使用 ON Semiconductor 的 CAT871 的参考设计
- Spx29300 的典型应用电路,3A 低压差稳压器
- ESP8266双色调光灯
- ADR365A 5 V 低功耗、低噪声电压基准的典型应用,具有灌/拉能力
- 具有公共输入电源的 LTC3374IUHF 降压稳压器的典型应用电路
- LT6402-6 的典型应用 - 300MHz 低失真、低噪声差分放大器 / ADC 驱动器 (AV = 6dB)
- 具有 4 通道电流源的 IS32BL3554 升压型 LED 驱动器的典型应用
- LP28400AQVF-升压型2串锂电池充电方案