此示例示出了用于跟踪设定点的命令并减少负载扰动灵敏度三个DC马达控制技术的比较:
前馈命令
积分反馈控制
等方面的监管
有关直流电机模型的详细信息,请参阅“入门:建立模型”。
在衔铁控制的直流电动机,所施加的电压Va控制角速度ω轴的。
这个例子展示了两种直流电机控制技术,以降低w对负载变化(电机负载所反对的扭矩变化)的灵敏度。
DC电机的简化模型,如上所示。扭矩Td的模型负载扰动。你必须尽量减少这种干扰引起的速度变化。
在这个例子中,物理常数是:
R = 2.0;%欧姆L = 0.5;%亨利公里= 0.1;%扭矩常数KB = 0.1;%反电动势常数KF = 0.2;NMS%J = 0.02;% kg.m ^ 2 /秒^ 2
首先,建立具有两个输入(Va,Td)和一个输出(w)的直流电动机的状态空间模型:
H1 = TF(公里,[L R]);%电枢H2 = TF(1,[J Kf个]);%的运动等式DCM = SS(H 2)* [H1,1];%W = H 2 *(H1 * VA + Td)为DCM =反馈(DCM,KB,1,1);%接近反电动势循环
注意:使用状态空间表单计算,以最小化模型顺序。
现在绘制角速度响应的一个步骤变化的电压Va:
stepplot (dcm (1));
右键选择“特性:设置时间”,显示设置时间。
您可以使用这个简单的前馈控制结构来命令角速度w到给定值w_ref。
前馈增益Kff应该设置为Va到w直流增益的倒数。
凯萨= 1 / dcgain (dcm (1))
KFF = 4.1000
为了评估前馈设计在负载扰动下的性能,在t=5到t=10秒之间,在干扰Td = -0.1Nm的情况下,模拟阶跃指令w_ref=1的响应:
t = 0时:0.1:15;TD = -0.1 *(T> 5&T <10);%负载扰动u = [one (size(t));Td];%w_ref = 1和Tdcl_ff = dcm * diag([Kff,1]);%的附加前馈增益cl_ff。InputName = {“w_ref”,“Td”};cl_ff。OutputName =' w ';H = lsimplot(cl_ff,U,T);标题(“设定值跟踪和干扰抑制”)传说('CL \ _ff')%注释情节线([5,5],[。2,3]);线([10、10],[。2,3]);文本(7.5,升至,{'骚乱',“T_d = -0.1 nm”},...“变性”,“中间”,“水平的”,“中心”,“颜色”,“r”);
显然,前馈控制手柄负载扰动不佳。
接下来尝试下面所示的反馈控制结构。
为了实现零稳态误差,使用积分控制的形式
C (s) = K / s
其中,K是待确定。
确定增益K,则可以使用根轨迹技术施加到开环1 / S *转移(VA-> w)的:
h = rlocusplot(tf(1,[1 0]) * dcm(1));setoption (h,“FreqUnits”,“rad / s”);-15年xlim ([5]);ylim (15) (-15);
点击曲线读取增益值及相关信息。这里的一个合理的选择为K = 5.注意SISO设计工具提供了一个集成的图形用户界面来进行这样的设计(帮助SISOTOOL详情)。
将此新设计与相同测试用例的初始前馈设计进行比较:
K = 5;C = tf(K,[1 0]);%补偿器K / scl_rloc =反馈(dcm *追加(C,1),1,1,1);h = lsimplot (cl_ff cl_rloc, u, t);cl_rloc。InputName = {“w_ref”,“Td”};cl_rloc。OutputName =' w ';标题(“设定值跟踪和干扰抑制”)传说(“前馈”,'反馈W / rlocus','位置',“西北”)
根轨迹设计是在拒绝负载扰动更好。
为了进一步提高性能,尝试为如下所示的反馈结构设计一个线性二次调节器(LQR)。
除了误差的积分时,LQR方案还使用状态向量x =(I,W),以合成所述驱动电压Va,将得到的电压的形式是
Va = K1 * w + K2 * w/s + K3 * i
其中i为电枢电流。
为了更好地抑制干扰,可以使用代价函数来惩罚较大的积分误差,例如代价函数
在哪里
该代价函数的最优LQR增益计算如下:
dc_aug = [1;tf(1,[1 0])] * dcm(1);增加输出w/s到直流电机模型K_lqr = LQRY(dc_aug,[1 0 0 20],0.01);
接下来推导仿真用的闭环模型:
P = augstate(DCM);%输入:Va时,Td的输出:W,XC = K_lqr * append(tf(1,[1 0]),1,1);%补偿器,包括1/sOL = P *追加(C,1);%开环CL =反馈(OL,眼(3),1:3,1:3);闭合反馈回路cl_lqr = CL(1,[1〜4]);%提取转移(w_ref,Td)->w
本图比较了三种直流电动机控制设计的闭环波德图
bodeplot(cl_ff,cl_rloc,cl_lqr);
单击曲线来识别系统或检查数据。
最后,我们比较我们的模拟试验情况下,三个DC电机控制设计:
H = lsimplot(cl_ff,cl_rloc,cl_lqr,U,T);标题(“设定值跟踪和干扰抑制”)传说(“前馈”,“反馈(rlocus)”,的反馈等方面),'位置',“西北”)
由于其额外的自由度,在拒绝负载干扰的LQR补偿器执行最好的(三个DC电机控制设计中这里所讨论的)。