六个实战示例--自动控制理论--Simulink仿真

合集下载

SIMULINK仿真

SIMULINK仿真
2.Data Import/Export类设置 ① 矩阵形式。MATLAB把矩阵的第一列默认为时间向量,
后面的每一列对应每一个输入端口,矩阵的第一行表示某 一时刻各输入端口的输入状态。另外,也可以把矩阵分开 来表示,即MATLAB默认的表示方法[t,u],其中t是一维 时间列向量,表示仿真时间,u是和t长度相等的n维列向 量(n表示输入端口的数量),表示状态值。例如,在命 令窗口中定义t和u:
条件执行子系统分为
1.使能子系统
使能子系统表示子系统在由控制信号控制时,控制信号由 负变正时子系统开始执行,直到控制信号再次变为负时结 束。控制信号可以是标量也可以是向量。
建立使能子系统的方法是:打开Simulink模块库中的Ports & Subsystems模块库,将Enable模块复制到子系统模型 中,则系统的图标发生了变化。
阵、结构和包含时间的结构3种选择。“Limit data points to last”用来限定保存到工作空间中 的数据的最大长度。 输出选项(Output options)有: ① Refine output(细化输出) ② Produce additional output(产生附加输出) ③ Produce specified output only(仅在指定 的时刻产生输出)
4.1 初识Simulink—— 一个简单的仿 真实例
在MATLAB的命令窗口输入Simulink,或单击MATLAB主 窗口工具栏上的“Simulink”命令按钮即可启动Simulink。 Simulink启动后会显示如图4.1所示的Simulink模块库浏览 器(Simulink Library Browser)窗口。
U (s)
Kp
Ki s
Kd s

《自动控制原理》控制系统的simulink仿真实验一

《自动控制原理》控制系统的simulink仿真实验一

《自动控制原理》控制系统的simulink仿真实验一、实验目的1.初步了解Matlab中Simulink的使用方法,熟悉simulink模块的操作和信号线的连接。

2.通过观察典型环节在单位阶跃信号作用下的动态特性,熟悉各种典型环节的响应曲线。

3.定性了解各参数变化对典型环节动态特性的影响。

二、实验仪器Matlab7.0 , 计算机三、实验原理Simulink是MATLAB中的一种可视化仿真工具。

Simulink是一个模块图环境,用于多域仿真以及基于模型的设计。

它支持系统设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证。

四、实验内容及步骤1、建立仿真模型系统1.1 运行Matlab,在命令窗口“Command Window”下键入“Simulink”后回车,则打开相应的系统模型库;或者点击工具栏上的“Simulink”图标,进入系统仿真模型库,然后点击左上角“新文件”图标,打开模型编辑窗口。

1.2 调出模块在系统仿真模型库中,把要求的模块都放置在模型编辑窗口里面。

从信号源模块包(Sources)中拖出1个阶跃信号(step)和1个白噪声信号发生器(band-limited white noise);从数学运算模块包(Math Operations)中拖出1个比例环节(gain)和1个加法器(sum);从连续系统典型环节模块包(Continuous) 中拖出1个微分环(Derivative)和3个传函环节(transfer Fcn);从信号与系统模块包(Signals Routing) 拖出1个汇流排(mux);从输出模块包(Sinks)中拖出1个示波器(scope);所有模块都放置在模型编辑窗口里面。

1.3 模块参数设置(鼠标左键双击各典型环节,则可进行参数设置)双击打开白噪声信号发生器,设定功率(Noise power)为0.0001,采样时间(Sample time)为0.05。

打开比例环节,设定比例增益为2;打开3个传函环节(transfer Fcn),通过参数设定,分别构成积分、惯性和二阶环节。

Matlab系列之Simulink仿真教程

