PID功能与定时中断问题

需要用到向导里得PID功能,在调用PID0_CTRL指令后,此时正常,但如果在后面又调用了定时中断指令,此时PID得output一直为0;
如果把定时中断指令放在PID指令之前,PID得output正常,但定时子程序无法进入了,怎解啊,指令在图片中,谢谢各位了。

图片说明:

PID功能与定时中断问题   

最佳答案

PLC的PID指令属于数字PID,其采样周期T(也是计算周期)必须是等间隔的,因此其输出值也是根据周期T来刷新的,所以,PID指令最好在定时中断中执行。如果无条件在OB1中调用,那他的计算间隔(采样周期)就是程序的扫描周期,而且是变化的,其输出也就不稳定了,造成了OUTPUT一直为0;
你的调用PID的采样周期设置为50,而定时中断的扫描时间又设置为250ms
两个就发生冲突了
你看一下下面网址吧,我 个人建议PID计算还在主程序中,把输入采样做到中断里面。


S7-200 PID
https://www.ad.siemens.com.cn/service/article/S7-200/S7-200pid/Default.aspx

提问者对于答案的评价:
多谢多谢

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc366381.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论