基于BP神经网络建模的气动人工肌肉拮抗关节角度跟踪模型预测控制

宗庆涛 ,  王斌锐 ,  程泰 ,  张斌 ,  刘丹 ,  刘涛 ,  方骏伟 ,  周坤

科学技术与工程 ›› 2026, Vol. 26 ›› Issue (23) :10031-10040

PDF (10435KB)
科学技术与工程 ›› 2026, Vol. 26 ›› Issue (23) :10031-10040 DOI: 10.12404/j.issn.1671-1815.2505642
自动化技术、计算机技术

基于BP神经网络建模的气动人工肌肉拮抗关节角度跟踪模型预测控制

作者信息 +

Predictive Control of Pneumatic Artificial Muscle Antagonist Joint Angle Tracking Model Based on BP Neural Network Modeling

Author information +
文章历史 +

摘要

为提升气动肌肉(pneumatic artificial muscle,PAM)拮抗关节系统的轨迹跟踪精度,提出一种基于BP神经网络(back propagation neural network,BPNN)的预测控制方法。首先在气动肌肉拮抗系统动力学分析的基础上,通过BP神经网络建模,构建融合误差角度与误差角速度的PAM拮抗系统神经网络模型,并对其进行离散化处理以建立预测模型。其次,基于该预测模型设计BP神经网络模型预测控制器(BPNN-based model predictive controller,BPNNMPC),通过滚动优化实现关节角度的高精度预测控制。最后为验证控制方法的优越性,开展仿真与实物实验的对比验证。结果表明:所提出的BPNNMPC能有效提升轨迹跟踪性能。验证了所提气动肌肉控制方法的有效性。

Abstract

To improve the trajectory tracking accuracy of the pneumatic artificial muscle (PAM) antagonistic joint system, a predictive control method based on a backpropagation neural network (BPNN) was proposed. First, based on the dynamic analysis of the PAM antagonistic system, a neural network model integrating the error angle and error angular velocity was constructed using BPNN and discretized to establish a predictive model. Second, a BPNN-based model predictive controller (BPNNMPC) was designed based on this predictive model, by which high-precision joint angle control was achieved through rolling optimization. Finally, comparative simulations and physical experiments were conducted to validate the superiority of the proposed method. It is demonstrated by the results demonstrate that the trajectory tracking performance is effectively enhanced by the BPNNMPC.

Graphical abstract

关键词

气动人工肌肉 / BP神经网络模型 / 模型预测控制 / 轨迹跟踪

Key words

pneumatic muscle / BP neural network model / model predictive control / trajectory tracking

引用本文

引用格式 ▾
宗庆涛, 王斌锐, 程泰, 张斌, 刘丹, 刘涛, 方骏伟, 周坤. 基于BP神经网络建模的气动人工肌肉拮抗关节角度跟踪模型预测控制[J]. 科学技术与工程, 2026, 26(23): 10031-10040 DOI:10.12404/j.issn.1671-1815.2505642
ZONG Qing-tao, WANG Bin-rui, CHENG Tai, ZHANG Bin, LIU Dan, LIU Tao, FANG Jun-wei, ZHOU Kun. Predictive Control of Pneumatic Artificial Muscle Antagonist Joint Angle Tracking Model Based on BP Neural Network Modeling[J]. Science Technology and Engineering, 2026, 26(23): 10031-10040 DOI:10.12404/j.issn.1671-1815.2505642

登录浏览全文

4963

注册一个新账户 忘记密码

