找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 10653|回复: 0
打印 上一主题 下一主题
收起左侧

S7-1200 PID程序问题的处理

[复制链接]
跳转到指定楼层
楼主
ID:107593 发表于 2016-3-11 01:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
将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的值。



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表