自动化学报  2019, Vol. 45 Issue (7): 1307-1324   PDF    
基于扰动观测器的机器人自适应神经网络跟踪控制研究
于欣波1, 贺威1, 薛程谦1, 孙永坤1, 孙长银2     
1. 北京科技大学自动化学院、人工智能研究院 北京 100083;
2. 东南大学自动化学院 南京 211189
摘要: 为解决机器人动力学模型未知问题并提升系统鲁棒性,本文基于扰动观测器,考虑动力学模型未知的情况,设计了一种自适应神经网络(Neural network,NN)跟踪控制器.首先分析了机器人运动学和动力学模型,针对模型已知的情况,提出了刚体机械臂通用模型跟踪控制策略;在考虑动力学模型未知的情况下,利用径向基函数(Radial basis function,RBF)神经网络设计基于全状态反馈的自适应神经网络跟踪控制器,并通过设计扰动观测器补偿系统中的未知扰动.利用李雅普诺夫理论证明所提出的控制策略可以使闭环系统误差信号半全局一致有界(Semi-globally uniformly bounded,SGUB),并通过选择合适的增益参数可以将跟踪误差收敛到零域.仿真结果证明所提出算法的有效性并且所提出的控制器在Baxter机器人平台上得到了实验验证.
关键词: 神经网络控制     全状态反馈     扰动观测器     李雅普诺夫理论     Baxter机器人    
Disturbance Observer-based Adaptive Neural Network Tracking Control for Robots
YU Xin-Bo1, HE Wei1, XUE Cheng-Qian1, SUN Yong-Kun1, SUN Chang-Yin2     
1. Institute of Artificial Intelligence, School of Automation and Electrical Engineering, University of Science and Technology Beijing, Beijing 100083;
2. School of Automation, Southeast University, Nanjing 211189
Manuscript received : April 16, 2018, accepted: August 17, 2019.
Foundation Item: Supported by National Natural Science Foundation of China (61921004, 61873298, U1713209), Joint Fund of Advanced Research of Equipment and Ministry of Education of China (6141A02033339)
Author brief: YU Xin-Bo  Ph. D. candidate at the School of Automation and Electrical Engineering, University of Science and Technology Beijing. His research interest covers robotics, intelligent control, and humanrobot interaction;
XUE Cheng-Qian  Master student at the School of Automation and Electrical Engineering, University of Science and Technology Beijing. His research interest covers robotics and intelligent control;
SUN Yong-Kun  Master student at the School of Automation and Electrical Engineering, University of Science and Technology Beijing. His research interest covers robotics and intelligent control;
SUN Chang-Yin  Professor at the School of Automation, Southeast University. He received his bachelor degree from College of Mathematics, Sichuan University, and his master and Ph. D. degree in electrical engineering from the Southeast University in 2001 and 2004, respectively. His research interest covers intelligent control, flight control, pattern recognition, and optimal theory.
Corresponding author. HE Wei  Professor at the School of Automation and Electrical Engineering, University of Science and Technology Beijing. He received his bachelor degree from College of Automation Science and Engineering, South China University of Technology (SGUT), China in 2006, and his Ph. D. degree from Department of Electrical & Computer Engineering, National University of Singapore (NUS), Singapore in 2011. His research interest covers robotics, control of distributed parameter systems, control of flapping-wing air vehicles, vibration control and intelligent control systems. Corresponding author of this paper.
Recommended by Associate Editor WEI Qing-Lai
Abstract: For solving uncertainties of robotic dynamics and improving system robustness, an adaptive neural network (NN) tracking control is proposed considering uncertainties of robotic dynamics. Firstly, the kinematic model and dynamic model of robots are addressed. When the dynamics of the robots are known, a model-based tracking control strategy is proposed. Then, considering that the robotic dynamics are unknown, an adaptive radial basis function (RBF) neural network tracking control is proposed based on full state feedback to solve uncertainties. Disturbance observer is designed to counteract to unknown disturbance. By utilizing the Lyapunov direct method and the back-stepping method, all error signals are shown to be semi-globally uniformly bounded (SGUB). By choosing proper parameters, the tracking error can converge to a small neighborhood of zero. Simulation results and experiment results on Baxter robot are carried out to show the effectiveness of proposed method.
Key words: Neural network (NN) control     full-state feedback control     disturbance observer     Lyapunov theory     Baxter robot    

在国内传统制造业发展过程中, 机器人技术的应用将极大程度地带动传统装备制造业的转型升级[1].机器人的应用可以降低生产成本、提高生产效率, 替代人在复杂、危险工业环境中完成任务, 可以从事程序化、高强度、易疲劳的工作.除工业领域外, 机器人还在军事、航天、消防救灾、家庭、社会服务和医疗中得到广泛应用[2-5].

机器人是一类典型的非线性、强耦合、时变多输入多输出系统[6-8], 这种复杂系统给控制器设计带来一定的难度.因为实际情况存在多种不确定因素, 机器人系统难以获取精确的动力学模型[9], 通常会出现模型失配、模型完全未知等情况, 此时基于模型的非线性控制策略将失效.另外, 传统控制策略通常对非线性系统进行了线性假设, 而这种控制设计也将一定程度影响系统稳定性和控制精度.

神经网络具有一致逼近和自适应能力, 能够起到非线性补偿、参数辨识等作用[10-12], 也可以作为控制器直接控制机器人系统, 在机器人系统中得到广泛应用[13-16].神经网络的早期研究缺乏对机器人闭环系统稳定性分析, 以梯度学习算法(Error back propagation, BP)为例, 需要通过一定时间的离线训练才能将神经网络应用于机器人闭环系统中.反步法通过迭代设计与坐标变换[17], 并设置虚拟镇定变量, 结合自适应控制, 可以应用于含不确定参数的非线性系统并通过选取合适参数调整瞬态特性[18], 实现渐近稳定或一致有界[19].

本文采用径向基函数(Radial basis function, RBF)[20]作为神经网络(Neural network, NN)[21]隐含层激活函数, 通过RBF神经网络估计控制器中不确定项, 利用李雅普诺夫稳定性理论反推得到神经网络权重自适应律, 避免离线训练, 通过在线反馈系统输入输出数据, 构造合适的神经网络结构, 使机器人系统达到跟踪精度并满足稳定性条件, 实现系统误差信号的半全局一致有界.

文献[22]提出了一种基于神经网络估计未知动态模型的自适应控制策略, 并通过反向传播算法对系统静态和动态参数进行了调整.文献[23]以双臂机器人为研究平台, 利用神经网络技术估计多机械臂协调控制中的不确定非线性项, 以提高协调控制位置精度.文献[24]提出了一种基于神经网络的自适应阻抗控制策略, 通过神经网络补偿机器人中的部分不确定项, 在控制作用下使外界交互力呈现出给定的理想阻抗关系.在文献[25]中, 神经网络技术被应用于补偿一种欠驱动轮式移动机器人动力学模型, 解决一类自平衡移动小车的跟踪控制问题, 并基于扰动观测器提出了一种鲁棒跟踪控制策略.除神经网络具有一致逼近能力外, 模糊控制对任意非线性系统也具有很好的拟合效果, 文献[26]利用模糊控制设计了一种含扰动观测器的外骨骼控制系统, 通过实验验证了控制器有效性.大多数文献提出的控制方法在线计算量大, 针对不确定性较大的机器人系统控制难度较高, 并且对于考虑非参数的不确定系统控制研究较少.

扰动观测器被广泛应用于处理非线性系统中的不确定扰动[27-29], 设计扰动观测器的目的是不依靠附加的力传感器来估计未知不确定扰动[30].文献[31]利用扰动观测器处理机器人系统的摩擦力补偿问题, 并通过仿真得到验证.在文献[32]中, 扰动观测器被用来处理非匹配不确定性带来的扰动.文献[33]设计了一种含有扰动观测器的自适应神经网络控制策略, 以解决机器人系统中的时滞效应.如果在控制器设计过程中不考虑未知扰动带来的影响, 将会在一定程度上影响机械臂跟踪精度.大多数研究多结合非线性系统设计扰动观测器, 对于机器人系统利用反推方法设计扰动观测器并且将理论方法应用到实际机器人系统的研究较少.