近年来,随着机器人技术的快速发展[1-3],为丰富机器人应用场景并保障操作过程的安全性[4],以气动肌肉(pneumatic artificial muscle,PAM)作为驱动器的机器人系统受到广泛关注[5-6]。不同于传统驱动器,PAM是一种仿生柔性驱动器[7],通常由内层橡胶气囊和外层编织网套组成,其运动机制类似于人体肌肉。当对橡胶管进行充气与放气时,会发生径向扩张与轴向收缩,从而对负载产生牵引力[8]。气动人工肌肉的优点包括清洁、安全、便携、舒适、高功率密度、良好的生物力学性能和高度柔性[9]。然而,气动肌肉的控制受限于其固有的迟滞特性、阈值压力等非线性因素、冷凝腔内压力波动带来的扰动,以及橡胶管周期性松弛导致的蠕变现象[10]。这使得气动驱动器控制的机器人关节表现出强非线性、不确定性和时变性,从而使得其控制成为一项极具挑战性的任务。
实际上,气动肌肉机器人的控制系统是一个典型的约束系统。与传统控制方法相比,模型预测控制(model predictive control,MPC)作为一种先进的用于求解约束优化问题的控制算法,能够为复杂的约束系统提供在线最优控制策略[11]。MPC能够综合利用系统的历史数据和模型信息,针对给定的性能目标函数进行持续优化,并根据实际测量输出对系统进行修正,具有良好的自适应性、鲁棒性和在线优化能力[12-15]。文献[16] 提出了一种将径向基函数神经网络与MPC相结合的方法,该研究利用 径向基函数神经网络对系统动力学进行辨识以构建预测模型, 该方法有效克服了传统控制策略在气动灵巧手轨迹跟踪中的局限性,显著降低了均方误差与平均绝对误差。文献[17]提出了一种基于动态约束调整的增量式MPC策略,实验表明其在气动肌肉建模与轨迹跟踪控制方面具有显著效果。文献[18]提出了一种基于单层学习的预测控制策略,应用于由气动肌肉驱动的下肢外骨骼机器人,在被动步态训练任务中表现出高轨迹跟踪精度。从文献[11-18]可以看出,MPC通过结合系统的历史与模型信息,以及实时测量输出,不仅持续优化性能目标函数,还在复杂约束系统中展现出强大的自适应性、鲁棒性和在线优化能力。然而,MPC的核心在于其对精确预测模型的高度依赖,预测模型的准确性是实现精确控制的前提。
在PAM系统建模领域,已有深厚的理论与技术积淀。文献[19]采用变截面气缸法对弯曲型执行器进行了深入研究。通过分析关键参数灵敏度并进行实验验证,该研究成功构建了能够准确反映系统瞬态响应的动力学模型。文献[20]提出一种非线性鲁棒控制策略,通过三层神经网络在线补偿系统未知非线性特性,建立高精度模型并实验证明了该策略的有效性及鲁棒性。文献[21]提出自适应模糊滑模控制方法,实现了拮抗式PAM关节的精确建模与高精度轨迹跟踪。文献[22]通过系统辨识建立精确模型,将模糊滑模控制应用于四自由度上肢外骨骼机器人,实验验证了该方法在复杂PAM驱动系统中的鲁棒轨迹跟踪能力。
尽管文献[19,21-22]的建模方法适用于特定的非线性补偿,但其全局建模能力有限。文献[20]中的神经网络虽然提升了动态补偿能力,但文献[19,21-22]的全局建模精度不足,文献[20]的神经网络结构复杂,在此背景下,BP神经网络(backpropagation neural network,BPNN)因其结构简单、建模精度高与良好的泛化能力,成为PAM建立精确模型的优选方案[23]。
针对上述挑战,现提出一种基于BP神经网络建模的气动人工肌肉拮抗关节角度跟踪模型预测控制方法。首先,在建立PAM拮抗关节非线性动力学模型的基础上,利用BP神经网络算法对模型关键参数进行辨识,并推导得到系统的非线性预测模型;其次,基于该预测模型设计BP神经网络模型预测控制器(BPNN-based model predictive controller,BPNNMPC),通过滚动优化求解最优控制律;最后,通过仿真分析与实物平台实验,将所提算法与未采用神经网络优化的模型预测控制进行对比。提出的BP NNMPC能够有效建立高精度的预测模型,用于提升PAM拮抗关节的轨迹跟踪性能。

1 气动肌肉拮抗关节建模

为了构建精确的气动肌肉拮抗关节动力学模型,首先需要明确其实物平台的物理结构与运行机制。该平台的硬件构成决定了系统的物理约束(如气压阈值、最大收缩率)及非线性特性,为后续的数学建模与参数辨识提供物理基础。

PAM拮抗关节的结构如图1所示,主要包括:两个Festo DMSP-20气动人工肌肉(内径20 mm,压力范围为0~0.6 MPa,最大收缩率为25%,最大负载为80 kg)、两个Festo VPPM比例阀[压力范围0.01~1 MPa,精度1.25%FS(full scale)]、一台JAGUAR EAS10J/10空气压缩机(1 m3/min,最大1 MPa)、STM32H7控制器(基于STM32CubeMX与Keil环境)和HXM38绝对值编码器(RS485通信,最高精度0.01°)。平台通过比例阀调节肌肉内气压,实现收缩或伸展,从而驱动齿轮关节变化角度。编码器实时测量角度反馈,控制器据此生成控制信号闭环调节,实现精确控制。该平台的物理参数将被直接用于动力学建模中。

1.1 PAM动力学模型

根据现有的模型[24],PAM拮抗关节的动力学模型可以表示为

$ \begin{array}{l}\ddot{\theta}(t)=-\frac{\mu_{\mathrm{v}}}{J} \dot{\theta}(t)+\frac{k_{14} r-k_{24} r}{J}+ \\\frac{h_{0} h_{\mathrm{u}} r\left(k_{11} \varepsilon_{0}^{2}+k_{12} \varepsilon_{0}+k_{13}+k_{21} \varepsilon_{0}^{2}+k_{22} \varepsilon_{0}+k_{23}\right)}{J} u(t)+ \\\frac{h_{0} h_{\mathrm{u}} r^{2}\left(2 k_{11} \varepsilon_{0} L_{0}^{-1}+k_{12} L_{0}^{-1}+2 k_{21} \varepsilon_{0} L_{0}^{-1}+k_{22} L_{0}^{-1}\right)}{J} \theta(t)+ \\\frac{h_{0} h_{\mathrm{u}} u r\left\{k_{11}\left[r \theta(t) L_{0}^{-1}\right]+k_{21}\left[r \theta(t) L_{0}^{-1}\right]\right\}}{J} u(t)+d(t)\end{array}$

