主要内容

直流电机控制

这个例子展示了跟踪设定值命令和降低负载干扰灵敏度的三种直流电动机控制技术的比较:

  • 前馈命令

  • 积分反馈控制

  • 等方面的监管

有关直流电机模型的更多细节,请参阅“入门:构建模型”。

问题陈述

在电枢控制的直流电机中,施加的电压Va控制轴的角速度w。

这个例子展示了两种直流电机控制技术,以降低w对负载变化的灵敏度(扭矩的变化与电机负载相反)。

直流电机的简化模型如上所示。扭矩Td建模负载扰动。你必须尽量减小由这些干扰引起的速度变化。

对于本例,物理常量为:

R = 2.0;%欧姆L = 0.5;%亨利公里= 0.1;%转矩常数Kb = 0.1;反电动势常数%Kf = 0.2;% NmsJ = 0.02;% kg.m ^ 2 /秒^ 2

首先构造直流电机的两输入(Va,Td)和一输出(w)状态空间模型:

h1 = tf(Km,[L R]);%电枢h2 = tf(1,[J Kf]);运动的%方程式DCM = ss(h2) * [h1, 1];% w = h2 * (h1*Va + Td)dcm =反馈(dcm, Kb, 1, 1);%关闭反emf循环

注意:使用状态空间形式进行计算,以最小化模型顺序。

现在画出角速度对电压Va阶跃变化的响应:

stepplot (dcm (1));

在绘图上右键选择“特征:沉淀时间”显示沉淀时间。

前馈直流电机控制设计

您可以使用这个简单的前馈控制结构来命令角速度w为给定值w_ref。

前馈增益Kff应设为直流增益从Va到w的倒数。

凯萨= 1 / dcgain (dcm (1))
凯萨= 4.1000

为了评估在负载干扰下的前馈设计,模拟在t=5和t=10秒之间,当干扰Td = -0.1Nm时步进命令w_ref=1的响应:

t = 0:0.1:15;drawtext (t> = 1 and t> = 1 and t> = 1 and t> = 1 and t> = 1 and t> = 1;%负载扰动U = [one (size(t))];Td];% w_ref=1 and TdKff = 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。Control System Designer应用程序是用于执行此类设计的交互式UI。

在相同的测试用例上,将这个新设计与最初的前馈设计进行比较:

K = 5;C = tf(K,[1 0]);%补偿器K / sif (dcm * append(C,1),1,1,1), colorred;h = lsimplot (cl_ff cl_rloc, u, t);cl_rloc。InputName = {“w_ref”“Td”};cl_rloc。OutputName =' w ';标题(“设定跟踪和抗干扰”)传说(“前馈”“反馈w / rlocus”“位置”“西北”

根轨迹设计能较好地抵制载荷扰动。

LQR直流电机控制设计

为了进一步提高性能,尝试设计一个线性二次调节器(LQR)的反馈结构如下所示。

LQR格式除了误差积分外,还利用状态向量x=(i,w)来合成驱动电压Va,得到的电压为

K1 * w + K2 * w/s + K3 * i
其中I为电枢电流。

为了更好地抑制干扰,可以使用代价函数来惩罚较大的积分误差,例如代价函数

$ $ C = \ int ^ \ infty_0 (20 q (t) ^ 2 + \ω(t) ^ 2 + 0.01 v_a (t) ^ 2) dt $ $

在哪里

$$ q(s) = 0 /s。$$

该代价函数的最优LQR增益计算如下:

Dc_aug = [1;Tf (1,[1 0])] * dcm(1);%增加输出w/s到直流电机模型K_lqr = lqry(dc_aug,[1 0;0 20], 1);

接下来,推导出用于仿真的闭环模型:

P = augstate (dcm);%的输入:Va, Td输出:w xC = K_lqr * append(tf(1,[1 0]),1,1);%补偿器包括1/sl = P * append(C,1); / /%开环CL =反馈(OL,眼(3),1:3,1:3);闭环反馈cl_lqr = CL(1,[1 4]);%萃取转移(w_ref,Td)->

这张图比较了三种直流电机控制设计的闭环波德图

bodeplot (cl_ff cl_rloc cl_lqr);

点击曲线来识别系统或检查数据。

直流电机控制设计比较

最后在仿真测试用例中比较了三种直流电机控制设计:

h = lsimplot (cl_ff cl_rloc cl_lqr, u, t);标题(“设定跟踪和抗干扰”)传说(“前馈”“反馈(rlocus)”的反馈等方面)“位置”“西北”

由于其额外的自由度,LQR补偿器在拒绝负载扰动方面表现最好(在这里讨论的三种直流电机控制设计中)。