MATLAB如何实现,连续时间系统的状态空间分析?
来源:网络收集 点击: 时间:2024-08-04教学内容
1. 研究对象和研究目的
2. 连续时间系统的状态空间模型:LCR电路案例分析
3. MATLAB实现状态空间模型的创建与求解
4. 状态空间模型的创建与求解:基于系统微分方程/传递函数
5. 补充与扩展
5.1 状态变量初值问题
5.2 逆矩阵问题


研究对象和研究目的
使用MATLAB实现连续时间系统的状态空间分析,求解连续时间系统状态空间模型,在确定性输入信号(激励信号)的作用下,对输入信号的响应 (系统的输出)
1. 连续时间线性时不变系统 (LTI system)
2. 本课程只讨论单输入单输出系统 (SISO system)
3. 多输入多输出系统 (MIMO system) 的分析方法,可由单输入单输出系统进行类比和引申
4. 视频:连续时间系统的时域分析,lsim 函数只用来求解系统的零状态响应 (基于传递函数)
5. 使用 lsim 函数求解系统的全响应和零输入响应,需要基于系统的状态空间模型

连续时间系统的状态空间模型 (State -Space Model)
为了与MATLAB里的相关函数的定义说明保持一致,约定以下符号
1. 输入信号 (激励信号): u(t)
2. 输出信号 (系统响应): y(t)
3. 系统的状态矢量: x(t)

案例分析——LCR电路
通过引入状态变量,将二阶微分方程描述的系统,改由一阶微分方程组来描述





MATLAB实现状态空间模型的创建与求解
1. 连续时间系统的状态空间模型sys_ss的创建
1.1 sys_ss= ss(A, B, C, D)
1.2 根据系统微分方程/ 传递函数求得
2. MATLAB提供了一个强大的lsim函数,用于求解系统的状态空间模型
基本调用格式:y = lsim(sys_ss, u, t, x0) = lsim(sys_ss, u, t, x0)

状态空间模型求解:LCR电路模型

状态空间模型的创建与求解:基于系统微分方程/ 传递函数
1.系数向量den 和num的定义要点,请参阅教学视频:连续系统时域分析 离散系统时域分析
2.离散系统差分方程/ 传递函数转换为状态空间模型时,MATLAB要求num和den 的长度一样
3. 根据系统的微分方程/ 传递函数,创建状态空间模型
4.直接由系数向量生成状态空间模型
5.先由系数向量,定义出系统的传递函数,再转换成状态空间模型
6.状态空间模型转换为系统微分方程/ 传递函数







补充与扩展:状态变量初值问题
连续时间系统的全响应= 零状态响应+ 零输入响应
1.1零状态响应:lsim基于传递函数 H(s) 求解:视频:连续时间系统的时域分析
1.2零输入响应:lsim基于状态空间模型求解:状态变量的初值容易求得


补充与扩展:逆矩阵问题
1.如果想要CA矩阵可逆,可以先将 H(s) 里相同的零极点消除(注意:系统会因此而降阶),然后再转换成状态空间模型
2.消除传递函数 H(s) 里相同的零极点,再转换成状态空间模型,可以保证CA矩阵可逆
3.以上步骤,MATLAB里可以直接实现
3.1sys = tf(num, den)
3.2 sys_ss= ss(sys, minimal)
3.3 状态空间模型sys_ss完全可观,完全可控
3.4 特别注意:系统可能会降阶


连续时间系统的状态方程并不唯一,方程与选择的状态变量相关
连续时间系统的状态空间分析,本质是高阶方程组的降阶处理
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_1061881.html