式(1)中:$\stackrel{··}{\theta }$(t)、$\stackrel{·}{\theta }$(t)以及θ(t)分别为关节旋转角加速度、旋转角速度、旋转角度;ε0为气动人工肌肉在基准初始状态下的轴向应变;u(t)为系统的控制输入信号;d(t)为系统的干扰项;kij为与气动执行器相关的数学参数(i=1,2,j=1,2,…,4); μv为系统衰减系数;h0为气动肌肉内压与控制信号之间的线性系数;hu为比例阀电压系数;r为齿轮半径;J为系统转动惯量;L0为气动肌肉初始长度。

1.2 BPNN预测模型

考虑到气动肌肉拮抗关节系统本身是一个非线性系统,如果采用线性动力学建模,会导致建立的模型与实际系统存在较大的误差。为此,应用非线性动力学建模方法,建立气动肌肉拮抗关节系统的非线性动力学模型为

$ \left\{\begin{array}{l}\boldsymbol{x}(n+1)=\varphi[\boldsymbol{x}(n), \boldsymbol{u}(n), \boldsymbol{d}(n)] \\\boldsymbol{y}(n)=\boldsymbol{C} \boldsymbol{x}(n)\end{array}\right.$

式(2)中:ϕ[x(n),u(n),d(n)]为系统状态向量x(n)、输入向量u(n)以及干扰向量d(n)之间的非线性映射关系的函数;C为状态到输出的映射矩阵系数。

采用非线性动态建模方法构建该气动肌肉拮抗关节系统的非线性动态模型,即

$ \left\{\begin{array}{l}\boldsymbol{x}(n+1)=\overline{\boldsymbol{G}} \boldsymbol{\varphi}[\boldsymbol{x}(n)]+\overline{\boldsymbol{H}} \boldsymbol{u}(n)+\overline{\boldsymbol{E}} \boldsymbol{d}(n) \\\boldsymbol{y}(n)=\overline{\boldsymbol{C}} \boldsymbol{x}(n)\end{array}\right.$

式(3)中:x(n)=[x1(n) x2(n)]为状态变量;$ \overline{\boldsymbol{G}}$ =$\left[\begin{array}{ll}{g}_{11}& {g}_{12}\\ {g}_{21}& {g}_{22}\end{array}\right]$为状态系数矩阵;$ \overline{\boldsymbol{H}}$ =[h1 h2]为输入系数矩阵;$ \overline{\boldsymbol{C}}$ =[1,0]为输出系数矩阵;$ \overline{\boldsymbol{E}}$ =[d1;d2]为干扰系数矩阵。选择tanh函数作为激活函数,表达式为

$ \begin{array}{l}\varphi[\boldsymbol{x}(n)]=\left[\varphi_{1}[\boldsymbol{x}(n)] \varphi_{2}[\boldsymbol{x}(n)]\right]^{\mathrm{T}} \\\quad=\left[W_{1} \frac{\mathrm{e}^{\beta_{1} j_{1}(n)}-\mathrm{e}^{-\beta_{1} j_{1}(n)}}{\mathrm{e}^{\beta_{1} j_{1}(n)}+\mathrm{e}^{-\beta_{1} j_{1}(n)}} W_{2} \frac{\mathrm{e}^{\beta_{2} j_{2}(n)}-\mathrm{e}^{-\beta_{2} j_{2}(n)}}{\mathrm{e}^{\beta_{2} j_{2}(n)}+\mathrm{e}^{-\beta_{2} j_{2}(n)}}\right]\end{array}$

式(4)中:W1和W2分别为确定ϕ1[x(n)]和ϕ2[x(n)]输出范围的常系数。W1和W2的数值越大,近似线性区域的斜率越大,即输入对输出的影响越敏感。一般情况下,输入对输出的影响越敏感,越有利于系统建模。β1和β2分别为确定ϕ1[x(n)]和ϕ2[x(n)]近似线性区域输入范围的常系数。β1和β2的数值越大,则输入对输出的非线性映射越强,通常情况下根据实际需要来选择该系数。j1(n)和j2(n)为与x(n)相关的函数,具体的表达式为

$ \begin{aligned}j(n) & =\boldsymbol{\lambda} \boldsymbol{x}(n)=\left[\begin{array}{ll}\lambda_{l-1} & \lambda_{l-2}\end{array}\right] \boldsymbol{x}(n) \\& =\lambda_{l-1} \boldsymbol{e}(n)+\lambda_{l-2} \dot{\boldsymbol{e}}(n)\end{aligned}$

式中:λl-1和λl-2为输入隐藏层权重的连接;l=1,2为隐藏层中神经元的数量;λl为连接权重向量;e(n)和$ \dot{\boldsymbol{e}}(n)$为关节的角度与角速度误差值。

2 非线性动力学模型的参数辨识

2.1 基于BPNN算法的参数辨识

针对PAM拮抗关节的非线性动力学模型, 利用BPNN获取精确的模型参数,PAM拮抗关节非线性动力学模型中相关参数的辨识方法如下。

2.1.1 正向传播阶段

输出层输出的值可表示为

$ \boldsymbol{x}(n+1)=\overline{\boldsymbol{G}} \varphi[\boldsymbol{x}(n)]+\overline{\boldsymbol{H}} \boldsymbol{u}(n)+\overline{\boldsymbol{E}} \boldsymbol{d}(n)$

非线性动态模型的实际输出和期望输出之间的误差表示为

$ \hat{\boldsymbol{e}}(n)=\boldsymbol{x}(n)-\hat{\boldsymbol{x}}(n)$

式(7)中:$ \hat{\boldsymbol{e}}(n)$为模型的状态误差向量;$ \hat{\boldsymbol{x}}(n)$为模型的期望输出向量。神经网络的目标函数为

$\boldsymbol{J}(n)=\frac{1}{2} \hat{\boldsymbol{e}}^{2}(n)$

2.1.2 反向传播阶段

利用梯度下降求解目标函数最小值,其更新方法表示为

$\boldsymbol{\delta}(n+1)=\boldsymbol{\delta}(n)-\eta \frac{\partial \boldsymbol{J}}{\partial \boldsymbol{\delta}}$

式(9)中:δ(n)为当前时刻的神经网络参数值;η为学习率,控制参数更新时的步长,通常取值范围为(0,1);$ \frac{\partial \boldsymbol{J}}{\partial \boldsymbol{\delta}}$为目标函数关于参数δ的梯度,表达式为

$\frac{\partial \boldsymbol{J}}{\partial \boldsymbol{\delta}}=-\sum_{k=1}^{M} \varphi[\boldsymbol{x}(n), \boldsymbol{u}(n), \boldsymbol{d}(n)] \hat{\boldsymbol{e}}^{\mathrm{T}}(n+1)$
$\begin{aligned}\overline{\boldsymbol{G}}(n+1)= & \overline{\boldsymbol{G}}(n)-\hat{\boldsymbol{p}}(n) \varphi\left[\boldsymbol{x}^{\mathrm{T}}(n)\right]+ \\& \alpha[\overline{\boldsymbol{G}}(n)-\overline{\boldsymbol{G}}(n-1)]\end{aligned}$
$\begin{aligned}\overline{\boldsymbol{H}}(n+1)= & \overline{\boldsymbol{H}}(n)-\hat{\boldsymbol{p}}(n) \boldsymbol{u}^{\mathrm{T}}(n)+ \\& \alpha[\overline{\boldsymbol{H}}(n)-\overline{\boldsymbol{H}}(n-1)]\end{aligned}$
$\begin{aligned}\overline{\boldsymbol{E}}(n+1)= & \overline{\boldsymbol{E}}(n)-\eta \hat{\boldsymbol{e}}(n) \boldsymbol{d}^{\mathrm{T}}(n)+ \\& \alpha[\overline{\boldsymbol{E}}(n)-\overline{\boldsymbol{E}}(n-1)]\end{aligned}$

式中:α为动量因子,其取值范围为[0,1]。

神经网络的学习率η、动量因子α以及网络迭代次数M是辨识非线性动态模型参数之前需要提前确立的关键参数。利用均方误差(mean square error, MSE)作为评判标准对这三个参数进行调整。系统参数辨识均方误差YMSE的表达式为

$\begin{aligned}Y_{\mathrm{MSE}} & =\frac{1}{N} \sum_{1}^{N}\|\hat{\boldsymbol{e}}(n+1)\|^{2} \\& =\frac{1}{N} \sum_{n=1}^{N}\|\boldsymbol{x}(n+1)-\hat{\boldsymbol{x}}(n+1)\|^{2}\end{aligned}$

式(14)中:N为实际的样本数据数量;$ \hat{\boldsymbol{x}}(n+1)$为系统实际采集到的样本数据;x(n+1)为通过非线性动态建模计算的输出数据。通过最小化YMSE,可以确定神经网络的最佳参数配置。

2.2 神经网络内部参数的选择

为了确定神经网络所需参数,由于样本数据对辨识参数没有太多要求,因此采用PID(proportional integral derivative)控制下采样周期为0.01 s的正弦目标轨迹作为采样数据,辨识的具体方法如下。

(1)学习率作为神经网络的核心参数,决定模型训练过程中的步长大小。确定学习率的前提是选择合适的学习率范围,对于气动肌肉拮抗关节,学习率η按升序选取时效果最佳[10-8,10-7,…,10-1]。假设动量因子α=0,迭代次数M分别被选择为1、5和10,则在动量因子α=0时,不同学习速率和迭代次数时算法的MSE值如表1所示。

从表1可以看出,当学习率接近1时,网络会因更新步长较大而出现发散。然而,当学习率接近于0时,由于更新步长小,参数收敛速度慢。因此,当假设网络M的迭代次数为10时, [10-8,10-7,…,10-5]可以被选择作为网络学习率的区间范围。

(2)动量因子的确定方法。为了获得合适的动量因子,通常以从小到大的方式确定该值。选取的动量因子为0.5、0.9和0.99,分别代表2倍、10倍和100倍的收敛速度,假设网络迭代次数为10次时,可以得到如表2所示的均方误差值。

从表2可以看出,当所选动量因子α过大时,算法会出现发散现象。尽管在BP神经网络中,动量因子并非主要影响因素,但合理选择动量因子对于提升模型精度仍具有一定作用。

(3)迭代次数M的选择方法。根据上述结果,当学习率η=10-8且动量因子α=0.9时,当状态系数矩阵$\overline{\boldsymbol{E}}$、输入系数矩阵$\overline{\boldsymbol{H}}$、干扰系数矩阵$\overline{\boldsymbol{E}}$和连接权重λ1的初始值由随机函数生成时,以顺序方式执行算法5次,结果如图2所示。

为了更清楚地显示结果,放大了4~10次迭代的纵坐标,从图2放大的结果可以看出,当迭代次数M>6次时,MSE的变化可以忽略不计,可以认为模型的MSE不变,此时神经网络已经停止训练。将在η=10-8、α=0.9和M=6时获得的MSE与表2中的第三次训练结果进行比较,可以明显看出模型的精度有所提高,网络的迭代次数有所减少。原因是当动量因子α应用于神经网络时。适当的动量因子值可以加快算法的收敛速度和收敛精度,从而减少迭代次数。综上,最终神经网络的学习率η=10-8,动量因子α=0.9,迭代次数M=6。

3 BPNN模型预测控制器设计

3.1 非线性预测模型

PAM拮抗关节的非线性动力学模型被转换成状态空间方程的形式,即

$\left\{\begin{array}{c}\boldsymbol{x}(n+1 \mid n)=\overline{\boldsymbol{G}} \varphi[\boldsymbol{x}(n \mid n)]+ \\\overline{\boldsymbol{H} \boldsymbol{u}}(n \mid n)+\overline{\boldsymbol{E}} \boldsymbol{d}(n \mid n) \\\boldsymbol{y}(n+1)=\overline{\boldsymbol{C}} \boldsymbol{x}(n+1)\end{array}\right.$

式(15)中:x(n+1|n)为该值是由kT时刻的x(n|n)向后预测T时刻后,得到的(n+1)T时刻的值;x(n|n)=[e(n|n);$ \dot{\boldsymbol{e}}$(n|n)]为kT时刻的状态向量;e(n|n)为拮抗关节的实际角度与预测角度之间的误差角度;$ \dot{\boldsymbol{e}}$(n|n)为误差角速度;x(n+1|n)=[e(n+1|n);$ \dot{\boldsymbol{e}}$(n+1|n)]为(n+1)T时刻的状态向量;u(n|n)为在kT时刻的控制律;因此,由式(15)可以推出输出y(n+1|n)的表达式为

$\begin{aligned}\boldsymbol{y}(n+1 \mid n)= & \overline{\boldsymbol{C}} \overline{\boldsymbol{G}} \boldsymbol{\varphi}[\boldsymbol{x}(n \mid n)]+ \\& \overline{\boldsymbol{C}} \overline{\boldsymbol{H}} \boldsymbol{u}(n \mid n)+\overline{\boldsymbol{C}} \overline{\boldsymbol{E}} \boldsymbol{d}(n \mid n)\end{aligned}$

由此可以推导得到拮抗关节的预测模型为

$\boldsymbol{Y}(n)=\tilde{\boldsymbol{G}} \boldsymbol{\varphi}[\boldsymbol{x}(n)]+\tilde{\boldsymbol{H}} \boldsymbol{U}(n)+\tilde{\boldsymbol{E}} \boldsymbol{\Delta}(n)$

式(17)中:Y(n)为系统的预测角度误差序列;U(n)为系统的控制序列;Δ(n)为系统的未知干扰序列;$ \tilde{\boldsymbol{H}}$、$\tilde{\boldsymbol{G}}$、$\tilde{\boldsymbol{E}}$为增益矩阵,具体表达式分别为

$\tilde{\boldsymbol{H}}=\left[\begin{array}{ccccc}\overline{\boldsymbol{C}} \overline{\boldsymbol{H}} & 0 & \cdots & 0 & 0 \\\overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \overparen{\boldsymbol{K}}) \overline{\boldsymbol{H}} & \overline{\boldsymbol{C}} \overline{\boldsymbol{H}} & \cdots & 0 & 0 \\\vdots & \vdots & & \vdots & \vdots \\\overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{m-1} \overline{\boldsymbol{H}} & \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{m-2} \overline{\boldsymbol{H}} & \cdots & \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}}) \overline{\boldsymbol{H}} & \overline{\boldsymbol{C}} \overline{\boldsymbol{H}} \\\overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{m} \overline{\boldsymbol{H}} & \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{m-1} \overline{\boldsymbol{H}} & \cdots & \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{2} \overline{\boldsymbol{H}} & \sum_{\gamma=0}^{1} \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{\gamma} \overline{\boldsymbol{H}} \\\vdots & \vdots & & \vdots & \vdots \\\overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \overparen{\boldsymbol{K}})^{l} \overline{\boldsymbol{H}} & \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{l-1} \overline{\boldsymbol{H}} & \cdots & \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{l-m+1} \overline{\boldsymbol{H}} & \sum_{\gamma=0}^{l-m} \overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}})^{\gamma} \overline{\boldsymbol{H}}\end{array}\right]_{l \times m}$
$\tilde{\boldsymbol{G}}=\left[\begin{array}{llll}(\overline{\boldsymbol{C}} \overline{\boldsymbol{G}})^{\mathrm{T}} & {[\overline{\boldsymbol{C}}(\overline{\boldsymbol{G}} \hat{\boldsymbol{K}}) \overline{\boldsymbol{G}}]^{\mathrm{T}}} & \cdots & {\left[\bar{C}(\overline{\boldsymbol{G}} \widehat{K})^{l-1} \overline{\boldsymbol{G}}\right]^{\mathrm{T}}}\end{array}\right]_{1 \times l}^{\mathrm{T}}$
$\tilde{\boldsymbol{E}}=\left[\begin{array}{cccc}(\overline{\boldsymbol{C}} \overline{\boldsymbol{E}})^{\mathrm{T}} & {[\overline{\boldsymbol{C}}(\overline{\boldsymbol{E}} \overparen{\boldsymbol{K}}) \overline{\boldsymbol{E}}]^{\mathrm{T}}} & \cdots & \left.\left[\overline{\boldsymbol{C}}(\overline{\boldsymbol{E}} \overparen{K})^{l-1} \overline{\boldsymbol{E}}\right]^{\mathrm{T}}\right]_{1 \times l}^{\mathrm{T}}\end{array}\right.$

