PID整定的另类方法

2020-01-14 18:54发布

本帖最后由 coleyao 于 2012-7-4 10:50 编辑

本来几天前要放上来的,下班后移动网一直不好,放不上,还是上班抽空放到论坛,希望对大家有帮助,帖子内容谢绝转载,谢谢(附件打不开已重新上传):
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
87条回答
jshp32
1楼-- · 2020-01-14 18:56
格式错误?

LZ压缩之后再上传吧
usartcodeed
2楼-- · 2020-01-15 00:28
是啊,打不开
coleyao
3楼-- · 2020-01-15 00:36
本帖最后由 coleyao 于 2012-7-5 09:51 编辑

   Sorry,从QQ中转站转了一下,没想到居然就出问题了,重新确认可用后已再次上传
   另帖子附件内容均为原创,如果阿莫认为帖子内容有料的话希望能加精,以更好地造福各坛友
yaodongliang
4楼-- · 2020-01-15 03:27
 精彩回答 2  元偷偷看……
McuPlayer
5楼-- · 2020-01-15 03:55
谢谢楼主的理论研究,并分享给大家


我们也在搞温控器,说一点我的感受

对于加热系统,加热是主动的,散热是被动的
防止过冲则尤为重要,其次才是响应速度。
构造一个合理的模型,对整定速度和效果,非常重要。
coleyao
6楼-- · 2020-01-15 05:17
本帖最后由 coleyao 于 2012-7-8 22:34 编辑
yaodongliang 发表于 2012-7-8 17:08
楼主,你好,最近也在调PID,以前没接触过,有几个问题想请教下你。
我的系统目的是控制气缸里面的压力稳定 ...


    不用客气,大家一起讨论吧,首先我要说明的是我没有做过压力控制系统,其次也没有实际通过经典的方式(即PID参数整定的方式)做过PID控制系统,但是我文中提及的预测式负反馈控制方法我是实际用过的,使用软件仿真的结果也和实际情况接近,故此我对PID控制的研究都只是建立在软件仿真的基础上的。其次理论的东西其实是相通的,所以我就从理论上对你的压力控制系统提一些看法(文中的假设条件是控制周期等于采样周期):
   1)首先你要对你的压力控制系统的建立过程有一个清楚的认识,也即那些是被控量,哪些是输入量,哪些则是控制系统的环境因素,被控量稳定过程是如何建立起来的;
    2)其次要注意对于一般内部相位延迟不是太厉害的系统,通常引入的反馈都是负反馈,如果反馈量弄成正反馈控制系统就调不出来了;
   3)因为我最近对位置式PID的增量形式研究比较多一些,就从位置式PID的增量形式的控制上对你的系统提一些看法,希望对你有帮助;
      a)  首先针对输入输出建立一个大致的范围,例如:需要控制的压力范围为0-100Pa,采用手工方式找到该范围对应的电流控制范围是5-100mA,假设对应的D/A输入为100-2000;
      b)  估计一个大致的控制系统内部延时,如100mS;
         c) 计算PID=Kp*E[n]+0.1Kp*(E[n]-E[n-1]);   注: E[n]为第n个采样周期时得到的设定压力-当前压力,而不是当前压力减去设定压力,0.1即预估的内部延时,Kp取值使得E[n]取最大值时计算得到的PID为pwmmax的3~5%左右;
      d)   如果PID>0 而且(pwmpointer+PID)<=pwmmax)   那么  pwmpointer:=pwmpointer+PID;
               如果PID<0 而且(pwmpointer+PID>=0) 那么  pwmpointer:=pwmpointer+PID;  (计算控制量对应的值)
          e) 如果pwmpointer<0  则 pwmpointer:=0;
              如果pwmpointer>pwmmax  则 pwmpointer:=pwmmax;(pwmmax越大,分辨率越高,控制越精细)
          f)  DAout[n]:=pwmpointer*(MaxDA-MinDA)/pwmmax+MinDA;  (MinDA即a)中的100,MaxDA即a)中的2000)
      g) 每一个控制周期重复c)-f)的动作,得到一个控制系统的响应,评估该响应情况;
      h) 根据评估结果调整Kp值和预估的内部延时(开始时内部延时可稍微估大一些,这样容易建立一个稳定的系统,建立后再逐步减小内部延时值,得到一个尽可能最快速响应的系统,另外开始时Kp值应该小一些,逐步加大到系统不稳定为止,将临界值*0.7~0.8即为理想的Kp值,然后再调整内部延时预估值)
   最后,根据你所说的先调比例部分无法稳定的情况看,你应该是用的增量式PID,而不是位置式PID的增量形式,请注意区分,如果对概念不熟,可以用PID温控仿真软件仿真看看各种PID控制下各个参数在调整中所起的作用 (增量式PID的公式是  PID=KP*E[n] +KI*Sum(E[n]) +KD*(E[n]-E[n-1]),其中Sum()为积分 )。

一周热门 更多>