西门子plc 如何实现暂停?
2020-11-30
问题:西门子plc暂停程序 西门子plc200如何实现让程序在突然断电,再送电时继续停止前的程序运行?
解决办法:
总的来说是采用断电保持。断电保持重要的是开关量,因为模拟量参与控制的话,一定是以当前测量值为依据,所以所需要保持的对象通常为:开关量,计数器,定时器等;
1、开关量:可以采用M区的MB0-MB13,这个区设置为断电保持的话,断电的时候会存入EEPROM永久保存。
;
2、开关量:可以采用V区作为开关量,比如V10.0,V10.2等;然后将这个V区用存入EEPROM指令在断电的时候存入EEPROM,待再启动时,CPU将从调用EEPROM区的数据覆盖V区,从而达到恢复运行的目的。(S7 200,V区有多大,对应的EEPROM就有多大)。可以使用EEPROM库指令来编程;
3、计数器保存:
方法一:还是在系统设置断点保持
方法二、思路是将数据保存在V区,断电时采用EEPROM指令将V区数据保存到EEPROM,待恢复供电时继续执行。
4、定时器保存:
方法一:还是在系统设置断点保持
方法二:可以采用1MS定时器来将定时器的时间保存到V区,当断电时,同样采用EEPROM指令库保存到EEPROM,恢复供电时继续执行,误差应该是1MS,不是要求特别严格的情况下,还是可以的。
需要注意的是:设置断点保持,V区和MB14开始的区是由内部超级电容或电池卡供电,超级电容1个月内,电池1年内。完了数据会丢失。保存在EEPROM的数据是永久保存。