Matlab系列之Simulink仿真教程
Simulink中的所有功 能都通过模块来实现, 用户可以通过组合不 同的模块来构建复杂 的系统模型。
交互式仿真
Simulink支持交互式 仿真,用户可以在仿 真运行过程中进行实 时的分析和调试。
可扩展性
Simulink具有开放式 架构,可以与其他 MATLAB工具箱无缝 集成,从而扩展其功 能。
Simulink的应用领域
指数运算模块
用于实现信号的指数运算。
减法器
用于实现两个信号的减法 运算。
除法器
用于实现两个信号的除法 运算。
对数运算模块
用于实现信号的对数运算。
输出模块
模拟输出模块
用于将模拟信号输出 到外部设备或传感器。
数字输出模块
用于将数字信号输出 到外部设备或传感器。
频谱分析仪
用于分析信号的频谱 特性。
波形显示器
控制工程
Simulink在控制工程领域 中应用广泛,可用于设计 和分析各种控制系统。
信号处理
Simulink中的信号处理模 块可用于实现各种信号处 理算法,如滤波器设计、 频谱分析等。
通信系统
Simulink可以用于设计和 仿真通信系统,如调制解 调、信道编码等。
图像处理
Simulink中的图像处理模 块可用于实现各种图像处 理算法,如图像滤波、边 缘检测等。
用于将时域信号转换为频域信号,如傅里叶变换、 拉普拉斯变换等。
03 时域变换模块
用于将频域信号转换为时域信号,如逆傅里叶变 换、逆拉普拉斯变换等。
04
仿真过程设置
仿真时间的设置
仿真起始时间
设置仿真的起始时间,通 常为0秒。
步长模式
选择固定步长或变步长模 式,以满足不同的仿真需 求。

simulink实例(有好多实例)

simulink实例(有好多实例)
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
运动方程式为
M x k x b x 0
构建的模型为
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
因有阻尼器存在,故箱子最终会停止运 动。
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
Simulink仿真实例
一旦x和它的导数已经搭好,就可以使用 一个增益模块表示空气阻力比例系数,使用 Function模块表示空气阻力中的非线性部分。
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
b(x)是通过门槛为0的x条件式确定的, 可以使用一个Switch模块来实现判断条件。
Simulink仿真实例
其运动方程式为
f bxMx
拉力作用时间为2s,建构的模型为
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
因有摩擦力存在,箱子最终将会停止前 进。
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
例题3,力-弹簧-阻尼系统,假设箱子与地面无 摩擦存在,箱子质量为M(1kg),箱子与墙壁间有线 性弹簧(k=1N/m)与阻尼器(b=0.3N/ms-1)。阻尼器主 要用来吸收系统的能量,吸收系统的能量转变成热 能而消耗掉。现将箱子拉离静止状态2cm后放开,试 求箱子的运动轨迹。
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
最终系统Simulink模型方块图为
--精品--/SIMULINK的系统建模与仿真
Simulink仿真实例
仿真过程中,设绳索长度-30m,起始速度 为0;物体质量为90kg,g为9.8m/s2,弹性系 数k为20,a1和a2均为1.

MATLAB自动控制系统仿真simulink

MATLAB自动控制系统仿真simulink

目录1 绪论 (1)1.1 题目背景、研究意义 (1)1.2 国内外相关研究情况 (1)2 自动控制概述 (3)2.1 自动控制概念 (3)2.2 自动控制系统的分类 (4)2.3 对控制系统的性能要求 (5)2.4 典型环节 (6)3 MATLAB仿真软件的应用 (10)3.1 MATLAB的基本介绍 (10)3.2 MATLAB的仿真 (10)3.3 控制系统的动态仿真 (11)4 自动控制系统仿真 (14)4.1 直线一级倒立摆系统的建模及仿真 (14)4.1.1 系统组成 (14)4.1.2 模型的建立 (14)4.1.3 PID控制器的设计 (20)4.1.4 PID控制器MATLAB仿真 (22)4.2 三容水箱的建模及仿真 (24)4.2.1 建立三容水箱的数学模型 (24)4.2.2 系统校正 (25)总结 (28)致谢 (29)参考文献 (30)1 绪论1.1 题目背景、研究意义MATLAB语言是当今国际控制界最为流行的控制系统计算机辅助设计语言,它的出现为控制系统的计算机辅助分析和设计带来了全新的手段。