近几年提出的神经网络控制方法结合传统自适应控制、反演控制能够解决含有线性参数的不确定非线性系统, 但神经网络难以处理含有非参数的系统不确定性.本文与其他方法不同的创新点是:本文主要结合自适应神经网络和扰动观测器同时解决系统模型未知部分和系统未知扰动, 通过RBF神经网络在线学习不确定模型并根据李雅普诺夫函数反推设计权重自适应律, 证明了闭环系统误差信号半全局一致有界.本文同时将跟踪控制算法应用于仿真与实际Baxter机器人中, 通过两台计算机互相配合, 即一台计算神经网络未知补偿量, 一台通过用户数据报协议(User datagram protocol, UDP)接收信息并产生Baxter机器人控制信号, 一定程度上提升整个系统的运算和响应能力, 并通过实验对比PD控制验证了所提出控制算法的有效性和优势.

以下几章将对本文所提出的控制算法进行详细介绍与分析.文章具体安排如下:第1节通过D-H (Denavit-Hartenberg)建模方法对Baxter机器人运动学进行分析, 通过Lagrange-Euler方法建立机器人动力学模型; 第2节考虑动力学模型已知的情况, 设计一种基于模型的通用跟踪控制器和扰动观测器并对闭环系统进行稳定性分析; 第3节考虑机器人模型未知的情况, 提出一种基于扰动观测器的自适应神经网络全状态反馈跟踪控制策略, 并通过构造李雅普诺夫函数分析机器人系统稳定性; 第4节通过数值仿真验证所提出的控制算法的有效性与通用性, 仿真考虑了不同关节连接方式的机器人, 分别利用机器人工具箱和数值仿真验证跟踪控制算法的有效性和控制精度; 第5节简述了Baxter机器人的硬件及软件结构, 将控制算法应用于Baxter机器人实验平台上并与比例微分(Proportion derivative, PD)控制进行对比以验证所提出控制算法的跟踪精度.

1 运动学与动力学分析 1.1 Baxter机器人运动学分析

以Baxter机器人底座中心为基坐标, 将连杆坐标系原点位置设置在关节连杆末端, 利用D-H建模方法, 通过D-H参数表(如表 1所示)可以实现各关节处坐标点的变换矩阵$ _{0}^{1}T_r, ~ _{1}^{2}T_r, ~ _{2}^{3}T_r, ~ _{3}^{4}T_r, ~ _{4}^{5}T_r, ~ _{5}^{6}T_r, ~ _{6}^{7}T_r $.所以基坐标与关节坐标变换矩阵$ A $为:

表 1 Baxter机器人D-H参数和连杆质量 Table 1 D-H parameter and link mass of Baxter robot
$ \begin{align} A = {_{0}^{1}}T_{r} {_{1}^{2}T_{r}}{_{2}^{3}T_{r}}{_{3}^{4}T_{r}}{_{4}^{5}T_{r}}{_{5}^{6}T_{r}}{_{6}^{7}T_{r}} \end{align} $ (1)

式中, 变换矩阵将连杆坐标系原点建立在连杆的关节连杆末端, 其中变换矩阵$ _{i-1}^{i}T_r $表示为:

$ \begin{align} _{i-1}^{i}T_r = \begin{pmatrix} c\theta_i& -c\alpha_i s\theta_i &s\alpha_is\theta_i & a_i c\theta_i\\ s\theta_i& -c\alpha_i c\theta_i &-s\alpha_ic\theta_i & a_i s\theta_i\\ 0& s\alpha_i & c\alpha_i & d_i\\ 0 & 0 & 0 & 1 \end{pmatrix} \end{align} $ (2)

其中, $ c $代表余弦运算$ \rm cos $, $ s $代表正弦运算$ \rm sin $. $ d_i $表示平移距离, $ \alpha_i $表示扭转角, $ a_i $表示长度, $ \theta_i $表示关节角度.

通过Baxter机器人制造商Rethink robotics在Github网站上提供的相关信息, 可以从中获取刚性连杆$ i $的质量如表 1所示, 其中连杆惯性矩阵、转动惯量以及相对坐标中心位置都可以从中获得.

1.2 机器人动力学分析

通过拉格朗日动力学方程, 建立机械臂$ n $关节通用动力学模型:

$ \begin{align} M_j(q)\ddot{q}+C_j(q, \dot{q})\dot{q}+G_j(q) = \tau-\tau_d \end{align} $ (3)

其中, $ q $, $ \dot{q} $, $ \ddot{q}\in {\bf R}^{n} $分别表示机械臂角度, 角速度, 角加速度向量, $ M_j(q)\in {\bf R}^{n\times n} $表示机械臂惯性矩阵, $ C_j(q, \dot{q})\dot{q}\in {\bf R}^{n} $表示机械臂科氏力矩向量, $ G_j(q)\in {\bf R}^{n} $表示机械臂重力矩向量. $ \tau\in {\bf R}^{n} $表示机械臂控制力矩向量, $ \tau_d \in {\bf R}^{n} $表示外部环境的未知扰动力矩向量.机械臂前向运动学可由下式关系表示:

$ \begin{align} x = \Phi (q), \dot{x} = J(q)\dot{q} \end{align} $ (4)

机械臂逆向运动学可由下式关系表示:

$ \begin{align} \dot{q}& = J^{+}(q)\dot{x}\\ \ddot{q}& = \dot{J}^{+}(q)\dot{x}+J^{+}(q)\ddot{x} \end{align} $ (5)

式中, $ J(q)\in {\bf R}^{m\times n} $为机械臂雅克比转换矩阵, 雅克比转换矩阵中的$ m $为机械臂操作空间向量维数, $ J^{+}(q)\in {\bf R}^{n\times m} $代表雅克比转换矩阵的广义逆矩阵, $ x $, $ \dot{x} $, $ \ddot{x}\in {\bf R}^{m} $分别代表任务空间的位移, 速度, 加速度, 通过上式可以得到$ m $维机械臂任务空间通用动力学模型如下:

$ \begin{eqnarray} M_{t}(x)\ddot{x}+C_{t}(x, \dot{x})\dot{x}+G_{t}(x) = u-f \end{eqnarray} $ (6)

式中, $ M_{t}(x)\in {\bf R}^{m\times m} $, $ C_{t}(x, \dot{x})\dot{x} \in {\bf R}^{m} $, $ G_{t}(x) \in {\bf R}^{m} $分别代表机械臂任务空间的惯性矩阵, 科氏力矩阵和重力矩阵, $ u\in {\bf R}^{m} $为机械臂控制力, $ f\in {\bf R}^{m} $为机械臂未知外界扰动力.其关节空间到任务空间相关矩阵具有如下关系:

$ \begin{align} M_{t}(x) = \, &J^{+{\rm T}}(q)M_j(q)J^{+}(q)\\ C_{t}(x, \dot{x}) = \, &J^{+{\rm T}}(q)(C_j(q, \dot{q})-\\& M_j(q)J^{+}(q)\dot{J}(q))J^{+}(q)\\ G_{t}(x) = \, &J^{+{\rm T}}(q)G_j(q)\\ u = \, &J^{+{\rm T}}(q)\tau \end{align} $ (7)

以下为本文利用的相关定义、引理与性质:

定义1[34].  半全局一致有界(Semi-globally uniformly bounded, SGUB):考虑广义非线性系统$ \dot{\varepsilon} = f(\varepsilon, t), \varepsilon\in {\bf R}^{n}, t\geq t_{0} $.对任意初始紧集$ \Omega_i $, 初始状态$ \varepsilon(t_0)\in\Omega_i $, 若存在常数$ \xi>0 $以及时间常数$ T(\xi, \varepsilon(t_0)) $, 对任意$ t\geq t_0+T(\xi, \varepsilon(t_0)) $都满足$ ||\varepsilon(t)||\leq \xi $.我们定义系统状态$ \varepsilon(t) $为半全局一致有界(SGUB).

引理1[24].  若存在连续正定可微函数$ V(x) $满足$ \kappa_1(||x||)<V(x)<\kappa_2\, (||x||) $ ($ \kappa_1 $, $ \kappa_2 $属于$ K $类函数)且具有有界初始条件, 若$ \dot{V}(x)\leq -\rho V(x)+C $, 其中, $ C $$ \rho $为正常数, 那么解$ \varepsilon(t) $为一致有界.

