S7-200塑机PID加热控制程序 点击:476 | 回复:3



小电工a

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 27回
  • 年度积分:0
  • 历史总积分:117
  • 注册:2006年6月13日
发表于:2012-06-29 16:28:26
楼主
想用S7-200控制塑料机械加热,由于内置的8路PID不够用,想自己写一个,请前辈指点一下


楼主最近还看过



yexiaomeng

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 181回
  • 年度积分:0
  • 历史总积分:731
  • 注册:2005年12月19日
发表于:2012-06-29 18:28:35
1楼

有几个步骤:

1.确定控制周期

根据不同的系统的响应速度,控制周期可大可小,像电流信号有到us级的。对于温度控制系统,具有大滞后特性,变化很缓慢,采样周期太小没有意义,用1s足够了,控制周期也用1s足够。

2.控制对象与参量

这个楼主既然能够用PID,应该没有问题,就是设定值,反馈值,调节器,执行部件。

3.调节器,这个是重点了

一般的PID调节器有两种形式,增量式和位置式的,下面叙述他们的表达式:

位置式:u(k) = Kp * e(k) + Ki * Σ e(j) + Kd * (e(k)-e(k-1))/T;

位置式就是积分的时候要累加到目前位置的所有误差之后,有时候运算不妨便,而且容易出现积分饱和,所有又有增量式的所谓增量就是u(k)-u(k-1)因此有

u(k)-u(k-1)= Kp * (e(k)-e(k-1)) + Ki * e(k) + Kd*(e(k)-2*e(k-1)+e(k-2))/T;

表达式写成这样就可以用递推的计算完成了。

公式写完了,我再来解释一下符号的意思:

u(k):当前控制周期的控制量输出,k表示控制周期序列,向前就是k-1,k-2,...

e(k):当前偏差(误差),也就是当前的设定值-当前反馈值,k同上;

Kp:就是大名顶顶的比例(P)增益

Ki:就是积分(I)增益

Kd:就是微分(D)增益

T:理论上叫做时间常数,为了简便,T=1,就可以了,不用关心细节 

 

 在这里我就只讲一下大致原理,细说起来,光PID就可以写本书,如果有困难的话,加我的QQ:331556609联系,推荐本书给楼主参考《先进PID控制 MATLAB仿真 第2版 刘金琨等编着》下载地址http://ishare.iask.sina.com.cn/f/16956842.html

东山脚下-骑士军团

  • 精华:0帖
  • 求助:13帖
  • 帖子:28帖 | 1235回
  • 年度积分:0
  • 历史总积分:4415
  • 注册:2012年4月06日
发表于:2012-06-29 22:12:36
2楼
引用 yexiaomeng 的回复内容: 有几个步骤:1.确定控制周期根据不同的系统的响应速度,控制周期可大可小,像电流信号有到us级的。对于温度控制系统,具有大滞后特性,变化很缓慢,采样周期太小没有意义,用1s足够了,控制周期也用1s足够。2.控制对象与参量这个楼主既然能够用PID,应该没有问题,就是设定值,反馈值,调节器,执行部件。3.调节器,这个是重点了一般的PID调节器有两种形式,增量式和位置式的,下面叙述他们的表达式:位置式:u(k) = Kp * e(k) + Ki * Σ e(j) + Kd * (e(k)-e(k-1))/T;位置式就是积分的时候要累加到目前位置的所有误差之后,有时候运算不妨便,而且容易出现积分饱和,所有又有增量式的所谓增量就是u(k)-u(k-1)因此有u(k)-u(k-1)= Kp * (e(k)-e(k-1)) + Ki * e(k) + Kd*(e(k)-2*e(k-1)+e(k-2))/T;表达式写成这样就可以用递推的计算完成了。公式写完了,我再来解释一下符号的意思:u(k):当前控制周期的控制量输出,k表示控制周期序列,向前就是k-1,k-2,...e(k):当前偏差(误差),也就是当前的设定值-当前反馈值,k同上;Kp:就是大名顶顶的比例(P)增益Ki:就是积分(I)增益Kd:就是微分(D)增益T:理论上叫做时间常数,为了简便,T=1,就可以了,不用关心细节   在这里我就只讲一下大致原理,细说起来,光PID就可以写本书,如果有困难的话,加我的QQ:331556609联系,推荐本书给楼主参考《先进PID控制 MATLAB仿真 第2版 刘金琨等编着》下载地址http://ishare.iask.sina.com.cn/f/16956842.html



小电工a

  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 27回
  • 年度积分:0
  • 历史总积分:117
  • 注册:2006年6月13日
发表于:2012-07-02 15:49:35
3楼
回复内容:
对:yexiaomeng关于有几个步骤:1.确定控制周期根据不同的系统的响应速度,控制周期可大可小,像电流信号有到us级的。对于温度控制系统,具有大滞后特性,变化很缓慢,采样周期太小没有意义,用1s足够了,控制周期也用1s足够。2.控制对象与参量这个楼主既然能够用PID,应该没有问题,就是设定值,反馈值,调节器,执行部件。3.调节器,这个是重点了一般的PID调节器有两种形式,增量式和位置式的,下面叙述他们的表达式:位置式:u(k) = Kp * e(k) + Ki * Σ e(j) + Kd * (e(k)-e(k-1))/T;位置式就是积分的时候要累加到目前位置的所有误差之后,有时候运算不妨便,而且容易出现积分饱和,所有又有增量式的所谓增量就是u(k)-u(k-1)因此有u(k)-u(k-1)= Kp * (e(k)-e(k-1)) + Ki * e(k) + Kd*(e(k)-2*e(k-1)+e(k-2))/T;表达式写成这样就可以用递推的计算完成了。公式写完了,我再来解释一下符号的意思:u(k):当前控制周期的控制量输出,k表示控制周期序列,向前就是k-1,k-2,...e(k):当前偏差(误差),也就是当前的设定值-当前反馈值,k同上;Kp:就是大名顶顶的比例(P)增益Ki:就是积分(I)增益Kd:就是微分(D)增益T:理论上叫做时间常数,为了简便,T=1,就可以了,不用关心细节   在这里我就只讲一下大致原理,细说起来,光PID就可以写本书,如果有困难的话,加我的QQ:331556609联系,推荐本书给楼主参考《先进PID控制 MATLAB仿真 第2版 刘金琨等编着》下载地址http://ishare.iask.sina.com.cn/f/16956842.html内容的回复:

谢谢您的热心解答,我先看一下你推荐的书,又不明白的地方再和您讨论

热门招聘
相关主题

官方公众号

智造工程师