其中图形交互式的模型输入计算机仿真环境SIMULINK,为MATLAB应用的进一步推广起到了积极的推动作用。

现在,MATLAB语言已经风靡全世界,成为控制系统CAD领域最普及、也是最受欢迎的软件环境。

随着计算机技术的发展和应用,自动控制理论和技术在宇航、机器人控制、导弹制导及核动力等高新技术领域中的应用也愈来愈深入广泛。

不仅如此,自动控制技术的应用范围现在已扩展到生物、医学、环境、经济管理和其它许多社会生活领域中,成为现代社会生活中不可缺少的一部分。

随着时代进步和人们生活水平的提高,在人类探知未来,认识和改造自然,建设高度文明和发达社会的活动中,自动控制理论和技术必将进一步发挥更加重要的作用。

作为一个工程技术人员,了解和掌握自动控制的有关知识是十分必要的。

自动控制技术的应用不仅使生产过程实现了自动化,极大地提高了劳动生产率,而且减轻了人的劳动强度。

simulink入门及仿真实例

simulink入门及仿真实例

17
结果如下:上图为v(t), 下图为h(t).
18
r1 r2 1, n1 n2 100, s1 0.5, s2 2, x0 y0 10.
对x(t), y(t)进行模拟, 研究其发展趋势.
16
例3 弹跳的皮球(help/demos/simulink中的一个例子):
v(t) 15 tgdt, g 9.81, 0 t 数学模型:h(t) 10 0 v(t)dt, when h 0, v 0.8v.
4
子库 Continuous和 Discrete分别存放连续 和离散的函数, 如连续函数有Derivative(求导 数), Integrator(积分器), State-Space(状态空间), Transfer Fcn( 传 递 函 数 ) 等 等 , 离 散 的 有 Discrete Transfer Fcn(离散传递函数), Discrete Filter(离散滤波器), Discrete State-Space(离散 状态空间)等等. 在Simulink Library Browser窗口中, 建立 一个新模型(new model), 即打开一个新的空 白模型窗口, 用鼠标左键点取所需要的模块 拖到模型窗口中, 用鼠标左键在模块间建立 连接线(若在已有连接线上分叉则用右键)即 可.
Simulink入门
什么是Simulink? Simulink是MATLAB提供的实现动态 系统建模和仿真的一个软件包. 它让用户 把精力从编程转向模型的构造. Simulink一个很大的优点是为用户省 去了许多重复的代码编写工作,
1
Simulink的启动
首先须确定MATLAB已安装了Simulink工 具箱. 在工具栏点击Simulink图标:

simulink仿真简单实例

simulink仿真简单实例

simulink仿真简单实例
一、模拟环境
1、MATLAB/Simulink 设计环境:
在MATLAB中开发Simulink模型,仿真模拟系统,开发系统塑造都可以在这个环境下进行。

2、LabVIEW 设计环境:
LabVIEW允许你以基于可视化技术的开发环境(VI)来创建测试,模拟,监控系统,以及自动化系统的可视化界面。

二、仿真实例
1、基于MATLAB/Simulink的仿真实例:
(1)传统的PID控制器
这是一个利用PID控制器控制速度的例子。

首先,建立一个简单的Simulink模型,包括PID控制器、电机和反馈器件。

之后,你可以调整PID参数,以提高系统的控制能力。

(2)智能控制
这是一个基于智能控制算法的实例。

通过使用神经网络,试图根据输入自动调整PID参数,使系统具有更强的控制能力。

2、基于LabVIEW的仿真实例:
(1)叉车仿真
这是一个使用LabVIEW来模拟电动叉车运行过程的实例。

你可以模拟叉车的启动过程,叉车行驶过程,并开发出任意的叉车控制算法。

(2)汽车仿真
这是一个使用LabVIEW进行汽车模拟的实例。

你可以模拟汽车的动力性能,并开发出任意类型的汽车控制算法,如路径规划算法,自动驾驶算法等。

基于simulink的系统仿真实验报告(含电路、自控、数电实例)

基于simulink的系统仿真实验报告(含电路、自控、数电实例)