性质1[35].  惯性矩阵$ M_j(q) $$ M_t(q) $在式(3)与式(6)中为正定对称矩阵, 且$ (\dot{M}_j(q)-2C_{j}(q, \dot{q})) $$ (\dot{M}_t(x)-2C_{t}(x, \dot{x})) $为斜对称矩阵.

引理2[26].  若连续可微函数$ \Xi $是有界函数, 即对于任一时刻$ t\in [t_1, t_2] $, 如果$ \Xi(t) $满足$ \Xi(t)\leq\xi_1 $, 其中, $ \xi_1 $为正常数, 那么我们能够得出$ \dot{\Xi}(t) $也为有界函数.

2 含扰动观测器的模型控制器设计

以关节空间为例, 设计基于机器人动力学模型的控制器.在本节考虑机器人动力学模型已知, 定义$ x_{1} = q $, $ x_{2} = \dot{q} $, 为便于分析, 将式(3)转换为状态空间形式:

$ \begin{align} \dot{x}_1& = x_2, \\ \dot{x}_2& = M_j^{-1}(x_1)(\tau-\tau_d-C_j(x_1, x_2)x_2-G_j(x_1)) \end{align} $ (8)

定义$ x_d $为关节空间期望轨迹向量, 定义状态误差如下式:

$ \begin{align} e_1 = x_1-x_d, e_2 = x_2-\alpha_1 \end{align} $ (9)

为设计扰动观测器我们定义一个辅助变量$ e_3 $表示为:

$ \begin{align} e_3 = \tau_d+\varrho(e_2) \end{align} $ (10)

其中, $ \varrho(e_2) $代表非线性函数向量, 同时我们定义式(9)中$ \alpha_1 $为虚拟镇定信号, $ e_1 $为角度误差, $ e_2 $为虚拟速度误差, 其中, $ \alpha_1 $定义如下:

$ \begin{align} \alpha_1 = -K_1e_1+\dot{x}_d \end{align} $ (11)

通过式(9)分析得到$ \dot{e}_1 $$ \dot{e}_2 $可以表示为:

$ \begin{align} \dot{e}_1 = \, &e_2+\alpha_1-\dot{x}_d, \\ \dot{e}_2 = \, &M_j^{-1}(x_1)(\tau-\tau_d-C_j(x_1, x_2)x_2-\\ &G_j(x_1))-\dot{\alpha}_1 \end{align} $ (12)

通过式(10)分析得到$ \dot{e}_3 $表示为:

$ \begin{align} \dot{e}_3 = \, &\dot{\tau}_d+\dot{\varrho}(e_2)\\ \dot{e}_3 = \, &\dot{\tau}_d+Y(e_2)M_j^{-1}(x_1)(\tau-\tau_d-C_j(x_1, x_2)x_2-\\ &G_j(x_1))-Y(e_2)\dot{\alpha}_1 \end{align} $ (13)

其中, $ Y(e_2) $$ \varrho(e_2) $的对$ e_2 $的导数, 我们简化$ \varrho(e_2) $为线性函数向量, 所以在这种假设下$ Y(e_2) $为一个常数.通过分析我们可得$ \hat{e}_3 $并定义$ \dot{\hat{e}}_3 $为:

$ \begin{align} \hat{e}_3 = \, &\hat{\tau}_d+\varrho(e_2) \\ \dot{\hat{e}}_3 = \, &Y(e_2)M_j^{-1}(x_1)(\tau-\hat{\tau}_d-C_j(x_1, x_2)x_2-\\ &G_j(x_1))-Y(e_2)\dot{\alpha}_1 \end{align} $ (14)

通过以上分析, 我们可以得到以下变量估计误差$ \tilde{e}_3 $与扰动估计误差$ \tilde{\tau}_d $之间的关系为:

$ \begin{align} \tilde{e}_3 = e_3-\hat{e}_3 = \tau_d-\hat{\tau}_d = \tilde{\tau}_d \end{align} $ (15)

通过式(15)可以得到:

$ \begin{align} \dot{\tilde{\tau}}_d = \dot{e}_3-\dot{\hat{e}}_3 = \dot{\tau}_d-Y(e_2)M_j^{-1}(x_1)\tilde{\tau}_d \end{align} $ (16)

由以上分析设计基于模型的控制器$ \tau_{0} $为:

$ \begin{align} \tau_{0} = \, &-e_1-K_2e_2+\hat{\tau}_d+M_j(x_1)\dot{\alpha}_1+\\ &C_j(x_1, x_2)\alpha_1+G_j(x_1) \end{align} $ (17)

下面对系统稳定性进行分析, 构造如下李雅普诺夫函数$ V_1 $:

$ \begin{align} V_1 = \frac{1}{2}e_1^{{\rm T}}e_1+\frac{1}{2}e_2^{{\rm T}}M_j(x_1)e_2+\frac{1}{2}{\tilde{\tau}_d}^{\rm T}\tilde{\tau}_d \end{align} $ (18)

其中, $ V_{1} $具有以下条件$ \kappa_1(e_1^{{\rm T}}e_1+e_2^{{\rm T}}e_2+{\tilde{\tau}_d}^{\rm T}\tilde{\tau}_d)\leq V_1\leq\kappa_2\, (e_1^{{\rm T}}e_1+e_2^{{\rm T}}e_2+{\tilde{\tau}_d}^{\rm T}\tilde{\tau}_d) $, 式中, $ \kappa_1 = {\rm min}(\frac{1}{2}, \lambda_{\rm min}(M_j(x_1))) $, $ \kappa_2 = {\rm max}(\frac{1}{2}, \lambda_{\rm max}(M_j(x_1))) $.其中, $ \lambda_{\rm min}(M_j(x_1)) $$ \lambda_{\rm max}(M_j(x_1)) $分别代表矩阵$ M_j(x_1) $最小和最大特征值.由以上分析可以得出$ V_1 $满足引理1中所提到的$ V(x) $的条件.对$ V_1 $求导可以得到下式所示结果:

$ \begin{align} \dot{V}_1 = \, &-e_{1}^{{\rm T}}K_1e_{1}+e_{1}^{{\rm T}}e_{2}+e_{2}^{{\rm T}}(\tau_0-\tau_d-C_j(x_1, x_2)\alpha_1-\\ &G_j(x_1)-M_j(x_1)\dot{\alpha}_1)+\\ &{\tilde{\tau}_d}^{\rm T}(\dot{\tau}_d-Y(e_2)M_j^{-1}(x_1)\tilde{\tau}_d) \end{align} $ (19)

将模型控制器$ \tau_o $代入上式可得:

$ \begin{align} \dot{V}_1\leq&-e_{1}^{{\rm T}}K_1e_{1}-e_2^{{\rm T}}(K_2-\frac{1}{2}I)e_2-{\tilde{\tau}_d}^{\rm T}(Y(e_2)\\ &M_j^{-1}(x_1)-I)\tilde{\tau}_d+\frac{1}{2}\varsigma^{2}\leq-\rho_{1}V_{1}+C_1 \end{align} $ (20)

其中, $ \varsigma $$ ||\dot{\tau}_d|| $的最大值, $ \rho_{1} $$ C_1 $分别表示为:

$ \begin{align} \rho_1 = \, &\min(2\lambda_{\min}(K_1), \frac{2\lambda_{\min}(K_2-\frac{1}{2}I)}{\lambda_{\max}(M_j(x_1))}, 2\lambda_{\min}\\ &(Y(e_2)M_j^{-1}(x_1)-I)), \\ C_1 = \, &\frac{1}{2}\varsigma^{2} \end{align} $ (21)

式中, $ \lambda_{\rm min}, \lambda_{\rm max} $分别代表矩阵的最小和最大特征值. $ K_1 $, $ (K_2-\frac{1}{2}I) $$ (Y(e_2)M_j^{-1}(x_1)-I) $为正定对称矩阵, 由引理1可知:在模型控制器$ \tau_o $的作用下, 闭环系统误差一致有界, 可以保证系统稳定.

