学习笔记9

针对之前给出的直流电机调速基本模型,重写调速控制器。设定合适的参数,实现更好的控制性能。

要求:(1)稳态速度误差尽可能小

        (2)电机速度输出的动态特性好

        (3)电机加减速过程中,电流平稳变化无明显振荡

使用PID控制算法来优化控制结果,Cotroller算法重写如下:

block Controller

 

InPort command(n=1);

 

InPort feedback(n=1);

 

OutPort outPort(n=1);

 

Real error;

 

Real errori;

 

Real errord;

 

Real pout;

 

parameter Real Kp=9.9;

 

parameter Real Ki=3;

 

parameter Real Kd=70;

 

parameter Real Max_Output_Pos = 10;

 

parameter Real Max_Output_Neg = -10;

 

 

algorithm

 

error := command.signal[1] - feedback.signal[1];

 

errori:=errori+error;

 

errord:=error-pre(error);

 

pout := Kp * error+Ki*errori+Kd*errord;

 

if pout > Max_Output_Pos then

 

outPort.signal[1] := Max_Output_Pos;

 

elseif pout < Max_Output_Neg then

 

outPort.signal[1] := Max_Output_Neg;

 

else

 

outPort.signal[1] := pout;

 

end if;

 

end Controller;

采用PID调节的一般调节方式。先调节Kp的数值得到较小的上升时间:再调整Kd的数值来减小超调量的值:最后调节Ki的值消除稳态误差。Kp增大超调量增大,Kd增大电流振荡增大,三者的参数要进行协调。整体调节后得到比较理想的控制结果。

我的调试结果为:Kp=9.9;Ki=3;Kd=70。仿真过程的上升时间tr为0.020s左右,超调量25.8%,稳态值59.4907。

图形如下:

因为计算步长取得较大,计算结果不是很准确,所以图中有较大波动。

前3秒的图像如下:

基本符合要求。

posted @ 2016-06-07 15:26  刘泱  阅读(159)  评论(1编辑  收藏  举报