机器人动力学与控制学习笔记(十四)————RBF网络自适应控制

十四、基于模型整体逼近的机器人RBF网络自适应控制

14.1  机械臂模型

        设n关节机械臂方程为:

                             M\left (q \right )\ddot{q}+C\left ( q,\dot{q} \right )\dot{q}+G\left ( q \right )+F\left ( \dot{q} \right )+\tau _{d}=\tau                    (1)

        设计跟踪误差为:

                                                  e\left ( t \right )=q_{d}\left ( t \right )-q\left ( t \right )                                           (2)

        定义误差函数为:

                                                      r=\dot{e}+\Lambda e                                                    (3)

        其中\Lambda =\Lambda ^{T}> 0,则

\dot{q}=-r+\dot{q}_{d}+\Lambda e

M\dot{r}=M\left ( \ddot{q}_{d}-\ddot{q}+ \dot{e} \right )=M\left ( \ddot{q}_{d}+ \Lambda \dot{e} \right )-M\ddot{q}

                                               =M\left ( \ddot{q}_{d}+\Lambda \dot{e} \right )-Cr+C\left ( \dot{q}_{d} +\Lambda e\right )+G+F+\tau _{d}-\tau                                                              =-Cr-\tau +f+\tau _{d}                                                     (4)

        其中f\left ( x \right )=M\left ( \ddot{q}_{d}+\Lambda \dot{e} \right )+C\left (\dot{q}_{d} +\Lambda e \right )+G+F

        实际模型中,模型不确定项f为未知,因此需要对不确定项f进行逼近。   

        采用RBF网络逼近f,根据f\left ( x \right )的表达式,网络输入取

x=\left [ \begin{matrix} e^{T} & \dot{e}^{T} &q_{d}^{T} &\dot{q}_{d}^{T} & \ddot{q}_{d}^{T} \end{matrix} \right ]    

        设计控制律为

                                                      \tau =\widehat{f}+K_{v}r                                              (5)

        其中\widehat{f}\left ( x \right )为RBF网络对f\left ( x \right )的估计值。

14.2  控制器设计

        采用RBF网络逼近f,则RBF神经网络的输出为:


\widehat{f}\left ( x \right )=\widehat{W}^{T}\varphi \left ( x \right )

设计控制律为:

\tau =\widehat{f}\left ( x \right )+K_{v}r-v=\widehat{W}^{T}\varphi \left ( x \right )+K_{v}r-v

其中v为用于克服神经网络逼近误差\varepsilon的鲁棒项。

将上式控制律代入式(4)得:

M\dot{r}=-\left ( K_{v}+C \right )r+\widetilde{W}^{T}\varphi \left ( x \right )+\left ( \epsilon +\tau_{d} \right )+v=-\left ( K_{v}+C \right )r+\xi _{1}

其中\xi _{1}=\widetilde{W}^{T}\varphi \left ( x\right )+\left ( \varepsilon +\tau _{d} \right )+v

14.3  对不确定项f\left ( x \right )进行RBF网络逼近

控制律取:

\tau =\widehat{W}^{T}\varphi \left ( x\right )+K_{v}r-v

鲁棒项v设计为v=-\left ( \varepsilon _{N}+b_{d} \right )sgn\left ( r \right )

被控对象中的f\left ( x \right )项可以写为:

f\left ( x \right )=M\left ( q \right )\zeta _{1}\left ( t \right )+C\left ( q,\dot{q} \right )\zeta _{2}\left ( t \right )+G\left ( q \right )+F\left ( \dot{q} \right )

其中\zeta _{1}\left ( t \right )=\ddot{q}_{d}+\Lambda \dot{e}\zeta _{2}\left ( t \right )=\dot{q}_{d}+\Lambda e

采用RBF网络,可以对f\left ( x \right )中的各项分别进行逼近:

\widehat{M}\left ( q\right )=W_{M}^{T}\varphi _{M}\left ( q \right )

\widehat{C}\left ( q,\dot{q}\right )=W_{V}^{T}\varphi _{V}\left ( q,\dot{q} \right )

\widehat{G}\left ( q\right )=W_{G}^{T}\varphi _{G}\left ( q \right )

\widehat{F}\left ( \dot{q}\right )=W_{F}^{T}\varphi _{F}\left (\dot{ q} \right )

\widehat{f}\left ( x \right )=\begin{bmatrix} W_{M}^{T}\zeta _{1}\left ( t \right ) &W_{V}^{T}\zeta _{2}\left ( t \right ) &W_{G}^{T} & W_{F}^{T} \end{bmatrix}\begin{bmatrix} \varphi _{M}\\ \varphi _{V}\\ \varphi _{G}\\ \varphi _{F} \end{bmatrix}

其中

\varphi \left ( x \right )=\begin{bmatrix} \varphi _{M}\\ \varphi _{V}\\ \varphi _{G}\\ \varphi _{F} \end{bmatrix}

W^{T}=\begin{bmatrix} W_{M}^{T}\zeta _{1}\left ( t \right ) &W_{V}^{T}\zeta _{2}\left ( t \right ) &W_{G}^{T} & W_{F}^{T} \end{bmatrix}

14.4  Simulink仿真

Simulink中的控制框图如下:

机器人动力学与控制学习笔记(十四)————RBF网络自适应控制_第1张图片

仿真结果如下:       

机器人动力学与控制学习笔记(十四)————RBF网络自适应控制_第2张图片

        上图分别是关节1和2的期望轨迹和实际轨迹,从图中可以看出,在设计好RBF控制律、调节好参数后,关节1和关节2的轨迹拟合程度很好,可以达到预期。

你可能感兴趣的:(机器人学,算法,学习)