如果使用非线性函数作为$ \varrho(e_2) $的表达形式, 那么$ Y(e_2) $可以描述为$ \frac{{\rm \partial}\varrho(e_2)}{{\rm \partial} e_2} $, 由式(20)可以得出, 选取合适的$ \varrho(e_2) $保证$ (Y(e_2)M_j^{-1}(x_1)-I) $为正定矩阵, 即可保证闭环系统稳定性.所以选取非线性函数或由线性函数近似, 对于系统性能没有影响, 但是非线性函数需要考虑更为复杂的动态关系, 其实际函数选择较线性函数更为复杂.

在选取$ Y(e_2) $时, 由于$ M_{j}(x_1) $矩阵为对称正定矩阵, 所以其最大特征值为$ \lambda_{\rm max}(M_{j}(x_1))>0 $. $ M_{j}(x_1) $矩阵的逆矩阵$ M_{j}^{-1}(x_1) $最小特征值为$ 1/\lambda_{\rm max}(M_{j}(x_1))>0 $, 因此选择合适的$ Y(e_2) $使矩阵($ Y(e_2)M_{j}^{-1}(x_1)-I $)的最小特征值$ Y(e_2)/\lambda_{\rm max}(M_{j}(x_1))-1>0 $.当选取$ Y(e_2)>\lambda_{\rm max}(M_{j}(x_1)) $时, 就可以保证$ Y(e_2)/\lambda_{\rm max}(M_{j}(x_1))-1>0 $, 即保证矩阵($ Y(e_2)M_{j}^{-1}(x_1)-I $)为正定矩阵.以上分析同样应用于式(38)中, 通过选取$ R(e_2) $, $ \iota $和和$ M_{jk}(x_1) $共同保证$ \lambda_{\min}(R(e_2)M_{jk}^{-1}(x_1)-(1+\frac{||R(e_2)M_{jk}^{-1}(x_1)||^{2}}{\iota})I)>0 $.

3 含扰动观测器的自适应神经网络控制器设计

实际情况中, 机械臂惯性矩阵$ M_j(q) $, 机械臂科氏力矩矩阵$ C_j(q, \dot{q}) $存在不确定性, 我们用$ M_{jk}(q) $$ C_{jk}(q, \dot{q}) $表示动力学模型中的设定参考部分, 其中用$ M_{ju}(q) $$ C_{ju}(q, \dot{q}) $表示其他未知部分, 其动态关系可以描述为:

$ \begin{align} M_j(q)& = M_{jk}(q)+M_{ju}(q)\\ C_j(q, \dot{q})& = C_{jk}(q, \dot{q})+C_{ju}(q, \dot{q}) \end{align} $ (22)

利用神经网络一致逼近性能, 设计一种在线自适应神经网络控制器以补偿未知动力学模型参数.自适应神经网络控制器$ \tau_f $设计为:

$ \begin{align} \tau_f = -e_{1}-K_2e_2+\hat{\tau}_d+\hat{\varpi}^{{\rm T}}\psi(Z)+C_{jk}(x_1, x_2)\alpha_1 \end{align} $ (23)

式中, $ \psi(Z) $代表RBF神经网络径向基函数, $ \hat{\varpi} $代表神经网络权重估计, 其中, $ Z = [x_{1}^{{\rm T}} $, $ x_{2}^{{\rm T}} $, $ \dot{e}_{2}^{{\rm T}} $, $ \dot{\alpha}_1^{{\rm T}} $], $ \varpi^{*} $代表神经网络实际最优权重, 最优权重是为便于推导分析人为构造的, 其定义如下:

$ \begin{align} \varpi_{i}^{*} = {\rm arg}\operatorname*{\ min}\limits_{\varpi_{i}\in R^{l}}\{\operatorname*{sup}\limits_{Z\in\Omega_{Z}}|\nu_{i}(Z)|\} \end{align} $ (24)

式中, $ \nu_{i}(Z)\in{\bf R}^{n} $为神经网络的估计误差, 神经网络权值误差$ \tilde{\varpi} = \varpi^{*}-\hat{\varpi} $, 我们用$ \hat{\varpi}^{{\rm T}}\psi(Z) $用来估计$ \varpi^{*{\rm T}}\psi(Z) $,

$ \begin{align} \varpi^{*{\rm T}}\psi(Z) = \, &M_{j}(x_1)\dot{\alpha}_{1}+C_{ju}(x_{1}, x_{2})x_{2}+\\ &G_{j}(x_{1})+M_{ju}(x_{1})\dot{e}_2-\nu(Z) \end{align} $ (25)

设计神经网络权重自适应律$ \dot{\hat{\varpi}}_{i} $为:

$ \begin{align} \dot{\hat{\varpi}}_{i} = -\Gamma_i(\psi_i(Z)e_{2, i}+\sigma_i\hat{\varpi}_i) \end{align} $ (26)

式中, $ \sigma_i $为小的正常数, $ \Gamma_i $为正定对称矩阵.把式(25)代入式(12)可得:

$ \begin{align} \dot{e}_2 = \, &M_{jk}^{-1}(x_1)(\tau_f-\tau_d-C_{jk}(x_1, x_2)x_2- \\ &\varpi^{*{\rm T}}\psi(Z)-\nu(Z)) \end{align} $ (27)

同模型控制类似, 我们定义辅助变量$ e_4 $为:

$ \begin{align} e_4 = \chi(e_2)+\tau_d \end{align} $ (28)

$ e_4 $求导可得:

$ \begin{align} \dot{e}_4 = \, &\dot{\tau}_d+R(e_2)\dot{e}_2 = \\ &\dot{\tau}_d+R(e_2)M_{jk}^{-1}(x_1)\Big(\tau_f-\tau_d-\\ &C_{jk}(x_1, x_2)x_2 -\varpi^{*{\rm T}}\psi(Z)-\nu(Z)\Big) \end{align} $ (29)

式中, $ R(e_2) $$ \chi(e_2) $$ e_2 $求导的结果, 同理为便于分析, 令$ \chi(e_2) $为线性方程, 因此在该假设下$ R(e_2) $为常数.同时我们定义$ \dot{\hat{e}}_4 $如下:

$ \begin{align} \dot{\hat{e}}_4 = R(e_2)M_{jk}^{-1}(x_1)(\tau_f-C_{jk}(x_1, x_2)x_2-\hat{\tau}_d) \end{align} $ (30)

其中, $ \hat{e}_4 $$ e_4 $的估计值.通过式(28)可以得出:

$ \begin{align} \hat{\tau}_d = \hat{e}_4-\chi(e_2) \end{align} $ (31)

通过式(28)和(31)可以得出:

$ \begin{align} \tilde{\tau}_d = \tau_d-\hat{\tau}_d = e_4-\hat{e}_4 = \tilde{e}_4 \end{align} $ (32)

由以上分析可以得到$ \dot{\tilde{\tau}}_d $:

$ \begin{align} \dot{\tilde{\tau}}_d& = \dot{e}_4-\dot{\hat{e}}_4 = \\ &\dot{\tau}_d-R(e_2)M_{jk}^{-1}(x_1)(\tilde{\tau}_d+\varpi^{*{\rm T}}\psi(Z)+\nu(Z)) \end{align} $ (33)

下面对神经网络控制器的闭环系统进行稳定性分析, 构造如下李雅普诺夫函数$ V_2 $:

$ \begin{align} V_2 = \, &\frac{1}{2}e_1^{{\rm T}}e_1+\frac{1}{2} e_2^{{\rm T}}M_{jk}(x_1)e_2+\\ &\frac{1}{2}\sum\limits_{i = 1}^{n} \tilde{\varpi}_{i}^{{\rm T}}\Gamma_i^{-1}\tilde{\varpi}_{i}+\frac{1}{2}{\tilde{\tau}_d}^{\rm T}\tilde{\tau}_d \end{align} $ (34)

$ V_2 $求导, 并将神经网络控制器代入可得到如下式所示结果:

