看了不少别人写的程序,PID控制都是在OB35用调用包含PID控制的块,为什么要用OB35调用,直接用OB1调用这个PID的程序块不行吗?
最佳答案
pid最早是采用运放等电路器件实现的,是一个连续调节的过程;
但是数字电路里面要实现pid,就要进行“离散化”,你可以查阅数字pid的相关资料。在大学自控专业的相关教材里面对此有详细的理论公式推导。
在plc里面实现pid当然就是个数字pid,其中一个重要的因素是采样时间,说的具体点,就是数字pid——在西门子plc里面就是fb41这个模块需要定时调用!比如放在ob35里面,那么ob35(默认100ms)的执行周期就是数字pid的采样时间,这个100ms是数字pid运算公式里面的一个重要参数!
所以,你把fb41放在ob1里面执行,表面看也是可以执行的,但运算结果其实是偏离了理论目标。由于ob1扫描周期不固定,所以结果很难预料。
提问者对于答案的评价:
明白了
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc250410.html