我用PID算法对一个温控系统进行控制,目标温度比实际温度差值大 则调节量大 否则小,这里用r1表示目标温度,r2表示实际温度,我用下面的几个式子: error=r1-r2;//表示差值 s1=s1+ts*error;//s1为积分项,初始值为0,ts为采样周期 U=kp*error+ki*s1;//U为控制量 if(U>MAX) //控制范围 U=MAZ; IF(U<MIN) U=MIN; ····· 但是实际操作中发现,某些目标温度点很快可以得到,且稳定度还好,但是某些点温度就不容易得到了,比如设置-30,现在是0,最后不是到达-29.3,就是-30.8,为什么那??请问这里做过PID的高手能指点一下么?非常感谢!! |