3.2 BPNN预测模型控制器的代价函数

对已经建立的预测模型,假设对于kT时刻的预测状态x(n)已知,且式(17)中包含的预测角度误差序列Y(n)、增益矩阵$\tilde{G}$(n)、增益矩阵$\tilde{H}$(n)、增益矩阵$\tilde{E}$(n)及非线性状态变量φ[x(n)]也已知时,系统中只有待求解的控制序列U(n)为未知量。为求解出最优控制序列U(n),对系统设计合适的代价函数,对于拮抗关节所设计的代价函数为

$\boldsymbol{J}(n)=\left\|\boldsymbol{Q}_{1} \boldsymbol{Y}(n)\right\|^{2}+\left\|\boldsymbol{Q}_{2} \boldsymbol{U}(n)\right\|^{2}$

式(21)中:权重矩阵Q1、Q2分别为对角元素为q1和q2的l阶和m阶对角矩阵。

在式(21)上对J(n)和U(n)之间进行一阶差分,并将解出的一阶差分展开,对其进行二次求导后,可推导得到最优控制律的表达式为

$\begin{aligned}\boldsymbol{U}(n)= & \boldsymbol{\Gamma}^{-1} \boldsymbol{\Omega}=\boldsymbol{\Gamma}^{-1} \boldsymbol{H}^{\mathrm{T}} \boldsymbol{Q}_{1}^{\mathrm{T}} \boldsymbol{Q}_{1}\{-\boldsymbol{G} \varphi[\boldsymbol{x}(n)]- \\& \tilde{E} \boldsymbol{\Delta}(n)\}\end{aligned}$

