matlab学习笔记3(控制系统仿真)

1、典型二阶系统 H ( S ) = ω n 2 S 2 + 2 ξ ω n S + ω n 2 H\left(S\right)=\frac{\omega_n^2 }{S^2 +2\xi \omega_n S+\omega_n^2 } H(S)=S2+2ξωn​S+ωn2​ωn2​​,绘制出 ω n = 6 \omega_n =6 ωn​=6, ξ \xi ξ分别为0.1、0.2、0.3、···、1.0和2.0时的单位阶跃响应。

clear
clc
Wn=0.6;
kesai=[0.1:0.1:1,2];
hold on
for k=kesainum=Wn^2;den=[1 2*k*Wn Wn^2];step(num,den);
end
title('step response');

2、对1中的典型二阶系统,绘制出当 ξ = 0 . 7 \xi =0\ldotp 7 ξ=0.7, ω n 取2 , 4 , 6 , 8 , 10 , 12 \omega_n \textrm{取2},4,6,8,10,12 ωn​取2,4,6,8,10,12时的单位阶跃响应。

clear
clc
W=2:2:12;
kesai=0.7;
hold on
for wn=Wnum=wn^2;den=[1 2*kesai*wn wn^2];step(num,den);
end
title('step response');
hold off

3、求三阶系统 H ( s ) = 5 ( s 2 + 5 s + 6 ) s 3 + 6 s 2 + 10 s + 8 H(s)=\frac{5\left(s^2 +5s+6\right)}{s^3 +6s^2 +10s+8} H(s)=s3+6s2+10s+85(s2+5s+6)​的单位阶跃响应。

clear
clc
num=[5 25 30];
den=[1 6 10 8];
step(num,den);
title('step response');

4、求典型二阶系统 H ( s ) = ω n 2 s 2 + 2 ξ ω n + ω n 2 H(s)=\frac{\omega_n^2 }{s^2 +2\xi \omega_n +\omega_n^2 } H(s)=s2+2ξωn​+ωn2​ωn2​​,当 ξ = 0 . 7 , ω n = 6 \xi =0\ldotp 7,\omega_n =6 ξ=0.7,ωn​=6时的单位阶跃响应。

clear
clc
Wn=6;
kesai=0.7;
num=Wn^2;
den=[1 2*kesai*Wn Wn^2];
step(num,den);
title('step response');

