这个例子展示了如何从Simulink模型中生成一组LTI模型来表示控制系统的工厂变化。金宝app中使用的模型数组控制系统设计为控制设计。
在电枢控制的直流电动机中,施加的电压弗吉尼亚州
控制角速度轴。DC电机的简化模型如下所示。
打开直流电机的Si金宝appmulink模型。
mdl =“scdDCMotor”;open_system (mdl)
控制器的目标是跟踪参考角速度的阶跃变化。
在本例中,电机的物理常数为:
R
= 2.0 +/- 10%欧姆
l
= 0.5亨利
公里
转矩常数
Kb
= 0.1反电动势常数
Kf
= 0.2 Nms
J
= 0.02 +/- 0.01 kg m^2/s^2
请注意,参数R
和J
被指定为一个值范围。
为了设计一个控制器,它将工作于所有物理参数值,创建一个有代表性的集合,通过采样这些值。
对于参数R
和J
,使用它们的标称值、最小值和最大值。
R =[2、1.8、2.2);J =[02、03 . 01];
要创建一个LTI阵列的工厂模型,批量线性化直流电机工厂。的样本值的每一个组合R
和J
,线性化Simulink模型。金宝app为此,在控制器块的输出处指定一个线性化输入点,在负载块的输出处指定一个线性化输出点,并在负载块的输出处设置一个环路开口,如模型所示。
得到模型中指定的线性化分析点。
io = getlinio (mdl);
改变植物参数R
和J
。
[R_grid, J_grid] = ndgrid (R, J);参数(1)。Name =“R”;参数(1)。弗吉尼亚州lue = R_grid; params(2).Name =“J”;参数(2)。弗吉尼亚州lue = J_grid;
对每个参数值组合线性化模型。
sys =线性化(mdl io, params);
开放控制系统设计,并导入植物模型阵列。使用下面的命令。
controlSystemDesigner(系统)
使用控制系统设计,您可以为标称工厂模型设计一个控制器,同时同时可视化其他工厂模型的影响,如下所示。
根轨迹编辑器显示名义模型的根轨迹和与其他植物模型相关联的闭环极点位置。
Bode编辑器同时显示标称模型响应和其他工厂模型的响应。
阶跃响应表明,没有实现参考跟踪的任何对象模型。
使用工具控制系统设计,设计以下补偿器以供参考跟踪。
结果设计如下所示。闭环阶跃响应结果表明,在稳态误差为零的情况下实现了参考跟踪目标。然而,如果需要一个0%的超调需求,并不是所有的响应都能满足这个需求。
要将所设计的控制器导出到MATLAB工作区,请单击出口。在导出模型对话框中,选择C,然后单击出口。将控制器参数写入Simulink模型。金宝app
[Cnum, Cden] = tfdata (C,“v”);探测= get_param (mdl,“modelworkspace”);assignin(探测,“Cnum”Cnum) assignin(探测,“Cden”Cden)
有关使用多模型功能的更多信息控制系统设计,请参阅Multimodel控制设计。
bdclose (“scdDCMotor”)