控制系统计算机仿真实验报告
- 格式:doc
- 大小:198.50 KB
- 文档页数:10
实验一 基于Matlab 的控制系统模型
一、 实验目的
1. 熟悉Matlab 的使用环境,学习Matlab 软件的使用方法和编程方法
2. 学习使用Matlab 进行各类数学变换运算的方法
3. 学习使用Matlab 建立控制系统模型的方法
二、 实验器材
x86系列兼容型计算机,Matlab 软件
三、 实验原理
1. 香农采样定理
对一个具有有限频谱的连续信号f(t)进行连续采样,当采样频率满足max 2ωω≥S 时,采样信号f*(t)
2. 拉式变换和Z 变换
使用Matlab 求函数的拉氏变换和Z 变换
3. 控制系统模型的建立与转化
传递函数模型:num=[b1,b2,…bm],den=[a1,a2,…an],n
n n m
m m b s a s a b s b s b den num s G ++++++=
=--ΛΛ121121)( 零极点增益模型:z=[z1,z2,……zm],p=[p1,p2……pn],k=[k],)
())(()
())(()(2121n m p s p s p s z s z s z s k s G ------=ΛΛ
四、实验步骤
1.根据参考程序,验证采样定理、拉氏变换和Z变换、控制系统模型建立的方法
2.观察记录输出的结果,与理论计算结果相比较
3.自行选则相应的参数,熟悉上述的各指令的运用方法
五、实验数据及结果分析
记录输出的数据和图表并分析
六、总结。
一、实验目的1. 熟悉MATLAB/Simulink仿真软件的基本操作。
2. 学习控制系统模型的建立与仿真方法。
3. 通过仿真分析,验证理论知识,加深对自动控制原理的理解。
4. 掌握控制系统性能指标的计算方法。
二、实验内容本次实验主要分为两个部分:线性连续控制系统仿真和非线性环节控制系统仿真。
1. 线性连续控制系统仿真(1)系统模型建立根据题目要求,我们建立了两个线性连续控制系统的模型。
第一个系统为典型的二阶系统,其开环传递函数为:\[ G(s) = \frac{1}{(s+1)(s+2)} \]第二个系统为具有迟滞环节的系统,其开环传递函数为:\[ G(s) = \frac{1}{(s+1)(s+2)(s+3)} \](2)仿真与分析(a)阶跃响应仿真我们对两个系统分别进行了阶跃响应仿真,并记录了仿真结果。
(b)频率响应仿真我们对两个系统分别进行了频率响应仿真,并记录了仿真结果。
(3)性能指标计算根据仿真结果,我们计算了两个系统的性能指标,包括上升时间、超调量、调节时间等。
2. 非线性环节控制系统仿真(1)系统模型建立根据题目要求,我们建立了一个具有饱和死区特性的非线性环节控制系统模型。
其传递函数为:\[ W_k(s) = \begin{cases}1 & |s| < 1 \\0 & |s| \geq 1\end{cases} \](2)仿真与分析(a)阶跃响应仿真我们对非线性环节控制系统进行了阶跃响应仿真,并记录了仿真结果。
(b)相轨迹曲线绘制根据仿真结果,我们绘制了四条相轨迹曲线,以分析非线性环节对系统性能的影响。
三、实验结果与分析1. 线性连续控制系统仿真(a)阶跃响应仿真结果表明,两个系统的性能指标均满足设计要求。
(b)频率响应仿真结果表明,两个系统的幅频特性和相频特性均符合预期。
2. 非线性环节控制系统仿真(a)阶跃响应仿真结果表明,非线性环节对系统的性能产生了一定的影响,导致系统响应时间延长。
实验五 采样控制系统的数字仿真实验 一、实验目的1. 掌握采样控制系统数字仿真的特点。
2.了解数字控制器对系统动态性能的影响。
3. 学会编制双重循环法的仿真程序。
二、实验预习1.复习采样控制系统的仿真原理及特点。
2.根据理论分析, 初步估计系统在给定条件下可能出现的动态过程。
三、实验要求1.整理各种实验条件下的数据和曲线。
2.分析两种控制器对系统动态性能的影响, 并写出实验报告。
四、实验内容 某单位反馈控制系统中, 被控对象的传递函数为)1(10)(0+=s s s G 在单位速度信号输入 下, 选择零阶保持器在 时设计的“最少拍”控制器为2121718.0282.010999.0471.0543.0)(------+-=zz z z z D 1) 1.按实验目的、要求和已知条件, 建立系统的Simulink 模型, 并且编制双重循环法的仿真程序。
2) Simulink 模型建立:根据题目给出的条件, 数字控制系统的结构图如下图所示:其中的其中数字控制器为:1221220.5430.4710.09990.5430.4710.0999()10.2820.7180.2820.718z z z z D z z z z z -----+-+==---- (1) 建立Simulink 模型如下图所示:3) 编制双重循环法的仿真程序 根据数字控制系统的结构图与条件(1)式, 我们可以得到得到被控对象的状态空间模型:[]112212()()0010()()()110()()01()x t x t u t x t x t x t y t x t ⎧⎡⎤⎡⎤⎡⎤⎡⎤=+⎪⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎪⎣⎦⎣⎦⎨⎡⎤⎪=⎢⎥⎪⎣⎦⎩(2) 按连续系统离散相似算法将(2)式离散化。
为了保证精度, 其离散化时的步长h (虚拟采样周期)应比数字控制器的实际采样周期T (=1s)小得多。
为简化起见, 取h=T/N=T/100=0.01T=0.01s 。
江南大学物联网工程学院《计算机控制系统》实验报告实验名称实验二微分与平滑仿真实验实验时间2017.10.31专业自动化班级1503 姓名汪涛学号********** 指导教师陈珺实验成绩一、实验目的与要求1、了解微分对采样噪音的灵敏响应。
2、了解平滑算法抑制噪音的作用。
3、进一步学习MATLAB 及其仿真环境SIMULINK 的使用。
二、仿真软硬件环境PC 机,MATLAB R2012b 。
三、实验原理如图微分加在正反馈输入端,计算机用D(Z)式进行微分运算。
R 为阶跃输入信号,C 为系统输出。
由于微分是正反馈,当取合适的微分时间常数时,会使系统响应加快。
若微分时间常数过大,则会影响系统稳定性。
四、D(Z)设计1、未平滑时的D(Z)用一阶差分代替微分运算:)1()()()(1--==Z TT Z X Z Y Z D D 式中T D为微分时间常数,T 为计算机采样周期。
2、平滑后的D(Z)微分平滑运算原理如图:取Y *(k)为四个点的微分均值,有)331(6)()()( )33(6 )5.15.05.05.1(4)( 321321221*-----------+==∴--+=-+-+-+-=Z Z Z T T Z X Z Y Z D X X X X TT X X X X X X X X T T K Y D K K K K D K K K K Dx x x k -3 x k -2 x k -1 x k t T 0.5T T 0.5T + + ○× R C五、SIMULINK仿真结构图六、仿真实验记录参数设置R、C波形记录未平滑T=0.02STD=0.01SD(Z)=D(Z)=0.5(1-Z-1)平滑T=0.02ST D=0.01SD(Z)=1/12+1/4Z-1/4Z2-12Z3未平滑T=0.04ST D=0.02SD(Z)=0.5(1-Z-1)平滑T=0.04ST D=0.02SD(Z)=0.5*平滑T=0.02ST D=0.02SD(Z)=1/6(1+3Z-1-3Z-2-Z-3)平滑T=0.04ST D=0.01SD(Z)=0.25*七、思考题1、微分噪音与采样噪音和采样周期T有什么关系?与微分时间常数有什么关系?在采样周期T相同的情况下,TD越大,微分噪音越严重;在TD相同的情况下,采样周期T越小微分噪音越严重。
一、实验目的1. 掌握控制系统仿真的基本原理和方法;2. 熟练运用MATLAB/Simulink软件进行控制系统建模与仿真;3. 分析控制系统性能,优化控制策略。
二、实验内容1. 建立控制系统模型2. 进行仿真实验3. 分析仿真结果4. 优化控制策略三、实验环境1. 操作系统:Windows 102. 软件环境:MATLAB R2020a、Simulink3. 硬件环境:个人电脑一台四、实验过程1. 建立控制系统模型以一个典型的PID控制系统为例,建立其Simulink模型。
首先,创建一个新的Simulink模型,然后添加以下模块:(1)输入模块:添加一个阶跃信号源,表示系统的输入信号;(2)被控对象:添加一个传递函数模块,表示系统的被控对象;(3)控制器:添加一个PID控制器模块,表示系统的控制器;(4)输出模块:添加一个示波器模块,用于观察系统的输出信号。
2. 进行仿真实验(1)设置仿真参数:在仿真参数设置对话框中,设置仿真时间、步长等参数;(2)运行仿真:点击“开始仿真”按钮,运行仿真实验;(3)观察仿真结果:在示波器模块中,观察系统的输出信号,分析系统性能。
3. 分析仿真结果根据仿真结果,分析以下内容:(1)系统稳定性:通过观察系统的输出信号,判断系统是否稳定;(2)响应速度:分析系统对输入信号的响应速度,评估系统的快速性;(3)超调量:分析系统超调量,评估系统的平稳性;(4)调节时间:分析系统调节时间,评估系统的动态性能。
4. 优化控制策略根据仿真结果,对PID控制器的参数进行调整,以优化系统性能。
调整方法如下:(1)调整比例系数Kp:增大Kp,提高系统的快速性,但可能导致超调量增大;(2)调整积分系数Ki:增大Ki,提高系统的平稳性,但可能导致调节时间延长;(3)调整微分系数Kd:增大Kd,提高系统的快速性,但可能导致系统稳定性下降。
五、实验结果与分析1. 系统稳定性:经过仿真实验,发现该PID控制系统在调整参数后,具有良好的稳定性。
昆明理工大学电力工程学院学生实验报告实验课程名称:控制系统仿真实验开课实验室:年月日实验一 电路的建模与仿真一、实验目的1、了解KCL 、KVL 原理;2、掌握建立矩阵并编写M 文件;3、调试M 文件,验证KCL 、KVL ;4、掌握用simulink 模块搭建电路并且进行仿真。
二、实验内容电路如图1所示,该电路是一个分压电路,已知13R =Ω,27R =Ω,20S V V =。
试求恒压源的电流I 和电压1V 、2V 。
IVSV 1V 2图1三、列写电路方程(1)用欧姆定律求出电流和电压 I=Vs/(R1+R2)U1=R1*I U2=R2*II=2A, U1=6V , U2=14V(2)通过KCL 和KVL 求解电流和电压 I1=I2Vs+U1+U2=0I=2A, U1=6V , U2=14V四、编写M文件进行电路求解(1)M文件源程序u=20;r=[3,7];i=20/(r(1,2)+r(1,1))u1=3*iu2=7*i(2)M文件求解结果五、用simulink进行仿真建模(1)给出simulink下的电路建模图电流波形电压v1波形电压v2波形六、结果比较与分析由上可知用M文件进行电路求解与用simulink进行仿真建模所得结果为一致,所以所求结果为正确的。
实验二数值算法编程实现一、实验目的掌握各种计算方法的基本原理,在计算机上利用MATLAB完成算法程序的编写拉格朗日插值算法程序,利用编写的算法程序进行实例的运算。
二、实验说明1.给出拉格朗日插值法计算数据表;2.利用拉格朗日插值公式,编写编程算法流程,画出程序框图,作为下述编程的依据;3.根据MATLAB软件特点和算法流程框图,利用MATLAB软件进行上机编程;4.调试和完善MATLAB程序;5.由编写的程序根据实验要求得到实验计算的结果。
三、实验原始数据上机编写拉格朗日插值算法的程序,并以下面给出的函数表为数据基础,在整个插值区间上采用拉格朗日插值法计算(0.6)f,写出程序源代码,输出计算结果:四、拉格朗日插值算法公式及流程框图输出x,y五、程序代码function y=lag(xi,yi,x);n=length(xi);c=x;s=0;for k=1:np=1;for j=1:nif j~=kp=p*(c-xi(j))/(xi(k)-xi(j));endends=p*yi(k)+s;endy=s;disp(x);六、计算结果(0.6)f=0.0201实验三动态电路的建模及仿真一、实验目的1.了解动态电路的理论,掌握动态电路建模的基本原理;2.熟悉MATLAB的Simulink模块,并掌握使用模块搭建过程。
控制系统仿真实验报告——一、实验目的:进一步掌握数值积分法;进一步掌握MA TLAB 软件的使用方法。
二、实验设备:数字计算机,MA TLAB 软件三、实验预备:(1)将传递函数化为一阶微分方程组(即状态方程);令1y y = ,2y y = ,则11222140.6()102722.06y y y y y x t y y y=⎧⎪=⎨⎪=---⎩ 写作矩阵形式:11220100001022.06271040.6y y y y y y ⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥---⎣⎦⎣⎦⎣⎦⎣⎦ (2)分别写出四种方法的计算公式;令12y Y y y ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦, 01000122.062710A ⎡⎤⎢⎥=⎢⎥⎢⎥---⎣⎦ ,0040.6C ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦ , 则可化为Y AY C =+① 欧拉法:Y(i+1)=Y(i)+(A*Y(i)+C)*h; ② 改进欧拉法:Yp=Y(i)+(A*Y(i)+C)*hY(i+1)=Y(i)+(A*Y(i)+C+A*Yp+C)*h/2;③ 四阶经典龙格库塔法:k1=A*Y(i)+C;k2=A*(Y(i)+k1*h/5)+C; k3=A*(Y(i)+2*k1*h/5)+C;k4=A*(Y(i)-2*k1*h/5+k2*h)+C;k5=A*(Y(i)+0.3*k1*h+0.5*k4*h)+C;Y(i+1)=Y(i)+(-k1+15*k2-5*k3+5*k4+10*k5)*h/24;④ 四阶亚当姆斯预估校正法:Yp=Y(i)+(55*(A*Y(i)+C)-59*(A*Y(i-1)+C)+37*(A*Y(i-2)+C)-9*(A*Y(i-3)+C))*h/24;Y(i+1)=Y(i)+(9*(A*Yp+C)+19*(A*Y(i)+C)-5*(A*Y(i-1)+C)+(A*Y(i-2)+C))*h/24;(3)理论分析:计算系统特征值。
哈尔滨理工大学实验报告控制系统仿真专业:自动化12—1学号:1230130101姓名:一。
分析系统性能一.实验目得及内容:1、熟悉MATLAB软件得操作过程;2、熟悉闭环系统稳定性得判断方法;3、熟悉闭环系统阶跃响应性能指标得求取.二.实验用设备仪器及材料:PC,Matlab 软件平台三、实验步骤1、编写MATLAB程序代码;2、在MATLAT中输入程序代码,运行程序;3、分析结果.四.实验结果分析:1、程序截图得到阶跃响应曲线得到响应指标截图如下2、求取零极点程序截图得到零极点分布图3、分析系统稳定性根据稳定得充分必要条件判别线性系统得稳定性最简单得方法就是求出系统所有极点,并观察就是否含有实部大于0得极点,如果有系统不稳定。
有零极点分布图可知系统稳定。
二.单容过程得阶跃响应一、实验目得1、熟悉MATLAB软件得操作过程2、了解自衡单容过程得阶跃响应过程3、得出自衡单容过程得单位阶跃响应曲线二、实验内容已知两个单容过程得模型分别为与,试在Simulink中建立模型,并求单位阶跃响应曲线。
三、实验步骤1、在Simulink中建立模型,得出实验原理图。
2、运行模型后,双击Scope,得到得单位阶跃响应曲线。
四、实验结果1.建立系统Simulink仿真模型图,其仿真模型为2.过程阶跃响应曲线为三.单容过程得阶跃响应一、实验目得1、了解比例积分调节得作用;2、了解积分调节强弱对系统性能得影响。
二、实验内容已知控制系统如下图所示,其中,H(s)为单位反馈,且在第二个与第三个环节(即与)之间有累加得扰动输入(在5秒时幅值为0、2得阶跃扰动).对系统采用比例积分控制,比例系数为,积分时间常数分别取,试利用Simulink求各参数下系统得单位阶跃响应曲线与扰动响应曲线。
三、实验步骤1、在Simulink中建立仿真模型,其模型为2、运行模型后,双击Scope,得到得单位阶跃响应曲线为3、置阶跃输入为0,在5秒时,加入幅值为0、2得阶跃扰动,得到扰动响应曲线为四。
控制系统仿真实验报告姓名:王天雷班级:231142学号:20131004363学院:自动化专业:自动化指导老师:刘峰2017 年 1 月目录7.2.2 (1)7.2.3 (7)7.2.4 (12)7.2.5 (17)7.2.6 (21)7.3.1 (24)总结 (25)7.2.2 控制系统的阶跃响应实验目的:观察学习控制系统的单位阶跃响应 记录单位阶跃响应曲线掌握时间响应分析的一般方法实验内容: 1. 二阶系统1)键入程序,观察并记录单位阶跃响应曲线 First.m close all; clear all; clc;num=[10];den=[1 2 10]; step(num,den); title(‘阶跃响应曲线’);2)键入damp(den) 计算系统的闭环根、阻尼比、无阻尼振荡频率,并记录结果:Eigenvalue (闭环根) Damping (阻尼比) Freq. (rad/s)(无阻尼振荡频率)()102102++=s s sG-1.00e+000 + 3.00e+000i 3.16e-001 3.16e+000 -1.00e+000 - 3.00e+000i 3.16e-001 3.16e+0003)记录实际测取的峰值大小、峰值时间及过渡过程时间,并填表:由理论知识知编写代码x.m%返回峰值时间,超调量,调节时间5%,2% function [tr b ts1 ts2]=x(a,wn) wd=wn*(1-a^2)^0.5;%求解wd tp=3.14/wd;%峰值时间b=exp((-3.14*a/(1-a^2)^0.5));%超调量 ts1=3.5/(wn*a),ts2=4.5/(wn*a);%调节时间 计算得到理论值,填入表中3//πωπ==d p t 4.52%(00.9)3.55%n s n t ζωζζω⎧∆=⎪⎪=<<⎨⎪∆=⎪⎩2 1)修改参数,分别实现和的响应曲线,并记录 程序:second.m clear all; close all; clc;n0=10;d0=[1 2 10];step(n0,d0);%原系统,kesai=0.36 hold on;%保持原曲线n1=n0;d1=[1 6.32 10];step(n1,d1);%kesai=1; n2=n0;d2=[1 12.64 10];step(n2,d2);%kesai=2;如图,kesai 分别为0.36,1,2,曲线幅度递减2)修改参数,分别写出程序实现和的响应曲线,并记录程序:third.m clear all; close all; clc;n0=10;d0=[1 2 10];step(n0,d0);%原系统,wn0=10^0.5 hold on;%保持原曲线n1=0.25*n0;d1=[1 1 n1];step(n1,d1);%wn1=0.5*wn0; n2=4*n0;d2=[1 4 n2];step(n2,d2);%wn2=4*wn0=2;1=ζ2=ζ0121w w n =022w w n =如图,wn=2*wn0,wn0,0.5*wn0,上升时间逐渐增长,超调量不变3. 作出以下系统的阶跃响应,并与原系统响应曲线进行比较,作出相应的实验分析结果(1),有系统零点的情况(2),分子、分母多项式阶数相等(3),分子多项式零次项为零(4),原响应的微分,微分系数为1/10程序:%各系统阶跃响应曲线比较G0=tf([10],[1 2 10]);G1=tf([2 10],[1 2 10]);G2=tf([1 0.5 10],[1 2 10]); G3=tf([1 0.5 0],[1 2 10]);G4=tf([1 0 ],[1 2 10]); step(G0,G1,G2,G3,G4); grid on;title(' Step Response 曲线比较');()10210221+++=s s s s G ()102105.0222++++=s s s s s G ()1025.0222+++=s s s s s G ()10222++=s s s s G4.试做一个三阶系统和四阶系统的阶跃响应,并分析实验结果 假设一个三阶和一个四阶系统,如下sys1=tf([1],[1 1 1 1]);sys2=tf([1],[1 1 1 1 1]);step(sys1,sys2);如图,分别为sys1,sys2系统阶跃响应曲线分析1:系统阻尼比和无阻尼振荡频率对系统阶跃相应的影响11123+++=s s s sys 112234++++=s s s ssys解:在欠阻尼响应曲线中,阻尼比越小,超调量越大,上升时间越短,通常取kesai在0.4到0.8之间,此时超调量适度,调节时间较短;若二阶系统的阻尼比不变,振荡频率不同,其阶跃响应的振荡特性相同但响应速度不同,wn越大,响应速度越快。
实验五 控制系统计算机辅助设计一、实验目的学习借助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 控制器的参数。
控制系统仿真实验报告一、实验目的本次控制系统仿真实验的主要目的是通过使用仿真软件对控制系统进行建模、分析和设计,深入理解控制系统的工作原理和性能特点,掌握控制系统的分析和设计方法,提高解决实际控制问题的能力。
二、实验设备与软件1、计算机一台2、 MATLAB 仿真软件三、实验原理控制系统是由控制对象、控制器和反馈环节组成的一个闭环系统。
其工作原理是通过传感器测量控制对象的输出,将其与期望的输出进行比较,得到误差信号,控制器根据误差信号产生控制信号,驱动控制对象,使系统的输出逐渐接近期望的输出。
在仿真实验中,我们使用数学模型来描述控制对象和控制器的动态特性。
常见的数学模型包括传递函数、状态空间方程等。
通过对这些数学模型进行数值求解,可以得到系统的输出响应,从而对系统的性能进行分析和评估。
四、实验内容1、一阶系统的仿真建立一阶系统的数学模型,如一阶惯性环节。
使用 MATLAB 绘制系统的单位阶跃响应曲线,分析系统的响应时间和稳态误差。
2、二阶系统的仿真建立二阶系统的数学模型,如典型的二阶振荡环节。
改变系统的阻尼比和自然频率,观察系统的阶跃响应曲线,分析系统的稳定性、超调量和调节时间。
3、控制器的设计与仿真设计比例控制器(P 控制器)、比例积分控制器(PI 控制器)和比例积分微分控制器(PID 控制器)。
对给定的控制系统,分别使用不同的控制器进行仿真,比较系统的性能指标,如稳态误差、响应速度等。
4、复杂控制系统的仿真建立包含多个环节的复杂控制系统模型,如串级控制系统、前馈控制系统等。
分析系统在不同输入信号下的响应,评估系统的控制效果。
五、实验步骤1、打开 MATLAB 软件,新建脚本文件。
2、根据实验内容,定义系统的数学模型和参数。
3、使用 MATLAB 中的函数,如 step()函数绘制系统的阶跃响应曲线。
4、对响应曲线进行分析,计算系统的性能指标,如超调量、调节时间、稳态误差等。
5、设计控制器,修改系统模型,重新进行仿真,比较系统性能的改善情况。
实验一MATLAB基本操作与矩阵运算一、实验目的1、熟悉Matlab软件的基本操作方法2、掌握Matlab矩阵和数组的基本运算3、了解Matlab的常用函数的使用方法二、实验学时:2学时三、实验原理MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。
打开MATLAB软件弹出如图1-1所示的图形窗口。
MATLAB有3种子窗口,即:命令窗口(Command Window)、m-文件编辑窗口(Edit Window)和图形窗口(Figure Window)。
图1-1 MATLAB R2008a基本界面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-文件。
3.图形窗口(The Figure Window )图形窗口用来显示MATLAB 程序产生的图形。
图形可以是2维的、3维的数据图形,或其它棒状图、极坐标图等。
MATLAB 常用操作命令和运算符如下:clear ——清除工作空间变量clc ——清除命令窗口内容path ——设置路径cd ——设置当前目录符+——矩阵的加法运算符-——矩阵的减法运算符*——矩阵的乘法运算符\——矩阵的左除运算符/——矩阵的右除运算符^——矩阵的乘方linspace ——产生线性等分向量inv ——矩阵求逆poly ——创建多项式polyval ——多项式求值polyfit ——多项式拟合四、实验内容1.自由练习Matlab 软件的操作2、已知矩阵 A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡987654321。
哈尔滨理工大学实验报告控制系统仿真专业: 自动化12-1 学号: 1230130101 姓名:一.分析系统性能课程名称控制系统仿真实验名称分析系统性能时间8.29地点3#姓名蔡庆刚学号1230130101班级自动化12-1一.实验目的及内容:1.熟悉MATLAB软件的操作过程;2.熟悉闭环系统稳定性的判断方法;3. 熟悉闭环系统阶跃响应性能指标的求取。
二.实验用设备仪器及材料:PC, Matlab软件平台三、实验步骤1. 编写MATLAB程序代码;2.在MATLAT中输入程序代码,运行程序;3.分析结果。
四.实验结果分析:1.程序截图得到阶跃响应曲线得到响应指标截图如下2.求取零极点程序截图得到零极点分布图3.分析系统稳定性根据稳定的充分必要条件判别线性系统的稳定性最简单的方法是求出系统所有极点,并观察是否含有实部大于0的极点,如果有系统不稳定。
有零极点分布图可知系统稳定。
二.单容过程的阶跃响应一、实验目的1. 熟悉MATLAB软件的操作过程2. 了解自衡单容过程的阶跃响应过程3. 得出自衡单容过程的单位阶跃响应曲线二、实验内容已知两个单容过程的模型分别为1()0.5G ss=和51()51sG s es-=+,试在Simulink中建立模型,并求单位阶跃响应曲线。
三、实验步骤1. 在Simulink中建立模型,得出实验原理图。
2. 运行模型后,双击Scope,得到的单位阶跃响应曲线。
四、实验结果1.建立系统Simulink仿真模型图,其仿真模型为2.过程阶跃响应曲线为三.单容过程的阶跃响应一、实验目的1. 了解比例积分调节的作用;2. 了解积分调节强弱对系统性能的影响。
二、实验内容已知控制系统如下图所示,其中01()(1)(21)(51)G s s s s =+++,H (s )为单位反馈,且在第二个和第三个环节(即1(21)s +和1(51)s +)之间有累加的扰动输入(在5秒时幅值为0.2的阶跃扰动)。
计算机仿真试验报告
自动化1201 ** 3120502007
[实验目的]
(1).掌握采样控制系统数字仿真的特点。
(2).了解数字控制器对系统动态性能的影响。
(3).学会编制双重循环法的仿真程序。
(1). 复习采样控制系统的仿真原理及特点。
(2).根据理论分析,初步估计系统在给定条件下可能出现的动态过程。
(1).按实验目的、要求和已知条件,建立系统的Simulink模型,并且编制双重循环法的仿真程序。
1) Simulink模型建立:
根据题目给出的条件,数字控制系统的结构图如下图所示:
其中的其中数字控制器为:
根据上面结构图,所建立
2) 编制双重循环法的仿真程序
根据数字控制系统的结构图与条件(1)式,我们可以得到得到被控对象的状态空间模型:
[]112212()()0010()()
()110()()01()x t x t u t x t x t x t y t x t ⎧⎡⎤⎡⎤⎡⎤⎡⎤=+⎪⎢⎥⎢⎥⎢⎥⎢⎥-⎣
⎦⎣⎦⎪⎣⎦⎣⎦⎨
⎡⎤
⎪=⎢⎥⎪
⎣⎦⎩
(2)
按连续系统离散相似算法将(2)式离散化。
为了保证精度,其离散化时的步长h (虚
拟采样周期)应比数字控制器的实际采样周期T (=1s)小得多。
为简化起见,取h=T/N=T/100=0.01T=0.01s 。
利用MATLAB 控制系统工具箱提供的将连续系统转换成离散系统的函数c2d ,把连续状态空间模型(2)变换为离散状态空间模型。
离散程序如下(程序1):
clear;
h=0.01; A=[0 0;1 -1]; B=[10;0];
[G,H]=c2d(A,B,h)
运行后的结果为:
即:
1
0(())0.010.99T ⎡⎤==⎢⎥⎣⎦
G Φ (3) 0.1(())0.0005T ⎡⎤
==⎢
⎥
⎣⎦
H Γ (4) 故连续系统被控对象(2)的等价离散化状态方程为:
[]112212(1)()100.1()(1)()0.010.990.0005()()01()x k x k u k x k x k x k y k x k ⎧+⎡⎤⎡⎤⎡⎤⎡⎤
=+⎪⎢⎥⎢⎥⎢⎥⎢⎥
+⎣⎦⎣⎦
⎪⎣⎦⎣⎦⎨
⎡⎤
⎪=⎢⎥⎪
⎣⎦⎩
(5)
根据上述条件,采样控制系统数字控制器的差分方程为u k u k u k e k e k e k
=-+-+--+- (6)
()0.282(1)0.718(2)0.543()0
2)
式中:()()()
e k r k y k
=-(7)
根据例题3.2中仿真框图分别递推求解 (5)式和 (6)式的MATLAB仿真程序:
程序2如下:
clear
G=[1 0;0.01 0.99];
H=[0.1;0.0005];c=[0 1]; % 连续被控对象的离散化状态方程的系数阵
h=0.01;T=1; % 设定内循环步长h=0.01,而外循环则以采样周期T=0.1为步长N=round(T/h); % 在一采样周期内连续被控对象的离散化状态方程递推N次(内循环) TF=15; % 设定总仿真时间为15s
M=round(TF/T); % 数字控制器的差分方程递推M次(外循环)
x=[0;0];
u=zeros(1,M+2);
e=zeros(1,M+2);
u(1)=0;
u(2)=0;
t=0;
xt=x;
for i=1:M % 外循环
y=c*x;
r(i)=i;
e(i+2)=r(i)-y;
u(i+2)=0.282*u(i+1)+0.718*u(i)+0.543*e(i+2)-0.471*e(i+1)+0.0999*e(i); % 外循环中递推求数字控制器在实际采样时刻的输出(步长为T)
for j=1:N % 内循环
x=G*x+h*u(i+2); % 内循环中递推求受控对象状态响应(步长为h)
xt=[xt,x]; % yt为记载各步状态响应的矩阵
t=[t,j*h+(i-1)*T]; % t为记载各采样(kT)时刻的行向量(与yt对应)
end
end
x2t=xt(2,:);
plot(t,t,':k',t+T,x2t,'k');
legend('r', 'y');
grid;
xlabel('time(s)');
title('双重循环法仿真程序的运行结果');
(2). 分别运行双重循环法的仿真程序和Simulink模型,观察纪录系统动态性能的变化。
1) 运行双重循环法的仿真程序结果如下所示:
2)运行Simulink模型结果如下图所示:
进行对比发现,两种方法结果基本相同。
双重循环法通用性较强,不仅可得到控制系统的输出值,还可得到被控对象内部状态变量的响应;也可用于被控对象中含有典型非线性环节的非线性系统的仿真。
克服了差分方程递推求解法
不能计算被控对象的内部状态变量的响应特性,对被控对象含有非线性环节的情况也不适用的局限性。
1) 更改只需改Discrete Transfer Fcn 参数即可,Simulink模型为:输出结果如下:
2)双重循环法:
改变数字控制器后,连续系统离散化模型是不变的,只需将控制系统差分方程改写即可:=-+-+--+-(7)u k u k u k e k e k e k
()0.407(1)0.593(2)0.383()0.365(1)0.825(2)
重新编写双重循环仿真程序如下(程序3):
clear
G=[1 0;0.01 0.99];
H=[0.1;0.0005];c=[0 1]; % 连续被控对象的离散化状态方程的系数阵
h=0.01;T=1; % 设定内循环步长h=0.01,而外循环则以采样周期T=0.1为步长N=round(T/h); % 在一采样周期内连续被控对象的离散化状态方程递推N次(内循环) TF=15; % 设定总仿真时间为15s
M=round(TF/T); % 数字控制器的差分方程递推M次(外循环)
x=[0;0];
u=zeros(1,M+2);
e=zeros(1,M+2);
u(1)=0;
u(2)=0;
t=0;
xt=x;
for i=1:M % 外循环
y=c*x;
r(i)=i;
e(i+2)=r(i)-y;
u(i+2)=0.407*u(i+1)+0.593*u(i)+0.383*e(i+2)-0.365*e(i+1)+0.0825*e(i);
% 外循环中递推求数字控制器在实际采样时刻的输出(步长为T)
for j=1:N % 内循环
x=G*x+h*u(i+2); % 内循环中递推求受控对象状态响应(步长为h)
xt=[xt,x]; % yt为记载各步状态响应的矩阵
t=[t,j*h+(i-1)*T]; % t为记载各采样(kT)时刻的行向量(与yt对应)
end
end
x2t=xt(2,:);
plot(t,t,':k',t+T,x2t,'k'); legend('r', 'y');
grid;
xlabel('time(s)');
title('“无波纹”双重循环法仿真结果');
程序运行结果输出如下所示:。