欢迎来到天天文库
浏览记录
ID:50189657
大小:615.00 KB
页数:50页
时间:2020-03-09
《线性系统理论的matlab应用.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MATLAB的应用曾水平控制系统的分析方法早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据,然后再编写一个绘图程序,将数据绘制成可供工程分析的响应曲线。MATLAB控制系统工具箱和SIMULINK辅助环境的出现,给控制系统分析带来了福音。控制系统的分析包括系统的稳定性分析、时域分析、频域分析及根轨迹分析。本课件是关于状态空间的时域分析一利用MATLAB进行模型转换1-1传递
2、函数与状态空间表达式之间的转换1).连续系统状态空间表达式MATLAB是当今世界上最优秀的科技应用软件之一,它以强大的科学计算能力和可视化功能,简单易用的编程语言以及开放式的编程环境等一些显著的优点,使得它在当今许许多多科学技术领域中成为计算机辅助分析和设计、算法研究和应用开发的基本工具和首选平台。在本书中,用它作为系统分析和设计的软件平台,更显示出独特的优势。本节利用MATLAB实现数学模型的转换。可以用ss命令来建立状态空间模型。对于连续系统,其格式为sys=ss(A,B,C,D),其中A,B,C
3、,D为描述线性连续系统的矩阵。当sys1是一个用传递函数表示的线性定常系统时,可以用命令sys=ss(sys1),将其转换成为状态空间形式。也可以用命令sys=ss(sys1,’min’)计算出系统sys的最小实现。例1控制系统微分方程为求其状态空间表达式。解可以先将其转换成传递函数输入下列命令语句执行结果为这个结果表示,该系统的状态空间表达式为注意,在输入命令中,sys=ss(G)也可以改用[A,B,C,D]=tf2ss(num,den),在本例中其作用和sys=ss(G)近似,也可以计算出矩阵A、
4、B、C、D。2).离散系统的状态空间表达式(不要求)离散系统的状态空间表达式为和连续系统状态空间表达式的输入方法相类似,如果要输入离散系统的状态空间表达式,首先需要输入矩阵G、H、C、d,然后输入语句,即可将其输入到MATLAB的workspace中,并且用变量名来表示这个离散系统,其中T为采样时间。如果Gyu表示一个以脉冲传递函数描述的离散系统,也可以用ss(Gyu)命令,将脉冲传递函数模型转换成状态空间表达式。例2假设某离散系统的脉冲传递函数为采样周期为,将其输入到MATLAB的workspace
5、中,并且绘制零、极点分布图。并且将该离散系统脉冲传递函数模型转换成状态空间表达式。解输入下列语句语句执行的结果为再输入语句,绘制出零、极点分布图如下在执行完上述语句后,Gyu已经存在于MATLAB的workspace中,这时再执行语句执行结果为结果表示,离散系统的状态空间表达式为1-2求传递函数矩阵在已知线性定常系统中的A、B、C和D矩阵之后,则该系统的传递函数矩阵可以按下式求出例3已知系统状态方程为输入以下语句解其中inv()函数是求矩阵的逆矩阵,而simple()函数是对符号运算结果进行简化。执行
6、结果如下这表示1-3.线性变换1)化为对角矩阵函数eig()可以计算出矩阵A的特征值以及将A阵转换成对角阵的线性变换矩阵。其语句格式为[Q,D]=eig(A),则D为对角阵并且对角线上各元素为矩阵A的特征值,满足,因为即:。例4线性控制系统的状态方程为试作线性变换,要求变换后系统矩阵A为对角阵。解先求出系统矩阵的特征值,Q阵可以选择为由特征值构成的范德蒙特矩阵。输入语句可以求出A阵的特征值为-1、-2和-3。因此输入以下语句执行结果如下由以上计算数据可得系统经过线性变换后的方程为也可以输入语句运行结果
7、为再计算线性变换矩阵P,并且验证结果如下可见,两种线性变换虽然不同,却都可以将A阵转换为对角阵2)化为约当矩阵在MATLAB中用函数命令jordan()来求矩阵的约当标准形。其命令格式为:[Q,J]=jordan(A)。输入参量A是系数矩阵,输出参量J是矩阵A的约当标准形矩阵,而就是线性变换矩阵,满足。例5将化为标准形矩阵。解首先输入语句运行结果为可见,不满秩,即矩阵A的特征值中有重特征值,并且A的独立特征向量的个数小于n。因此输入语句语句执行结果为计算结果表明,矩阵A的约当阵为。我们验证如下执行结果
8、为所计算出的结果表明,满足二用MATLAB求解系统方程2.1线性齐次状态方程的解使用MATLAB可以方便地求出状态方程的解。我们通过例子来说明。例已知线性系统齐次状态方程为初始条件求系统状态方程的解。解用以下MATLAB程序计算齐次状态方程的解,其中collect()函数的作用是合并同类项,而ilaplace()函数的作用是求取拉普拉斯逆变换,函数det()的作用是求方阵的行列式。程序执行结果这表示2.2线性非齐次状态方程的解通过以下例子说明。例2已知系
此文档下载收益归作者所有