现代控制理论实验报告.doc
现代控制理论实验报告
实验报告( 2016-2017年度第二学期)名称:《现代控制理论基础》题目:状态空间模型分析院系:控制科学与工程学院班级: ___学号: __学生姓名: ______指导教师: _______成绩:日期: 2017年 4月 15日线控实验报告一、实验目的:l.加强对现代控制理论相关知识的理解;2.掌握用 matlab 进行系统李雅普诺夫稳定性分析、能控能观性分析;二、实验内容1第一题:已知某系统的传递函数为G (s)S23S2求解下列问题:(1)用 matlab 表示系统传递函数num=[1];den=[1 3 2];sys=tf(num,den);sys1=zpk([],[-1 -2],1);结果:sys =1-------------s^2 + 3 s + 2sys1 =1-----------(s+1) (s+2)(2)求该系统状态空间表达式:[A1,B1,C1,D1]=tf2ss(num,den);A =-3-210B =1C =0 1第二题:已知某系统的状态空间表达式为:321A,B,C 01:10求解下列问题:(1)求该系统的传递函数矩阵:(2)该系统的能观性和能空性:(3)求该系统的对角标准型:(4)求该系统能控标准型:(5)求该系统能观标准型:(6)求该系统的单位阶跃状态响应以及零输入响应:解题过程:程序: A=[-3 -2;1 0];B=[1 0]';C=[0 1];D=0;[num,den]=ss2tf(A,B,C,D); co=ctrb(A,B);t1=rank(co);ob=obsv(A,C);t2=rank(ob);[At,Bt,Ct,Dt,T]=canon(A,B,C,D, 'modal' );[Ac,Bc,Cc,Dc,Tc]=canon(A,B,C,D, 'companion' );Ao=Ac';Bo=Cc';Co=Bc';结果:(1) num =0 01den =1 32(2)能控判别矩阵为:co =1-30 1能控判别矩阵的秩为:t1 =2故系统能控。
现代理论控制实验3
《现代控制理论》实验报告专业: 班级: 姓名: 学号: 完成日期: 成绩评定:一、实验题目状态反馈控制器设计二、实验目的1. 掌握状态反馈和输出反馈的概念及性质。
2. 掌握利用状态反馈进行极点配置的方法。
学会用MATLAB 求解状态反馈矩阵。
3. 掌握状态观测器的设计方法。
学会用MATLAB 设计状态观测器。
4. 熟悉分离定理,学会设计带有状态观测器的状态反馈系统。
三、实验过程及结果1. 已知系统u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=111100020003 []x y 3333.02667.04.0=(1)求解系统的零点、极点和传递函数,并判断系统的能控性和能观测性。
(2)分别选取K=[0 3 0],K=[1 3 2],K=[0 16 /3 –1/3]为状态反馈矩阵,求解闭环系统的零点、极点和传递函数,判断闭环系统的能控性和能观测性。
它们是否发生改变?为什么?(3)任选三个输出反馈矩阵,求解闭环系统的零点、极点和传递函数,并判断系统的能控性和能观测性。
它们是否发生改变? 为什么?2. 已知系统u x x ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=100320100010 []x y 001=(1)求解系统的极点。
绘制系统的单位阶跃响应曲线,并确定系统的超调量和上升时间。
(2)求解状态反馈矩阵K ,使闭环系统的极点为3-和2321j ±-。
求解状态反馈系统的传递函数。
绘制该闭环系统的单位阶跃响应曲线,并确定系统的超调量和上升时间。
与原系统比较, 性能是否改善?(3)设计一个全维观测器,使观测器的极点为-5,-5,-5。
仿真状态观测器观测到的状态。
(4)建立带全维状态观测器的状态反馈系统的状态空间表达式。
求解带全维状态观测器的状态反馈系统的极点,是否是状态反馈系统和观测器的极点的组合?为什么?求解该闭环系统的传递函数,与状态反馈系统的传递函数是否一致?为什么?绘制该闭环系统的单位阶跃响应曲线,并确定系统的超调量和上升时间。
现代控制理论实训报告
一、前言随着科技的飞速发展,自动化、智能化已成为现代工业生产的重要特征。
为了更好地掌握现代控制理论,提高自己的实践能力,我参加了现代控制理论实训课程。
本次实训以状态空间法为基础,研究多输入-多输出、时变、非线性一类控制系统的分析与设计问题。
通过本次实训,我对现代控制理论有了更深入的了解,以下是对本次实训的总结。
二、实训目的1. 巩固现代控制理论基础知识,提高对控制系统的分析、设计和调试能力。
2. 熟悉现代控制理论在工程中的应用,培养解决实际问题的能力。
3. 提高团队合作意识,锻炼动手能力和沟通能力。
三、实训内容1. 状态空间法的基本概念:状态空间法是现代控制理论的核心内容,通过建立状态方程和输出方程,描述系统的动态特性。
2. 状态空间法的基本方法:包括状态空间方程的建立、状态转移矩阵的求解、可控性和可观测性分析、状态反馈和观测器设计等。
3. 控制系统的仿真与实现:利用MATLAB等仿真软件,对所设计的控制系统进行仿真,验证其性能。
4. 实际控制系统的分析:分析实际控制系统中的控制对象、控制器和被控量,设计合适的控制策略。
四、实训过程1. 理论学习:首先,我对现代控制理论的相关知识进行了复习,包括状态空间法、线性系统、非线性系统等。
2. 实验准备:根据实训要求,我选择了合适的实验设备和软件,包括MATLAB、控制系统实验箱等。
3. 实验操作:在实验过程中,我按照以下步骤进行操作:(1)根据实验要求,建立控制系统的状态空间方程。
(2)求解状态转移矩阵,并进行可控性和可观测性分析。
(3)设计状态反馈和观测器,优化控制系统性能。
(4)利用MATLAB进行仿真,观察控制系统动态特性。
(5)根据仿真结果,调整控制器参数,提高控制系统性能。
4. 结果分析:通过对仿真结果的分析,我对所设计的控制系统进行了评估,并总结经验教训。
五、实训成果1. 掌握了现代控制理论的基本概念和方法。
2. 提高了控制系统分析与设计能力,能够独立完成实际控制系统的设计。
现代控制理论 实验
现代控制理论实验报告姓名:***学号:********目录一、实验目的……………………………………………第3页二、实验原理……………………………………………..第3页1、全阶观测器设计…………………………………..第3页2、降阶观测器设计…………………………………….第4页三、实验步骤……………………………………………..第8页四、实验要求部分………………………………………第10页五、实验心得.. …………………………………………..第16页利用MATLAB 设计状态观测器一、实验目的:1、学习观测器设计算法;2、通过编程、上机调试,掌握基于观测器的输出反馈控制系统设计方法。
二、实验原理:1、全阶观测器设计考虑如下的线性时不变系统x Ax Buy Cx=+= (6.1)其中:nx R ∈,mu R ∈,p y R ∈分别是系统的状态向量、控制输入、测量输出,A 是n n ⨯维状态矩阵、B 是n m ⨯维输入矩阵、C 是p n ⨯维输出矩阵。
根据系统模型(6.1)和输入输出信息来人为地构造一个系统,使得其输出()x t 随着时间的推移逼近系统的真实状态()x t ,即:lim[()()]0t x t x t →∞-=通常称()x t 为()x t 的重构状态或状态估计值,而这个用以实现系统状态重构的系统为状态观测器。
设计观测器具有以下结构:图6.1 状态估计的闭环处理方法其中的矩阵L 是误差信号的加权矩阵。
观测器模型是()()x Ax Bu L y Cx A LC x Bu Ly=++-=-++ (6.2)其中:()x t 是观测器的n 维状态,L 是一个n p ⨯维的待定矩阵。
状态估计误差e x x =-的动态方程:()()()e x xAx Bu A LC x Bu Ly Ax A LC x LCx A LC e=-=+----=---=- (6.3)根据线性时不变系统的稳定性结论,若矩阵A LC -的所有特征值均在左半开复平面中,即矩阵A LC -的所有特征值都具有负实部,则误差动态系统(6.3)是渐近稳定的,从而对任意的初始误差(0)e ,随着时间t →∞,误差向量()e t 都将趋向于零。
现代理论控制实验2
与(1)中一致,这是因为线性变换并不改变系统的特征值 由 step(g3) hold on step(g2) hold on step(g1)得
Байду номын сангаас
单位阶跃输出相应得到的曲线如图所示
可见得到的曲线完全覆盖了(1)和(2)中得到的曲线, 说明得到的曲线与(1)和(2) 中相同,因为系统的传递函数并没有发生变化
和记录这些曲线。 当输入改变时, 每个状态变量曲线是否随着改变?能否根据这 些曲线判断系统以及各状态变量的能控性?不能控和能控状态变量的响应曲线 有何不同? (5)根据(2)和(4)所得曲线能否判断系统状态以及各状态变量的能观测性? 2. 已知系统
0 0 1 0 2 0 3 0 1 0 x x u 0 0 0 2 0 0 0 4 0 0
由 a=[-3 -4;-1 0];c=[-1 -1];vo=obsv(a,c);rank(vo)得 ans=1 所以系统是状态不能观的 由 a=[-3 -4;-1 0];b=[4;1];c=[-1 -1];d=0;uc=ctrb(a,b);uy=[c*uc
d];rank(uy)得 ans=1 所以系统是输出不能控的 状态能控性和输出能控性之间并没有联系 (2) 由 step(gtf) hold on impulse(gtf)可得系统的输入分别为单位阶跃函数和单
y 1 0 1 0x
(1)将给定的状态空间模型转换为传递函数模型。令初始状态为零,用 MATLAB 计算系统的单位阶跃输出响应,绘制和记录相应的曲线。 (2)按能控性分解给定的状态空间模型并记录所得的结果,然后再将其转换为 传递函数模型。它与(1)中所得的传递函数模型是否一致?为何?令初始状态 为零,用 MATLAB 计算系统的单位阶跃输出响应,并绘制和记录相应曲线。这一 曲线与(1)中的输出曲线是否一致?为何? (3)按能观测性分解给定的状态空间模型并记录分解所得的结果,然后再将其 转换为传递函数模型。它与(1)中的传递函数模型是否一致?为何?令初始状 态为零,用 MATLAB 计算系统的单位阶跃输出响应,并绘制和记录相应曲线。这 一曲线与(1)中的输出曲线是否一致? (4)按能控性能观测性分解给定的状态空间模型并记录分解所得的结果,然后 再将其转换为传递函数模型。它与(1)中的传递函数模型是否一致?为何?令 初始状态为零,用 MATLAB 计算系统的单位阶跃输出响应,并绘制和记录相应的 曲线。这一曲线与(1)中的输出曲线是否一致?为何? 三、实验结果 1(1) 系统的能控性和能观性判断结果如下 由 a=[-3 -4;-1 0];b=[4;1];uc=ctrb(a,b);rank(uc)得 ans =1 所以系统是状态不能控的
现代控制理论实验
现代控制理论实验华北电力大学实验报告||实验名称状态空间模型分析课程名称现代控制理论基础||专业班级:自动化1203 学生姓名:孟令虎学号:201209020216 成绩:指导教师:刘鑫屏老师实验日期: 2015.4.24一、实验目的l.加强对现代控制理论相关知识的理解;2.掌握用 matlab 进行系统李雅普诺夫稳定性分析、能控能观性分析; 二、实验仪器与软件 1. MATLAB7.6 环境三、实验内容1、 模型转换例 1.把传递函数模型转化为状态空间模型3248G s =81912s s s s ++++()。
解:程序如下num=[4 8]; den=[1 8 19 12];[A,B,C,D]=tf2ss(num,den); G=ss(A,B,C,D) 运行结果: A =-8 -19 -12 1 0 0 0 1 0 B = 1 0 0 C =0 4 8 D =0 结果为112233-8 -19 -1211 0 010 1 00x x x x u x x ∙∙∙⎡⎤⎢⎥⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎢⎥⎣⎦,[]1230 4 8x y x x ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦例2.把状态空间模型转化为传递函数模型A=0 1 00 0 1-6 -11 -6⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦B=001⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦C= []2 3 0 D=0。
解:程序如下:clearA=[0 1 0;0 0 1;-6 -11 -6]; B=[0;0;1]; C=[3 2 0]; D=0; iu=1;[num,den] = ss2tf(A,B,C,D,iu); sys=tf(num,den) 运行结果为:Transfer function: 2 s + 3---------------------- s^3 + 6 s^2 + 11 s + 62、 状态方程状态解和输出解例1.单位阶跃输入作用下的状态响应A=0 1 00 0 1-6 -11 -6⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦B=001⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦C=[]2 3 0 D=0。
2018-现代控制工程实验报告 (800字)word版本 (11页)
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==现代控制工程实验报告 (800字)实验一:传递函数与状态空间模型的转换实验时间:10月9日实验地点:机电楼实验人:邹金萍一.实验目的:学会使用matlab将传递函数变为状态空间表达式。
二.实验原理:为了将传递函数变为状态空间表达式,Matlab中提供了函数tf2ss(),调用格式为:[A,B,C,D]=tf2ss(num,den),运行后将给出系统的状态空间表达式。
三.主要仪器与耗材:PC机电脑一台,Matlab 7.0软件四.实验内容和步骤:例9.3 已知系统的传递函数模型为:s3?7s2?24s?24G(s)?4s?10s3?35s2?50s?24将其转换为状态空间模型。
具体步骤如下:1.开机运行PC机电脑,打开Matlab7.0软件,建立一个M文件。
2.直接利用Matlab函数tf2ss()的程序如下:%EX3223系统模型转换 %输入要转换的原模型 num=[1 7 24 24]; den=[1 10 35 50 24];[A,B,C,D]=tf2ss(num,den); G=ss(A,B,C,D)3.保存该M文件,并运行所编程序。
五.数据处理与分析运行结果为: a =x1 x2 x3 x4 x1 -10 -35 -50 -24 x2 1 0 0 0 x3 0 1 0 0 x4 0 0 1 0 b =u1 x1 1 x2 0x3 0 x4 0 c =x1 x2 x3 x4 y1 1 7 24 24 d =u1 y1 0六.实验注意事项1. 编程格式需要注意正确的输入,注意正确使用函数tf2ss()格式,保存文件注意正确格式。
2. 由于状态空间表达式的非唯一性。
Matlab命令给出的只是这些可能的表达式中的一种,但它不会改变系统输入与输出之间的动态关系。
现代控制理论基础实验报告
现代控制理论基础实验报告专业:年级:姓名:学号:提交日期:实验一系统能控性与能观性分析1、实验目的:1. 通过本实验加深对系统状态的能控性和能观性的理解;2. 验证实验结果所得系统能控能观的条件与由它们的判据求得的结果完全一致。
2、实验内容:1•线性系统能控性实验 2.线性系统能观性实验。
3、实验原理:系统的能控性是指输入信号u 对各状态变量x 的控制能力。
如果对于系统任意的初始状态,可以找到一个容许的输入量,在有限的时间内把系统所有的状态变量转移到状态空间的坐标原 点。
则称系统是能控的。
系统的能观性是指由系统的输出量确定系统所有初始状态的能力。
如果在有限的时间内,根据 系统的输出能唯一地确定系统的初始状态,则称系统能观。
(10-1)i Ly=U c =[01]U c由上式可简写为x Ax bU y cxR 3对于图10-1所示的电路系统,设i L 和u c 分别为系统的两个状态变量,如果电桥中旦R 2 &则输入电压U 能控制i L 和U c 状态变量的变化,此时,状态是能控的;状态变量i L 与U c 有耦合关系, 输出U c 中含有i L 的信息,因此对U c 的检测能确定i L 。
即系统能观的。
R 1 R 3反之,当」时, R 2 R 4变i L 的大小,故系统不能控; 即系统不能观。
Ri R 31.1当13时R 2 R 4电桥中的由于输出R 31( R 1R 2 L (R , R 2R 3 R 4R3R4R 2c 点和d 点的电位始终相等,U c 不受输入U 的控制,u 只能改U c 和状态变量i L 没有耦合关系,故 U c 的检测不能确定i L ,丄(亠亠)C R R 2R 3 R 41 ( R 1R2 L (R R 2R 3 R 4R3R4I L U C(10-2)I LR 2R 1 R 2 i L式中X U C1 (L R 1 R 21 R2 ( —— C R 1 R 2 R3 R 4)R3 R 4R 3 R 4R 1 R 2 1 (L R 1 R 21 1 -( CR 1R 2R3 R 4) R 4 1 )R 3 R 4[0 1]由系统能控能观性判据得 ran k[b Ab] =2c rank cA 故系统既能控又能观。
现代理论控制实验3
ans =3,所以系统是能控的
由Vo=obsv(a,c);rank(Vo)得
ans =3,所以系统是能观的
(2)
a.
选取K=[0 3 0] 为状态反馈矩阵,解得闭环ห้องสมุดไป่ตู้统的零点、极点和传递函数如下
由a=[-3 0 0;0 2 0;0 0 -1];b=[1 1 1]';k=[0 3 0];a1=a+b*k得
三、实验过程及结果
1. 已知系统
(1)求解系统的零点、极点和传递函数,并判断系统的能控性和能观测性。
(2)分别选取K=[0 3 0],K=[1 3 2],K=[0 16 /3–1/3]为状态反馈矩阵,求解闭环系统的零点、极点和传递函数,判断闭环系统的能控性和能观测性。它们是否发生改变?为什么?
(3)任选三个输出反馈矩阵,求解闭环系统的零点、极点和传递函数,并判断系统的能控性和能观测性。它们是否发生改变? 为什么?
[xo,x,t]=simobsv(g1,l);plot(t,x,'-k',t,xo,':r')
观测器观测到的状态如下
其中l=
(4)
三、实验结果
1(1)
系统的零点、极点和传递函数如下
由a=[-3 0 0;0 2 0;0 0 -1];b=[1 1 1]';c=[0.4 0.2667 0.3333];g1=ss(a,b,c,0);g1=tf(g1)得
g1=
由g1=zpk(g1)得
系统的零点为1,-2;系统的极点为-3,-1,2
系统的能控性和能观性判断如下
ans =3,所以系统是能控的
由Vo=obsv(a,c);rank(Vo)得
《现代控制理论》实验报告
.现代控制理论实验报告组员:院系:信息工程学院专业:指导老师:年月日实验1 系统的传递函数阵和状态空间表达式的转换[实验要求]应用MATLAB 对系统仿照[例1.2]编程,求系统的A 、B 、C 、阵;然后再仿照[例1.3]进行验证。
并写出实验报告。
[实验目的]1、学习多变量系统状态空间表达式的建立方法、了解系统状态空间表达式与传递函数相互转换的方法;2、通过编程、上机调试,掌握多变量系统状态空间表达式与传递函数相互转换方法。
[实验内容]1 设系统的模型如式(1.1)示。
p m n R y R u R x DCx y Bu Ax x ∈∈∈⎩⎨⎧+=+= (1.1)其中A 为n ×n 维系数矩阵、B 为n ×m 维输入矩阵 C 为p ×n 维输出矩阵,D 为传递阵,一般情况下为0,只有n 和m 维数相同时,D=1。
系统的传递函数阵和状态空间表达式之间的关系如式(1.2)示。
D B A SI C s den s num s G +-==-1)()()(()( (1.2)式(1.2)中,)(s num 表示传递函数阵的分子阵,其维数是p ×m ;)(s den 表示传递函数阵的按s 降幂排列的分母。
2 实验步骤① 根据所给系统的传递函数或(A 、B 、C 阵),依据系统的传递函数阵和状态空间表达式之间的关系如式(1.2),采用MATLA 的file.m 编程。
注意:ss2tf 和tf2ss 是互为逆转换的指令;② 在MATLA 界面下调试程序,并检查是否运行正确。
③ [1.1] 已知SISO 系统的状态空间表达式为(1.3),求系统的传递函数。
,2010050010000100001043214321u x x x x x x x x ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-+⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡ []⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=43210001x x x x y (1.3)程序:A=[0 1 0 0;0 0 -1 0;0 0 0 1;0 0 5 0]; B=[0;1;0;-2]; C=[1 0 0 0]; D=0;[num,den]=ss2tf(A,B,C,D,1)程序运行结果:num =0 -0.0000 1.0000 -0.0000 -3.0000 den =1.0000 0 -5.0000 0 0从程序运行结果得到:系统的传递函数为:24253)(ss s S G --= ④ [1.2] 从系统的传递函数式求状态空间表达式。
现代控制理论实验报告
现代控制理论实验指导书实验一:线性系统状态空间分析1、模型转换图1、模型转换示意图及所用命令传递函数一般形式:)()(1111110nmasasasabsbsbsbsGnnnnmmmm≤++++++++=----MATLAB表示为:G=tf(num,den),其中num,den分别是上式中分子,分母系数矩阵。
零极点形式:∏∏==--=nijmiipszsKsG11)()()(MATLAB表示为:G=zpk(Z,P,K),其中Z,P,K分别表示上式中的零点矩阵,极点矩阵和增益。
传递函数向状态空间转换:[A,B,C,D] = TF2SS(NUM,DEN);状态空间转换向传递函数:[NUM,DEN] = SS2TF(A,B,C,D,iu)---iu表示对系统的第iu个输入量求传递函数;对单输入iu为1;验证教材P438页的例9-6。
求P512的9-6题的状态空间描述。
>> A=[0 1;0 -2];>> B=[1 0;0 1];>> C=[1 0;0 1];>> D=[0 0;0 0];>> [NUM,DEN] = ss2tf(A,B,C,D,1)NUM =0 1 20 0 0DEN =1 2 0>> [NUM,DEN] = ss2tf(A,B,C,D,2)NUM =0 0 10 1 0DEN =1 2 0给出的结果是正确的,是没有约分过的形式P512 9-6>> [A,B,C,D]=tf2ss([1 6 8],[1 4 3])A =-4 -31 0B =1C =2 5D =12、状态方程求解单位阶跃输入作用下的状态响应:G=ss(A,B,C,D);[y,t,x]=step(G);plot(t,x).零输入响应[y,t,x]=initial(G,x0)其中,x0为状态初值。
验证P435的例9-4,P437的例9-5。
9-4A=[0 1;-2 -3];B=[0;0];C=[0 0];D=[0];G=ss(A,B,C,D);[y,t,x]=initial(G,[1;2]);plot(t,x)(设初始状态为[1 ;2])零输入响应00.20.40.60.81 1.2 1.4 1.6 1.82-1-0.50.511.529-5零输入响应A=[0 1;-2 -3];B=[0;1];C=[0 0];D=[0];G=ss(A,B,C,D);[y,t,x]=initial(G,[1;2]);plot(t,x)00.20.40.60.81 1.2 1.4 1.6 1.82-1-0.50.511.52零状态响应,阶跃信号激励下>> A=[0 1;-2 -3];B=[0;1];C=[0 0];D=[0];>> G=ss(A,B,C,D);[y,t,x]=step(G);plot(t,x)00.20.40.60.81 1.2 1.4 1.6 1.8200.050.10.150.20.250.30.350.4总响应>> A=[0 1;-2 -3];B=[0;1];C=[0 0];D=[0];G=ss(A,B,C,D);[y1,t1,x1]=step(G);[y2,t2,x2]=initial(G,[1;2]);>> x=x1+x2;>> plot(t1,x)00.20.40.60.81 1.2 1.4 1.6 1.82-0.500.511.523、系统可控性和可观测性可控性判断:首先求可控性矩阵:co=ctrb(A ,B)。
哈工大现代控制理论实验报告之二(DOC)
现代控制理论基础上机实验报告之二基于降维观测器的亚微米超精密车床振动控制院系航天学院专业自动化姓名李蒙班号1004102指导老师王述一哈尔滨工业大学2013年6月5日一、工程背景介绍1.超精密车床隔振系统的作用超精密机床是实现超精密加工的关键设备,而环境振动又是影响超精密加工精度的重要因素。
为了充分隔离基础振动对超精密机床的影响,目前国内外均采用空气弹簧作为隔振元件,并取得了一定的效果,但是这属于被动隔振,这类隔振系统的固有频率一般在2Hz左右。
这种被动隔振方法难以满足超精密加工对隔振系统的要求。
为了解决这个问题,有必要研究被动隔振和主动隔振控制相结合的混合控制技术。
2.隔振系统的物理描述空气弹簧上图表示了亚微米超精密车床隔振控制系统的结构原理,其中被动隔振元件为空气弹簧,主动隔振元件为采用状态反馈控制策略的电磁作动器。
上图表示一个单自由度振动系统,空气弹簧具有一般弹性支承的低通滤波特性,其主要作用是隔离较高频率的基础振动,并支承机床系统;主动隔振系统具有高通滤波特性,其主要作用是有效地隔离较低频率的基础振动。
主、被动隔振系统相结合可有效地隔离整个频率范围内的振动。
床身质量的运动方程为:p a 0ms F F ++= (1)p F ——空气弹簧所产生的被动控制力; a F ——作动器所产生的主动控制力。
假设空气弹簧内为绝热过程,则被动控制力可以表示为:s sm机床质量c空气弹簧粘性阻尼系数 0k 空气弹簧刚度系数G主动隔振系统作动器(不表示参数)ss 地基位移机床位移p 0r r r e e {1[/()]}n F cy k y p V V A y A =++-+ (2)r V ——标准压力下的空气弹簧体积;0y s s =-——相对位移(被控制量);r p ——空气弹簧的参考压力;r A ——参考压力下单一弹簧的面积;e r 4A A =——参考压力下空气弹簧的总面积; n ——绝热系数。
电磁作动器的主动控制力与电枢电流、磁场的磁通量密度及永久磁铁和电磁铁之间的间隙面积有关,这一关系具有强非线性。
现代控制理论实验报告
现代控制理论实验报告学院:机电学院学号:XXXXX姓名:XXXXX班级:XXXX实验一 系统的传递函数阵和状态空间表达式的转换一、实验目的1.熟悉线性系统的数学模型、模型转换。
2.了解MATLAB 中相应的函数 二、实验内容及步骤 1.给定系统的传递函数为1503913.403618)(23++++=s s s s s G 要求(1)将其用Matlab 表达;(2)生成状态空间模型。
2.在Matlab 中建立如下离散系统的传递函数模型y (k + 2) +5y (k +1) +6y (k ) = u (k + 2) + 2u (k +1) +u (k ) 3.在Matlab 中建立如下传递函数阵的Matlab 模型⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡+++++++++++=726611632256512)(2322s s s s s s s s s s s s G 4.给定系统的模型为)4.0)(25)(15()2(18)(++++=s s s s s G求(1)将其用Matlab 表达;(2)生成状态空间模型。
5.给定系统的状态方程系数矩阵如下:[]0,360180,001,0100011601384.40==⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=D C B A用Matlab 将其以状态空间模型表示出来。
6.输入零极点函数模型,零点z=1,-2;极点p=-1,2,-3 增益k=1;求相应的传递函数模型、状态空间模型。
三、实验结果及分析 1. 程序代码如下:num = [18 36];den = [1 40.3 391 150]; tf(num,den) ss(tf(num,den))Transfer function:18 s + 36----------------------------s^3 + 40.3 s^2 + 391 s + 150a =x1 x2 x3x1 -40.3 -24.44 -2.344x2 16 0 0x3 0 4 0b =u1x1 1x2 0x3 0c =x1 x2 x3y1 0 1.125 0.5625d =u1y1 0Continuous-time model.2.2.程序代码如下:num=[1 2 1];den=[1 5 6];tf(num,den,-1)运行结果:Transfer function:z^2 + 2 z + 1-------------z^2 + 5 z + 6Sampling time: unspecified3.程序代码如下:num={[1 2 1],[1 5];[2 3],[6]};den={[1 5 6],[1 2];[1 6 11 6],[2 7]};tf(num,den)Transfer function from input 1 to output...s^2 + 2 s + 1#1: -------------s^2 + 5 s + 62 s + 3#2: ----------------------s^3 + 6 s^2 + 11 s + 6Transfer function from input 2 to output...s + 5#1: -----s + 26#2: -------2 s + 74. 程序代码如下:sys=zpk(-2,[-15 -25 -0.4],18)ss(sys)运行结果:1)Zero/pole/gain:18 (s+2)---------------------(s+15) (s+25) (s+0.4)2)a =x1 x2 x3x1 -0.4 1.265 0x2 0 -15 1x3 0 0 -25b =u1x1 0x2 0x3 8c =x1 x2 x3y1 2.846 2.25 0d =u1y1 0Continuous-time model.5.程序代码如下:A=[-40.4 -138 -160;1 0 0;0 1 0];B=[1 0 0]';C=[0 18 360];D=0;ss(A,B,C,D)运行结果:a =x1 x2 x3x1 -40.4 -138 -160x2 1 0 0x3 0 1 0b =u1x1 1x2 0x3 0c =x1 x2 x3y1 0 18 360d =u1y1 0Continuous-time model.6. 程序代码如下:sys=zpk([1 -2],[-1 2 -3],1) tf(sys)ss((sys)运行结果:Zero/pole/gain:(s-1) (s+2)-----------------(s+1) (s+3) (s-2)Transfer function:s^2 + s - 2---------------------s^3 + 2 s^2 - 5 s - 6a =x1 x2 x3x1 -1 2.828 1.414x2 0 2 2x3 0 0 -3b =u1x1 0x2 0x3 2c =x1 x2 x3y1 -0.7071 1 0.5d =u1y1 0Continuous-time model.四、实验总结本次实验主要是熟悉利用matlab建立线性系统数学模型以及模型间的相应转换(如状态空间、传递函数模型等)、并了解matlab中相应函数的使用,如tf、ss、zp2ss、ss2tf等。
现代控制理论实验报告
现代控制理论实验报告实验三典型非线性环节实验目的1.了解和掌握典型非线性环节的原理。
2.用相平面法观察和分析典型非线性环节的输出特性。
实验原理及说明实验以运算放大器为基本元件,在输入端和反馈网络中设置相应元件(稳压管、二极管、电阻和电容)组成各种典型非线性的模拟电路。
实验内容3.1测量继电特性(1)将信号发生器(B1)的幅度控制电位器中心Y测孔,作为系统的-5V~+5V输入信号(Ui):B1单元中的电位器左边K3开关拨上(-5V),右边K4开关也拨上(+5V)。
(2)模拟电路产生的继电特性:继电特性模拟电路见图慢慢调节输入电压,观测并记录示波器上的U0~U i图形。
函数发生器产生的继电特性①函数发生器的波形选择为‘继电’,调节“设定电位器1”,使数码管右显示继电限幅值为3.7V。
U0~U i图形。
实验结果与理想继电特性相符3.2测量饱和特性将信号发生器(B1)的幅度控制电位器中心Y测孔,作为系统的-5V~+5V输入信号(Ui):(2)模拟电路产生的饱和特性:饱和特性模拟电路见图3-4-6。
慢慢调节输入电压观测并记录示波器上的U0~U i图形。
如下所示:函数发生器产生的饱和特性①函数发生器的波形选择为‘饱和’特性;调节“设定电位器1”,使数码管左显示斜率为2;调节“设定电位器2”,使数码管右显示限幅值为3.7V。
慢慢调节输入电压(即调节信号发生器B1单元的电位器,调节范围-5V~+5V),观测并记录示波器上的U0~U i图形。
波形如下:3.3测量死区特性模拟电路产生的死区特性慢慢调节输入电压,观测并记录示波器上的U0~U i图形。
如下所示:观察函数发生器产生的死区特性:观察时要用虚拟示波器中的X-Y选项慢慢调节输入电压(即调节信号发生器B1单元的电位器,调节范围-5V~+5V),观测并记录示波器上的U0~U i图形。
波形如下图所示:3.4测量间隙特性模拟电路产生的间隙特性间隙特性的模拟电路见图3-4-8。
现代控制理论试验报告
实验七 状态空间表达与求解的Matlab 实现1、 实验目的了解和熟悉Matlab 关于矩阵运算和状态空间表达及相关运算的常用命令和使用方法,以便在学习过程中能有效地应用Matlab 这个工具解决复杂系统的相关设计运算工作。
2、 实验内容(1)熟悉并使用以下常用的矩阵运算命令及运算符:det; eig; rank; inv; diag(v)和diag(v,k); poly; poly2symexp(A)和expm(A)A^n; A./B ; A.*B; A\B; A\B; A.’; A ’;(注:A ,B 均指任意矩阵)(2)熟悉系统的状态空间表达的Matlab 实现方法(SS 函数与tf 函数的应用和相互转换),并将相应的状态模型在Simulink 中表达成模拟结构图。
(3)利用实验(1)中的相关命令练习将一般的状态空间模型转换为约旦(Jordan )标准型;直接应用函数Jordan(A)求解状态空间的转换矩阵。
(4)利用符号变量和前述的相关函数计算状态方程的非齐次解,解题思路如下:若某系统的状态方程为:u B x A x +=,求系统在单位阶跃作用下的状态响应解,设初始状态为)0(x ,输入量为:)(1)(t t u = ,应用Matlab 的求解过程为:Syms t sExp1=expm(A*t)*x0;Exp2=int(expm(a*(t-s))*B*u,s,0,t);最后的总解:X=Exp1+Exp2;(5) 若只需知道已知系统各状态量随时间的响应曲线,则可以直接应用Simulink 进行仿真,也可以通过直接建立SS 模型,再利用系统响应函数(如:step,initial,lsim )获取状态响应值(曲线),后者代码可如下操作:已知系统为: u B x A x +=,u D x C y +=G=ss(A,B,C,D); [y,t,x]=lsim(G,u,t); //求任意输入响应,注:A,B,C,D,u,t 等应先赋值 G=ss(A,B,C,D); [y,t,x]=step(G,t); //阶跃响应G=ss(A,B,C,D); [y,t,x]=initial(G,x0,t); //零输入响应,x0为初始状态plot(t,x) //画出状态响应曲线实验报告(七)——状态空间表达于求解的Matlab 实现班级 自动化92 姓名 杨孝凌 学号32209209一、 已知系统的状态空间表达为:u x x ⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=023120 ,⎥⎦⎤⎢⎣⎡=11)0(x 试用Matlab 求出系统单位阶跃下的状态解,写出实现过程的相应代码。
(完整word版)现代控制理论实验报告(word文档良心出品)
现代控制理论实验报告二〇一六年五月实验一 线性定常系统模型一 实验目的1. 掌握线性定常系统的状态空间表达式。
学会在MATLAB 中建立状态空间模型的方法。
2. 掌握传递函数与状态空间表达式之间相互转换的方法。
学会用MATLAB 实现不同模型之间的相互转换。
3. 熟悉系统的连接。
学会用MATLAB 确定整个系统的状态空间表达式和传递函数。
4. 掌握状态空间表达式的相似变换。
掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。
学会用MATLAB 进行线性变换。
二 实验内容1. 已知系统的传递函数)3()1(4)(2++=s s s s G (1)建立系统的TF 或ZPK 模型。
(2)将给定传递函数用函数ss( )转换为状态空间表达式。
再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。
(3)将给定传递函数用函数jordants( )转换为对角标准型或约当标准型。
再将得到的对角标准型或约当标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。
(4)将给定传递函数用函数ctrlts( )转换为能控标准型和能观测标准型。
再将得到的能控标准型和能观测标准型用函数tf( )转换为传递函数,并与原传递函数进行比较。
2. 已知系统的传递函数u x x ⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=106510 []x y 11=(1)建立给定系统的状态空间模型。
用函数eig( ) 求出系统特征值。
用函数tf( ) 和zpk( )将这些状态空间表达式转换为传递函数,记录得到的传递函数和它的零极点。
比较系统的特征值和极点是否一致,为什么?(2)用函数canon( )将给定状态空间表达式转换为对角标准型。
用函数eig( )求出系统特征值。
比较这些特征值和(1)中的特征值是否一致,为什么? 再用函数tf( )和zpk( )将对角标准型或约当标准型转换为传递函数。
比较这些传递函数和(1)中的传递函数是否一致,为什么?(3)用函数ctrlss( )将给定的状态空间表达式转换为能控标准型和能观测标准型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
现代控制理论实验报告
学院:中北大学信息与通信工程学院学号:
姓名:
实验一 线性定常系统模型
一 实验目的
1. 掌握线性定常系统的状态空间表达式。
学会在MATLAB 中建立状态空间模型的方法。
2. 掌握传递函数与状态空间表达式之间相互转换的方法。
学会用MATLAB 实现不同模型之间的相互转换。
3. 熟悉系统的连接。
学会用MA TLAB 确定整个系统的状态空间表达式和传递函数。
4. 掌握状态空间表达式的相似变换。
掌握将状态空间表达式转换为对角标准型、约当标准型、能控标准型和能观测标准型的方法。
学会用MATLAB 进行线性变换。
二 实验内容
1. 已知系统的传递函数 (a) )
3()1(4)(2++=s s s s G (b) 3
486)(22++++=s s s s s G
(1)建立系统的TF 或ZPK 模型。
(2)将给定传递函数用函数ss( )转换为状态空间表达式。
再将得到的状态空间表达式用函数tf( )转换为传递函数,并与原传递函数进行比较。
2. 已知系统的状态空间表达式
(a) u x x
⎥⎦
⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡--=106510& []x y 11=
(b) u x x ⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=7126712203010& []111=y
(1)建立给定系统的状态空间模型。
用函数eig( ) 求出系统特征值。
用函数tf( ) 和zpk( )将这些状态空间表达式转换为传递函数,记录得到的传递函数和它的零极点。
比较系统的特征值和极点是否一致,为什么?
(2)用函数canon( )将给定状态空间表达式转换为对角标准型。
用函数eig( )求出系统特征值。
比较这些特征值和(1)中的特征值是否一致,为什么? 再用函数tf( )和zpk( )将对角标准型或约当标准型转换为传递函数。
比较这些传递函数和(1)中的传递函数是否一致,为什么?
三实验结果
1 (A)
1)
>> num=4;den=[1 5 7 3 0];G=tf (num, den)
Transfer function:
4
-------------------------
s^4 + 5 s^3 + 7 s^2 + 3 s
2)
>> %ex14
num=4;den=[1 5 7 3 0];Gtf=tf(num,den);
Gss=ss(Gtf)
Gtf1=tf(Gss)
a =
x1 x2 x3 x4
x1 -5 -0.875 -0.04688 0
x2 8 0 0 0
x3 0 8 0 0
x4 0 0 8 0
b =
u1
x1 0.0625
x2 0
x3 0
x4 0
c =
x1 x2 x3 x4
y1 0 0 0 0.125
d =
u1
y1 0
Continuous-time model.
Transfer function:
4
-------------------------
s^4 + 5 s^3 + 7 s^2 + 3 s
(B)
1)
>> z=[-2 -4 ];p=[-1 -3];k=1;G=zpk(z,p,k)
Zero/pole/gain:
(s+2) (s+4)
-----------
(s+1) (s+3)
2)
>> %ex14
z=[-2 -4];p=[-1 -3];k=1;Gzpk=zpk(z,p,k) Gss=ss(Gzpk)
Gtf1=tf(Gss)
Zero/pole/gain:
(s+2) (s+4)
-----------
(s+1) (s+3)
a =
x1 x2
x1 -1 1
x2 0 -3
b =
u1
x1 1
x2 1
c =
x1 x2
y1 1 1
d =
u1
y1 1
Continuous-time model.
Transfer function:
s^2 + 6 s + 8
-------------
s^2 + 4 s + 3
>>
2(A)
1)
>> A=[0 1;-5 -6];B=[0 1]';C=[1 1];G=ss(A,B,C,0) Geig=eig(G)
Gzpk=zpk(G)
Gtf=tf(G)
a =
x1 x2
x1 0 1
x2 -5 -6
b =
u1
x1 0
x2 1
c =
x1 x2
y1 1 1
d =
u1
y1 0
Continuous-time model.
Geig =
-1
-5
Zero/pole/gain:
(s+1)
-----------
(s+1) (s+5)
Transfer function:
s + 1
-------------
s^2 + 6 s + 5
2)
>> A=[0 1;-5 -6];B=[0 1]';C=[1 1];G=ss(A,B,C,0); G1=canon(G,'modal') Geig=eig(G1)
Gzpk=zpk(G1)
Gtf=tf(G1)
a =
x1 x2
x1 -1 0。