$ \begin{align} \dot{V}_2\leq&-e_{1}^{{\rm T}}K_1e_{1}+\tilde{\tau}_{d}^{{\rm T}}\dot{\tau}_d-{\tilde{\tau}_d}^{\rm T}R(e_2)M_{jk}^{-1}(x_1)\nu(Z)-\\ &\tilde{\tau}_{d}^{\rm T}R(e_2)M_{jk}^{-1}(x_1)\tilde{\tau}_d-\tilde{\tau}_{d}^{\rm T}R(e_2)M_{jk}^{-1}\varpi^{*{\rm T}}\psi(Z)+ \\ &e_2^{\rm T}(-K_2e_2+\tilde{\tau}_d+\hat{\varpi}^{\rm T}\psi(Z)-\varpi^{\ast {\rm T}}\psi(Z)-\\ &\nu(Z))+\sum\limits_{i = 1}^{n}\tilde{\varpi}_i^{\rm T}\Gamma_i^{-1}\dot{\hat{\varpi}}_i \end{align} $ (35)

利用如下不等式性质:

$ \begin{align} &e_{2}^{{\rm T}}\tilde{\tau}_{d} \leq\, \frac{1}{2}e_{2}^{{\rm T}}e_{2}+ \frac{1}{2}\tilde{\tau}_{d}^{{\rm T}}\tilde{\tau}_{d}\\ &-\tilde{\tau}_{d}^{{\rm T}}\dot{\tau}_{d} \leq \frac{1}{2}\tilde{\tau}_{d}^{{\rm T}}\tilde{\tau}_{d}+ \frac{1}{2}\dot{\tau}_{d}^{{\rm T}}\dot{\tau}_{d}\leq \frac{1}{2}\tilde{\tau}_{d}^{{\rm T}}\tilde{\tau}_{d}+\frac{1}{2}\varsigma^{2}\\ &-\tilde{\tau}_{d}^{{\rm T}}R(e_2)M_{jk}^{-1}(x_1) \varpi^{\ast {\rm T}}\psi(Z) \leq \frac{||R(e_2)M_{jk}^{-1}(x_1)||^{2}} {2\iota}\\ &||\tilde{\tau}_{d}||^{2}+\frac{\iota}{2}||\varpi^{\ast}||^{2}|| \psi(Z)||^{2}\\ &-\tilde{\tau}_{d}^{{\rm T}}R(e_2)M_{jk}^{-1}(x_1)\nu(Z) \leq\\ &\qquad\qquad \frac{||R(e_2)M_{jk}^{-1}(x_1)||^{2}}{2\iota}|| \tilde{\tau}_{d}||^{2}+\frac{\iota}{2}||\nu(Z)||^{2}\\ &-\sum\limits_{i = 1}^{n}\tilde{\varpi}_i^{\rm T}\sigma_i\hat{\varpi}_i \leq\sum\limits_{i = 1}^{n}\frac{\sigma_i}{2}(||\varpi_{i}^{*}||^{2}- ||\tilde{\varpi}_i||^{2}) \end{align} $ (36)

可以得到:

$ \begin{align} \dot{V}_2 \leq&-e_{1}^{{\rm T}}K_1e_{1}-e_2^{{\rm T}}(K_2-I)e_2+\\ & e_2^{\rm T}(\hat{\varpi}^{\rm T}\psi(Z)-\varpi^{\ast {\rm T}} \psi(Z))+\frac12\|\bar{\nu}\|^2-\\ & \sum\limits_{i = 1}^{n}\tilde{\varpi}_i^{\rm T} (\psi_i(Z)e_{2, i}+\sigma_i\hat{\varpi}_i)+ \tilde{\tau}_{d}^{{\rm T}}\dot{\tau}_d- \\ \qquad&{\tilde{\tau}_d}^{\rm T}R(e_2)M_{jk}^{-1}(x_1)\nu(Z)- \\ & \tilde{\tau}_{d}^{\rm T}R(e_2)M_{jk}^{-1}(x_1)\tilde{\tau}_d- \\ & \tilde{\tau}_{d}^{\rm T}R(e_2)M_{jk}^{-1}\varpi^{*{\rm T}} \psi(Z)+\frac{1}{2}\varsigma^{2} \leq\\ &-e_{1}^{{\rm T}}K_1e_{1}-e_2^{{\rm T}}(K_2-I)e_2+ \frac{1}{2}\varsigma^{2}-\\ & \sum\limits_{i = 1}^{n}\frac{\sigma_i}{2}\|\tilde{\varpi}_i\|^2+ \sum\limits_{i = 1}^{n}\frac{\sigma_i+\iota r^2}{2}\|\varpi^{\ast}_i\|^2 - \\ & {\tilde{\tau}_d}^{\rm T}\Bigg(R(e_2)M_{jk}^{-1}(x_1)-\\ & \left(1+\frac{||R(e_2)M_{jk}^{-1}(x_1)||^{2}}{\iota}\right)I\Bigg)\\ & \tilde{\tau}_d+\left(\frac12+\frac{\iota}{2}\right) \|\bar{\nu}\|^2\leq - \rho_2V_2+C_2 \end{align} $ (37)

式中, $ \rho_2 $$ C_2 $分别为:

$ \begin{align} \rho_2 = \, &\min\Bigg(2\lambda_{\min}(K_1), \frac{2\lambda_{\min}(K_2-I)}{\lambda_{\max}(M_{jk}(x_1))}, \\ & 2\lambda_{\min}\Bigg(R(e_2)M_{jk}^{-1}(x_1)- \\ &\Bigg(1+\frac{||R(e_2)M_{jk}^{-1}(x_1)||^{2}}{\iota}\Bigg)I\Bigg), \\ & \min\left(\frac{\sigma_i}{\lambda_{\max} (\Gamma_i^{-1})}\right)\Bigg)\\ C_2 = \, &\sum\limits_{i = 1}^{n}\frac{\sigma_i+\iota r^2}{2}\|\varpi^{\ast}_i\|^2+\left(\frac12+\frac{\iota}{2}\right)\| \bar{\nu}\|^2+\frac{1}{2}\varsigma^{2} \end{align} $ (38)

为使$ \rho_2>0 $, 控制增益需满足以下条件:

$ \begin{align} &\lambda_{\rm min}(K_{1})>0, \lambda_{\rm min}(K_{2}-I)>0, \\ &\lambda_{\min}\Bigg(R(e_2)M_{jk}^{-1}(x_1)-\\ &\qquad\left(1+\frac{||R(e_2)M_{jk}^{-1}(x_1)||^{2}}{\iota}\right)I\Bigg)>0, \\ &\lambda_{\max}(\Gamma_i^{-1})>0 \end{align} $ (39)

通过以上分析, 我们可以证明误差$ e_1 $, $ e_2 $, $ \tilde{\tau}_d $$ \tilde{\varpi}_{i} $为半全局一致有界.

定理1.  对于式(3)描述的闭环系统, 在控制(23)的作用下, 所有状态量均可测得, 对于初始紧集$ \Omega_0 $, 其中, $ (x_1(0), x_2\, (0), \hat{\tau}_d(0), \hat{\varpi}_{i}(0))\in\Omega_0 $, 则闭环系统误差信号$ e_1 $, $ e_2 $, $ \tilde{\tau}_d $$ \tilde{\varpi} $将始终在紧集$ \Omega_{e_1}, \Omega_{e_2}, \Omega_{\tilde{\tau}_d} $$ \Omega_{\tilde{\varpi}} $内:

$ \begin{align} \Omega_{e_{1}} & = \{e_{1}\in {\bf R}^{n}|~||e_{1}||\leq\sqrt{D}\}\\ \Omega_{e_{2}} & = \{e_{2}\in {\bf R}^{n}|~||e_{2}||\leq \sqrt{\frac{D}{\lambda_{\rm min}(M_{jk})}}\}\\ \Omega_{\tilde{\tau}_d} & = \{\tilde{\tau}_d\in {\bf R}^{n}|~||\tilde{\tau}_d||\leq\sqrt{D}\}\\ \Omega_{\tilde{\varpi}}& = \{\tilde{\varpi}\in {\bf R}^{ l \times n}|~||\tilde{\varpi}||\leq\sqrt{\frac{D}{\lambda_{\rm min}(\Gamma^{-1})}}\} \end{align} $ (40)

其中, $ D = 2\, (V_2\, (0)+C_2/\rho_2) $, $ l $为神经网络节点数, $ \rho_2 $$ C_2 $为正常数.

证明.  在式(37)左右两端乘以$ {\rm e}^{\rho_2 t} $, 可以得到:

