s7-200pid综合问题
112.95.251.214
发布于2014-04-11 17:06
114
0
标签:
现有pid使用中的几个问题想:
1、采样时间是否要与中断例行程序的中断时间相一致。
2、pid回路表中规定设定值在0.0--1.0之间,而pid向导中却是0.0--100.0之间,为什么?
3、假如不要积分可以把积分项设成无穷大,怎样输入呢,是把实数的大值输进去吗?
问题补充:
1、无穷大inf录入后,系统显示为非法数据,就是不知道怎么录入。
2、用向导创建子程序后,除调用子程序外,还要中断程序吗
佳答案
采用pid向导生成pid_init子程序时,系统会自动生成pid_exe的中断程序,系统会占用smb34;
1、采样时间是中断时间的整数倍;系统默认smb34=100ms,如果采用时间为1s的话,系统会进入10次中断程序执行1次pid指令,前9次进入中断程序即跳出中断程序。
2、pid_init程序中包含量程转化程序,将aiwxx的范围0---32000,转化成0---1.0;设定值有0---100.0转化成0---1.0。其实pid_init程序只是做了2个工作,一是量程转化,二是绑定定时中断。其中在绑定定时中断的时候使用sm0.1,这也是为什么pid_init指令必须采用sm0.0常调用的原因。
3、如果不想要积分动作(pid计算中没有“i”),可以把积分时间置为无穷大“inf”。即使没有积分作用,积分项还是不为零,因为有初值mx。千万不能设置为0.
如果不想要微分回路,可以把微分时间置为零。