VSC/SMC(十)——主辅电机的协调滑模控制(含程序模型)

目录

前言

1.主/辅电机系统

2.控制器设计

3.仿真分析

3.1S函数编写被控对象

 3.2S函数编写控制器

3.3Simulink建模

 3.4结果分析


前言

个人理解所谓的主辅电机协调控制就是两个电机连接在一起,控制目标是要使主电机和辅助电机的转速大小和方向一致。话不多话,进行实例仿真分析。

1.主/辅电机系统

2.控制器设计

注:难点在于控制律的设计和Lyapunov函数的证明,说实话我也没get懂,为什么这样取,但是至少跟着来证明可以看懂。

3.仿真分析

3.1S函数编写被控对象

扰动dm = ds = 0.5*sin(t),初始状态设定为[0.5  0 0 0]'。

function [sys,x0,str,ts] = Plant(t,x,u,flag)
switch flag,
case 0,
    [sys,x0,str,ts]=mdlInitializeSizes;
case 1,
    sys=mdlDerivatives(t,x,u);
case 3,
    sys=mdlOutputs(t,x,u);
case {2,4,9}
    sys=[];
otherwise
    error(['Unhandled flag = ',num2str(flag)]);
end
function [sys,x0,str,ts]=mdlInitializeSizes
sizes = simsizes;
sizes.NumContStates  = 4;
sizes.NumDiscStates  = 0;
sizes.NumOutputs     = 4;
sizes.NumInputs      = 4;
sizes.DirFeedthrough = 0;
sizes.NumSampleTimes = 0;
sys = simsizes(sizes);
x0 = [0.5;0;0;0];
str = [];
ts = [];
function sys=mdlDerivatives(t,x,u)
dm=u(1);
ds=u(2);
tolm=u(3);
tols=u(4);

sys(1)=x(2);
sys(2)=tolm-dm;
sys(3)=x(4);
sys(4)=tols-ds;
function sys=mdlOutputs(t,x,u)
sys = x;

3.2Simulink建模

km = 10;ks = 10;%等效项调节参数
labdam = 10;labdas = 10;%滑膜面调节系数
dM = 0.5;dS = 0.5;%鲁棒项调节参数

 3.3结果分析

 

 

 

 

结论:可以看到最后两个电机虽然受到扰动作用,但是通过输出小的控制力便能使两个电机的角度和角速度实现同步,即达到协调控制的目的。

如果有帮助,麻烦帮忙点个赞是我最大的分享动力,非常感谢!

注:仅为便利自己学习,错误在所难免,如有侵权,请联系删除,有兴趣的学者可以参考学习交流,谢谢!

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr. 邹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值