第二章线性定常连续系统状态方程的解
- 格式:ppt
- 大小:785.50 KB
- 文档页数:61
连续系统的状态变量方程求解连续系统的状态变量方程求解通常采用数值方法,例如龙格-库塔法(Runge-Kutta)等。
在这个过程中,需要将连续系统的状态方程离散化,即将连续时间步长的微分方程转化为离散时间步长的离散方程。
求解离散方程可采用递推的方式,根据系统的初始条件和上一时刻的状态变量值,计算出当前时刻的状态变量值。
以下是一个求解连续系统状态变量方程的步骤:1. 确定连续系统的状态变量方程。
例如,给定线性定常系统dx/dt = Ax + Bu,其中x为状态变量,A和B为系统矩阵。
2. 离散化。
将状态变量方程转化为离散方程。
常见的离散化方法有前项差分变换、后项差分变换和Tustin变换。
具体变换方法取决于系统的特性以及所需的数值稳定性和精度。
例如,使用Tustin变换将连续系统离散化,得到离散状态方程x[k+1] = A*x[k] + B*u[k]。
3. 初始化。
给定初始条件,如x[0] 和u[0],初始化状态变量值。
4. 数值求解。
使用数值方法(如龙格-库塔法)递推计算离散方程,得到一系列状态变量值x[1], x[2], ...,以及对应的输出值y[1], y[2], ...。
5. 分析结果。
根据求解得到的状态变量值和输出值,分析系统的性能,如稳定性、收敛速度等。
在MATLAB中,可以使用ode45等函数求解连续系统的状态变量方程。
以下是一个简单的示例:```MATLAB定义系统矩阵A、B和输入信号uA = [1 0; -1 1];B = [0 1];u = [1; 0.5];定义初始条件x0 = [1; 2];设置求解参数tspan = [0, 10];options = odeset('RelTol', 1e-6, 'AbsTol', 1e-6);求解状态变量方程[x, u] = ode45(@(t, x) A*x + B*u, tspan, x0, options);绘制状态变量曲线figure;plot(t, x(:, 1), 'b', 'LineWidth', 2);hold on;plot(t, x(:, 2), 'r', 'LineWidth', 2);xlabel('Time');ylabel('State Variables');legend('x1', 'x2');```这个示例中,我们使用ode45函数求解了一个线性定常系统在给定输入信号下的状态变量演化。
第二章 控制系统状态空间表达式的解建立了控制系统状态空间表达式之后,就是讨论求解的问题,本章重点讨论状态转移矩阵的定义,性质和计算方法,从而导出状态方程的求解公式并讨论连续时间系统状态方程的离散化的问题。
§2-1线性定常齐次状态方程的解(自由解)所谓自由解是指系统输入为零时,由初始状态引起的自由运动。
状态方程为齐次矩阵微分方程:AX X= (2-1)若初始时刻0t 时的状态给定为00)(x t x =,则式(2-1)有唯一确定解。
0)(0)(x e t x t t A -=,0t t ≥(2-2)若初始时刻从0=t 开始,即0)0(x x =,则其解为:0)(x e t x At =, 0t t ≥(2-3)证:先假设式(2-1)的解)(t x 为t 的矢量幂级数形式,即:+++++=k k t b t b t b b t x 2210)((2-4)对上式求导: ++++=-1232132)(k k t kb t b t b b t x代人式(2-1)得:A x= ( +++++kk t b t b t b b 2210) (2-5)既然式(2-4)是(2-1)的解,则式(2-5)对任意时刻t 都成立,故t 的同次幂项的系数应相等,有:01Ab b =,0212!2121b A Ab b ==,0323!3131b A Ab b ==,… 01!11b A k Ab kb k k k ==-,… 在式(2-4)中,令0=t ,可得:00)0(x x b == 将以上结果代人式(2-4),故得:022)!1!211()(x t A k t A At t x k k +++++= (2-6)括号内的展开式是n n ⨯矩阵,它是一个矩阵指数函数,记为At e221112!!At k ke At A t A t K =+++++ (2-7)式(2-6)可表示为:0()At x t e x =再用)(0t t -代替)0(-t ,即在代替t 的情况下,同样证明0)(0)(x e t x t t A -=的正确性。