$ \begin{align} &{\dot{V}_2}{\rm e}^{{\rho_2}t} \leq -{\rho_2}{V_2}{\rm e}^{{\rho_2}t}+ {C_2}{\rm e}^{{\rho_2}t}\\ &\frac{{\rm d}}{{\rm dt}}(V_2{\rm e}^{\rho_2 t}) \leq C_2{\rm e}^{\rho_2 t}\\ &V_2{\rm e}^{\rho_2 t} \leq C_2{\rm e}^{\rho_2 t}+ \left(V_{2}(0)-\frac{C_2}{\rho_2}\right)\\ &V_2 \leq \left(V_2\, (0)-\frac{C_2}{\rho_2}\right) {\rm e}^{-\rho_2 t}+\frac{C_2}{\rho_2}\leq \\ &\qquad V_{2}(0)+\frac{C_2}{\rho_2} \end{align} $ (1)

由以上分析可以得出:

$ \begin{align} \frac{1}{2}||e_{1}||^{2}\leq V_2\, (0)+\frac{C_2}{\rho_2} \end{align} $ (41)

通过上式可以发现, $ e_1 $收敛于紧集$ \Omega_{e_{1}} $, 同理可以证明$ e_2 $$ \tilde{\varpi} $分别收敛于紧集$ \Omega_{e_{2}} $$ \Omega_{\tilde{\varpi}} $内, $ \tilde{\tau}_d $收敛于紧集$ \Omega_{\tilde{\tau}_d} $内.

4 数值仿真 4.1 3旋转关节机器人仿真

本节通过Matlab机器人工具箱(Robotic toolbox)程序对具有3旋转关节的机器人进行数值仿真.如图 1所示, 刚性连杆1质量与长度: $ m_{t1} = 0.5\rm\, kg $, $ l_{t1} = 0.114\rm\, m $; 刚性连杆2质量与长度: $ m_{t2} = 0.5\rm\, kg $, $ l_{t2} = 0.144\rm\, m $; 刚性连杆3质量与长度: $ m_{t3} = 1\rm\, kg $, $ l_{t3} = 0.241\rm\, m $.初始关节角矩阵设置为[$ 0.0714 \rm\, rad $; $ 1.6718 \rm\, rad $; $ -1.7432 \rm\, rad $].设置任务空间期望轨迹为:

图 1 3旋转关节自由度机器人Robotic toolbox中的模型 Fig. 1 Model of 3 revolute joint robot in robotic toolbox
$ \begin{align} x_d& = (0.35-0.02{\rm cos}(t)) \rm\, m\\ y_d& = (0.15+0.02{\rm sin}(t)) \rm\, m\\ z_d& = 0 \rm\, m \end{align} $ (42)

其中, RBF参数节点数选择为$ 2^8 = 256 $, 镇定参数为0.02, 正定增益矩阵为$ \Gamma_i = 10I_{256\times 256} $.神经网络中心选择为$ [-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1] $, 其中控制增益$ K_1 = {\rm diag}\{40, 40, 40\} $, $ K_2 = {\rm diag}\{30, 30, 30\} $, 扰动设置为$ [0.02{\rm sin}(t)+0.06, 0.01{\rm cos}(t)+0.02, 0]^{{\rm T}} $, 扰动观测器$ \chi(e_2) $设置为$ [25e_{21}, 25e_{22}, 25e_{23}]^{{\rm T}} $. 图 23分别为关节空间、任务空间中3关节神经网络控制与PD控制跟踪对比图. 图 4为任务空间中神经网络与PD控制对比效果图, 图 5为神经网络控制器控制输入.由上图可知, 所提出的控制算法可以保证跟踪误差收敛到较小的零域内, 较PD控制而言, 所提出的神经网络控制具有更好的跟踪控制效果.

图 2 NN与PD控制角度跟踪 Fig. 2 Joint tracking of NN and PD control
图 3 NN与PD控制位置跟踪 Fig. 3 Position tracking of NN and PD control
图 4 NN与PD轨迹跟踪效果 Fig. 4 NN and PD trajectory tracking performance
图 5 NN控制输入 Fig. 5 NN control input
4.2 2旋转关节1伸长关节机器人仿真

本节通过Matlab数值仿真对具有2旋转关节1伸长关节的机器人系统进行仿真.其中刚性连杆1质量与长度: $ m_{t1} = 2.0\rm\, kg $, $ l_{t1} = 0.3\rm\, m $; 刚性连杆2质量与长度: $ m_{t2} = 2.0\rm\, kg $, $ l_{t2} = 0.4\rm\, m $; 刚性连杆3质量与长度: $ m_{t3} = 1.0\rm\, kg $, $ l_{t3} = 0.25\rm\, m $.初始状态矩阵为[$ 0.5\rm\, rad $; $ 0.9\rm\, rad $; $ 0.4\rm\, m $].设置期望跟踪轨迹为:

$ \begin{align} x_d& = 0.85-0.3{\rm cos}(t) \rm\, rad\\ y_d& = 0.85+0.3{\rm cos}(t) \rm\, rad\\ z_d& = 0.3\rm\, m \end{align} $ (43)

其中, RBF参数节点数为$ 2^{12} $, 镇定参数为0.02, 正定增益矩阵为$ \Gamma_i = 10I_{2^{12}\times 2^{12}} $.神经网络中心选择为$ [-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1]\times[-1, 1] $, 其中控制增益$ K_1 = {\rm diag}\{6, 6, 6\} $, $ K_2 = {\rm diag}\{12, 12, 12\} $. 图 6, 8, 10分别为3关节含扰动观测器的神经网络控制与不含扰动观测器角度跟踪控制对比图, 图 7, 9, 11分别为3关节含扰动观测器的神经网络控制与不含扰动观测器速度跟踪控制对比图.真实扰动设置为$ [{\rm sin}(t)+1, 2{\rm cos}(t)+0.5, 2{\rm sin}(t)+1]^{{\rm T}} $.扰动观测器$ \chi(e_2) $设置为$ [25e_{21}, 25e_{22}, 25e_{23}]^{{\rm T}} $.

图 6 关节1含扰动观测器和不加扰动观测器角度跟踪控制 Fig. 6 Joint 1 angle tracking control with and without disturbance observer
图 7 关节1含扰动观测器和不加扰动观测器速度跟踪控制 Fig. 7 Joint 1 velocity tracking control with and without disturbance observer
图 8 关节2含扰动观测器和不加扰动观测器角度跟踪控制 Fig. 8 Joint 2 angle tracking control with and without disturbance observer
图 9 关节2含扰动观测器和不加扰动观测器速度跟踪控制 Fig. 9 Joint 2 velocity tracking control with and without disturbance observer
图 10 关节3含扰动观测器和不加扰动观测器角度跟踪控制 Fig. 10 Joint 3 angle tracking control with and without disturbance observer
图 11 关节3含扰动观测器和不加扰动观测器速度跟踪控制 Fig. 11 Joint 3 velocity tracking control with and without disturbance observer

由上图可知, 所提出的带扰动观测器的控制算法可以保证跟踪误差收敛到较小的零域内, 较不加扰动观测器控制而言, 所提出的带扰动观测器神经网络控制器具有更好的跟踪控制效果. 图 12为扰动观测器与真实扰动误差对比图, 图 13为控制输入对比图, 图 14为神经网络估计权值与权值估计误差图, 图 15为神经网络逼近函数与被逼近函数.由图 121415可知, 扰动观测器观测误差和神经网络估计误差都将收敛到较小的零域内.

图 12 扰动与扰动观测误差 Fig. 12 Disturbance and disturbance observer error
图 13 控制输入 Fig. 13 Control input
图 14 NN权值估计与误差 Fig. 14 Weight estimation and error of NN
图 15 逼近函数与被逼近函数 Fig. 15 Approximation and approximated function
5 基于Baxter机器人的跟踪实验验证