《系统仿真实验》实验报告目录一《电路》仿真实例 (3)2.1 简单电路问题 (3)2.1.1 Simulink中仿真 (3)2.1.2 Multisim中仿真 (4)2.2 三相电路相关问题 (5)二《自动控制原理》仿真实例 (7)1.1 Matlab绘图 (7)三《数字电路》仿真实例 (8)3.1 555定时器验证 (8)3.2 设计乘法器 (9)四实验总结 (11)一《电路》仿真实例2.1 简单电路问题课后题【2-11】如图所示电路,R0=R1=R3=4Ω,R2=2Ω,R4=R5=10Ω,直流电压源电压分别为10V、4V、6V,直流电流源电流大小为1A,求R5所在的支路的电流I。

(Page49)解:simulink和multisim都是功能很强大的仿真软件,下面就以这个简单的习题为例用这个两个软件分别仿真,进一步说明前者和后者的区别。

2.1.1 Simulink中仿真注意事项:由于simulink中并没有直接提供DC current source,只有AC current source,开始的时候我只是简单的把频率调到了0以为这就是直流电流源了,但是并没有得到正确的仿真结果。

后来问杨老师,在老师的帮助下发现AC current source的窗口Help中明确的说明了交流变直流的方法:A zero frequency and a 90 degree phase specify a DC current source.然后我把相角改成90度后终于得到了正确的仿真结果,Display显示I=0.125A,与课本上答案一致。

2.1.2 Multisim中仿真结果:I=125mA=0.125A(因为电流表探针电压电流比是1V/mA)。

2.2 三相电路相关问题【例】三相电路实际连接图如下所示,是通过功率表和电流的读数,验证课本上的相关结论。

解:Multisim中电路图连接如下所示:解:观察各支路的功率和功率因素,验证了以下几点结论:(1)只有纯阻性支路的功率因素为1;(2)纯感性或纯容性支路的功率因素为0,有功功率也为0;(3)混合支路的(容阻、感阻、容感阻)功率因素在0到1之间。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

自动控制理论仿真实验指导书目录实验一典型环节的MATLAB仿真 (3)一、实验目的 (3)二、SIMULINK的使用 (3)三、实验原理 (5)四、实验内容 (8)五、实验报告 (8)六、预习要求 (8)实验二线性系统时域响应分析 (8)一、实验目的 (8)二、基础知识及MATLAB函数 (9)三、实验内容 (18)四、实验报告 (19)五、预习要求 (19)实验三线性系统的根轨迹 (20)页脚内容1一、实验目的 (20)二、基础知识及MATLAB函数 (20)三、实验内容 (26)四、实验报告 (27)五、预习要求 (27)实验四线性系统的频域分析 (28)一、实验目的 (28)二、基础知识及MATLAB函数 (28)三、实验内容 (33)四、实验报告 (34)五、预习要求 (34)实验五线性系统串联校正 (35)一、实验目的 (35)二、基础知识 (35)三、实验内容 (45)四、实验报告要求 (45)五、预习要求 (46)页脚内容2实验六数字PID控制 (46)一、实验目的 (46)二、实验原理 (46)三、实验内容 (49)四、实验报告 (50)五、预习要求 (50)实验一典型环节的MATLAB仿真一、实验目的1.熟悉MATLAB桌面和命令窗口,初步了解SIMULINK功能模块的使用方法。

2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。

3.定性了解各参数变化对典型环节动态特性的影响。

二、SIMULINK的使用MATLAB中SIMULINK是一个用来对动态系统进行建模、仿真和分析的软件包。

利用SIMULINK功能模块可以快速的建立控制系统的模型,进行仿真和调试。

1.运行MATLAB软件,在命令窗口栏“>>”提示符下键入simulink命令,按Enter键或在工具栏单击按钮,即可进入如图1-1所示的SIMULINK仿真环境下。

2.选择File菜单下New下的Model命令,新建一个simulink仿真环境常规模板。

页脚内容33.在simulink仿真环境下,创建所需要的系统。

