Matlab控制系统计算机辅助设计
基于MATLAB的控制系统计算机辅助分析ppt
包权
人书友圈7.三端同步
加入以下MATLAB语句可以求系统在阶跃函数作用下的给 定稳态误差终值еsr:
E(s) R(s) C(s) R(s) (s)R(s) 1 (s)R(s)
1
1
G(s) G(s)
R(s)
1
1 G(s)
.R(s)
ess
lim sE(s) s0
Transfer function: 2 s^3 + 4.5 s^2 + s
1 G(s)
若 G s. G0 N (s) ,则结果esr为求系统扰动稳态误差终值;
1 G(s)
补充知识:MATLAB基础Ⅲ
一.MATLAB中的图形工具 LTI Viewer
以【例4.3】系统为例来说明怎样使用MATLAB中,LTI Viewer求系 统的各种性能指标。 ①在买的VIP时长期间,下载特权不清零。
100W优质文档免费下 载
VIP有效期内的用户可以免费下载VIP免费文档,不消耗下载特权,非会员用户需要消耗下载券/积分获取。
部分付费文档八折起 VIP用户在购买精选付费文档时可享受8折优惠,省上加省;参与折扣的付费文档均会在阅读页标识出折扣价格。
⑦ 对建好的系统结构图模型按“zhang4sys1.mdl”命名并存盘
【例4.1】已知二阶系统的超调量σ%=20%,求系统的阻尼比ξ。 【解】程序: sigma=0.2; zeta=((log(1/sigma))^2/((pi)^2+(log(1/sigma))^2))^(1/2) zeta =
0.4559 即求得系统阻尼比ξ=0.4559
【例4.2】已知二阶系统的ξ=0.46,求系统的超调量σ%。 【解】程序: zeta=0.46; sigma=2.7182^(-pi*zeta/(1-(zeta)^2)^(1/2))
控制系统计算机辅助设计---MATLAB语言与应用
系统可控性判定
MATLAB 求解
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
29
Gram 矩阵满足 Lyapunov 方程 对偶问题
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
30
Kalman 规范分解
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
61
例4-12 带有复数极点的系统 阶跃响应解析解 解析解
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
62
解析解的进一步化简
基于 Euler 公式的化简
其中 新 MATLAB 函数
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
63
新 MATLAB 函数清单
38
得出 Leunberge 变换矩阵
编写 leunberge.m 函数
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
39
MATLAB 函数清单
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
40
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
56
解析解求解 解析解求解结果
稳定性
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
57
连续系统的解析解法
无重根时部分方式展开
2021/6/22
控制系统计算机辅助设计---MATLAB语言与应用
58
由 Laplace 反变换求解析解 有重根时 相应项的解析解为
控制系统计算机辅助设计-MATLAB语言与应用
20
国际上出版了关于 MATLAB及 CACSD 的专著和教材,但它们大都是MATLAB的
入门教材,并没有真正深入、系统地探讨 CACSD 技术及 MATLAB实现,将MATLAB
的强大功能与控制领域成果有机结合是本 书力图解决的主要问题。
2020/4/12
控制系统计算机辅助设计-MATLAB语言与应用
2020/4/12
控制系统计算机辅助设计-MATLAB语言与应用
17
除了经典的多变量频域方法之外,还出现了一些 基于最优化技术的控制方法,其中比较著名的是 英国学者 John Edmunds 提出的多变量参数最优化 控制方法和英国学者 Zakian 提出的不等式控制方 法等。
与此同时,美国学者似乎更习惯于状态空间的表 示与设计方法。此方法往往又称为时域方法 (timedomain),首先在线性二次型指标下引入了最优控 制的概念,并在用户的干预下(如人工选择加权矩 阵)得出某种最优控制的效果,这样的控制又往往 需要引入状态反馈或状态观测器新的控制概念。
辨识工具箱、鲁棒控制工具箱、多变量频域设计工 具箱、µ分析与综合工具箱、神经网络工具箱、最 优化工具箱、信号处理工具箱、以及仿真环境
Simulink。
2020/4/12
控制系统计算机辅助设计-MATLAB语言与应用
16
1.5 控制系统计算机辅助设计 领域的新方法
早期的 CACSD 研究侧重于对控制系统的计算机辅 助分析上,开始时人们利用计算机的强大功能把 系统的频率响应曲线绘制出来,并根据频率响应 的曲线及自己的控制系统设计经验用试凑的方法 设计一个控制器,然后利用仿真的方法去观察设 计的效果。
2020/4/12
控制系统计算机辅助设计-MATLAB语言与应用
第4章 基于MATLAB的控制系统计算机辅助分析
(2)用LTI Viewer图形工具求系统阶跃响应的性能指标。
四.滞后系统的时域响应分析
该系统的闭环传递函数为:
Gc ( s )G0 ( s )e s Y (s) (s) U ( s ) 1 Gc ( s )G0 ( s ) H ( s )e s
(一)滞后系统的近似时域分析 典型n阶pade近似传递函数模型为: s 1 p1 (s) 2 p 2 (s) 3 (1) n p n 1 (s) n 2 p n, ( s) s 1 p1 (s) 2 p 2 (s) 3 p n 1 (s) n 2 pade( )函数的调用格式为: [np,dp]= pade(T,n) 其中,T为延迟时间,n为pade近似的阶次。 以上闭环系统的近似传递函数为:
② 点击Sources,选中信号源模块组中的Step模块, 并拖拽到“untitled”模型窗口。
③在各模块库中,选中需要的标准功能模块并拖拽 到“untitled”模型窗口。双击“Transfer Fcn”模块,在得 出的对话框中,分别输入系统的分子和分母参数,即可 得到修改后的系统模型。
④仿真参数的设置
连续系统模块组 离散系统模块组
函数和表模块组 数学运算模块组 非线性模块组 信号与系统模块组 输出模块组 信号源模块组
(二)模型窗口的建立
打开“untitled”窗口有三种方法: ① 在MATLAB的命令窗口中选择 File→New→Model 菜单项; ② 单击Simulink工具栏中的“新建模型”图标; ③ 如 果 Simulink 动 态 结 构 图 已 经 存 在 , 那 么 在 MATLAB指令窗口下直接键入模型文件名字,便会 直接打开该模型动态结构图的模型窗口。
System:Lsys Peak amplitued:1.35 Overshoot(%):34.9 At time:11.3
matlab控制系统计算机辅助设计-长安大学..
联校正和并联校正。
3
6.1 基于传递函数的控制器设计方法
一般的控制目的是使得输出信号能很好地跟踪输入
信号,这样的控制也称为伺服控制。在这个基本的控制 结构下,误差信号E(s)和控制信号 U(s) 一般要求其尽可 能小。如图 6.2 所示系统,由于受控对象和控制器为串 联,故称其为串联控制。常用的串联控制有超前滞后校 正器和PID类控制器。 R(s)
p
φp φz 0
Z
-1/T
-1/ɑT
图6.3 超前网络零、极点在S平面上的分布
5
如图6.4可以看出, 引入这样具有正相位 的校正器,将增大前 向通道的相位,使其 相位“超前”于受控 对象的相位,因此称 为超前校正器。
超前校正器可使 校正后的闭环系统的 阶跃响应的速度加快, 超调量减小。
dB
L( )
在控制工程实践中,综合与校正的方法应根据特定的性能指标来
确定。一般情况下,若性能指标以稳态误差 e ss 、峰值时间 t p 、
最大超调量 p 、和过渡过程时间 t s 、等时域性能指标给出时, 应用根轨迹法进行综合与校正比较方便;如果性能指标是以相角裕 度r幅值裕度 K g 、相对谐振峰值 M 、谐振频率 r 和系统带宽 b r 等频域性能指标给出时,应用频率特性法进行综合与校正更合适。
15
性能指标常取为一个相对于状态x(t)和控制u(t)的二次型 积分性能指标,其形式为:
1 T 1 tf T J x (t f ) F x(t f ) x (t ) Q x(t ) u T (t ) R u (t ) dt 2 2 t0
《控制系统计算机辅助设计MATLAB语言与应用第2版》薛定宇_课后习题答案
【17】
(1)z=xy
>>[x,y]=meshgrid(-3:0.01:3,-3:0.01:3);
z=x.*y;
mesh(x,y,z);
>> contour3(x,y,z,50);
(1)z=sin(xy)
>> [x,y]=meshgrid(-3:0.01:3,-3:0.01:3);
【2】
相应的MATLAB命令:B=A(2:2:end,:)
>>A=magic(8)
A=
642361606757
955541213 515016
174746 202143 4224
4026273736 303133
323435 292838 3925
4123224445191848
491514 5253 11 10 56
【10】
function y=fib(k)
if nargin~=1,error('出错:输入变量个数过多,输入变量个数只允许为1!');endﻭif nargout>1,error('出错:输出变量个数过多!');end
if k<=0,error('出错:输入序列应为正整数!');endﻭifk==1|k==2,y=1;ﻭelsey=fib(k-1)+fib(k-2);endﻭend
858 5954 62 631
>>B=A(2:2:end,:)
B =
955 541213515016
40262737 36303133
41232244451918 48
858 5954 62631
控制系统计算机辅助设计MATLAB语言与应用第三版教学设计
控制系统计算机辅助设计MATLAB语言与应用第三版教学设计课程简介《控制系统计算机辅助设计MATLAB语言与应用》是一门针对控制系统理论与应用的课程,通过教学设定和实践操作让学生掌握MATLAB软件在控制系统设计中的应用。
本门课程主要内容包括控制系统基础、控制系统分析方法、MATLAB软件基础、MATLAB在控制系统设计中的应用等方面。
通过本课程学习,学生将深入掌握控制系统理论和计算机辅助设计方法,熟悉MATLAB语言的使用,掌握MATLAB在控制系统设计中的应用技巧。
教学目标本门课程的教学目标包括:1.掌握控制系统基本概念和控制系统设计原理2.熟悉MATLAB软件的基本操作和函数使用方法3.掌握控制系统仿真分析方法和MATLAB在控制系统设计中的应用技巧4.能够用MATLAB软件完成控制系统设计与仿真分析5.具备独立思考和解决实际问题的能力教学内容本门课程的教学内容主要包括以下几个部分:第一章:控制系统基础•控制系统概述•控制系统分类•控制系统组成结构•控制系统信号与变量•控制系统模型第二章:控制系统分析方法•系统时域分析方法•系统频域分析方法•系统稳定性分析方法第三章:MATLAB软件基础•MATLAB软件界面介绍•MATLAB基本命令与语法•MATLAB数据类型与数据结构第四章:MATLAB在控制系统分析与仿真中的应用•MATLAB在控制系统建模中的应用•MATLAB在控制系统分析与设计中的应用•MATLAB在实时控制中的应用第五章:课程实践项目•课程设计项目介绍•使用MATLAB完成控制系统设计和仿真分析总结本门课程旨在帮助学生掌握控制系统理论和计算机辅助设计方法,提升学生的实际操作能力和解决问题的能力。
通过课程学习与实践操作,可以让学生深入理解控制系统设计原理和MATLAB软件的使用方法,从而在实际工作中发挥出更高的效能。
控制系统计算机仿真(matlab)实验五实验报告
实验五 控制系统计算机辅助设计一、实验目的学习借助MATLAB 软件进行控制系统计算机辅助设计的基本方法,具体包括超前校正器的设计,滞后校正器的设计、滞后-超前校正器的设计方法。
二、实验学时:4 学时 三、实验原理1、PID 控制器的设计PID 控制器的数学模型如公式(5-1)、(5-2)所示,它的三个特征参数是比例系数、积分时间常数(或积分系数)、微分时间常数(或微分系数),因此PID 控制器的设计就是确定PID 控制器的三个参数:比例系数、积分时间常数、微分时间常数。
Ziegler (齐格勒)和Nichols (尼克尔斯)于1942提出了PID 参数的经验整定公式。
其适用对象为带纯延迟的一节惯性环节,即:s e Ts Ks G τ-+=1)( 5-1式中,K 为比例系数、T 为惯性时间常数、τ为纯延迟时间常数。
在实际的工业过程中,大多数被控对象数学模型可近似为式(5-1)所示的带纯延迟的一阶惯性环节。
在获得被控对象的近似数学模型后,可通过时域或频域数据,根据表5-1所示的Ziegler-Nichols 经验整定公式计算PID 参数。
表控制器的参数。
假定某被控对象的单位阶跃响应如图5-4所示。
如果单位阶跃响应曲线看起来近似一条S 形曲线,则可用Ziegler-Nichols 经验整定公式,否则,该公式不适用。
由S 形曲线可获取被控对象数学模型(如公式5-1所示)的比例系数K 、时间常数T 、纯延迟时间τ。
通过表5-1所示的Ziegler-Nichols 经验整定公式进行整定。
如果被控对象不含有纯延迟环节,就不能够通过Ziegler-Nichols 时域整定公式进行PID 参数的整定,此时可求取被控对象的频域响应数据,通过表5-1 所示的Ziegler-Nichols 频域整定公式设计PID 参数。
如果被控对象含有纯延迟环节,可通过pade 命令将纯延迟环节近似为一个四阶传递函数模型,然后求取被控对象的频域响应数据,应用表5-1求取PID 控制器的参数。
Matlab进行控制系统的计算机辅助设计自动控制原理课设
自动控制原理课设报告班级: 08030902 姓名:王勋学号: 26时间:目录一、题目重述 (3)(1)设计目的 (3)(2)设计任务 (3)(3)设计步骤 (3)二、确定开环增益K (3)r三、绘制待校正系统特性曲线 (3)(1)待校正系统的频域特性曲线 (3)(2)待校正系统的时域特性曲线 (4)四、确定校正超前网络的交接频率 (5)五、选择系统的截止频率''c w和校正网络衰减因子α/1 (5)六、估算校正网络滞后部分的交接频率ω (5)a七、校验已校正系统的各项性能指标 (6)(1)动态性能指标 (6)(2)频域性能指标 (7)(3)稳定性 (8)八、校正前后系统的对比 (8)(一)时域性能对比 (8)(二)频域性能对比 (8)九、串联滞后校正可行性分析 (9)(一) 原理分析 (9)(二)可行性分析 (9)附录 (12)MATLAB代码:1、校正前系统 (12)2、校正后系统 (12)3、用matlab绘制校正前后系统的伯德图和响应曲线的对比 (12)4、用matlab求串联滞后系统的传递函数及响应、波特图 (12)参考文献 (14)一、 题目重述(1)设计目的:学习使用Matlab 进行控制系统的计算机辅助设计(2)设计任务:某单位反馈控制系统,其开环传递函数为)2)(1()(++=s s s K s G r (1-1) 试设计一个串联滞后-超前装置,使校正后系统:1、稳态速度误差系数等于101-s ;2、相位裕度045≥γ。
(3)设计步骤:1、用Matlab 编程绘制校正前后系统的伯德图、单位阶跃响应曲线,并从图中得出系统的频域及时域性能指标;2、对校正前后系统的性能进行比较,检验所设计系统性能指标是否达到要求;3、能否设计一个串联滞后校正装置,使系统达到设计要求?若能,将设计结果与串联滞后-超前设计结果进行对比,能得出什么结论?二、确定开环增益r K 由初始条件可知,系统的开环传递函数是:)2)(1()(++=s s s K s G γ,要求校正后的速度误差系数110-=s K v ,首先将传递函数化简成标准形式,可得到: )15.0)(1(2/)(++=s s s K s G γ 根据速度误差系数公式1102K K -==s γν可得到:120K -=s γ,则开环传递函数为: )15.0)(1(10)(++=s s s s G (2-1) 四、 绘制待校正系统特性曲线(1)待校正系统的频域特性曲线图3-1 待校正系统的波特图由上图可得:截止频率c w =s ,幅值裕度h=(dB),相位裕度γ= °,相位穿越频率g w = s ,幅值穿越频率p w = s 。
《MATLAB控制系统计算机辅助设计》实验指导书
自动化专业(12个学时)《控制系统计算机辅助设计》实验指导书刘璎瑛南京农业大学工学院自动化教研室2012年6月目录实验一 Matlab环境熟悉与基本运算 (3)实验二 Matlab语言程序设计 (5)实验三控制系统时、频域仿真 (6)实验四控制系统模型的建立和分析 (8)实验一、Matlab 环境熟悉与基本运算一、实验目的1、掌握 Matlab 软件使用的基本方法;2、熟悉 Matlab 的数据表示、基本运算方法;3、熟悉 Matlab 绘图命令及基本绘图控制。
二、实验原理MATLAB 环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。
MATLAB 有3种窗口,即:命令窗口(The Command Window )、m-文件编辑窗口(The Edit Window )和图形窗口(The Figure Window ),而Simulink 另外又有Simulink 模型编辑窗口。
1.命令窗口(The Command Window )当MATLAB 启动后,出现的最大的窗口就是命令窗口。
用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。
在MATLAB 中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。
在命令窗口中输入该文件名,这一连串命令就被执行了。
因为这样的文件都是以“.m ”为后缀,所以称为m-文件。
2.m-文件编辑窗口(The Edit Window )我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。
在MATLAB 主界面上选择菜单“File/New/M-file ”就打开了一个新的m-文件编辑窗口;选择菜单“File/Open ”就可以打开一个已经存在的m-文件,并且可以在这个窗口中编辑这个m-文件。
三、实验内容:1、矩阵运算(1)矩阵的乘法已知 A=[1 2;3 4]; B=[5 5;7 8]; 求 A^2*B(2)矩阵除法已知 A=[1 2 3;4 5 6;7 8 9]; B=[1 0 0;0 2 0;0 0 3]; 求 A\B,A/B(3)矩阵的转置及共轭转置已知 A=[5+i,2-i,1;6*i,4,9-i]; 求 A.', A'(4)使用冒号选出指定元素已知: A=[1 2 3;4 5 6;7 8 9];求 A 中第 3 列前 2 个元素;A 中所有列第 2,3 行的元素; (5)复数矩阵的生成: 生成矩阵⎥⎦⎤+⎢⎣⎡+j b j b e a j b a ea jb 43422311a ,若a1=3,a2=-2,a3=9,a4=23,b1=5,b2=3,b3=6,b4=33,求出矩阵的具体数值。
控制系统计算机辅助设计MATLAB语言与应用第三版课程设计
控制系统计算机辅助设计MATLAB语言与应用第三版课程设计介绍MATLAB是一种强大的计算机辅助设计工具,它广泛应用于控制系统设计中。
本文将介绍控制系统计算机辅助设计MATLAB语言与应用第三版课程设计,包括课程设计的目的、内容、流程和注意事项。
希望本文能帮助到正在学习或教授这门课程的同学们。
目的控制系统计算机辅助设计MATLAB语言与应用第三版是一门专门为控制系统设计方向的本科生、硕士研究生和工程技术人员定制的课程。
本课程的目的是教授控制系统设计原理、MATLAB编程基础和应用技巧、以及用MATLAB辅助设计控制系统的方法和技术。
通过本课程的学习,学生将掌握MATLAB的基本语法,了解控制系统的基本原理和常见控制器的设计方法,能够使用MATLAB辅助设计控制系统、分析和优化控制系统的性能。
内容控制系统计算机辅助设计MATLAB语言与应用第三版主要包括以下内容:•MATLAB基本语法•系统建模与仿真•PID控制器设计与调节•线性二次调节器设计•状态反馈控制器设计•频域分析与设计•非线性控制系统设计•多变量系统控制流程控制系统计算机辅助设计MATLAB语言与应用第三版课程设计的流程如下:1.阅读课程教材,掌握各个章节的主要内容和知识点。
2.按照教材上的要求完成例题和习题,巩固理论知识并增强编程能力。
3.独立设计一个控制系统,包括系统建模、控制器设计和系统仿真。
4.提交设计报告和MATLAB代码。
注意事项在控制系统计算机辅助设计MATLAB语言与应用第三版课程设计中需要注意以下几点:1.认真学习课程教材,掌握基础理论和编程技能。
2.独立思考和设计,不要复制粘贴别人的代码。
3.注意代码的规范性和清晰性,写注释并保证代码能够正常运行。
4.在控制器设计和系统仿真时,要细心谨慎,注意每一步的操作和结果的正确性。
5.撰写设计报告时,注意排版规范,附上必要的截图和解释,表述清晰明了。
结论控制系统计算机辅助设计MATLAB语言与应用第三版课程设计,是一门重要的课程,掌握好这门课程对于控制系统工程师的未来发展大有裨益。
控制系统仿真 计算机辅助设计 matlab simulink.
1Chapter 1Control System Simulation and Design控制系统仿真与设计同济大学汽车学院陈慧2010年3月-6月2Chapter 1Control System Simulation and Design???学什么? Æ有何用? Æ如何学? Æ1掌握数字仿真的基本概念、原理及方法 2熟练运用Matlab/Simulik系统仿真软件工具 3掌握控制系统设计与仿真分析的基本方法 4了解控制系统开发的一般过程为从事,a包括汽车电子在内的控制系统开发设计;b本科毕业设计;c研究生阶段的学习研究打下必要的基础运用Matlab/Simulik进行控制系统仿真设计案例介绍3Chapter 1Control System Simulation and Design1( 基于Matlab编程的设计-降低转速对于负载转矩扰动的感度设计4Chapter 1Control System Simulation and Design 电机调速控 制系统设计7Chapter 1Control System Simulation and Design???能学到什么? Æ有何用? Æ如何学? Æ1掌握数字仿真的基本概念、原理及方法 2熟练运用Matlab/Simulik系统仿真软件工具 3掌握控制系统设计与仿真分析的基本方法 4了解控制系统开发的一般过程1为从事a包括汽车电子在内的控制系统开发设计;b 毕业设计;c研究生阶段的学习研究打下必要的基础运用Matlab/Simulik进行控制系统仿真设计案例介绍8Chapter 1Control System Simulation and Design课程教学大纲先期课程:《高等数学》,《自动控制原理》,《电工》,《电子技术》,《机械原理》教材:薛定宇著,《控制系统仿真与计算机辅助设计》,机械工业出版社,2009年电脑+Matlab/SimulinkR13 or R2007a参考书:[1]张晓华,《系统建模与仿真》,清华大学出版, 2006年 [2] Learning Matlab, MathWorks[3] Using Matlab, MathWorks [4] Using Simulink, MathWorks[5] Control System Toolbox-Getting Started, MathWorks[6] Control System Toolbox-Using the control system toolbox, MathWorks11Chapter 1Control System Simulation and DesignCh1. 概述控制系统的实验方法仿真实验的分类与性能比较系统 , 模型与数字仿真控制系统设计与数字仿真软件仿真技术在汽车电子领域的应用与发展13Chapter 1Control System Simulation and Design控制系统的实验方法解析法运用已掌握的理论知识对控制系统进行理论上的分析、计算。
控制系统计算机辅助设计MATLAB语言与应用教学设计
控制系统计算机辅助设计MATLAB语言与应用教学设计背景介绍随着科学技术的不断发展,计算机在各个领域的应用越来越广泛,控制系统也不例外。
计算机辅助设计能够帮助控制系统工程师快速进行系统设计,提高设计效率和精度,降低错误率。
而MATLAB语言作为控制系统领域广泛应用的工具,能够更好地满足工程师的需求。
因此,本文将介绍控制系统计算机辅助设计MATLAB语言与应用教学设计。
教学目标1.熟练掌握MATLAB语言和控制系统的基础知识;2.能够设计控制系统的模型并进行仿真;3.能够分析和优化控制系统的性能参数;4.能够利用MATLAB工具进行控制系统实验。
教学内容本教学设计分为基础篇和进阶篇两部分。
基础篇MATLAB基础1.MATLAB语言环境搭建;2.熟悉MATLAB语言基本语法,如变量、函数、数组等;3.掌握MATLAB的数据类型、运算符及其使用方法;4.掌握MATLAB的流程控制语句;5.掌握MATLAB的图形化操作方法。
控制系统基础1.理解控制系统模型的基本概念;2.熟悉各种控制系统模型及其特点;3.理解闭环控制系统和开环控制系统;4.了解调节器和控制器的基本原理和分类;5.掌握各种控制系统的性能指标,如稳态误差、超调量、调节时间等。
控制系统模型设计与仿真1.构建控制系统模型;2.利用MATLAB进行控制系统建模;3.对控制系统模型进行仿真;4.分析控制系统仿真结果,如阶跃响应、脉冲响应等;5.通过仿真结果优化控制系统模型。
进阶篇PID控制1.理解PID控制器的基本原理和作用;2.了解PID控制器的数学模型及其参数调节方法;3.掌握MATLAB工具在PID控制系统设计中的应用;4.利用MATLAB对PID控制器进行参数优化。
其他控制算法1.了解其他常见控制算法的基本原理,如PI控制、PD控制等;2.掌握MATLAB工具在其他控制算法中的应用;3.对其他控制算法进行仿真和优化。
控制系统实验1.设计控制系统实验方案;2.利用MATLAB工具进行实验数据分析;3.分析实验结果,优化控制系统模型参数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验目录实验一:Matlab环境熟悉与基本运算(设计型)实验二:Matlab语言程序设计(设计型)实验三:控制系统模型的建立(设计型)实验四:Simulink仿真入门(验证型)实验五:控制系统时域仿真分析(设计型)实验六:Simulink环境下时域仿真实验七:控制系统根轨迹仿真分析实验八:控制系统频域仿真分析(设计型)1、矩阵运算(1)矩阵的乘法A=[1 2;3 4]; B=[5 5;7 8]; y=A^2*B y =105 115229 251(2)矩阵除法A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3];y1=A\B警告: 矩阵接近奇异值,或者缩放错误。
结果可能不准确。
RCOND = 1.541976e-18。
y1 =1.0e+16 *-0.4504 1.8014 -1.35110.9007 -3.6029 2.7022-0.4504 1.8014 -1.3511y2=A/B y2 =1.0000 1.0000 1.00004.0000 2.5000 2.00007.0000 4.0000 3.0000(3)矩阵的转置及共轭转置A=[5+i,2-i,1;6*i,4,9-i]; y1=A.' y1 =5.0000 + 1.0000i 0.0000 +6.0000i2.0000 - 1.0000i 4.0000 + 0.0000i1.0000 + 0.0000i 9.0000 - 1.0000iy2=A'y2 =5.0000 - 1.0000i 0.0000 -6.0000i2.0000 + 1.0000i 4.0000 + 0.0000i1.0000 + 0.0000i 9.0000 + 1.0000i实验名称:Matlab环境熟悉与基本运算(设计型)(4)使用冒号选出指定元素A=[1 2 3;4 5 6;7 8 9]; y1=A(1:2,3) y1 =36y2=A(2:3,:) y2 =4 5 67 8 9(5)复数矩阵的生成:syms a1 a2 a3 a4 b1 b2 b3 b4A=[a1+b1*j a2+b2*j;a3*exp(b3*j) a4*exp(b4*j)] A =[ a1 + b1*1i, a2 + b2*1i] [ a3*exp(b3*1i), a4*exp(b4*1i)]a1=3;a2=-2;a3=9;a4=23;b1=5;b2=3;b3=6;b4= 33;A=[a1+b1*j a2+b2*j;a3*exp(b3*j) a4*exp(b4*j)] A =3.0000 + 5.0000i -2.0000 + 3.0000i8.6415 - 2.5147i -0.3054 +22.9980i2、多项式p =1 02 4roots(p)%用roots函数求多项式的根ans =0.5898 + 1.7445i0.5898 - 1.7445i -1.1795 + 0.0000i①A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4]; P=poly(A);poly2sym(P)ans =x^4 - (69*x^3)/10 - (3863*x^2)/50 - (8613*x)/100 + 12091/20②polyval(P,20) ans =7.2778e+04③polyvalm(P,A) ans =1.0e-11 *-0.4093 -0.4849 -0.3876 -0.4519-0.5002 -0.8072 -0.6004 -0.5684-0.4704 -0.6196 -0.6480 -0.5230-0.3297 -0.4455 -0.3595 -0.36383、基本绘图命令(1)t=0:0.01:2*pi;y=cos(t);plot(t,y)运行结果如右图所示:(2)t=0:0.01:2*pi;y1=cos(t-0.25);y2=sin(t-0.5);plot(t,y1,t,y2)运行结果如右图所示:4、基本绘图控制t=0:0.01:4*pi;x1=10*sin(t);plot(t,x1,'-.b*')axis([-20 20 -20 20])grid ontitle('正弦曲线x1=10*sin(t)图') xlabel('t=0:0.01:4*pi')ylabel('x1')text(pi/2,10,'最大值')运行结果如右图所示:1、编写命令文件:计算1+2+…+n<5000 时的最大n 值;解:建立M文件,文件名称记为two1,编辑程序内容如下所示:s=0;n=1;while(s<5000),s=s+n;n=n+1;end,n保存,并在命令窗口中输入two1,运行结果如下所示:two1n =1012、编写函数文件:解:①用for循环结构编写程序:建立函数文件,文件名称记为findsum1,编辑程序内容如下所示:function [ s1 ] =findsum1( )%findsum1 用for循环编写的程序% 求2的0到30次幂的和,s表示和,i表示执行次数s1=0;for i=0:30,s1=s1+2^i;Endend 保存,并在命令窗口中输入[s1]=findsum1( ),运行结果如下所示:[s1]=findsum1( )s1 =2.1475e+09②用while循环结构编写程序:建立函数文件,文件名记为findsum2,编辑程序内容如下所示:function [ s2 ] =findsum2( )%findsum2 用while循环编写的程序% 求2的0到30次幂的和,s表示和,i表示执行次数s2=0;i=0;while(i<=30), s2=s2+2^i; i=i+1;endend实验名称:Matlab语言程序设计(设计型)保存,并在命令窗口中输入[ s2 ]=findsum2( ),运行结果如下所示:[ s2 ] =findsum2( )s2 =2.1475e+093、解:建立M文件,文件名记为two3,编辑程序内容如下:x=input('please input a character:\n','s');if x=='y'||x=='Y',disp('x=1');else if x=='n'||x=='N', disp('x=0');elsedisp('its erro');endend保存,并在命令窗口中输入two2,运行结果如下所示:two2please input a character: nx=0two2please input a character: S its errotwo2please input a character: Yx=1[]4)4()1(234)(2223++++++=s s s s s s s G ;431)(21+++=s s s s G ;123453)(23421++++++=s s s s s s s G1、在MA TLAB 环境中输入下面的系统模型 解:建立M 文件,文件名称记为thr1,编辑程序内容如下所示:统模型的分子系数num=[1,4,3,2]; %系den=conv([1,0,0],conv([1,1],[1,8,20]));%分母系数 G1=tf(num,den);%得到开环系统模型 G2=feedback(G1,1);%得到闭环系统模型[p1,z1]=pzmap(G1)%不加分号,在命令窗口可显示出开环系统的零极点 [p2,z2]=pzmap(G2)% 不加分号,在命令窗口可显示出闭环系统的零极点在命令窗口输入thr1,则得出以下结果: thr1p1 =0 0 -4.0000 + 2.0000i -4.0000 - 2.0000i -1.0000z1 =-3.2695 -0.3652 + 0.6916i -0.3652 - 0.6916ip2 =-3.9174 + 2.1007i -3.9174 - 2.1007i -1.1449 -0.0102 + 0.2972i -0.0102 - 0.2972iz2 =-3.2695 -0.3652 + 0.6916i -0.3652 - 0.6916i2、假设系统由两个模块和串联连接而成,已知且实验名称:控制系统模型的建立和分析(设计型),)1(10)(3+=s s G 控制器并定义一个PID ⎪⎭⎫ ⎝⎛++=04353.04353.0814.11148.0)(s s s G PID 解:建立M 文件,文件名称为thr2,编辑程序内容如下所示:G3=tf([1,1],[1,3,4]);%实验三的第二题,题中的G1(s )模型 G4=tf([1,3,5],[1,4,3,2,1]);% 题中的G2(s )模型G5=series(G3,G4)%用串联函数,将G3和G4模型串联,得到G5模型,在命令窗口显示出模型 Gss=ss(G5)%用ss 得到G5模型的状态方程模型在命令窗口中输入thr2,得到以下运行结果: Transfer function:s^3 + 4 s^2 + 8 s + 5------------------------------------------------- s^6 + 7 s^5 + 19 s^4 + 27 s^3 + 19 s^2 + 11 s + 4 a =x1 x2 x3 x4 x5 x6x1 -7 -2.375 -1.688 -0.5938 -0.3438 -0.25 x2 8 0 0 0 0 0 x3 0 2 0 0 0 0 x4 0 0 2 0 0 0 x5 0 0 0 1 0 0 x6 0 0 0 0 0.5 0 b =u1 x1 1 x2 0 x3 0 x4 0 x5 0 x6 0 c =x1 x2 x3 x4 x5 x6 y1 0 0 0.0625 0.125 0.25 0.3125 d =u1 y1 0Continuous-time model. 3、假设系统的对象模型为解:建立M文件,文件名称为thr3,编辑程序内容如下所示:s=tf('s');%拉氏算子G6=10/((s+1)^3);%实验三第3题的对象模型Gpid=0.48*(1+1/(1.814*s)+0.4353*s/0.04353);%PID控制器G7=series(G6,Gpid);%控制器与对象模型进行串联得到的开环系统模型G8=feedback(G7,1)%闭环系统的传递函数模型[z3,p3,k3]=zpkdata(G7,'v')%得到开环系统的零极点及增益[z4,p4,k4]=zpkdata(G8,'v') %得到闭环系统的零极点及增益在命令窗口中输入thr3,得到以下运行结果Transfer function:3.79 s^2 + 0.379 s + 0.2089------------------------------------------------------- 0.07896 s^4 + 0.2369 s^3 + 4.027 s^2 + 0.458 s + 0.2089z3 =-0.0500 + 0.2294i -0.0500 - 0.2294ip3 =-1.0000 -1.0000 + 0.0000i -1.0000 - 0.0000ik3 =48 z4 =-0.0500 + 0.2294i -0.0500 - 0.2294ip4 =-1.4442 + 6.9670i -1.4442 - 6.9670i -0.0558 + 0.2217i -0.0558 - 0.2217ik4 =484、解:三种典型模型建模函数:①传递函数模型:G=tf(num,den);②零极点增益模型:G=zpk(z,p,k);③状态空间模型:G=ss(A,B,C,D);各种模型之间的转换语句:[A,B,C,D]=tf2ss(num,den); [num,den]=ss2tf(A,B,C,D,iu); [z,p,k]=tf2zp(num,den); [num,den]=zp2tf(z,p,k); [A,B,C,D]=zp2ss(z,p,k); [z,p,k]=ss2zp(A,B,C,D,i)1、搭建下图所示控制系统模型,自己设计输入正弦曲线参数,观察示波器及输出数据。