该系列博客主要讲述Matlab软件在自动控制方面的应用,如无自动控制理论基础,请先学习自动控制系列博文,该系列博客不再详细讲解自动控制理论知识。
自动控制理论基础相关链接:https://blog.csdn.net/qq_39032096/category_10287468.html?spm=1001.2014.3001.5482
博客参考书籍:《MATLAB/Simulink与控制系统仿真》。



4.综合实例

4.1 综合实例1

实验要求:给定 R L C {\rm RLC} RLC网络,如下图所示,其中, u i ( t ) u_i(t) ui​(t)为输入量, u o ( t ) u_o(t) uo​(t)为输出量。求解此系统的传递函数模型、零极点增益模型、状态空间模型(假设 R 1 = 1 Ω , R 2 = 1 Ω , C = 1 F , L = 1 H {\rm R_1=1\Omega,R_2=1\Omega,C=1F,L=1H} R1​=1Ω,R2​=1Ω,C=1F,L=1H)。

解:

【STEP1】:求解系统的传递函数。

根据电路的基本定理,结合 R L C {\rm RLC} RLC网络示意图,列出该电路的微分方程,如下:
R 1 i 1 + L d i 3 d t + u o = u i i 1 = i 2 + i 3 , u o = i 3 R 2 , i 2 = C d d t ( L d i 3 d t + u o ) \begin{aligned} &R_1i_1+L\displaystyle\frac{{\rm d}i_3}{{\rm d}t}+u_o=u_i\\\\ &i_1=i_2+i_3,u_o=i_3R_2,i_2=C\displaystyle\frac{{\rm d}}{{\rm d}t}\left(L\displaystyle\frac{{\rm d}i_3}{{\rm d}t}+u_o\right) \end{aligned} ​R1​i1​+Ldtdi3​​+uo​=ui​i1​=i2​+i3​,uo​=i3​R2​,i2​=Cdtd​(Ldtdi3​​+uo​)​
整理并化简上述方程,可得:
R 1 C L R 2 d 2 u o d t 2 + ( L R 2 + R 1 C ) d u o d t + ( 1 + R 1 R 2 ) u o = u i \frac{R_1CL}{R_2}\frac{{\rm d^2}u_o}{{\rm d}t^2}+\left(\displaystyle\frac{L}{R_2}+R_1C\right)\displaystyle\frac{{\rm d}u_o}{{\rm d}t}+\left(1+\displaystyle\frac{R_1}{R_2}\right)u_o=u_i R2​R1​CL​dt2d2uo​​+(R2​L​+R1​C)dtduo​​+(1+R2​R1​​)uo​=ui​
在零初始条件下,对上式取拉普拉斯变换,整理可得:
G ( s ) = U o ( s ) U i ( s ) = 1 ( R 1 C s + 1 ) ( L R 2 s + 1 ) + R 1 R 2 G(s)=\frac{U_o(s)}{U_i(s)}=\frac{1}{(R_1Cs+1)\left(\displaystyle\frac{L}{R_2}s+1\right)+\displaystyle\frac{R_1}{R_2}} G(s)=Ui​(s)Uo​(s)​=(R1​Cs+1)(R2​L​s+1)+R2​R1​​1​
代入具体数值 R 1 = 1 Ω , R 2 = 1 Ω , C = 1 F , L = 1 H R_1=1\Omega,R_2=1\Omega,C=1{\rm F},L=1{\rm H} R1​=1Ω,R2​=1Ω,C=1F,L=1H,可得系统传递函数模型,有:
G ( s ) = 1 s 2 + 2 s + 2 G(s)=\frac{1}{s^2+2s+2} G(s)=s2+2s+21​
【STEP2】:使用 M A T L A B {\rm MATLAB} MATLAB建立系统模型。

% 实例Chapter4.4 综合实例
clc;clear;% 传递函数分子、分母多项式系数行向量
num=[0,1];den=[1,2,2];% 建立传递函数模型
sys_tf=tf(num,den);% 从传递函数模型获取系统的零极点增益
[z,p,k]=tf2zp(num,den);% 建立系统的零极点增益模型
sys_zpk=zpk(z,p,k);% 从零极点增益模型获取系统的状态空间模型
[A,B,C,D]=zp2ss(z,p,k);% 建立系统的状态空间模型
sys_ss=ss(A,B,C,D);% 显示模型
sys_tf,sys_zpk,sys_ss
% 结果显示:
% 传递函数模型
sys_tf = 1-------------s^2 + 2 s + 2
Continuous-time transfer function.% 零极点模型
sys_zpk = 1--------------(s^2 + 2s + 2)
Continuous-time zero/pole/gain model.% 状态空间模型
sys_ss = A = x1      x2x1      -2  -1.414x2   1.414       0B = u1x1   1x2   0C = x1      x2y1       0  0.7071D = u1y1   0
Continuous-time state-space model.

【STEP3】:求阶跃响应。

% 求阶跃响应
step(sys_tf);
set(findobj(get(gca,'Children'),'LineWidth',0.5),'LineWidth',1.5);% 添加栅格
grid on;

4.2 综合实例2

实验要求:已知某双环调速的电流环系统的结构如下图所示,采用 S I M U L I N K {\rm SIMULINK} SIMULINK动态结构图求该系统线性模型。

解:

【STEP1】:建立 S I M U L I N K {\rm SIMULINK} SIMULINK动态结构图。

# 1.把所需模块拖曳到模型窗口;
# 2.线连接起来,保存为"Experiment4_4_2.mdl"文件;

【STEP2】:求取系统的线性状态空间模型。

