主要内容

具有参数变体的直流电动机的参考跟踪

此示例显示了如何生成用于从Simulink模型的控制系统的工厂变化的LTI模型数组。金宝app此模型阵列使用控制系统设计师用于控制设计。

直流电机模型

在电枢控制的直流电动机中,施加的电压va.控制角速度$ \ omega $轴。DC电机的简化模型如下所示。

打开DC电机的Si金宝appmulink模型。

mdl ='scddcmotor';Open_System(MDL)

执行批次线性化

控制器的目标是提供跟踪到参考角速度的步骤变化。

对于此示例,电机的物理常数是:

  • R.= 2.0 +/- 10%欧姆

  • L.= 0.5亨利

  • km.= 0.1扭矩常数

  • KB.= 0.1返回EMF常数

  • = 0.2 NMS.

  • j= 0.02 +/- .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);Params(1).name ='r';params(1).value = r_grid;Params(2).name ='j';Params(2).value = J_Grid;

针对每个参数值组合线性化模型。

sys =线性化(mdl,io,params);

开放控制系统设计师

打开控制系统设计师,并导入工厂模型数组。使用以下命令。

ControlSystemDesigner(SYS)

使用控制系统设计师,您可以为标称工厂模型设计一个控制器,同时同时可视化其他工厂模型的影响,如下所示。

根轨迹编辑器显示标称模型的根轨迹和与其他工厂模型相关联的闭环极位置。

BODE编辑器显示标称模型响应和其他工厂模型的响应。

步骤响应表明,对于任何工厂模型,不实现参考跟踪。

设计控制器

使用工具控制系统设计师,设计以下补偿器以供参考跟踪。

$$ c(s)= 1.19 \ frac {(s + 2.1)} {s} $$

所得到的设计如下所示。闭环步骤响应表明,在工厂集中定义的所有型号的零稳态误差,实现了参考跟踪的目标。但是,如果需要零百分比过冲需求,并非所有答复都会满足这一要求。

在Simulink模型中导出设计和验证金宝app

要将所设计的控制器导出到MATLAB工作区,请单击出口。在“导出模型”对话框中,选择C,然后点击出口。将控制器参数写入Simulink模型。金宝app

[cnum,cden] = tfdata(c,'v');hws = get_param(mdl,'modelworkspace');Assivein(HWS,'cnum',cnum)Assistin(HWS,'CDEN',cden)

更多信息

有关使用多模型功能的更多信息控制系统设计师, 看多模型控制设计

bdclose('scddcmotor'