式(22)中:$ \boldsymbol{\Gamma}=\tilde{\boldsymbol{H}}^{\mathrm{T}} \boldsymbol{Q}_{1}^{\mathrm{T}} \boldsymbol{Q}_{1} \tilde{\boldsymbol{H}}+\boldsymbol{Q}_{2}^{\mathrm{T}} \boldsymbol{Q}_{2} ; \boldsymbol{\Omega}=-\tilde{\boldsymbol{H}}^{\mathrm{T}} \boldsymbol{Q}_{1}^{\mathrm{T}} \times\boldsymbol{Q}_{1} \tilde{\boldsymbol{G}} \boldsymbol{\varphi}[\boldsymbol{x}(n)]$。

选择控制序列U(n)的第一个元素作为在时间nT的最优控制律u(n),表达式为

$\boldsymbol{u}(n)=\boldsymbol{L} \boldsymbol{U}(n)$

式(23)中:L=[1,0,0,…,0]。

4 仿真和实验

4.1 仿真验证

选定MPC相关参数:q1=0.01,q2=10,选取预测时域为n=15,控制时域为m=7。为验证BPNNMPC跟踪精度的提高,选用DMPC(distributed MPC)作为对比。为验证本文算法在角度跟踪精度上的提高,与对比算法跟踪不同幅值以及不同周期下的正弦曲线。在仿真过程中为贴近真实场景,对系统模型添加外部干扰d(t)=sin(0.1πt)-0.2×ecos(0.4πt),对比不同目标曲线下BPNNMPC与DMPC的跟踪结果,仿真结果如图3~图5所示,通过对仿真数据分析证明所设计的算法在角度跟踪精度上有所提高。

