1 问题建模
首先对待研究的问题建立数学模型
在倒立摆模型分析这篇文章里,我们已经做了完整的受力分析。最终得到了关于系统变量的微分方程。
( M + m ) x ¨ + b x ˙ − m l ψ ¨ = u (M+m)\ddot{x}+b\dot{x}-ml\ddot{\psi}= u (M+m)x¨+bx˙−mlψ¨=u
( I + m l 2 ) ψ ¨ − m g l ψ = m l x ¨ (I+ml^2)\ddot{\psi}-mgl\psi = ml\ddot{x} (I+ml2)ψ¨−mglψ=mlx¨
2 状态空间
可以将状态空间理解为一个包含系统输入、系统输出和状态变量的集合,它们之间的关系可以用一个一阶微分方程表达出来。
状 态 空 间 ( 集 合 ) = { 系 统 输 入 系 统 输 出 状 态 变 量 } = 一 阶 微 分 方 程 状态空间(集合)=\left\{ \begin{aligned} 系统输入\\ 系统输出\\ 状态变量 \end{aligned} \right\}=一阶微分方程 状态空间(集合)=⎩⎪⎨⎪⎧系统输入系统输出状态变量⎭⎪⎬⎪⎫=一阶微分方程
通过观察我们知道,目前系统模型是以二阶微分方程的形式描述的。为了消除方程中的高阶项,可以整理得到下面的式子。
{ x ˙ = x ˙ x ¨ = m 2 l 2 g I ( m + M ) + m M l 2 ψ − b ( I + m l 2 ) I ( m + M ) + m M l 2 x ˙ + ( I + m l 2 ) I ( m + M ) + m M l 2 u ψ ˙ = ψ ˙ ψ ¨ = m l g ( m + M ) I ( m + M ) + m M l 2 ψ − m l b I ( m + M ) + m M l 2 x ˙ + m l I ( m + M ) + m M l 2 u \left\{\begin{array}{l} \dot{x}=\dot{x}\\ \ddot{x}=\frac{m^2l^2g}{I(m+M)+mMl^2} \psi-\frac{b(I+ml^2)}{I(m+M)+mMl^2} \dot{x}+\frac{(I+ml^2)}{I(m+M)+mMl^2}u\\ \dot{\psi}=\dot{\psi}\\ \ddot{\psi}=\frac{mlg(m+M)}{I(m+M)+mMl^2}\psi-\frac{mlb}{I(m+M)+mMl^2}\dot{x}+\frac{ml}{I(m+M)+mMl^2}u \end{array}\right. ⎩⎪⎪⎪⎨⎪⎪⎪⎧x˙=x˙x¨=I(m+M)+mMl2m2l2gψ−I(m+M)+mMl2b(I+ml2)x˙+I(m+M)+mMl2(I+ml

本文围绕倒立摆系统展开,先对问题进行建模,得到系统变量的微分方程。接着将系统模型转化为状态空间方程,消除高阶项。然后介绍LQR控制器设计,引入目标函数使系统收敛时J最小,通过调节Q、R矩阵元素实现最优收敛。最后提及用MATLAB的lqr()函数生成反馈矩阵。
最低0.47元/天 解锁文章
3114

被折叠的 条评论
为什么被折叠?