以图1-2所示的系统为例,说明基本设计步骤如下:图1-1 SIMULINK仿真界面图1-2 系统1)进入线性系统模块库,构建传递函数。

点击simulink下的“Continuous”,再将右边窗口中“Transfer Fen”的图标用左键拖至新建的“untitled”窗口。

2)改变模块参数。

在simulink仿真环境“untitled”窗口中双击该图标,即可改变传递函数。

其中方括号内的数字分别为传递函数的分子、分母各次幂由高到低的系数,数字之间用空格隔开;设置完成后,选择OK,即完成该模块的设置。

3)建立其它传递函数模块。

按照上述方法,在不同的simulink的模块库中,建立系统所需的传递函数模块。

例:比例环节用“Math”右边窗口“Gain”的图标。

4)选取阶跃信号输入函数。

用鼠标点击simulink下的“Source”,将右边窗口中“Step”图标用左键拖至新建的“untitled”窗口,形成一个阶跃函数输入模块。

5)选择输出方式。

用鼠标点击simulink下的“Sinks”,就进入输出方式模块库,通常选用“Scope”的示波器图标,将其用左键拖至新建的“untitled”窗口。

页脚内容4页脚内容56)选择反馈形式。

为了形成闭环反馈系统,需选择“Math ” 模块库右边窗口“Sum ”图标,并用鼠标双击,将其设置为需要的反馈形式(改变正负号)。

7)连接各元件,用鼠标划线,构成闭环传递函数。

8)运行并观察响应曲线。

用鼠标单击工具栏中的“”按钮,便能自动运行仿真环境下的系统框图模型。

运行完之后用鼠标双击“Scope ”元件,即可看到响应曲线。

三、实验原理1.比例环节的传递函数为 K R K R R R Z ZsG 200,1002)(211212==-=-=-=其对应的模拟电路及SIMULINK 图形如图1-3所示。

2.惯性环节的传递函数为uf C K R K R s C R R R Z Z s G 1,200,10012.021)(121121212===+-=+-=-=其对应的模拟电路及SIMULINK 图形如图1-4所示。

页脚内容63.积分环节(I)的传递函数为uf C K R ss CRZZ s G 1,1001.011)(111112==-=-=-=其对应的模拟电路及SIMULINK 图形如图1-5所示。

4.微分环节(D)的传递函数为uf C K R s s C R Z Z s G 10,100)(111112==-=-=-= uf C C 01.012=<<其对应的模拟电路及SIMULINK 图形如图1-6所示。

5.比例+微分环节(PD)的传递函数为)11.0()1()(111212+-=+-=-=ssCRRRZZsG ufCCufCKRR01.010,10012121=<<===其对应的模拟电路及SIMULINK图形如图1-7所示。

6.比例+积分环节(PI)的传递函数为)11(1)(11212sRsCRZZsG+-=+-=-=ufCKRR10,100121===其对应的模拟电路及SIMULINK图形如图1-8所示。

页脚内容7页脚内容8四、实验内容按下列各典型环节的传递函数,建立相应的SIMULINK 仿真模型,观察并记录其单位阶跃响应波形。

① 比例环节1)(1=s G 和2)(1=s G ;② 惯性环节11)(1+=s s G 和15.01)(2+=s s G ③ 积分环节s s G 1)(1=④ 微分环节s s G =)(1⑤ 比例+微分环节(PD )2)(1+=s s G 和1)(2+=s s G⑥ 比例+积分环节(PI )s s G 11)(1+=和s s G 211)(2+=五、实验报告1.画出各典型环节的SIMULINK 仿真模型。

2. 记录各环节的单位阶跃响应波形,并分析参数对响应曲线的影响。

3. 写出实验的心得与体会。

六、预习要求1.熟悉各种控制器的原理和结构,画好将创建的SIMULINK 图形。

2.预习MATLAB 中SIMULINK 的基本使用方法。

实验二 线性系统时域响应分析一、实验目的1.熟练掌握step( )函数和impulse( )函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。

2.通过响应曲线观测特征参量ζ和ω对二阶系统性能的影响。

n3.熟练掌握系统的稳定性的判断方法。

二、基础知识及MATLAB函数(一)基础知识时域分析法直接在时间域中对系统进行分析,可以提供系统时间响应的全部信息,具有直观、准确的特点。

为了研究控制系统的时域特性,经常采用瞬态响应(如阶跃响应、脉冲响应和斜坡响应)。

本次实验从分析系统的性能指标出发,给出了在MATLAB环境下获取系统时域响应和分析系统的动态性能和稳态性能的方法。

用MATLAB求系统的瞬态响应时,将传递函数的分子、分母多项式的系数分别以s的降幂排列写为两个数组num、den。

由于控制系统分子的阶次m一般小于其分母的阶次n,所以num中的数组元素与分子多项式系数之间自右向左逐次对齐,不足部分用零补齐,缺项系数也用零补上。

1.用MATLAB求控制系统的瞬态响应1)阶跃响应求系统阶跃响应的指令有:step(num,den) 时间向量t的范围由软件自动设定,阶跃响应曲线随即绘出step(num,den,t) 时间向量t的范围可以由人工给定(例如t=0:0.1:10)[y,x]=step(num,den) 返回变量y为输出向量,x为状态向量在MATLAB程序中,先定义num,den数组,并调用上述指令,即可生成单位阶跃输入信号下的阶跃响应曲线图。

