反步控制
1.1 物理模型
令期望轨迹为\(sint\)曲线:
\[x_d = \sin{t}\] \[\dot{x_d} = \cos{t}\]
写出状态方程:
\[\dot{x_1} = x_2 + f_1(x_1)\] \[\dot{x_2} = u + f_2(x_1,x_2) = u + \frac{(M * g *
l)}{J} * \sin{x_1} - \frac{D}{J} * x_2\]
\[f_1(x_1) = 0\] \[f_2(x_1,x_2) = \frac{(M * g * l)}{J} * \sin{x_1} - \frac{D}{J} * x_2\] 其中第一项为重力对系统的影响,第二项为摩擦力对系统的影响。
其中M为质量,g为重力加速度,l为臂长,J为转动惯量,D为阻尼系数。 \(\dot{x_1}\)为角速度,\(\dot{x_2}\)为角加速度,\(x_1\)为角度,\(x_2\)为角速度。
1.2 知识补充
力矩\(M = |F| * |r| * \sin{\varphi}\) 力矩除以转动惯量可以描述一个物体收到的外部力矩对其角加速度的影响。 阻尼系数除以转动惯量乘以角速度描述了在转动运动中由阻尼产生的转动摩擦力的效应。这个物理量通常被称为阻尼比。
*部分解释来自chatgpt
2.1 反步控制
构造误差 \[e_1 = x_1 - x_d\] \[e_2 = x_2 - \alpha_1\] 其中\(\alpha_1\)为虚拟控制律,即中间状态的控制量。
构造Lyapunov函数 \[V_1 = \frac{1}{2}{e_1}^2\] \[V_2 = \frac{1}{2}{e_1}^2 + \frac{1}{2}{e_2}^2\]
由Lyapunov方法可知,需令\(\dot{V_1}\) ,\(\dot{V_2}\)负定使得系统渐趋稳定。
\[\dot{V_1} = {e_1}\dot{e_1} = {e_1}(\dot{x_1} - \dot{x_d}) = {e_1}(x_2 + f_1(x_1) - \cos{t})\]
故令\(\alpha_1 = \cos{t} - e_1 - f_1(x_1)\),注意此时\(\alpha_1\)为虚拟控制律,\(x_2\)为实际控制
\[\dot{V_1} = {e_1}\dot{e_1} = {e_1}(\dot{x_1} - \dot{x_d})\] \[ = {e_1}(x_2 + f_1(x_1) - \cos{t}) = {e_1}(e_2 + \alpha_1 + f_1(x_1) - \cos{t}) = {e_1}(e_2 - e_1)\]
\[\dot{e_2} = \dot{x_2} - \dot{\alpha_1} = u + f_2(x_1,x_2) - \dot{\alpha_1}\]
\[\dot{V_2} = e_1(e_2 - e_1) + {e_2}\dot{e_2} = -{e_1}^2 + {e_2}({e_1} + \dot{e_2})\]
需令\(\dot{V_2}\)负定,令\(e_1 + \dot{e_2} = -e_2\)即可,此时\(\dot{V_2} = -{e_1}^2 - {e_2}^2\)负定 代入得 \(e_1 + u + f_2(x_1,x_2) - \alpha_1 = -e_2\) 得到最终控制量\(u = -e_1 - e_2 - f_2(x_1,x_2) + \dot{\alpha_1}\)
上面得到 \[f_1(x_1) = 0\] \[f_2(x_1,x_2) = \frac{(M * g * l)}{J} * \sin{x_1} - \frac{D}{J} * x_2\]
所以\[u = -e_1 - e_2 + \dot{\alpha_1} - (\frac{(M * g * l)}{J} * \sin{x_1} - \frac{D}{J} * x_2)\]