由图3~图5可知,在进行角度跟踪仿真时,BPNNMPC的跟踪精度高于对比控制器DMPC。同时可观察到,随着目标曲线运动周期的缩短和振幅的增大,虽然角度跟踪控制效果有所减弱,但与DMPC相比仍保持较高的控制精度。相关仿真数据结果如表3所示。

如表3所示,本节设计的BPNNMPC控制器在角度跟踪精度方面较DMPC控制器有所提升。数据显示,BPNNMPC的最大误差值明显小于对比控制器,均方偏差表明该控制器的误差波动更小,平均绝对误差的下降则说明跟踪误差得到有效控制。综合数据结果可知,在追踪不同幅值和频率的目标曲线时,本节设计的控制器展现出优于对比控制器的跟踪性能。

4.2 实验验证

前文通过仿真验证了BPNNMPC的有效性和稳定性,本节将在PAM拮抗关节实物平台上对BPNNMPC和DMPC进行对比实验,以进一步验证BPNNMPC的控制性能。

为了验证仿真结果在实际系统中的有效性,实验中的控制器参数设置与4.1节仿真分析中保持完全一致。控制器关键参数设置为:预测时域n=15,控制时域m=7,MPC相关参数为q1=0.01,q2=10。系统采样周期设定为Ts=0.01 s,实验开始前向两根气动肌肉充入初始平衡气压P0=0.3 MPa。