本文基于Baxter机器人对自适应神经网络跟踪控制策略进行实验验证. Baxter机器人是美国Rethink robotics公司研发的一款双臂机器人[36], 其单机械臂是一种具有七自由度的冗余柔性关节机械臂[37]. Baxter机械臂存在的摩擦力等未知扰动也会影响到机器人的控制精度.因此, 对于Baxter机器人需要提高其定位精度以完成精确的跟踪任务[38]. 图 16为Baxter机器人结构示意图.通过移动底座支撑机器人本体, 机器人手臂采用旋转关节连接刚性连杆, 关节处采用弹性制动器连接, 即通过电机、减速器串联弹簧带动负载, 在人机协作或外部冲击下起到保护人或机器人本体的作用.柔性关节还可通过霍尔效应检测角度偏差, 由于弹簧具有固定刚度, 通过胡克定律可检测关节处力矩, 即在Baxter关节处都具有力矩传感器.手臂前后端通过26 W和63 W伺服电机驱动, 通过14 bit编码器实现关节角度的读取. Baxter机器人为基于ROS (Robot operating system)操作系统的开源机器人, 通过Linux平台运行, 用户可通过网络与机器人内部计算机互联读取信息或发送指令, 或通过SSH (Secure shell)远程控制在内部计算机运行相关程序.利用Baxter相关的SDK (Software development kit), 通过ROS的API (Application programming interface)可以实现对Baxter机器人的信息读取与实时控制. Baxter中的SDK可以提供相关函数接口与重要工具:如Gazebo仿真器及Moveit移动软件包等. Baxter机器人在力矩控制模式下, 还需设置补偿力矩以抵消机械臂重力和肩关节支撑弹簧形变带来的影响.

图 16 机器人系统结构: 1.肩$S_0$关节; 2.肩$S_1$关节; 3.肘$E_0$关节; 4.肘$E_1$关节; 5.腕$W_0$关节; 6.腕$W_1$关节; 7.腕$W_2$关节; 8.声纳传感器; 9.面部摄像头; 10.显示屏; 11.末端摄像头; 12.末端抓手; 13.操作旋钮; 14.柔性关节; 15.肩关节支撑弹簧; 16.吸盘 Fig. 16 The system structure of Baxter robot: 1. shoulder joint $S_0$; 2. shoulder joint $S_1$; 3. elbow joint $E_0$; 4. elbow joint $E_1$; 5. wrist joint $W_0$; 6. wrist joint $W_1$; 7. wrist joint $W_2$; 8. sonar sensor; 9. facial camera; 10. screen; 11. end-effector camera; 12. gripper; 13. operating knob; 14. flexible joint; 15. $S_1$ shoulder support spring; 16. sucker

本节通过Baxter机器人实现机器人轨迹跟踪实验. 图 17为Baxter机器人实验平台.计算机A通过Windows MATLAB simulink模块计算神经网络未知补偿量并通过UDP传输至另一台用于接收机器人状态信号并提供控制信号的计算机B中.计算机B利用Ubuntu 14.04 LTS平台下的Baxter RSDK (Robot operating system SDK)实现对Baxter机器人的编程与控制.其中RBF神经网络参数节点数为$ 7^3 $, 镇定参数为0.02, 正定增益矩阵$ \Gamma_i = 500I $.协方差为0.75, 其中控制增益$ K_1 = {\rm diag}\{17.7, 20, 15.7, 22, 20.3, 12.6, 15\} $, $ K_2 = {\rm diag}\{2.1, 2.2, 1.2, 2, 5.1, 10.1, 4.5\} $.利用Moveit软件令Baxter机器人单臂移动一段距离, 通过实时位置反馈信息, 记录下移动过程中各关节轨迹.之后通过设计控制器令关节跟踪这条期望轨迹, 并将所提出的控制方法与PD控制对比轨迹跟踪效果. 表 2所示为Baxter机器人PD控制参数. 图 18~24分别为Baxter机器人S0, S1, E0, E1, W0, W1, W2关节含扰动观测器的神经网络与PD控制角度跟踪效果对比图. 图 25为Baxter机器人七关节神经网络控制输入.由图 18~24通过与PD控制对比可以得出, 所提出的控制算法与PD控制相比具有更好的跟踪控制效果.

图 17 Baxter机器人实验平台 Fig. 17 Experimental platform of Baxter robot
表 2 Baxter机器人PD控制参数 Table 2 PD control parameter of Baxter robot
图 18 NN与PD控制S0关节角度跟踪 Fig. 18 S0 joint tracking of NN and PD control
图 19 NN与PD控制S1关节角度跟踪 Fig. 19 S1 joint tracking of NN and PD control
图 20 NN与PD控制E0关节角度跟踪 Fig. 20 E0 joint tracking of NN and PD control
图 21 NN与PD控制E1关节角度跟踪 Fig. 21 E1 joint tracking of NN and PD control
图 22 NN与PD控制W0关节角度跟踪 Fig. 22 W0 joint tracking of NN and PD control
图 23 NN与PID控制W1关节角度跟踪 Fig. 23 W1 joint tracking of NN and PID control
图 24 NN与PD控制W2关节角度跟踪 Fig. 24 W2 joint tracking of NN and PD control
图 25 Baxter机器人NN控制输入 Fig. 25 NN control input to Baxter robot
6 结论

本文提出了一种基于扰动观测器的自适应神经网络跟踪控制策略, 以解决机器人动力学模型未知问题并提升系统鲁棒性.针对模型已知的情况, 通过研究机器人运动学和动力学模型, 提出了刚体机械臂通用模型跟踪控制策略; 针对动力学模型未知情况下, 设计了基于全状态反馈的自适应RBF神经网络跟踪控制器, 并通过设计扰动观测器补偿系统中的未知扰动.通过选择合适的增益参数可以将跟踪误差收敛到零域, 并利用李雅普诺夫理论证明所提出的控制策略能使闭环系统误差信号半全局一致有界.最后通过对比仿真证明所提出算法的有效性并且将控制算法在Baxter机器人平台上进行验证.

