《控制系统计算机仿真》实验指导书
- 格式:doc
- 大小:126.00 KB
- 文档页数:9
实验一 MATLAB 软件操作练习一、 实验目的1. 熟悉MATLAB 软件的基本操作;2. 学会利用MATLAB 进行基本数学计算的方法;3. 学会用MATLAB 进行矩阵创建和运算。
二、实验设备计算机一台,MATLAB 软件三、实验内容1. 使用help 命令,查找 sqrt (开方)、roots (求根)等函数的使用方法;2. 用MATLAB 可以识别的格式输入以下矩阵75350083341009103150037193......A ⎡⎤⎢⎥⎢⎥=⎢⎥-⎢⎥⎣⎦并将A 矩阵的右下角2×3子矩阵赋给D 矩阵。
赋值完成后,调用相应的命令查看MATLAB 工作空间的占用情况。
3. 矩阵运算(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=[3 2 3;2 4 6;6 8 10];求A 中第3列前2个元素;A 中所有列第2,3行的元素;4. 分别用for 和while 循环结构编写程序,求出6323626302122222i i K ===++++++∑并考虑一种避免循环的简洁方法来进行求和。
四、实验步骤1. 熟悉MATLAB 的工作环境,包括各菜单项、工具栏以及指令窗口、工作空间窗口、启动平台窗口、命令历史窗口、图形文件窗口和M 文件窗口;2. 在指令窗口中完成实验内容中规定操作并记录相关实验结果;3. 完成实验报告。
实验二 M 文件编程及图形处理一、实验目的1.学会编写MATLAB 的M 文件;2.熟悉MATLAB 程序设计的基本方法;3. 学会利用MATLAB 绘制二维图形。
二、实验设备计算机一台,MATLAB 软件三、实验内容1. 选择合适的步距绘制出下面的图形(1)sin(tan )tan(sin )t t -,其中(,)t ππ∈-(2)-0.5t y=e sin(t-)3π,t ∈[0,20](3)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5), t ∈[0,2π]2.基本绘图控制绘制[0,4π]区间上的x1=10sint 曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)给横坐标标注’t ’,纵坐标标注‘y(t)‘,3.M 文件程序设计(1)编写程序,计算1+3+5+7+…+(2n+1)的值(用input 语句输入n 值);(2)编写分段函数⎪⎩⎪⎨⎧≤≤-<≤=其它021210)(x x x x x f的函数文件,存放于文件ff.m 中,计算出)2(f ,)3(-f 的值四、实验要求1. 预习实验内容,按实验要求编写好实验程序;2. 上机调试程序,记录相关实验数据和曲线,3. 完成实验报告。
《控制系统计算机仿真》实验指导书实验一Matlab使用方法和程序设计一、实验目的1、掌握Matlab软件使用的基本方法;2、熟悉Matlab的数据表示、基本运算和程序控制语句3、熟悉Matlab绘图命令及基本绘图控制4、熟悉Matlab程序设计的基本方法二、实验内容1、帮助命令使用help命令,查找qrt(开方)函数的使用方法;2、矩阵运算(1)矩阵的乘法已知A=[12;34];B=[55;78];求A^2某B(2)矩阵除法已知A=[123;456;789];B=[100;020;003];A\B,A/B(3)矩阵的转置及共轭转置已知A=[5+i,2-i,1;6某i,4,9-i];求A.',A'(4)使用冒号选出指定元素已知:A=[123;456;789];求A中第3列前2个元素;A中所有列第2,3行的元素;(5)方括号[]用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列3、多项式(1)求多项式p(某)=某3-2某-4的根(2)已知A=[1.2350.9;51.756;3901;1234],求矩阵A的特征多项式;求特征多项式中未知数为20时的值;4、基本绘图命令(1)绘制余弦曲线y=co(t),t∈[0,2π](2)在同一坐标系中绘制余弦曲线y=co(t-0.25)和正弦曲线y=in(t-0.5),t∈[0,2π]5、基本绘图控制绘制[0,4π]区间上的某1=10int曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线、比例、网络线(3)标注控制:坐标轴名称、标题、相应文本;6、基本程序设计(1)编写命令文件:计算1+2++n<2000时的最大n值;(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到n次幂的和。
三、预习要求利用所学知识,编写实验内容中2到6的相应程序,并写在预习报告上。
实验二Matlab中控制系统的建模与分析一、实验目的1、掌握Matlab中连续、离散系统各种数学模型的建立方法;2、掌握Matlab中各种数学模型之间的转换方法;3、熟悉Matlab中控制框图的化简方法;4、掌握如何使用Matlab进行系统的稳定性分析;5、掌握如何使用Matlab进行系统的可控性、可观测性分析;6、掌握如何使用Matlab进行系统的时域数值分析;二、实验内容1、连续线性系统的数学模型建立及转换请用合适的格式,将下面的传递函数模型输入MATLAB环境,并转换成状态空间形式、零极点形式、画出零极点位置。
《控制系统仿真》实验指导书天津大学仁爱学院2013年9月实验一MATLAB平台认识、编程初步实验一、实验目的1、了解MATLAB语言环境。
2、练习MATLAB命令的基本操作。
3、练习M文件的基本操作。
二、实验内容1、了解MATLAB语言环境1)MATLAB语言操作界面。
用鼠标双击图标即可打开MATLAB可见多个窗口:”Command Window” Command history”, ”workspace”等,在命令窗口”Command Wind ow”中,在命令提示符位置键入命令,完成下面的练习。
2.练习MATLAB命令的基本操作1)键入常数矩阵输入命令:a=[1 2 3]a=[1;2;3]记录结果,比较显示结果有何不同:b=[1 2 5]b=[1 2 5];记录结果,比较显示结果有何不同:c=a*b c=a*b′记录结果,比较变量加“′”后的区别:a=[1 2 3;4 5 6;7 8 0]a^2a^0.5记录显示结果。
2)作循环命令程序:>>makesum=0;for i=1:1:100;makesum=makesum+i;end键入makesum,按回车键,记录计算结果。
3)分别执行下列命令:a=[1 2 3;4 5 6;7 8 0]poly(a)rank(a)det(a)trace(a)inv(a)eig(a)分别写出命令含义、记录结果。
3.练习M文件的基本操作1)新建文件,建.M文件2)输入程序function [m,s]=findsum(k)s=0;m=0;while (s<=k),m=m+1;s=s+m; end3)另存为“findsum.m”文件这样就可以在MATLAB环境中对不同的k值调用该函数了。
例如,若想求出大于的最小m值,则可以得出如下命令:在命令窗口中输入>>[m1,s1]=findsum(),观察记录结果。
三、实验报告要求按照上述步骤进行实验,并按实验记录完成实验报告。
实验一 Matlab 使用数值方程求解和绘图练习一、实验目的1、熟悉Matlab 求解数值方程的方法2、掌握Matlab 进行二维和三维绘图的方法二、实验内容1、Matlab 进行系统数学模型描述、仿真算法定义的基本语法规则及用法。
2、Matlab 进行仿真时解算器的选择方法3、Matlab 进行绘制二维图、三维图的方法4、如何将数值方程的三维相轨迹通过Matlab 的方法计算出来三、实验步骤:1、已知Rossler 化学反应方程组如下[]⎪⎩⎪⎨⎧-+=+=--=)()()()()()()()()(t z c t x b t z t ay t x t yt z t y t x 选定a=b=0.2,c=5.7,创建匿名函数,将此方程组输入到Matlab 中2、选择合适的解算器,求解此微分方程组3、使用plot 命令,将x,y ,z 的时间响应曲线绘制出来4、使用plot3命令,绘制仿真结果的三维相轨迹5、绘制三维相轨迹在x-y 平面上的投影四、实验报告实验报告应包含每一个实验步骤的Matlab 命令和执行结果,将执行结果进行屏幕抓图打印后粘贴在实验报告上实验二 使用Matlab 求解控制系统解析解一、实验目的1、熟悉Matlab 输入控制系统的方法2、掌握Matlab 进行控制系统求解的方法二、实验内容1、将控制系统的数学模型输入Matlab 的方法2、使用Matlab 进行控制系统模型转换的方法3、使用Matlab 求解控制系统单位阶跃响应和单位脉冲响应的解析解的方法4、使用Matlab 求解控制系统对某一个函数的输入的响应解析解三、实验步骤:1、将以下的数学模型输入到Matlab 中去4032010958411812467284224494536546364032018576022208812266436380598251418)(2345678234567+++++++++++++++=s s s s s s s s s s s s s s s s G2、使用residue 命令,分别求出单位阶跃响应和单位脉冲响应的Y(s)的分子和分母多项式的系数3、列写出G(s)的零状态情况下,系统单位阶跃响应和单位脉冲响应的解析解4、求取u=sin(3t+5)的拉普拉斯变换5、求取G(s)零状态情况下,系统对u=sin(3t+5)响应的解析解四、实验报告实验报告应包含每一个实验步骤的Matlab 命令和执行结果,将每一步Matlab 的执行结果抄写在实验报告上。
实验5. 控制理论仿真实验1 控制系统的建模一、实验目的1.学习在命令窗口建立系统模型的方法;2.学习如何在三种模型之间相互转换;3.学习如何用仿真工具建模。
二、相关知识1.传递函数模型设连续系统的传递函数为:nn n n m m m m a s a s a s a b s b s b s b s den s num s G ++++++++==----11101110)()()( 设离散系统的传递函数为:nn n n m m m m a z a z a z a b z b z b z b z den z num z G ++++++++==----11101110)()()( 则在中,都可直接用分子/分母多项式系数构成的两个向量与构成的矢量组[]表示系统,即],,,[10m b b b=],,,[10n a a a建立控制系统的传递函数模型(对象)的函数为 (),调用格式为:()()()()返回的变量为连续系统的传递函数模型。
()返回的变量为离散系统的传递函数模型,为采样周期,当1或[]时,系统的采样周期未定义。
()将任意的控制系统对象转换成传递函数模型。
离散系统的传递函数的表达式还有一种表示为1-z 的形式(即形式),转换为形式的函数命令为(),调用格式为:()()()函数用来建立一个采样时间未指定的形式传递函数。
()函数用来建立一个采样时间为的形式传递函数。
2.零极点增益模型设连续系统的零极点增益模型传递函数为:)())(()())(()(2121n m p s p s p s z s z s z s k s G ------= 设离散系统的零极点增益模型传递函数为:)())(()())(()(1010n m p z p z p z z z z z z z k z G ------= 则在中,都可直接用向量构成的矢量组[]表示系统,即],,[10m z z z],,[10n p p p][k在中,用函数()来建立控制系统的零极点增益模型,调用格式为:()()()()返回的变量为连续系统的零极点增益模型。
MALTAB 仿真实验指导书实验一实验题目:欧拉法&梯形法的MATLAB 实现实验目的:1.熟练掌握MATLAB 的使用方法2.牢记欧拉法、梯形法的计算过程3.熟悉欧拉法、梯形法以及实现二阶动态响应的程序编写 实验内容:已知被控对象的系数矩阵分别为A=[-5 -2 -1 -0.5;4 0 0 0;0 2 0 0;0 0 1 0 ]B=[1;0;0;0];C=[0 0 0.25 0.5];D=0;根据欧拉法、梯形法的递推公式,应用MATLAB 语言编写相应的仿真程实验要求:1.取计算步长65.0=h ,初值均为零,输入为阶跃信号,取25=u ,研究系统25秒的动态过程。
2.取计算步长01.0=h ,初值均为零,输入为阶跃信号,取25=u ,研究系统25秒的动态过程。
实验算法:欧拉法递推公式:),(1k k k k y t hf y y +=+梯形法的递推公式: )],(),([2),(011101++++++=+=k k k k k k k k k k y t f y t f h y y y t hf y y实验方法:利用所学过数值积分方法(欧拉法、梯形法),通过MATLAB 语言对给定的系统进行仿真实验步骤:1.了解并掌握基本数值积分的方法,即欧拉法、梯形法,并做比较,了解它们之间的联系与区别和优缺点,其中重点掌握梯形法。
2.通过给定的系统,利用欧拉法、梯形法编写相应MATLAB 语言,实现仿真,得出相应的仿真曲线。
3.比较仿真实验结果,并得出结论。
4.撰写实验报告。
实验程序:1.欧拉法A=[-5 -2 -1 -0.5;4 0 0 0;0 2 0 0;0 0 1 0];B=[1;0;0;0];C=[0 0 0.25 0.5];D=0;x0=[0;0;0;0];% x0为状态变量的初值,此处以列向量表示;u=25;% u为输入向量;t0=0;% t0为仿真时间的起始时刻;tf=15;% tf为仿真时间的结束时刻;h=0.65;% h=0.01 h为仿真时所取的仿真步长;m=(tf-t0)/h;[r,c]=size(A);for i=1:mfor j=1:rx(j)=x0(j)+h*(A(j,:)*x0+B(j,:)*u);endy(i)=C*x';x0=x';t(i)=i*h;endplot(t,y)grid ontitle('useEuler')2.梯形法A=[-5 -2 -1 -0.5;4 0 0 0;0 2 0 0;0 0 1 0];B=[1;0;0;0];C=[0 0 0.25 0.5];D=0;x0=[0;0;0;0];% x0为状态变量的初值,此处以列向量表示;u=25;% u为输入向量;t0=0;% t0为仿真时间的起始时刻;tf=15;% tf为仿真时间的结束时刻;h=0.65;% h=0.01 h为仿真时所取的仿真步长;m=(tf-t0)/h;[r,c]=size(A);for i=1:mfor j=1:rx(j)=x0(j)+h*(A(j,:)*x0+B(j,:)*u);endx1=x';for k=1:rxx(k)=x0(k)+0.5*h*((A(k,:)*x0+B(k,:)*u)+(A(k,:)*x1+B(k,:)*u)); endy(i)=C*xx';x0=xx';t(i)=i*h;endplot(t,y)grid ontitle('useLadder')实验报告要求:1.书写实验报告,其中包括实验题目,实验目的,实验内容,实验要求,实验思路,实验方法,实验步骤,实验程序等。
《控制系统计算机仿真》实验指导书目录实验一时变或非线性微分方程求解.......................实验二控制系统的模型及其转换.............................实验三控制系统的时域、频域和根轨迹分析...........实验四动态仿真集成环境-Simulink.........................实验五直流电机自动调速系统控制器设计实验二 控制系统的模型及其转换一、 实验目的1、掌握建立控制系统模型的函数及方法;2、掌握控制系统模型间的转换方法及相关函数;3、熟悉控制系统模型的连接方法;4、掌握典型系统模型的生成方法。
二、 实验内容:1. 控制系统模型 1.1 系统的模型为23324(2)(66)()(1)(325)s s s G s s s s s s +++=++++试建立系统的传递函数模型。
1.2 已知单输入双输出系统的零极点模型3(12)4(5)(3)()(3)(4)(5)s s s G s s s s +⎡⎤⎢⎥++⎣⎦=+++建立系统的零极点模型。
1.3 给定系统的状态空间表达式,[]2.8 1.40011.40000()()()1.80.3 1.40.61000.600()0001()x t x t u t y t x t ⎧--⎡⎤⎡⎤⎪⎢⎥⎢⎥⎪⎢⎥⎢⎥=+⎪⎢⎥⎢⎥----⎨⎢⎥⎢⎥⎪⎣⎦⎣⎦⎪⎪=⎩建立系统的状态空间模型。
2. 控制系统模型的转换2.1 将1.1的模型转换为零极点模型 2.2 将1.2的模型转换为状态空间模型 2.3 将1.3 的模型转换为零极点模型3. 控制系统模型的连接:已知两个系统[]11111101012113x x u y x u ⎧⎡⎤⎡⎤=+⎪⎢⎥⎢⎥-⎣⎦⎣⎦⎨⎪=+⎩[]2222201013114x x u y x ⎧⎡⎤⎡⎤=+⎪⎢⎥⎢⎥--⎣⎦⎣⎦⎨⎪=⎩求按串联、并联、系统2联接在反馈通道时的负反馈系统的状态方程。
测控技术和仪器专业《计算机控制系统》课程实验指导书自动控制工程系沈阳工程学院目录实验一基于MATLAB的典型环节模拟实验 (1)实验二基于MATLAB控制系统瞬态响应和稳定性分析 (5)实验三基于MATLAB控制系统频率响应分析 (8)实验四基于MATLAB分析采样周期T对控制系统的影响 (10)实验五直流电机PID控制 (11)实验六水箱液面控制实验 (13)实验一 基于MATLAB 的典型环节模拟实验一、实验目的1. 熟悉MATLAB 中模拟仿真环境和SIMULINK 软件包的使用;2. 掌握控制系统的模型表示方法以及Setp 函数的使用。
3. 根据典型环节中的各阶跃响应曲线,了解参数变化对动态特性的影响。
二、实验原理1. 采用MATLAB 中Simlink 软件包来模拟各种典型环节,并在阶跃输入信号观察其输出响应曲线。
2. 采用Setp 函数,在MATLAB 环境下绘制各种典型环节的单位阶跃响应曲线。
setp 命令格式:[y,x]=step(num,den,t)三、实验内容1. 运用Simulink 软件包画出各种典型环节的模拟电路图,并画出各环节在阶跃输入信号作用下的响应输出波形; 各环节的传递函数如下: (1) 比例环节:2)(1)(21==s G s G 和(2) 积分环节:ss G ss G 5.01)(1)(21==和(3) 比例积分环节:ss G ss G 11)(5.012)(21+=+=和(4) 惯性环节:14.02)(11)(21+=+=s s G s s G 和(5) 比例积分微分环节:s ss G sss G ++=++=11)(25.012)(21和2、采用Setp函数求取上述各典型环节的阶跃响应曲线,并绘制其对应的曲线。
num1=[1]den1=[1]step(num1,den1)hold onnum2=[2]step(num2,den1)den3=[1,0]step(num1,den3)den4=[0.5 0]step(num1,den4)[num5,den5]=parallel(num2,den1,num1,den4)step(num5,den5)[num6,den6]=parallel(num1,den1,num1,den3)step(num6,den6)den7=[1 1]step(num1,den7)den8=[0.4 1]step(num2,den8)num9=[2,0][num10,den10]=parallel(num2,den1,num1,den4,num9,den1)step(num10,den10)num11=[1 0][num12,den12]=parallel(num1,den1,num2,den1,num10,den1)step(num12,den12)四、实验思考题1.运算放大器模拟环节的传递函数是在什么情况下推导出来的?2.积分环节和惯性环节主要差别是什么?惯性环节在什么情况下可近似为积分环节?在什么条件下可近似为比例环节?3.积分环节和惯性环节的时间常数,如何从阶跃响应的曲线中测出?五、实验报告要求1.给出各个典型环节的传递函数。
《计算机控制系统》实验指导书(Matlab 版)一、实验课程教学目的与任务通过实验设计或计算机仿真设计,使学生了解和掌握数字PID控制算法的特点、了解系统PID参数整定和数字控制系统的直接设计的基本方法,了解不同的控制算法对被控对象的控制特性,加深对计算机控制系统理论的认识,掌握计算机控制系统的整定技术,对系统整体设计有一个初步的了解。
根据各个实验项目,完成实验报告(用实验报告专用纸)。
二、实验要求学生在熟悉PC机的基础上,熟悉MATLAB软件的操作,熟悉Simulink工具箱的软件编程。
通过编程完成系统的设计与仿真实验,逐步学习控制系统的设计,学习控制系统方案的评估与系统指标评估的方法。
计算机控制系统主要技术指标和要求:根据被控对象的特性,从自动控制系统的静态和动态质量指标要求出发对调节器进行系统设计,整体上要求系统必须有良好的稳定性、准确性和快速性。
一般要求系统在振荡2~3次左右进入稳定;系统静差小于3%~5%的稳定值(或系统的静态误差足够小);系统超调量小于30%~50%的稳定值;动态过渡过程时间在3~5倍的被控对象时间常数值。
系统整定的一般原则:将比例度置于交大值,使系统稳定运行。
根据要求,逐渐减小比例度,使系统的衰减比趋向于4:1或10:1。
若要改善系统的静态特性,要使系统的静差为零,加入积分环节,积分时间由大向小进行调节。
若要改善系统的动态特性,增加系统的灵敏度,克服被控对象的惯性,可以加入微分环节,微分时间由小到大进行调节。
PID控制的三个特性参数在调节时会产生相互的影响,整定时必需综合考虑。
系统的整定过程是一个反复进行的过程,需反复进行。
实验一、数字PID参数的整定一、实验目的1)、了解数字PID控制回路的结构。
2)、掌握数字PID控制算法的控制原理。
3)、掌握数字PID控制算法的整定原理。
二、实验设备1) WINDOWS操作系统和MATLAB软件。
2)PC电脑。
三、实验原理在过程控制中,广义被控对象采用一阶对象,设计相应的数字控制器,使系统达到稳定,并满足一定的动态和静态指标。
一、实验目的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控制系统在调整参数后,具有良好的稳定性。
实验5. 控制理论仿真实验1 控制系统的建模一、实验目的1.学习在命令窗口建立系统模型的方法;2.学习如何在三种模型之间相互转换;3.学习如何用仿真工具建模。
二、相关知识1.传递函数模型设连续系统的传递函数为:nn n n m m m m a s a s a s a b s b s b s b s den s num s G ++++++++==----11101110)()()( 设离散系统的传递函数为:nn n n m m m m a z a z a z a b z b z b z b z den z num z G ++++++++==----11101110)()()( 则在中,都可直接用分子/分母多项式系数构成的两个向量与构成的矢量组[]表示系统,即],,,[10m b b b=],,,[10n a a a建立控制系统的传递函数模型(对象)的函数为 (),调用格式为:()()()()返回的变量为连续系统的传递函数模型。
()返回的变量为离散系统的传递函数模型,为采样周期,当1或[]时,系统的采样周期未定义。
()将任意的控制系统对象转换成传递函数模型。
离散系统的传递函数的表达式还有一种表示为1-z 的形式(即形式),转换为形式的函数命令为(),调用格式为:()()()函数用来建立一个采样时间未指定的形式传递函数。
()函数用来建立一个采样时间为的形式传递函数。
2.零极点增益模型设连续系统的零极点增益模型传递函数为:)())(()())(()(2121n m p s p s p s z s z s z s k s G ------= 设离散系统的零极点增益模型传递函数为:)())(()())(()(1010n m p z p z p z z z z z z z k z G ------= 则在中,都可直接用向量构成的矢量组[]表示系统,即],,[10m z z z],,[10n p p p][k在中,用函数()来建立控制系统的零极点增益模型,调用格式为:()()()()返回的变量为连续系统的零极点增益模型。
实验一MATLAB基本操作实验目的1.熟悉MATLAB实验环境,练习MATLAB命令、m文件基本操作。
2.利用MATLAB编写程序进行矩阵运算、图形绘制、数据处理等。
3. 熟悉矩阵相关的基本函数和命令。
4.熟练使用帮助。
实验原理MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。
1.MA TLAB环境的熟悉双击桌面上的MA TLAB6.0图标,启动MA TLAB,这时出现一个标题为”MATLA Commamd Window”的窗体,这就是MA TLAB的主界面,在命令窗口输入demo,回车之后,会有一个新的窗口,里面有许多MA TLAB提供的演示程序。
(1)简单命令练习。
MATLAB是区分大小写的,MATLAB里的命令和函数名称都是小写。
在命令窗口中输入4+6+2,回车后会得到ans=12;(2)矩阵练习。
a: 定义一个矩阵。
在命令提示符下输入A=[1 2 3;4 5 6;7 8 0 ]回车后得到A=1 2 34 5 67 8 0b: 访问矩阵A中的第一行元素A(1,;)回车后得到ans=1 2 3c: 数组操作。
在命令提示符下输入g=[1 2 3 4;5 6 7 8];和g*2-1结果会如下所示:ans=1 3 5 79 11 13 15(3) 使用MA TLAB在线帮助如果不知道实现什么功能用什么函数,可以直接在命令提示符下用help命令。
如果你知道某个函数的名字,可以“help+函数名”寻求帮助。
2 .概念MATLAB有3种窗口,即:命令窗口(The Command Window)、m-文件编辑窗口(The Edit Window)和图形窗口(The Figure Window),而Simulink另外又有Simulink模型编辑窗口。
1.命令窗口(The Command Window)当MA TLAB启动后,出现的最大的窗口就是命令窗口。
用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。
控制系统仿真实验说明书Matlab部分目录前言 ............................................................................................................ 错误!未定义书签。
实验一MATLAB基本操作 (2)实验二MATLAB编程 (6)实验三MATLAB底层图形控制 (6)实验四控制系统古典分析 (6)实验五控制系统现代分析 (6)实验六PID控制器的设计 (12)实验七系统状态空间设计 (14)实验八磁悬浮系统仿真 (16)实验九直流双闭环调速系统仿真 (20)实验十倒立摆控制系统仿真 (21)实验一MATLAB基本操作实验目的1.熟悉MATLAB实验环境,练习MATLAB命令、m文件基本操作。
2.利用MATLAB编写程序进行矩阵运算、图形绘制、数据处理等。
3. 熟悉矩阵相关的基本函数和命令。
4.熟练使用帮助。
实验原理MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。
MATLAB 有3种窗口,即:命令窗口(The Command Window)、m-文件编辑窗口(The Edit Window)和图形窗口(The Figure Window),而Simulink另外又有Simulink模型编辑窗口。
1.命令窗口(The Command Window)当MA TLAB启动后,出现的最大的窗口就是命令窗口。
用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。
在MA TLAB中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。
在命令窗口中输入该文件名,这一连串命令就被执行了。
因为这样的文件都是以“.m”为后缀,所以称为m-文件。
2.m-文件编辑窗口(The Edit Window)我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。
目录目录 (1)1.说明 (2)2.MATLAB语言简介 (3)2.1 MATLAB的应用基础 (3)2.2 MATLAB 函数 (4)2.3 绘制响应曲线 (5)2.4 MATLAB 语言的联机帮助功能 (7)3.MATLAB语言基础实验 (8)3.1实验一MATLAB语言平台 (8)3.2 实验二 MATLAB数值运算 (11)3.3 实验三 MATLAB 绘图 (14)3.4 实验四 MATLAB句柄绘图 (18)4. 控制理论仿真实验 (21)4.1实验五控制系统的建模 (21)4.2 实验六控制系统的稳定性分析实验 (27)4.3 实验七控制系统的时域分析实验 (29)4.4 实验八控制系统的根轨迹分析 (31)4.5 实验九控制系统的频域分析 (32)4.6 实验十 S函数的编写及应用 (33)4.8 实验十二倒立摆系统控制算法的状态空间法设计 (38)控制系统设计与仿真实验1.说明《MATLAB语言与控制系统仿真实验指导书》包括四部分内容:MATLAB语言基础、MATLAB语言基础实验、控制理论仿真实验和实验作业。
要求每位学生完成规定的实验内容后,独立做完实验作业,以巩固知识,增强应用能力。
本课程上机实验学时为18学时,建议分配如下:实验内容学时数备注实验一MATLAB语言平台 3 选做实验二 MATLAB数值运算 3 选做实验三 MATLAB 绘图 3 选做实验五控制系统的建模 3 必做实验六控制系统的稳定性分析实验 3 必做实验七控制系统的时域分析实验 3 选做实验八控制系统的根轨迹分析 3 选做实验九控制系统的频域分析 3 选做实验十 S函数的编写及应用 3 必做实验十一直流调速系统仿真与设计 3 设计性实验选做实验十二倒立摆系统控制算法的状态3 综合性实验选做空间法设计上述学时仅为参考学时,学生可根据自己对MATLAB的熟悉程度作适当的调整。
2.MATLAB语言简介MATLAB 是MathWorks 公司于1982 年推出的一套高性能的数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境。
控制系统仿真实验指导书梅秀庄主编内蒙古工业大学机械学院2009年12月目录实验一 MATLAB基本操作与基本运算 (1)实验二 MATLAB 语言的程序设计 (3)实验三 MATLAB 的图形绘制 (4)实验四函数文件设计和控制系统模型的描述 (6)实验五控制系统的频域与时域分析 (7)实验六控制系统PID 校正器设计法 (8)附录 (11)实验一 MATLAB基本操作与基本运算一、实验目的及要求:1.熟悉MATLAB7.0的开发环境;2.掌握MATLAB7.0的一些常用命令;3.掌握矩阵、变量、表达式的输入方法及各种基本运算。
二、实验内容:1.熟悉MATLAB7.0的开发环境:① MATLAB的各种窗口:命令窗口、命令历史窗口、启动平台窗口、工作空间窗口、当前路径窗口。
图1 MATLAB界面窗口②路径的设置:建立自己的文件夹,加入到MATLAB路径中,并保存。
设置当前路径,以方便文件管理。
③改变命令窗口数据的显示格式>> format short>> format long然后键入特殊变量:pi (圆周率),比较显示结果。
2.掌握MATLAB 常用命令>> who %列出工作空间中变量>> whos %列出工作空间中变量,同时包括变量详细信息 >>save test %将工作空间中变量存储到test.mat 文件中 >>load test %从test.mat 文件中读取变量到工作空间中 >>clear %清除工作空间中变量>>help 函数名 %对所选函数的功能、调用格式及相关函数给出说明 >>lookfor %查找具有某种功能的函数但却不知道该函数的准确名称如: lookfor Lyapunov 可列出与Lyapunov 有关的所有函数。
3. 在MATLAB 的命令窗口计算:1) )2sin(π2) 5.4)4.05589(÷⨯+4. 设计M 文件计算: 已知求出: 1) a+b a-b a+b*5 a-b+I (单位阵)2) a*b a.*b a/b3) a^2 a.^2注意:点运算的功能,比较结果。
实验指导书本门课程是一门综合性实验学科,具有很强的实验性的特点,在学习过程中应特别注意加强实验环节,配合课堂教学的进程,加强理论与实践的结合,以达到学以致用的教学效果。
实验一 数学模型的相互转换一、实验目的1. 学习使用Matlab 进行各类数学变换运算的方法2. 学习使用Matlab 建立控制系统模型及相互转换方法二、实验器材计算机,Matlab 软件三、实验内容1. 已知某系统状态空间表达式为[]0.60.2330.20.4660.0970.23310x x u y x⎡⎤⎡⎤=+⎢⎥⎢⎥--⎣⎦⎣⎦=编程求其脉冲传递函数。
参考程序2. 求传递函数为23223()352s s G s s s s ++=+++的状态空间表达式(可控标准型),并求取状态初值,假设输入输出及其各阶导数的初值为(0)1y =,(0)2y =,(0)3y =,(0)4u =,(0)5u =解:状态空间表达式(可控标准型)为x Ax Buy Cx Du=+=+其中010001253A ⎡⎤⎢⎥=⎢⎥⎢⎥---⎣⎦,001B ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦,[]321C =,0D =状态初值求取123(0)3(0)2(0)(0)y x x x =++[]12323123123(0)3(0)2(0)(0)3(0)2(0)2(0)5(0)3(0)(0)2(0)2(0)(0)(0)y x x x x x x x x u x x x u =++=++---+=---+ 123(0)2(0)3(0)(0)(0)(0)y x x x u u =+++-代入输入输出及其各阶导数初值,得1233(0)2(0)(0)10x x x ++-= 1232(0)2(0)(0)20x x x ---+= 1232(0)3(0)(0)20x x x ++-=解方程,得状态初值1(0)1x =-,2(0)0x =,3(0)4x =。
四、实验步骤1.根据参考程序,验证控制系统模型转换方法2.观察记录输出的结果,与理论计算结果相比较3.自行选则相应的参数,熟悉上述的各指令的运用方法五、实验数据及结果分析记录输出的数据和图表并分析六、总结实验二 连续系统一阶微分方程组的数字仿真二、 实验目的1. 熟悉Matlab 的使用环境,学习Matlab 软件的使用方法和编程方法;2. 掌握以一阶微分方程组形式描述的连续系统的数字仿真方法和步骤。
控制系统仿真实验指导书梅秀庄主编内蒙古工业大学机械学院2009年12月目录实验一MATLAB基本操作与基本运算 (1)实验二MATLAB 语言的程序设计 (2)实验三MATLAB 的图形绘制 (4)实验四函数文件设计和控制系统模型的描述 (5)实验五控制系统的频域与时域分析 (6)实验六控制系统PID 校正器设计法 (6)附录 (7)实验一MATLAB基本操作与基本运算一、实验目的及要求:1.熟悉MATLAB7.0的开发环境;2.掌握MATLAB7.0的一些常用命令;3.掌握矩阵、变量、表达式的输入方法及各种基本运算。
二、实验内容:1.熟悉MATLAB7.0的开发环境:①MATLAB的各种窗口:命令窗口、命令历史窗口、启动平台窗口、工作空间窗口、当前路径窗口。
图1 MA TLAB界面窗口②路径的设置:建立自己的文件夹,加入到MA TLAB路径中,并保存。
设置当前路径,以方便文件管理。
③改变命令窗口数据的显示格式>> format short>> format long然后键入特殊变量:pi (圆周率),比较显示结果。
2.掌握MATLAB常用命令>> who %列出工作空间中变量>> whos %列出工作空间中变量,同时包括变量详细信息>>save test %将工作空间中变量存储到test.mat文件中>>load test %从test.mat文件中读取变量到工作空间中>>clear %清除工作空间中变量>>help函数名%对所选函数的功能、调用格式及相关函数给出说明>>lookfor %查找具有某种功能的函数但却不知道该函数的准确名称如:lookfor Lyapunov 可列出与Lyapunov有关的所有函数。
3. 在MATLAB的命令窗口计算:121) )2sin(π2) 5.4)4.05589(÷⨯+4. 设计M 文件计算:已知求出: 1) a+b a-b a+b*5 a-b+I (单位阵) 2) a*ba.*b a/b 3) a^2 a.^2注意:点运算的功能,比较结果。
控制系统数字仿真实验指导书最新版控制系统数字仿真实验指导书实验⼀ MATLAB 基本命令的使⽤与程序设计⼀、实验⽬的:1、了解MATLAB 的基本语句结构;2、掌握矩阵的基本运算及多项式运算;3、了解MATLAB 的编程基础,能编写⼀些简单的程序。
⼆、实验内容:1、建⽴⼀个四阶矩阵;取出该矩阵第⼆列和第三⾏的所有元素;取出第1到3⾏,3到4列的所有元素;删除该矩阵的第四⾏元素;删除该矩阵的第三个元素;删除该矩阵的第2⾏的所有元素;将该矩阵增加到五阶矩阵,并将新矩阵转置。
2、已知矩阵a =[1,2,3;4,5,6;7 8 0],b =[11,22,33;4,5,6;67,87,21],求a+b ,a-b ,a*b ,a -1*b ,a/b ,a\b 的值。
3、已知两多项式p1=4335x x ++,p2=42362x x x ++,求p1*p2,p1/p2的值,并求当x =65时p1的值。
4、⽤M ⽂件编写求1+2+…+100和的程序。
三、实验步骤:1、熟悉相关的命令调⽤格式、功能。
2、编制程序,调试程序3、记录结果,书写实验报告。
程序必须完整⽆缺的写在实验报告上。
四、实验思考1、矩阵运算中点乘与乘运算有什么区别?2、若要求随机输⼊⼀个正数n ,求1+2+…+n 的程序⼜是如何?3、在思考2中,如要求将其编成M 函数,则如何编程?如何调⽤?实验⼆图形⽤户界⾯设计与应⽤⼀、实验⽬的:1、了解MATLAB 中的⼀些基本绘图命令;2、利⽤MATLAB 下的命令制作简单的动画效果。
⼆、实验内容:1、⽤蓝⾊的星线绘制单位正弦波图形,⽤红⾊的虚线绘制单位余弦波图形,并⽤两种⽅法将两个图形在⼀幅图中显⽰。
2、已知9cos846sin 209y x x =++,请⽤紫⾊的圆圈画出该图形,并⾃⾏设定坐标轴的范围。
3、已知y =[2,43,67,12,48,98,68,41,32,58,79,10],请画出该图形。
4、编写⼀不断从左到右以正弦规律跳动⼩球的程序。
实验一 Matlab使用方法和程序设计
一、实验目的
1、掌握Matlab软件使用的基本方法;
2、熟悉Matlab的数据表示、基本运算和程序控制语句
3、熟悉Matlab绘图命令及基本绘图控制
4、熟悉Matlab程序设计的基本方法
二、实验内容
1、帮助命令
使用help命令,查找sqrt(开方)函数的使用方法;
2、矩阵运算
(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)方括号[]
用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列
3、多项式
(1)求多项式p(x) = x3 - 2x - 4的根
(2)已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,
求矩阵A的特征多项式;
求特征多项式中未知数为20时的值;
4、基本绘图命令
(1)绘制余弦曲线y=cos(t),t∈[0,2π]
(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π] 5、基本绘图控制
绘制[0,4π]区间上的x1=10sint曲线,并要求:
(1)线形为点划线、颜色为红色、数据点标记为加号;
(2)坐标轴控制:显示范围、刻度线、比例、网络线
(3)标注控制:坐标轴名称、标题、相应文本;
6、基本程序设计
(1)编写命令文件:计算1+2+⋯+n<2000时的最大n值;
(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到n次幂的和。
三、预习要求
利用所学知识,编写实验内容中2到6的相应程序,并写在预习报告上。
实验二 Matlab 中控制系统的建模与分析
一、实验目的
1、掌握Matlab 中连续、离散系统各种数学模型的建立方法;
2、掌握Matlab 中各种数学模型之间的转换方法;
3、熟悉Matlab 中控制框图的化简方法;
4、掌握如何使用Matlab 进行系统的稳定性分析;
5、掌握如何使用Matlab 进行系统的可控性、可观测性分析;
6、掌握如何使用Matlab 进行系统的时域数值分析; 二、实验内容
1、连续线性系统的数学模型建立及转换
请用合适的格式,将下面的传递函数模型输入MATLAB 环境,并转换成状态空间形式、零极点形式、画出零极点位置。
采样周期为Ts=0.5s 时,将其转换为离散系统。
332
2342
()(2)[(1)25]
s s G s s s s s ++=++++
2、离散线性系统的数学模型建立及转换
请用合适的格式,将下面的传递函数模型输入MATLAB 环境,并转换成状态空间形式、零极点形式、画出零极点位置。
3、从下面给出的典型反馈控制系统结构子模型中,求出总系统的传递函数与状态方程模型。
4、系统稳定性分析
已知系统的开环传递函数如下,试分别对其闭环系统(单位负反馈)判别稳定性。
(1) )
20)(1(2
100
)(+++=s s s s s G
(2) 3232
(),0.10.20.250.05
z H z Ts z z z -+==--+
5、系统可控性、可观测性分析 判定下面系统的可控、可观测性
⎥⎦⎤⎢⎣⎡=⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=01000010,00102102B 00
0113000210
00
20C A ,
6、线性系统时域响应数字仿真 给出一个8阶系统模型
40320
109584118124672842244945365463640320
18576022208812266436380598251418)(2345678
234567+++++++++++++++=s s s s s s s s s s s s s s s s G
并假定系统具有零初始状态。
a) 绘制出单位阶跃响应和脉冲响应曲线;
b) 从单位阶跃响应图上读取最大超调量、调节时间。
c) 若输入信号变为正弦信号()sin(35)u t t =+,绘制出系统时域响应曲线。
三、实验数据处理与分析
记录每个步骤所执行的命令及运行结果
四、预习与思考题
1、认真复习相关内容;
2、按实验指导书内容预先编程。
实验三 SIMULINK模型的建立
一、实验目的
1、掌握使用Simulink进行系统建模的方法;
2、掌握模块编辑的方法
3、掌握模块参数的设置方法;
4、掌握Simulink仿真参数的设置方法。
二、实验内容
1、建立系统模型,观察在单位阶跃信号激励下的响应。
2、建立系统模型,观察在单位阶跃信号激励下的响应。
3、直流电动机拖动系统模型框图如图所示,试用Simulink搭建系统的仿真模型,并绘制出系统在单位阶跃信号作用下的仿真结果曲线。
三、实验数据处理与分析
准确记录各个系统仿真结果。
四、预习与思考题
1、认真阅读教材相关内容;
2、按实验指导书内容做好预习。
实验四 线性系统SIMULINK 仿真
一、实验目的
1、掌握使用Simulink 进行系统建模的方法;
2、掌握模块编辑的方法
3、掌握模块参数的设置方法;
4、掌握Simulink 仿真参数的设置方法。
二、实验内容
1、系统模型框图如图所示,试用Simulink 搭建系统的仿真模型,并绘制出系统在单位阶跃信号作用下的仿真结果曲线。
2、线性系统微分方程为
(4)(3)3524503510sin(4/3)t t y y y
y y e e t π--++++=++ , 且方程的初始值为(3)(0)1,
(0)(0)1/2,(0)0.2y y y y ==== ,
试用Simulink 搭建系统的仿真模型,并绘制出仿真结果曲线。
----------------------------------------------- 提示:
x 1 = y, x 2 = y (1), x 3 = y (2), x 4 =y (3) x 1 (1) = x 2 x 2 (1) = x 3 x 3 (1) = x 4
x 4 (1) = -24x 4 - 50x 3 - 35x 2 - 10x 1 + u(t)
[]350100000100()000102450351011000(0)[10.50.50.2]()sin(4/3)
T t t X
X u t y X X u t e e t π--⎡⎤⎡⎤
⎢⎥⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥----⎣⎦⎣⎦===++
三、实验数据处理与分析
准确记录各个系统仿真结果。
四、预习与思考题
1、认真阅读教材相关内容;
2、按实验指导书内容做好预习。
实验五非线性系统SIMULINK仿真
一、实验目的
1、掌握使用Simulink进行系统建模的方法;
2、掌握模块编辑的方法
3、掌握模块参数的设置方法;
4、掌握Simulink仿真参数的设置方法。
二、实验内容
1、建立起如图所示非线性系统的Simulink框图,并观察在单位阶跃信号输入下系统的输出曲线和误差曲线。
2、建立起如图所示非线性系统的Simulink框图,设输入信号为幅值为1.1的阶跃信号,用示波器模块观察系统的输出曲线和误差曲线。
三、预习与思考题
准确记录各个系统仿真结果。
四、预习与思考题
1、认真阅读教材相关内容;
2、按实验指导书内容做好预习。