将拮抗关节的目标轨迹分别设为θd=10°sin(0.1πt)、θd=12°sin(0.1πt)以及θd=15°sin(0.1πt),即幅值大小分别为10°、12°以及15°,运动周期固定在20 s的正弦信号。如图6~图8所示为拮抗关节在BPNNMPC下分别进行幅值为10°、12°以及15°的实验结果。

从图6~图8可以看出,在跟踪具有相同运动周期但不同振幅的正弦曲线时,与DMPC相比,提出的BPNNMPC在实验中实现了更小的角度跟踪误差。由表4可以看出,相较于DMPC,BPNNMPC不仅降低了角度跟踪误差的最大值和最小值,其均方误差也表明,相较于参考控制器,该方法的角度跟踪误差波动更为集中,这说明关节运动过程中的误差波动幅度更小。

为进一步验证所提BPNNMPC方法的优越性,与文献[25]中所提出的T-S模糊模型预测控制(T-S fuzzy model predictive control,T-S FMPC)进行对比实验。采用幅值为10°的正弦曲线作为目标跟踪曲线,通过更改运动周期(10,15,20 s),对DMPC、T-S FMPC以及BPNNMPC三种方法的轨迹跟踪误差进行了系统对比,实验跟踪曲线与误差曲线如图9所示,实验数据如表5所示。

如表5所示,在3个周期下,T-S FMPC相比传统D MPC的误差范围和均方差均有所减小,而BPNNMPC在所有工况下均取得最小或接近最小的均方差,误差区间也更为集中。上述对比结果说明,本文提出的 BPNNMPC 不仅优于未考虑非线性的传统DMPC,而且优于基于T-S FMPC方法,进一步验证了所提控制策略在不同周期工况下的轨迹跟踪精度和鲁棒性。

5 结论

通过设计气动肌肉拮抗关节非线性动态模型,在选取合适的BP神经网络算法中的参数后,对非线性动态模型中相关的参数进行辨识;然后,推导出关节的非线性预测模型,基于预测模型设计模型预测控制器;最后,与基于动力学预测模型设计的模型预测控制器进行仿真与实验对比,并与T-S FMPC进行了实验对比,在对结果进行分析后,证明本文所设计的模型建立方法提高了预测模型的准确性,从而提高了控制器的角度跟踪精度。

参考文献

[1]

陈高铭, 骆研, 黄碧漪, 等. 基于BP神经网络-模糊控制的机器人无标定视觉伺服技术[J]. 科学技术与工程, 2023, 23(26): 11282-11291.

[2]

Chen Gaoming, Luo Yan, Huang Biyi, et al. Robot calibration-free visual servo technology based on BP neural network-fuzzy control[J]. Science Technology and Engineering, 2023, 23(26): 11282-11291.

[3]

Della S C, Duriez C, Rus D. Model-based control of soft robots: a survey of the state of the art and open challenges[J]. IEEE Control Systems Magazine, 2023, 43(3): 30-65.

[4]

Li L B, Zhu L J, Huang J. Stable locomotion of biped robot with gaits of sinusoidal harmonics[J]. IEEE Transactions on Control Systems Technology, 2024, 32(3): 805-817.

[5]

Zhu K, Li B, Zhe W M, et al. Collision avoidance among dense heterogeneous agents using deep reinforcement learning[J]. IEEE Robotics and Automation Letters, 2023, 8(1): 57-64.

[6]

Xie D S, Liu J B, Zuo S Y. Pneumatic artificial muscle with large stroke based on a contraction ratio amplification mechanism and self-contained sensing[J]. IEEE Robotics and Automation Letters, 2021, 6(4): 8599-8606.

[7]

Diao S Z, Liu G D, Liu Z Q, et al. Prescribed-time adaptive fuzzy control for pneumatic artificial muscle actuated parallel robots with input constraints[J]. IEEE Transactions on Fuzzy Systems, 2024, 32(4): 2039-2051.

[8]

Zhang Y, Cheng Q, Chen W L, et al. Dynamic modeling and inverse compensation for coupled hysteresis in pneumatic artificial muscle-actuated soft manipulator with variable stiffness[J]. ISA Transactions, 2024, 145: 468-478.

[9]

