标题: S7-1200 PID程序问题的处理 [打印本页]

作者: 51黑plc    时间: 2016-3-11 01:36
标题: S7-1200 PID程序问题的处理
将S7-1200的PID调试出来,发现不太好用,容易报错。将写好的PID增量式程序下载进去,终于好了。

       这个问题我遇到过,现在已经解决了。个人感觉西门子的PID还是很强大的,自整定后非常稳定。我有个5个加热区需要工作,其他4个区用自己做的PID 可以正常工作,但是有一个区却始终达不到使用要求,温度的偏差在20度左右。
      然后用S71200的PID功能块自整定以后,效果非常好,温差在0.5度以内。问题就是当模块的输入值超限以后,PID工作块会报故障,复位故障,重新上电以后也不能正常工作。
      这个时候,你需要做一个自己复位的小程序,复位下功能块就可以了。当有故障时自动复位功能块,但是这个时候功能块的状态值会变成0。状态为0的时候加热是不会工作的。
    下面做了个小程序,当状态字的值为零时,把3赋值给地址"PID_Compact_DB_1".sRet.i_Mode就OK了。做了这个以后加热功能PID 再也没有出过问题。

     下面的内容来源于S7-1200的PID功能块的帮助信息。

       PID功能块的输出参数State用来显示PID控制器的当前操作模式。
State = 0:未激活
State = 1:预调节
State = 2:精确调节
State = 3:自动模式
State = 4:手动模式
      

       不能修改State 参数,需要通过修改变量sRet.i_Mode来更改操作模式。首先设置sRet.i_Mode = 0,然后设置sRet.i_Mode = 3。如果控制器的当前操作模式支持此更改,则会将State设置为sRet.i_Mode的值。








欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1