参考文献
1
He W, Li Z J, Chen C L P. A survey of human-centered intelligent robots:issues and challenges. IEEE/CAA Journal of Automatica Sinica, 2017, 4(4): 602-609. DOI:10.1109/JAS.2017.7510604
2
Li Y N, Ge S S. Human-robot collaboration based on motion intention estimation. IEEE/ASME Transactions on Mechatronics, 2014, 19(3): 1007-1014. DOI:10.1109/TMECH.2013.2264533
3
Li H Y, Chen Z R, Wu L G, Lam H-K. Event-triggered control for nonlinear systems under unreliable communication links. IEEE Transactions on Fuzzy Systems, 2017, 25(4): 813-824. DOI:10.1109/TFUZZ.2016.2578346
4
Hou Zeng-Guang, Zhao Xin-Gang, Cheng Long, Wang Qi-Ning, Wang Wei-Qun. Recent advances in rehabilitation robots and intelligent assistance systems. Acta Automatica Sinica, 2016, 42(12): 1765-1779.
( 侯增广, 赵新刚, 程龙, 王启宁, 王卫群. 康复机器人与智能辅助系统的研究进展. 自动化学报, 2016, 42(12): 1765-1779.)
5
He Wei, Ding Shi-Qiang, Sun Chang-Yin. Research progress on modeling and control of flapping-wing air vehicles. Acta Automatica Sinica, 2017, 43(5): 685-696.
( 贺威, 丁施强, 孙长银. 扑翼飞行器的建模与控制研究进展. 自动化学报, 2017, 43(5): 685-696.)
6
Wei Qing-Lai, Zhang Hua-Guang, Liu De-Rong, Zhao Yan. An optimal control scheme for a class of discrete-time nonlinear systems with time delays using adaptive dynamic programming. Acta Automatica Sinica, 2010, 36(1): 121-129.
( 魏庆来, 张化光, 刘德荣, 赵琰. 基于自适应动态规划的一类带有时滞的离散时间非线性系统的最优控制策略. 自动化学报, 2010, 36(1): 121-129.)
7
Xu B, Shi Z K, Yang C G, Sun F C. Composite neural dynamic surface control of a class of uncertain nonlinear systems in strict-feedback form. IEEE Transactions on Cybernetics, 2014, 44(12): 2626-2634. DOI:10.1109/TCYB.2014.2311824
8
Tie Lin, Cai Kai-Yuan, Lin Yan. A survey on the controllability of bilinear systems. Acta Automatica Sinica, 2011, 37(9): 1040-1049.
( 铁林, 蔡开元, 林岩. 双线性系统可控性综述. 自动化学报, 2011, 37(9): 1040-1049.)
9
Shen Fei, Cao Zhi-Qiang, Xu De, Zhou Chao. A dynamic model of robotic dolphin based on Kane method and its speed optimization method. Acta Automatica Sinica, 2012, 38(8): 1247-1256.
( 沈飞, 曹志强, 徐德, 周超. 基于Kane方法的机器海豚动力学建模及速度优化方法. 自动化学报, 2012, 38(8): 1247-1256.)
10
Modares H, Ranatunga I, Lewis F L, Popa D O. Optimized assistive human-robot interaction using reinforcement learning. IEEE Transactions on Cybernetics, 2016, 46(3): 655-667. DOI:10.1109/TCYB.2015.2412554
11
Sun Fu-Chun, Sun Zeng-Qi, Zhang Bo. Observer-based adaptive control for robot trajectory tracking using neural networks. Acta Automatica Sinica, 1999, 25(3): 295-302.
( 孙富春, 孙增圻, 张钹. 基于观测器的机械手神经网络自适应控制. 自动化学报, 1999, 25(3): 295-302.)
12
Li Y N, Ge S S. Impedance learning for robots interacting with unknown environments. IEEE Transactions on Control Systems Technology, 2014, 22(4): 1422-1432. DOI:10.1109/TCST.2013.2286194
13
He W, Dong Y T. Adaptive fuzzy neural network control for a constrained robot using impedance learning. IEEE Transactions on Neural Networks and Learning Systems, 2017, 29(4): 1174-1186.
14
De Santis A, Siciliano B, De Luca A, Bicchi A. An atlas of physical human-robot interaction. Mechanism and Machine Theory, 2008, 43(3): 253-270. DOI:10.1016/j.mechmachtheory.2007.03.003
15
Liu Y J, Tong S C, Li D J, Gao Y. Fuzzy adaptive control with state observer for a class of nonlinear discrete-time systems with input constraint. IEEE Transactions on Fuzzy Systems, 2016, 24(5): 1147-1158. DOI:10.1109/TFUZZ.2015.2505088
16
Wang F Y, Zhang J, Wei Q L, Zheng X H, Li L. PDP:parallel dynamic programming. IEEE/CAA Journal of Automatica Sinica, 2017, 4(1): 1-5. DOI:10.1109/JAS.2017.7510310
17
Tong S C, Wang T, Li Y M, Chen B. A combined backstepping and stochastic small-gain approach to robust adaptive fuzzy output feedback control. IEEE Transactions on Fuzzy Systems, 2013, 21(2): 314-327. DOI:10.1109/TFUZZ.2012.2213260
18
Liu Y J, Tong S C. Adaptive NN tracking control of uncertain nonlinear discrete-time systems with nonaffine dead-zone input. IEEE Transactions on Cybernetics, 2015, 45(3): 497-505. DOI:10.1109/TCYB.2014.2329495
19
Chen C L P, Wen G X, Liu Y J, Wang F Y. Adaptive consensus control for a class of nonlinear multiagent time-delay systems using neural networks. IEEE Transactions on Neural Networks and Learning Systems, 2014, 25(6): 1217-1226. DOI:10.1109/TNNLS.5962385
20
Han Hong-Gui, Qiao Jun-Fei, Bo Ying-Chun. On structure design for RBF neural network based on information strength. Acta Automatica Sinica, 2012, 38(7): 1083-1090.
( 韩红桂, 乔俊飞, 薄迎春. 基于信息强度的RBF神经网络结构设计研究. 自动化学报, 2012, 38(7): 1083-1090.)
21
Ding S B, Wang Z S, Zhang H G. Event-triggered stabilization of neural networks with time-varying switching gains and input saturation. IEEE Transactions on Neural Networks and Learning Systems, 2018, 29(10): 5045-5056. DOI:10.1109/TNNLS.2017.2787642
22
Narendra K S, Parthasarathy K. Identification and control of dynamical systems using neural networks. IEEE Transactions on Neural Networks, 1990, 1(1): 4-27. DOI:10.1109/72.80202
23
Yang C G, Jiang Y M, Li Z J, He W, Su C Y. Neural control of bimanual robots with guaranteed global stability and motion precision. IEEE Transactions on Industrial Informatics, 2017, 13(3): 1162-1171. DOI:10.1109/TII.2016.2612646
24
He W, Dong Y T, Sun C Y. Adaptive neural impedance control of a robotic manipulator with input saturation. IEEE Transactions on Systems, Man, and Cybernetics:Systems, 2016, 46(3): 334-344. DOI:10.1109/TSMC.2015.2429555
25
Li Z J, Ge S S, Ming A G. Adaptive robust motion/force control of holonomic-constrained nonholonomic mobile manipulators. IEEE Transactions on Systems, Man and Cybernetics, Part B (Cybernetics), 2007, 37(3): 607-616. DOI:10.1109/TSMCB.2006.888661
26
Li Z J, Su C Y, Wang L Y, Chen Z T, Chai T Y. Nonlinear disturbance observer-based control design for a robotic exoskeleton incorporating fuzzy approximation. IEEE Transactions on Industrial Electronics, 2015, 62(9): 5763-5775. DOI:10.1109/TIE.2015.2447498
27
Chen M. Robust tracking control for self-balancing mobile robots using disturbance observer. IEEE/CAA Journal of Automatica Sinica, 2017, 4(3): 458-465. DOI:10.1109/JAS.2017.7510544
28
Fu Z J, Xie W F, Rakheja S, Na J. Observer-based adaptive optimal control for unknown singularly perturbed nonlinear systems with input constraints. IEEE/CAA Journal of Automatica Sinica, 2017, 4(1): 48-57. DOI:10.1109/JAS.2017.7510322
29
Li H Y, Shi P, Yao D Y, Wu L G. Observer-based adaptive sliding mode control for nonlinear markovian jump systems. Automatica, 2016, 64: 133-142. DOI:10.1016/j.automatica.2015.11.007
30
Xu B. Disturbance observer-based dynamic surface control of transport aircraft with continuous heavy cargo airdrop. IEEE Transactions on Systems, Man, and Cybernetics:Systems, 2017, 47(1): 161-170. DOI:10.1109/TSMC.2016.2558098
31
Chen W H, Ballance D J, Gawthrop P J, O'Reilly J. A nonlinear disturbance observer for robotic manipulators. IEEE Transactions on Industrial Electronics, 2000, 47(4): 932-938. DOI:10.1109/41.857974
32
Yang J, Li S H, Yu X H. Sliding-mode control for systems with mismatched uncertainties via a disturbance observer. IEEE Transactions on Industrial Electronics, 2013, 60(1): 160-169. DOI:10.1109/TIE.2012.2183841
33
Chen M, Ge S S. Adaptive neural output feedback control of uncertain nonlinear systems with unknown hysteresis using disturbance observer. IEEE Transactions on Industrial Electronics, 2015, 62(12): 7706-7716. DOI:10.1109/TIE.2015.2455053
34
Li Y N, Yang C G, Ge S S, Lee T H. Adaptive output feedback NN control of a class of discrete-time MIMO nonlinear systems with unknown control directions. IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), 2011, 41(2): 507-517. DOI:10.1109/TSMCB.2010.2065223
35
Ge S S, Wang C. Adaptive neural control of uncertain MIMO nonlinear systems. IEEE Transactions on Neural Networks, 2004, 15(3): 674-692. DOI:10.1109/TNN.2004.826130
36
Ju Z F, Yang C G, Ma H B. Kinematics modeling and experimental verification of baxter robot. In: Proceedings of the 33rd Chinese Control Conference (CCC). Nanjing, China: IEEE, 2014. 8518-8523
37
Yang C G, Ganesh G, Haddadin S, Parusel S, Albu-Schaeffer A, Burdet E. Human-like adaptation of force and impedance in stable and unstable interactions. IEEE Transactions on Robotics, 2011, 27(5): 918-930. DOI:10.1109/TRO.2011.2158251
38
Yang C G, Wang X Y, Cheng L, Ma H B. Neural-learning-based telerobot control with guaranteed performance. IEEE Transactions on Cybernetics, 2017, 47(10): 3148-3159. DOI:10.1109/TCYB.6221036