移动机器人中的现代控制理论之状态空间表达式

版权声明:本文为zhangrelay原创文章,有错请轻拍,转载请注明,谢谢... https://blog.csdn.net/ZhangRelay/article/details/88033016

状态空间表达式一般是现代控制理论的第一章,关于课程可以详细查看:

https://zhangrelay.blog.csdn.net/article/category/6161998

所有课程相关资料链接如下:

https://zhangrelay.blog.csdn.net/article/details/51195007


在讲述课程时,发现部分学生对于状态空间模型概念并没有非常形象的认知,机械的记忆公式,从而失去学习课程的乐趣,探索控制理论的热情。其实,现代控制理论非常简单,整本书都围绕如下这个公式展开:

$$\left\{\begin{matrix}
\dot{x}=Ax+Bu
\\ 
y=Cx+Du
\end{matrix}\right.$$

然后,一般而言,教材会有R-L-C电路或者带弹簧阻尼的机械运动模型,刷一波上述公式,嗯,没办法都是这样的。

放个图,大家感受一下:

 然后,经过一系列推导,得到如下公式:

对应公式:$$ \dot{x}=Ax+Bu $$

想要了解更多信息,参考如下链接:

http://www.mbstudent.com/control-theory-state-space-representation-RLC-circuit-example-1.html


但是,不生动不形象啊~讲的人痛苦,听的人无趣。索性换一个例子吧:

两轮差动模型的机器人仿真环境

上图中有两个机器人,相对坐标系等先不讲,此处只关注单个机器人在地面上的运动特性。

机器人左轮和右轮的运动使得机器人在环境空间状态发生变化。大部分低成本平地两轮机器人都是类似的模型,如扫地机器人,巡逻机器人等。

输入----系统----输出(机器人与环境交互)

具体公式推导,可以参考:

http://planning.cs.uiuc.edu/node659.html

更具体过程稍后补充:

第一种(全局坐标系):

$$\begin{pmatrix}
\dot{x}
\\
\dot{y} 
\\ 
\dot{\theta} 
\end{pmatrix}
=
\begin{pmatrix}
\cos \theta  & 0 \\ 
\sin \theta  & 0\\ 
0 & 1 
\end{pmatrix}
\begin{pmatrix}
\upsilon \\ 
\omega 
\end{pmatrix}$$

第二种(机器人坐标系):

$$\begin{pmatrix}
\upsilon _{x}
\\
\upsilon _{y} 
\\ 
\dot{\theta} 
\end{pmatrix}
=
\begin{pmatrix}
r/2  & r/2 \\ 
0  & 0\\ 
-r/L & r/L 
\end{pmatrix}
\begin{pmatrix}
\omega _{l}\\ 
\omega _{r} 
\end{pmatrix}$$

上述图片为引用。

这时候会发现?说好的状态空间模型怎么不对劲呢???只有:$$ \dot{x}= Bu $$


这是分割线


思考一下,机器人难道没有惯性吗?当停止电机供电,机器人是立刻停止,还是需要滑行一小段距离?

上述模型是运动学模型,是经过简化的,更真实的模型如下:

$$\left\{\begin{matrix}
\dot{x}=Ax+Bu
\\ 
y=Cx
\end{matrix}\right.$$

其中:

$$A=\begin{bmatrix}
a _{1} & 0 & 0\\ 
0 & 0 & 1\\ 
0 & 0 & a _{2}
\end{bmatrix} $$

$$B=\begin{bmatrix}
b _{1} & b _{1}\\ 
0 & 0\\ 
b _{2} & -b _{2}
\end{bmatrix}$$

$$C=\begin{bmatrix}
1 & 0 & 0\\ 
0 & 1 & 0
\end{bmatrix}$$

$$a_{1}=-2c/(Mr^{2}+2I_{\omega }), a_{2}=-2cl^{2}/(I_{\upsilon }r^{2}+2I_{\omega }l^2)$$

$$b_{1}=kr/(Mr^{2}+2I_{\omega }), b_{2}=krl/(I_{\upsilon }r^{2}+2I_{\omega }l^2)$$

各变量具体含义:

Iv 机器人重心的转动惯量 Moment of inertia around the C.G. of robot

M 机器人质量 Mass of the robot

l 左右轮与机器人重心之间的距离 Distance between left and right wheel and the c.g. of robot

Iw 车轮转动惯量 Moment of inertia of wheel

c 粘滞摩擦系数 Viscous friction factor

r 车轮半径 Radius of wheel

k 驱动增益系数 Driving gain factor


思考:为何A为系统矩阵,B为控制(输入)矩阵,C为输出(感知)矩阵?

此文目前为草稿,待后续完善。


猜你喜欢

转载自blog.csdn.net/ZhangRelay/article/details/88033016