Wang B, Wang Y, Huang J, et al. Computed torque control and force analysis for mechanical leg with variable rotation axis powered by servo pneumatic muscle[J]. ISA Transactions, 2023, 140: 385-401.

[10]

Tanaka S, Nabae H, Suzumori K. Back-stretchable McKibben muscles: expanding the range of antagonistic muscle driven joints[J]. IEEE Robotics and Automation Letters, 2023, 8(9): 5331-5337.

[11]

Wang X Y, Yu N B, Han J D, et al. Modeling and robust control for tendon-sheath artificial muscle system twist with time-varying parameters and input constraints[J]. IEEE Transactions on Industrial Electronics, 2023, 70(1): 878-887.

[12]

Xi Y G, Li D W, Lin S. Model predictive control-status and challenges[J]. Acta Automatica Sinica, 2013, 39(3): 222-236.

[13]

Pan G, Faulwasser T. NMPC in active subspaces: dimensionality reduction with recursive feasibility guarantees[J]. Automatica, 2023, 147: 110708.

[14]

Huang L B, Zhen J Z, Lygeros J, et al. Robust data-enabled predictive control: tractable formulations and performance guarantees[J]. IEEE Transactions on Automatic Control, 2023, 68(5): 3163-3170.

[15]

Chen S W, Wang T Y, Atanasov N, et al. Large scale model predictive control with neural networks and primal active sets[J]. Automatica, 2019, 135: 109947.

[16]

Terzi E, Fagiano L, Farina M, et al. Robust multi-rate predictive control using multi-step prediction models learned from data[J]. Automatica, 2021, 136: 109852.

[17]

程泰, 王斌锐, 宗庆涛, 等. 基于径向基神经网络的气动肌肉驱动三指灵巧手的模型预测控制[J/OL]. (2025-07-03)[2025-10-31]. https://doi.org/10.13196/j.cims.2025.0308.

[18]

Cheng Tai, Wang Binrui, Zong Qingtao, et al. Model predictive control of pneumatic muscle driven three-fingered dexterous hand based on radial basis function neural network[J/OL]. (2025-07-03)[2025-10-31]. https://doi.org/10.13196/j.cims.2025.0308.

[19]

Wang J J, Xu B G, Lai J W, et al. An improved Koopman-MPC framework for data-driven modeling and control of soft actuators[J]. IEEE Robotics and Automation Letters, 2022, 8(2): 616-623.

[20]

Cao Y, Huang J, Xiong C H. Single-layer learning-based predictive control with echo state network for pneumatic-muscle-actuators driven exoskeleton[J]. IEEE Transactions on Cognitive and Developmental Systems, 2021, 13(1): 80-90.

[21]

度红望, 许晓亚, 邵仁波, 等. 气动弯曲型人工肌肉瞬态动力学建模、分析与验证[J]. 机械工程学报, 2023, 59(21): 199-208.

[22]

Du Hongwang, Xu Xiaoya, Shao Renbo, et al. Transient dynamic modeling, analysis and validation of pneumatic bending artificial muscle[J]. Journal of Mechanical Engineering, 2023, 59(21): 199-208.

[23]

Chen Y H, Sun N, Liang D K, et al. A neuroadaptive control method for pneumatic artificial muscle systems with hardware experiments[J]. Mechanical Systems and Signal Processing, 2021, 146: 106976.

[24]

Duong M D, Pham Q T, Vu T C, et al. Adaptive fuzzy sliding mode control of an actuator powered by two opposing pneumatic artificial muscles[J]. Scientific Reports, 2023, 13: 8242.

[25]

Chen C T, Lien W Y, Wu Y C. Implementation of an upper-limb exoskeleton robot driven by pneumatic muscle actuators for rehabilitation[J]. Actuators, 2020, 9(4): 106.

[26]

盛佳豪, 柳力, 刘朝晖, 等. 基于遗传算法优化BP神经网络的沥青混合料性能预测方法[J]. 科学技术与工程, 2025, 25(3): 1214-1224.

[27]

Sheng Jiahao, Liu Li, Liu Zhaohui, et al. Asphalt mixture performance prediction method based on genetic algorithm-optimized BP neural network[J]. Science Technology and Engineering, 2025, 25(3): 1214-1224.

[28]

余芮. 基于自适应反步控制的气动肌肉关节轨迹追踪研究[D]. 杭州: 中国计量大学, 2020.

[29]

Yu Rui. Trajectory tracking research of pneumatic muscle joint based on adaptive backstepping control[D]. Hangzhou: China Jiliang University, 2020.

[30]

张传强, 周坤, 崔小红, 等. 基于T-S模糊建模的气动肌肉拮抗关节预测角度控制[J]. 中国计量大学学报, 2024, 35(2): 222-232.

[31]

Zhang Chuanqiang, Zhou Kun, Cui Xiaohong, et al. Predictive angle control for pneumatic muscle antagonistic joint based on T-S fuzzy modeling[J]. Journal of China University of Metrology, 2024, 35(2): 222-232.

基金资助

浙江省自然科学基金(LMS25F030001)

PDF (10435KB)

47

访问

0

被引

详细

导航
相关文章

/

〈 〉