在闭环控制系统中,增加积分控制增加了系统的稳态误差精度,由于不断累计误差,能使误差迅速消除,但能使系统产生超调;而在系统中增加微分控制,能 够增加系统的阻尼,提高动态响应速度,由于PID控制器能够补偿绝大多数的控制系统,整定方法简单,鲁棒性好,因此是目前应用最广泛的控制器.
Ziegler-Nichols方法是基于系统稳定性分析的PID整定方法.在设计过程中无需考虑任何特性要求,整定方法非常简单,但控制效果却比较理想.具体整定方法如下:
首先,置Kd=Ki=0,然后增加比例系数一直到系统开始振荡(闭环系统的极点在jω轴上);
再将该比例系数乘以0.6,其他参数按照以下公式计算:
Kp = 0.6*Km
Kd = Kp*π/4*ω
Ki = Kp*ω/π
上式中Kp为比例控制参数
Kd为微分控制参数
Ki为积分控制参数
Km为系统开始振荡时的比例值;
ω为振荡时的频率
附matlab程序
>> nc=10;dc=[1,2,0];ts=0.25;
>> [nz1,dz1]=c2dm(nc,dc,ts);
>> axis('square'),zgrid('new')
>> axis('square'),zgrid('new'),
>> rlocus(nz1,dz1)
>> [km,pole]=rlocfind(nz1,dz1);
>> [nz1,dz1]=c2dm(nc,dc,ts);
>> axis('square'),zgrid('new')
>> axis('square'),zgrid('new'),
>> rlocus(nz1,dz1)
>> [km,pole]=rlocfind(nz1,dz1);
>> wm=angle(pole(1)/ts);
>> kp=km*0.6,kd=kp*pi/(4*wm),ki=kp*wm/pi
>> kp=km*0.6,kd=kp*pi/(4*wm),ki=kp*wm/pi
Ziegler-Nichols整定法适用对象为带纯延迟的一阶惯性环节,即G(s)=K*e^(-τs)/(Ts+1)
其中,K为比例系数;T为惯性时间常数;τ为纯延迟时间常数。
当被控对象的单位阶跃响应曲线看起来近似一条S形曲线时,可用Ziegler-Nichols经验整定公式。
下图(1)为被控对象的阶跃响应曲线中比例系数、惯性常数、纯延迟时间常数
下表(2)为PID参数的Ziegler-Nichols经验整定公式: