当前位置: 首页 > news >正文

MATLAB 控制系统设计与仿真 - 41

鲁棒控制的其他函数 - 回路成型函数 loopsyn

灵敏度问题由鲁棒控制工具箱中的loopsyn就可以直接求解,该函数采用H无穷回路成型算法设计控制器,函数的调用格式为:

[K,CL,gamma,info] = loopsyn(G,Gd) % G为受控对象模型% Gd为期望的回路传递函数% K为回路成型控制器模型% CL为在该控制器下的闭环系统模型% gamma为成型精度,当gamma=1时表示设计出精确的成型控制器
[K,CL,gamma,info] = loopsyn(G,Gd,alpha) % alpha为[0 1]之间的数,当alpha趋于0时,% 设计出的控制器具有较好的闭环控制效果% 当alpha趋于1时,控制器具有较好的抗干扰能力
[K,CL,gamma,info] = loopsyn(G,Gd,alpha,ord) %orde可以用来设定控制器的阶数

给定一下系统

G(s)=\begin{bmatrix} \frac{0.806s+0.264}{s^2+1.15s+0.202} &\frac{-15s-1.42}{s^3+12.8s^2+13.6s+2.36} \\ \frac{1.95s^2+2.12s+0.49}{s^3+9.15s^2+9.39s+1.62}&\frac{7.15s^2+25.8s+9.35}{s^4+20.8s^3+116.4s^2+111.6s+18.8} \end{bmatrix}

选择两个回路的模型均为

G_d(s)=\frac{500}{s+1}

试设计回路成型控制器。

实现的MATLAB代码如下:

clear all;clc;
g11=tf([0.806 0.264],[1 1.15 0.202]);
g12=tf([-15 -1.42],[1 12.8 13.6 2.36]);
g21=tf([1.95 2.12 0.49],[1 9.15 9.39 1.62]);
g22=tf([7.15 25.8 9.35],[1 20.8 116.4 111.6 18.8]);
G=[g11 g12; g21 g22];
s=tf('s');
Gd=500/(s+1); 
[K,CL,gamma]=loopsyn(G,Gd);
figure(1)
step(CL,0.1);
hold on
step(feedback(G*K,eye(2)),0.1)
hold off
legend('step reponse of CL','step response of G*K/(1+G*K)')
figure(2)
bodemag(G*K,[Gd 0; 0 Gd])

程序运行结果如下:

有结果可知,设计的效果一般,因为耦合度还是比较高的。

如果我们设计控制器时要求控制系统的系统优先于模型不确定性。可以做如下修改

[K,CL,gamma]=loopsyn(G,Gd,0.0001);
figure(1)
step(CL,0.1);
hold on
step(feedback(G*K,eye(2)),0.1)
hold off
legend('step reponse of CL','step response of G*K/(1+G*K)')
figure(2)
bodemag(G*K,[Gd 0; 0 Gd])

程序运行结果如下:

由上图可知,系统的耦合得到了大大改善,小伙伴们也可以自己画一下闭环系统的传递函数比较一下。但是在实际应用中,要考虑到系统的不确定性,否则系统会不稳定。

最后,欢迎大家有问题给我留言。

非常感谢小伙伴们的-点赞-收藏-加关注。

相关文章:

  • 整合SSM——(SpringMVC+Spring+Mybatis)
  • 蓝桥杯 蜗牛 动态规划
  • 面向对象程序设计(双语)|| 实验六:文件(Java版)
  • FFmpeg+Nginx+VLC打造M3U8直播
  • Win 11 重装 Ubuntu 双系统方法
  • 基于Fabric.js的选座布局系统开发笔记
  • 【Linux】43.网络基础(2.5)
  • FPGA IO引脚 K7-认知4
  • 基于MTF的1D-2D-CNN-GRU-Attention时序图像多模态融合的故障识别,适合研究学习(Matlab完整源码和数据),附模型研究报告
  • vmare识别不到共享文件夹,报错:fuse: bad mount point `/mnt/hgfs‘: No such file or directory
  • 2563.统计公平数对的数目 是否顺序无关?
  • 利用 Deepseek 和 Mermaid 画流程图
  • 软件开发指南——GUI 开发方案推荐
  • LeetCode --- 154双周赛
  • 当算力遇上马拉松:一场科技与肉身的极限碰撞
  • JSAPI2.1-DOM基础
  • 【网络技术_域名解析DNS】三、DNS 中间件实践应用与优化策略
  • Linux系统中的网络传输、网络管理以及软件仓库的构建
  • CSS层叠
  • 【java实现+4种变体完整例子】排序算法中【插入排序】的详细解析,包含基础实现、常见变体的完整代码示例,以及各变体的对比表格
  • 龚正会见巴西里约热内卢州州长克劳迪奥·卡斯特罗
  • 十二届上海市委第六轮巡视启动,对18家市管单位开展常规巡视
  • 教皇方济各逝世,外交部:表示哀悼,愿同梵方共同推动中梵关系持续改善
  • 私和人命:清代四川南部县谢相荣投河溺毙一案
  • 规模再创新高,超百款新车首发!上海车展明日开幕
  • 清华成立教育学院:加快高层次人才培养、加强教育学科建设