考虑下列系统:页脚内容925425)()(2++=sssRsC该系统可以表示为两个数组,每一个数组由相应的多项式系数组成,并且以s的降幂排列。

则MATLAB 的调用语句:num=[0 0 25]; %定义分子多项式den=[1 4 25]; %定义分母多项式step(num,den) %调用阶跃响应函数求取单位阶跃响应曲线grid %画网格标度线xlabel(‘t/s’),ylabel(‘c(t)’) %给坐标轴加上说明title(‘Unit-step Respinse of G(s)=25/(s^2+4s+25)’) %给图形加上标题名则该单位阶跃响应曲线如图2-1所示:为了在图形屏幕上书写文本,可以用text命令在图上的任何位置加标注。

例如:text(3.4,-0.06,’Y1’) 和text(3.4,1.4,’Y2’)第一个语句告诉计算机,在坐标点x=3.4,y=-0.06上书写出’Y1’。

类似地,第二个语句告诉计算机,页脚内容10页脚内容11在坐标点x=3.4,y=1.4上书写出’Y2’。

若要绘制系统t 在指定时间(0-10s )内的响应曲线,则用以下语句:num=[0 0 25];den=[1 4 25];t=0:0.1:10;step(num,den,t)即可得到系统的单位阶跃响应曲线在0-10s 间的部分,如图2-2所示。

2) 脉冲响应① 求系统脉冲响应的指令有:impulse (num,den) 时间向量t 的范围由软件自动设定,阶跃响应曲线随即绘出impulse (num,den,t) 时间向量t 的范围可以由人工给定(例如t=0:0.1:10)[y,x]=impulse(num,den) 返回变量y 为输出向量,x 为状态向量[y,x,t]=impulse(num,den,t) 向量t 表示脉冲响应进行计算的时间例:试求下列系统的单位脉冲响应:12.01)()()(2++==s s s G s R s C 在MATLAB 中可表示为num=[0 0 1];den=[1 0.2 1];impulse(num,den)页脚内容12gridt itle(‘Unit -impulse Response of G(s)=1/(s^2+0.2s+1)’)由此得到的单位脉冲响应曲线如图2-3所示:② 求脉冲响应的另一种方法应当指出,当初始条件为零时,G (s)的单位脉冲响应与sG(s)的单位阶跃响应相同。

考虑在上例题中求系统的单位脉冲响应,因为对于单位脉冲输入量,R(s)=1所以 ss s s s s s G s C s R s C 112.012.01)()()()(22⨯++=++=== 因此,可以将G(s)的单位脉冲响应变换成sG(s)的单位阶跃响应。

向MATLAB 输入下列num 和den ,给出阶跃响应命令,可以得到系统的单位脉冲响应曲线如图2-4所示。

相关文档
最新文档