5、有高阶系统 { x ˙ = [ − 1.6 − 0.9 0 0 0.9 0 0 0 0.4 0.5 − 5.0 − 2.45 0 0 2.45 0 ] x + [ 1 0 1 0 ] u y = [ 1 1 1 1 ] x \left\lbrace \begin{array}{l} \dot{x} =\left\lbrack \begin{array}{cccc} -1.6 & -0.9 & 0 & 0\\ 0.9 & 0 & 0 & 0\\ 0.4 & 0.5 & -5.0 & -2.45\\ 0 & 0 & 2.45 & 0 \end{array}\right\rbrack x+\left\lbrack \begin{array}{l} 1\\ 0\\ 1\\ 0 \end{array}\right\rbrack u\\ y=\left\lbrack \begin{array}{llll} 1 & 1 & 1 & 1 \end{array}\right\rbrack x \end{array}\right. ⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧​x˙=⎣⎢⎢⎡​−1.60.90.40​−0.900.50​00−5.02.45​00−2.450​⎦⎥⎥⎤​x+⎣⎢⎢⎡​1010​⎦⎥⎥⎤​uy=[1​1​1​1​]x​,求单位阶跃响应,单位冲激响应和零输入响应,设初始状态 x 0 = [ 1 , 1 , 1 , − 1 ] T x_0 ={\left\lbrack 1\;,1,\;1,-1\right\rbrack }^T x0​=[1,1,1,−1]T。

a0=[-1.6,-0.9,0,0;0.9,0,0,0;0.4,0.5,-5.0,-2.45;0,0,2.45,0];
b0=[1 0 1 0]';
c0=[1 1 1 1];
d0=[0];
t=0.5;   %采样周期
[a,b,c,d]=c2dm(a0,b0,c0,d0,t,'tustin');%连续系统离散化
subplot(2,2,1);
dstep(a,b,c,d);%离散系统的单位阶跃响应
title('discrete step response');
subplot(2,2,2);
dimpulse(a,b,c,d);%离散系统的单位冲激响应
title('discrete impulse response');
subplot(2,2,3);
x0=[1 1 1 -1]';%离散系统初始状态
dinitial(a,b,c,d,x0);
axis([0 6 -0.5 2.5]);
title('discrete initial response');
subplot(2,2,4);
[z,p,k]=ss2zp(a,b,c,d,1);%状态方程转化为零极点增益形式
zplane(z,p);
title('discrete ploe-zero map');

6、多输入多输出系统 { x ˙ = [ 2.25 − 5 − 1.25 − 0.5 2.25 − 4.25 − 1.25 − 0.25 0.25 − 0.5 − 1.25 − 1 1.25 − 1.75 − 0.25 − 0.75 ] x + [ 4 6 2 4 2 2 0 2 ] u y = [ 0 0 0 1 0 2 0 2 ] x \left\lbrace \begin{array}{l} \dot{x} =\left\lbrack \begin{array}{cccc} 2.25 & -5 & -1.25 & -0.5\\ 2.25 & -4.25 & -1.25 & -0.25\\ 0.25 & -0.5 & -1.25 & -1\\ 1.25 & -1.75 & -0.25 & -0.75 \end{array}\right\rbrack x+\left\lbrack \begin{array}{cc} 4 & 6\\ 2 & 4\\ 2 & 2\\ 0 & 2 \end{array}\right\rbrack u\\ y=\left\lbrack \begin{array}{cccc} 0 & 0 & 0 & 1\\ 0 & 2 & 0 & 2 \end{array}\right\rbrack x \end{array}\right. ⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧​x˙=⎣⎢⎢⎡​2.252.250.251.25​−5−4.25−0.5−1.75​−1.25−1.25−1.25−0.25​−0.5−0.25−1−0.75​⎦⎥⎥⎤​x+⎣⎢⎢⎡​4220​6422​⎦⎥⎥⎤​uy=[00​02​00​12​]x​,求单位阶跃响应和单位冲激响应。

clear
clc
a=[2.25 -5 -1.25 -0.5;2.25 -4.25 -1.25 -0.25;0.25 -0.5 -1.25 -1;1.25 -1.75 -0.25 -0.75];
b=[4,6;2,4;2,2;0,2];
c=[0 0 0 1;0 2 0 2];
d=zeros(2,2);
subplot(1,2,1);
step(a,b,c,d);
title('step response');
subplot(1,2,2);
impulse(a,b,c,d);
title('impule response');

matlab学习笔记3(控制系统仿真)相关推荐

  1. 【Matlab学习笔记】控制运算精度digits和vpa函数

    matlab控制运算精度用的是digits和vpa这两个函数 digits用于规定运算精度,比如: digits(20); 这个语句就规定了运算精度是20位有效数字.但并不是规定了就可以使用,因为实际 ...

  2. 控制系统仿真与CAD-薛定宇-第四章matlab学习笔记

    控制系统仿真与CAD-薛定宇-第四章matlab学习笔记 04-02传递函数模型 tfdata() 传递函数属性法 04-07典型系统连接计算 pretty 用法 04-08方框图简化 04-09代数 ...

  3. MATLAB学习笔记(二)

    MATLAB学习笔记(二) 一.矩阵运算 矩阵分析 向量和矩阵的范数运算 矩阵的秩 矩阵的化零矩阵 矩阵的化简rref()函数 线性方程组 超定线性方程组求解 矩阵分解 1.对称正定矩阵的Choles ...

  4. MATLAB学习笔记——二维和三维绘图

    MATLAB学习笔记--二维和三维绘图 近期练习matlab的二维和三维绘图,整理一下,以防忘记. 文章目录 MATLAB学习笔记--二维和三维绘图 一.二维绘图 1.plot命令 2.fplot 命 ...

  5. MATLAB学习笔记(八)

    MATLAB学习笔记(八) 一.二维曲线 1.1 plot函数 1.2 fplot函数 二.绘制图形的辅助操作 2.1 图形标注 2.2 坐标控制 2.3 图形保持 2.4 图形窗口分割 三.其他形式 ...

  6. MATLAB学习笔记(七)

    MATLAB学习笔记(七) 一.MATLAB程序流程控制 1.1 文件的建立 1.2 顺序结构 1.3 选择结构 1.3.1 单分支if语句 1.3.2 双分支if语句 1.3.3 多分支if语句 1 ...

  7. B站台湾大学郭彦甫|MATLAB 学习笔记|06 高阶绘图 Advanced Plot

    MATLAB学习笔记(06 高阶绘图 Advanced Plot) 如果想获得更好浏览体验的朋友可以转到下面链接 06 1. 对数图 (Logarithm Plots) x = logspace(-1 ...

  8. MATLAB学习笔记0:学习须知

    阅读前请注意: 1. 该学习笔记是华中师范大学HelloWorld程序设计协会2021年寒假MATLAB培训的学习记录,是基于培训课堂内容的总结归纳.拓展阅读.博客内容由 @K2SO4钾 撰写.编辑, ...

  9. Matlab学习笔记(3)—GUI程序设计与图像处理基本操作

    Matlab学习笔记(3)-GUI程序设计与图像处理基本操作 一.GUI程序设计 如果想要开始使用Matlab进行GUI编程,首先需要进入Matlab的GUI界面对GUI有一个基本的认识. 1.gui ...

最新文章

  1. 【django】HttpResponse对象
  2. css表格文字超数量就竖排_求助!!一个非常棘手的问题。就是文字竖排显示的问题...
  3. 201671010117 2016-2017-2 《Java程序设计》Java第十七周学习心得
  4. 我的世界服务器的文件名叫什么,我的世界 外国服务器叫什么名字 | 手游网游页游攻略大全...
  5. 这是一项颠覆性技术 - 容器
  6. 关于python安装scipy模块的问题
  7. 关于[知识竞赛现场管理系统-双屏PPT版]内置的第三方答题平台以及[评委计分系统-双屏专业版]的特殊疑难问题 汇编
  8. delphi xe 连接mysql_delphixe7支持MYSQL连接的方式
  9. 苹果说全是假的,市面不存在原装贴膜
  10. 一文读懂长非编码RNA(lncRNA)的分类、功能及测序鉴定方法
  11. 金士顿内存条真假测试软件,金士顿内存条真伪怎么看?金士顿内存条判别真伪的几种方法...
  12. 紫光展锐虎贲T618八核(Android11.0)4G核心板
  13. 使用Python编程出高级计算器,支持加减乘除、复合运算、三角函数、平方根、二进制转换、幂运算等高阶运算
  14. mysql的下载安装
  15. OR-Tools:6-路由问题(Routing)车辆路线,旅行商问题TSP
  16. Java实现 洛谷 P1914 小书童——凯撒密码
  17. 弱人工智能时代,如何跨越技术与产品的鸿沟?
  18. java学习-节点1
  19. 201571030121《小学四则运算练习软件软件需求说明》结对项目报告
  20. hdu3910 Liang Guo Sha(期望)

热门文章

  1. Ajax 学习 二 Accordion和AccordionPane 淡入淡出效果和AutoSize自动尺寸
  2. 原有的建筑资质三级不升级,顺延之后,还有申请二级的必要吗?
  3. mac下安装 mat内存分析工具
  4. 【GD32F427开发板试用】06-硬件I2C软件I2C驱动0.91OLED
  5. 2.4G无线音频模块方案测评之RODE录音麦
  6. 【全文】工信部正式发布《公共互联网网络安全突发事件应急预案》
  7. python修改桌面壁纸_3分钟教你用python把你的桌面壁纸变得酷起来
  8. 毕业辨答 24PPPT模板
  9. 光纤收发器常见指示灯的意义
  10. 商家代运营=商家+代运营?