% matlab命令行窗口下运行如下命令,得到一个线性状态空间模型
[A,B,C,D]=linmod('Experiment4_4_2')
% 结果显示:
A =1.0e+03 *-0.0781         0         0    1.7964         00   -0.5000         0         0         00.0141         0   -0.5000         0         00    0.1600   -0.1600   -0.0599    0.02500    0.5000   -0.5000         0         0B =01000C =195.3125         0         0         0         0D =0

【STEP3】:求系统的传递函数模型。

% 命令行窗口下
>> [num,den]=ss2tf(A,B,C,D);
>> printsys(num,den,'s');% 结果显示:
num/den =  56137724.5509 s^2 + 32454622005.988 s + 2192879865269.461-----------------------------------------------------------------------------s^5 + 1138.0052 s^4 + 392683.3832 s^3 + 43221369.7605 s^2 + 3506268712.5748 s+ 157887350299.401

Chapter4.4:综合实例相关推荐

  1. 一步一步学Silverlight 2系列(18):综合实例之RSS阅读器

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  2. RHEL6入门系列之二十七,源码安装及软件安装综合实例

    本篇博文中用到的所有软件和工具都可以从51cto下载,地址:http://down.51cto.com/data/676524 一. 源代码安装软件 1.源代码编译概述 虽然通过RPM软件包大大简化了 ...

  3. Struts2之Crud综合实例

    本文是Struts2的综合实例,主要包含以下功能 添加,删除,修改,查询用户 上传,下载图片 拦截器实现登陆功能 验证器检查输入 下载图片功能以前没有实现过,步骤如下 在类中增加两个属性 //文件下载 ...

  4. (18):Silverlight 2 综合实例之RSS阅读器

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  5. 前端:JS/30/综合实例:选项卡(HTML,CSS,JS)

    综合实例:选项卡(HTML,CSS,JS) <!DOCTYPE html> <html lang="en"><head><meta cha ...

  6. 写入文件python并用序号_Python和excel表合成示例:向表中添加序列号,向表的现有内容添加索引,与,Excel,表格,综合,实例,给,增加,序号,对,已有...

    Python 与 Excel 表格综合实例(一):给表格增加序号,根据表格已有内容增加索引 前言: 前面我们花了6篇博客,把Python的xlwt与xlrd两个第三方模块对Excel表格的基础操作讲完 ...

  7. linux安全技术课程报告,综合实例一+linux平台WEB安全技术研究报告.doc

    综合实例一linux平台WEB安全技术研究报告 摘 要: 根据网络安全的"木桶理论",网络安全是由若干"木板"元素的安全决定,因此本文就Linux平台下WEB服 ...

  8. android单选控件spinner与数据库结合综合实例

    本示例说明: 1.实现单选按钮与后台数据绑定,通过Id绑定. 2.实现显示时默认选中项控制. 3.实现修改后保存,根据id保存. 4.数据库处理使用AHibernate1.1,详见: http://b ...

  9. Shiro 综合实例

    Shiro 综合实例 由 北公爵无欢 创建, 最后一次修改 2016-08-12 21:19:55 综合实例 简单数据字典 用户 (sys_user) 名称 类型 长度 描述 id bigint 编号 ...

最新文章

  1. 谷歌母公司投资成绩:4大机构各有侧重,投资2个马斯克项目
  2. 用libevent实现简易的telnet
  3. mysql 嵌入式_MySql移植到嵌入式Linux平台
  4. ps cs6磨皮插件_【PS插件】ps磨皮插件Portraiture
  5. 影响中国历史的十篇政治美文
  6. spring源码分析第四天------springmvc核心原理及源码分析
  7. P2249 【深基13.例1】查找(AC) 2022.1.28
  8. AspNetCore 使用NLog日志,NLog是基于.NET平台开的类库!(又一神器)
  9. SpringBoot文件上传异常之提示The temporary upload location xxx is not valid
  10. ./configure: line 4850: ` XIPH_PATH_OGG(, as_fn_error $? '
  11. 【印刷字符识别】基于matlab模板匹配英文字母识别【含Matlab源码 808期】
  12. 股票交易数据接口是什么?
  13. Excel基础知识(1):公式中相对引用、绝对引用的区别
  14. 贵州国际商品交易中心依托实体经济发展虚拟经济
  15. Python 计算思维训练——数组和曲线绘制练习(一)
  16. Android 监听短信数据库过滤获取短信内容上传至服务器
  17. 深入学术研究,物理学家用VR演示弦理论猜想
  18. 金戒指用计算机怎么算,大姐拿来一个金戒指,先卖后当有蹊跷,鉴定后发现有问题,假的...
  19. win7底部任务栏还原方法
  20. 常用的局域网的网络拓扑有哪些种类?现在最流行的是哪种结构?为什么早期的以太网选择总线拓扑结构而不是星形拓扑结构,但现在却改为使用星形拓扑结构?

热门文章

  1. 企业网站的服务器配置,企业级服务器配置方案(网站服务器配置情况)
  2. 用TW8836驱动ST7701S TTL屏调试记录
  3. 瑞萨e2studio(6)----编译调试
  4. “下一代智能硬件Web应用防火墙”——创宇盾X完成统信互认
  5. 中国IT传奇人物柳传志--语录大全
  6. Java对接腾讯IM以及一些方法的简单封装
  7. 1,514人罹难,泰坦尼克号沉船事故背后的数据统计如何?
  8. 美丽的诗句 撩妹首选哦!
  9. 20221222 Coppeliasim的视频导出功能
  10. openFrameworks实现的简单捕鱼游戏