工程科学与技术   2020, Vol. 52 Issue (4): 226-234
基于模糊自适应和优化阻抗的双机器人力/位主从协同控制方法
曹学鹏1, 包翔宇1,2, 张弓2, 侯至丞2, 徐征2     
1. 长安大学 工程机械学院,陕西 西安 710064;
2. 广州中国科学院先进技术研究所,广东 广州 511458
基金项目: 国家重点研发计划项目(2017YFE0123900;2018YFA0902903);先进节能教育部工程中心开放课题(SWEDT–KF201902);广东省科技专项(2014ZT05G132;2018A030310046);广州市科技专项(201704030091;202002030320);深圳市海外高层次人才资金项目(KQTD2015033117354154);东莞市重大专项(2017215102008)
摘要: 多机器人协同作业广泛用于多机协同搬运、冲压、焊接等领域,具有更高的精度,更灵活的工况执行能力。协同系统的插补算法与力/位控制性能共同决定了协同作业的轨迹平滑性和稳定性,也直接影响着系统的承载性能与作业质量。作者针对双机器人协同搬运过程中的力/位控制技术展开了研究。首先,分析了双机器人协同搬运工况的夹持特征和受力状态,建立了协同搬运系统的理想数学模型。接着,依据主从机器人2阶阻尼系统的数学模型,采用双机器人主从协同控制模式,分别设计力/位控制策略;提出主机器人采用基于理想位置的优化模糊自整定位置控制,从机器人采用基于主机器人位置偏差的优化细菌觅食算法的阻尼控制,进行控制模块的设计工作。然后,在MATLAB中编译了细菌觅食算法主体及其代价函数,在Simulink中搭建控制系统。最后,对整个控制器模块进行联合仿真,仿真结果如下:主机器人的最大位置误差缩小到1.53 mm,从机器人的最大力误差缩小到0.038 N。从机器人追踪主机器人的位置误差控制在0.18 mm内,且从机器人可在0.2 s内快速修正主从速度偏差。仿真结果表明:相比常规PD控制,本文所述控制方法可减少约40%的最大追踪误差,且有效消除了力追踪过程中的过零振荡现象,提高了系统的实时追踪动态性能。
关键词: 双机器人    协同搬运    位置控制    阻尼控制    模糊自适应     细菌觅食算法(BFA)    
Force/Position Master-slave Cooperative Control for Dual Robots Based on Fuzzy and Optimized Bacterial Foraging Algorithms
CAO Xuepeng1, BAO Xiangyu1,2, ZHANG Gong2, HOU Zhicheng2, XU Zheng2     
1. School of Mechanical Eng., Chang’an Univ., Xi’an 710064, China;
2. Guangzhou Inst. of Advanced Technol., Chinese Academy of Sciences, Guangzhou 511458, China
Abstract: Multi–robot cooperation is widely used in cooperative handling, stamping, welding and other fields, with higher precision and more flexibility. The interpolation algorithm and the force/position control performance determine the smoothness of the trajectories and the stability of the cooperative operation, and also directly affect the bearing capacity and the operation quality. In this paper, the force/position control technology in the process of two robots cooperative handling was studied. First, the clamping characteristics and stress state of two robots cooperative handling were analyzed, and the ideal mathematical model of cooperative handling system was established. Next, according to the mathematical model of the second–order damping system of the master–slave robot, the master–slave cooperative control mode was adopted to design the force/position control strategies respectively. The optimized fuzzy self–tuning position control based on the ideal position was presented for the master robot, and the damping control with the optimized bacterial foraging algorithm based on the force optimization of position deviation of the master robot was presented for the slave robot, and the design of the controller was carried out. Then, the main body of the algorithm and its cost function were programed in MATLAB, and the control system was established in Simulink. Finally, the whole controller was simulated. The simulation results were as follows. The maximum position error of the master was 1.53 mm, and the maximum force error of the slave was 0.038 N. The position error of tracking down between the slave and the master was within 0.18 mm, and the slave could quickly correct the master–slave speed deviation within 0.2 s. The simulation results showed that compared with the conventional PD control method, the proposed controller could reduce the maximum tracking error by 40% and effectively eliminate the zero–crossing oscillations of the force tracking. This method could significantly improve the dynamic performance of the system.
Key words: dual robots    cooperative handling    position control    damping control    fuzzy adaptive    bacterial foraging algorithm(BFA)    

面对愈加复杂的工业现场,多机协同作业已取代单机成为构建智能产线的研究热点[1]。通过实施有效的控制策略,降低工件所受内力,优化协同轨迹,提升作业稳定性,是多机协同控制的核心问题。

力控制策略包括位置/力控制与阻抗控制策略,位置–力混合控制判断各自由度的运动状态,分别施加位置或力控制策略[2]。Jankowski等[3]提出一种柔性机器人的位置–力混合控制策略,添加前馈环节来消除数控延时,采用鲁棒控制器提高轨迹追踪精度。Baigzadehnoe等[4]提出采用自适应模糊反推的控制方法,实现了两个机械手协同搬运同一刚体时的位置追踪。Jung等[5]引入自适应技术,将阻抗控制策略应用在未知动态环境,维持机器人动力学不确定时的鲁棒性。欧阳帆等[6]设定主机器人力误差为一个随机振荡信号,通过基于遗传算法寻优的阻尼比例微分控制方法,降低了14.8%的轴向力控制误差。Li 等[7]在阻抗控制框架下,采用神经网络学习算法,实现机器人对不确定肢体运动的实时追踪。综上所述,已有研究多对从动机器人施加控制策略,未充分考虑主动机器人的优化控制策略,同时并未涉及从机器人对主机器人的跟踪控制概念。

为此,采用双机器人主从协同控制模式,设计力/位主从协同的控制策略。提出主机器人采用基于理想位置元优化的模糊自整定位置控制,从机器人采用基于主机器人位置偏差的力元优化细菌觅食算法阻尼控制,由此搭建主从机器人实时参数追踪的双环反馈控制系统,提高主从模式下的双机协同性能,从而解决力/位控制中的参数优化问题。

1 结构与模型

双机器人协同搬运模型如图1所示,采用主从协同控制模式,主从机器人的末端分别装载气动夹爪、主副夹爪夹持同一工件,执行往复搬运轨迹。O为工件的质心点, ${x_1}$ ${y_1}$ ${{\textit{z}}_1}$ ${x_2}$ ${y_2}$ ${{\textit{z}}_2}$ 分别为主、从机器人末端执行器笛卡尔坐标,姿态与第6轴D–H坐标系一致,位置各由 ${\textit{z}}$ 轴正向偏移一个夹爪长度。系统静力学关系可表示为:

图1 双机器人协同搬运示意图 Fig. 1 Schematic diagram of dual-robot cooperative handling

${\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!{{{F}}} _0} = {{{{F}}} _1} + {{{{F}}} _2}$ (1)
${{ {{N}}} _0} = {{{{N}}} _1} + {{ {{F}}} _1} \times {l_1} + {{ {{N}}} _2} + {{ {{F}}} _2} \times {l_2}$ (2)

式中: ${{ {{F}}} _i}$ ${{ {{N}}} _i}$ i=1,2)为工具末端夹爪施加的外力和外力矩;li为接触力与物体质心的虚拟力臂; ${{{{F}}} _0}$ ${{ {{N}}} _0}$ 为工件在质心处受到的等效合力和合力矩矢量。

机构所受内力/力矩为主从机器人的输出合力/力矩。为保证夹持过程的稳定性,防止工件或机器人受损,需要施加力控制策略,减小工件受内力的冲击。

理想工况下,两个末端夹爪夹住工件时,机构没有任何相对移动,系统可视作从机器人刚体与夹持工件的主机器人刚体在传感器的环境机械阻尼中相互耦合[8]。腕力传感器用于测量从机器人末端夹爪笛卡尔坐标方向上的力与力矩。

依据图2所示的夹持关系,搭建机械阻尼系统动态模型如图3所示。

图2 双机协同搬运的简化模型 Fig. 2 Simplified model of dual-robot cooperative handling

图3 机械阻尼系统模型 Fig. 3 Model of mechanical damping system

图3所示建立模型的动态力平衡方程:

主机器人端:

${\;\;\;\;\;\;\;\;f_1} = {k_{\rm{s}}}\left( {{x_1} - {x_2}} \right) + {b_{\rm{s}}}\left( {{{\dot x}_1} - {{\dot x}_2}} \right) + {m_1}{\ddot x_1}$ (3)

从机器人端:

${\!\!\!\!\!\!f_{\rm{s}}} = {k_{\rm{s}}}\left( {{x_1} - {x_2}} \right) + {b_{\rm{s}}}\left( {{{\dot x}_1} - {{\dot x}_2}} \right)$ (4)

式中: ${k_{\rm{s}}}$ 为环境刚度系数; ${b_{\rm{s}}}$ 为环境阻尼系数; ${f_1}$ 为主机器人施加力; ${f_{\rm{s}}}$ 为力传感器测得的力(近似等于f2); ${x_1}$ 为主机器人位移量; ${x_2}$ 为从机器人位移量; ${m_1}$ 为主机器人夹爪质量与工件质量之和,大小为 ${m_1} = 5\;{\rm{kg}}$ ;从机器人的副夹爪质量ms,质量较小忽略不计。

在固定从机器人的情况下,设定主机器人末端的 ${\textit{z}}$ 轴方向位移偏移量为一个幅值与相位一定的时间−位移正弦信号。记录下随时间 $t$ 变化的位移进给量 $s\left( t \right)$ ,对位移方程进行求导获得速度方程 $\dot s\left( t \right)$ ,同时在运动过程中对输出的末端力信号 $f\left( t \right)$ 进行采样。由此采样得到多组 $\left( {t,\dot s\left( t \right),s\left( t \right),f\left( t \right)} \right)$ 。将获得的两组采样数据代入式(4)估算得环境刚度系数 ${k_{\rm{s}}} = 40\;{\rm{N/mm}}$ ,环境阻尼系数 ${b_{\rm{s}}} = 3.96\;{\rm{N·s/mm}}$

2 主从机器人控制策略 2.1 主机器人控制策略

已知环境约束,主机器人采用基于理想位置优化的控制策略。将实际位置反馈给期望位置,施加基于位置误差值的比例微分(PD)控制律,输出为力修正量。对主机器人的位置控制律表示为:

$\left\{\!\!\!\! {\begin{array}{*{20}{l}} {{f_1} - {f_{\rm{d}}} = {k_{\rm{p}}}_{_x}{e_x} + {k_{\rm{d}}}_{_x}{{\dot e}_x}} , \\ {{e_x} = {x_{\rm{d}}} - {x_1}} \end{array}} \right.$ (5)

式中, ${f_{\rm{d}}}$ 为期望作用力, ${x_{\rm{d}}}$ 为期望位置偏移量, ${e_x}$ 为主机器人的位置偏移量误差, ${\dot e_x}$ 为主机器人的速度误差值, ${k_{{\rm{p}}_x}}$ 为位置控制比例系数, ${k_{{\rm{d}}_x}}$ 为位置控制微分系数。

2.2 从机器人控制策略

基于环境刚度和阻尼模型,从机器人须实时跟踪主机器人的实时运动状态,由此采用基于主机器人位置反馈信号的力优化控制策略。考虑到执行器末端的速度和位置参量,阻尼控制包含比例微分控制环节,通过期望作用力与实际从机器人作用力的误差值,将力误差反馈信号转换为从机器人末端的速度修正量。机器人腕部安装的力传感器可用于确定末端执行器与物体之间的相互作用力 ${f_{\rm{s}}}$ 。对从机器人的阻尼控制律表示为:

$\left\{\!\!\!\! {\begin{array}{*{20}{l}} {{{\dot x}_2} = {k_{\rm{p}}}_{_f}{e_f} + {k_{\rm{d}}}_{_f}{{\dot e}_f}} , \\ {{e_f} = {f_{\rm{d}}} - {f_{\rm{s}}} = {f_{\rm{d}}} - {f_2}} \end{array}} \right.$ (6)

式中, ${\dot x_2}$ 为从机器人速度修正量, ${f_{\rm{d}}}$ 为期望作用力, ${e_f}$ 为从机器人的力误差值, ${\dot e_f}$ 为从机器人的力变化率误差值, ${k_{{\rm{p}}_f}}$ 为力控制比例系数, ${k_{{\rm{d}}_f}}$ 为力控制微分系数。

2.3 系统控制框图与输入输出

主从机器人控制系统框图如图4所示,为双输入、双输出系统。

图4 主从机器人控制系统框图 Fig. 4 Block diagram of master-slave cooperative control system

主从机器人的控制策略:主从机器人均采用比例微分控制律,分别采用模糊控制规则和细菌觅食算法寻优,对各自的微分系数( ${k_{\rm{p}}}$ )与比例系数( ${k_{\rm{d}}}$ )进行整定[9]

控制器输入量为主机器人期望位移 ${x_{\rm{d}}}$ 、从机器人期望力 ${f_{\rm{d}}}$ ;控制器输出量为主机器人力修正量 ${f_1}$ 、从机器人速度修正量 ${\dot x_2}$ ;控制系统的输出量为主机器人实际位移 ${x_1}$ 、从机器人实际施加力 ${f_{\rm{s}}}$

3 模糊控制器设计

模糊控制属于智能控制范畴,是一种非线性控制策略[10]。采用模糊控制器的优势在于:位置偏移量误差是动态变化的被控量,模糊控制规则根据变化的被控量输出动态变化的控制参数,更加契合主机器人位置控制的准确度要求。

1)系统采用双输入、双输出的模糊控制器,输入语言量为位置误差 $e = {e_x}$ 和位置误差变化率 $ec = {\dot e_x}$ ,输出控制量为 $\Delta {k_{{\rm{p}}_x}}$ $\Delta {k_{{{\rm{d}}_x}}}$ 。为保证控制器的基本控制性能,同时实现模糊控制的修正效果,PD参数的输出规则设置为:

$\left\{\!\!\!\! {\begin{array}{*{20}{c}} {{k_{{{\rm{p}}_x}}} = \Delta {k_{{{\rm{p}}_x}}} + {k_{{{\rm{p}}_{{x_0}}}}}} ,\\ {{k_{{{\rm{d}}_x}}} = \Delta {k_{{{\rm{d}}_x}}} + {k_{{{\rm{d}}_{{x_0}}}}}} \end{array}} \right.$ (7)

式中: ${k_{{{\rm{p}}_{{x_0}}}}} = 400$ ${k_{{{\rm{d}}_{{x_0}}}}} = 45$ 为初始PD参数设定值,即常规PD控制的参数值; $\Delta {k_{{{\rm{p}}_x}}}$ $\Delta {k_{{{\rm{d}}_x}}}$ 为模糊控制器输出的参数修正值。

2)系统模糊控制器输入、输出语言值均取为“负大”(NB)、“负中”(NM)、“负小”(NS)、“零”(ZO)、“正小”(PS)、“正中”(PM)、“正大”(PB)7个[11]

依据PD控制确定变量范围,设置输入变量的论域为 $e \in \left( { – 1.8,1.8} \right)$ $ec \in \left( { –18,18} \right)$ ;设置输出变量的论域为 $\Delta {k_{{{\rm{p}}_x}}} \in \left( { - 160,160} \right)$ $\Delta {k_{{{\rm{d}}_x}}} \in \left( { - 36,36} \right)$

根据经验公式 $k = {x_{{\rm{max}} }}/l$ $k' = l/{y_{{\rm{max}} }}$ 分别确定前后向比例因子,其中取 $l = 6$ ,为此, ${k_e} = 6/1.8 = 10/3$ ${k_{ec}} = 6/18 = 1/3$ ${k_{{k_{\rm{p}}}}} = 160/6 = 80/3$ ${k_{{k_{\rm{d}}}}} = 36/6 = 6$

3)模糊控制策略在PD控制的基础上进行参数修正,基于专家经验及基本整定原则[12],整理出控制规则见表12

表1 ${{\Delta}} {{{k}}_{{{\rm{p}}_{{x}}}}}$ 模糊控制规则 Tab. 1 Fuzzy control rule of ${{\Delta}} {{{k}}_{{{\rm{p}}_{{x}}}}}$

表2 ${{\Delta}} {{{k}}_{{{{{\rm{d}}}}_{{x}}}}}$ 模糊控制规则 Tab. 2 Fuzzy control rule of ${{\Delta}} {{{k}}_{{{{{\rm{d}}}}_{{x}}}}}$

图5所示,所得控制器参数与模糊控制规则封装进Simulink的模糊模块并保存为FUZZY2.fis,在下一步仿真分析中进行模块调用。

图5 模糊控制器的封装 Fig. 5 Packaging of fuzzy controller

4 细菌觅食算法PD参数寻优

细菌觅食算法(bacterial foraging algorithm,BFA)由Passino于2002年提出,具有群体智能算法并行搜索、易跳出局部极小值等优点[13]。但是传统细菌觅食算法步长固定,很难同时满足搜索速度与精度的要求。本文提出变步长的改进方法,在不增加迭代次数的基础上,可提高适应度函数的迭代精度。本文选取细菌觅食算法的目的在于为既定机器人工况选取与之对应的控制优化参数,以匹配不同的工况状态。

1)细菌觅食算法优化流程

a.趋化性步骤:任意细菌翻滚或游泳,向更优营养梯度移动。创建单位长度的方向向量 $\left( {{j}} \right)$ 来表征细菌正逆两个方向的翻滚。 $i\left( {{{j}},k,l} \right)$ 代表第 $j$ 个趋化性操作、第 $k$ 个繁殖操作、第 $l$ 次消除–扩散步骤后细菌 $i$ 的位置。 ${{C}}\left( {{j}} \right)$ 为游泳步长的限制向量[14]

$i\left( {{{j}} + 1,k,l} \right) = i\left( {{{j}},k,l} \right) + {{C}}\left( {{j}} \right) \times \left( i \right)$ (8)

b.群聚:目标细菌在趋化性操作后形成具有一定稳定性的高密度细菌集群体。

c.繁殖:在完成设定次数的趋化性操作后,细菌集到达繁殖阶段,细菌种群的大小为 $S$ ,细菌个体i的适应度值设为 ${B_{sj}}\left( {i,{{j}},k,l} \right)$ ,此时适应度较差的 $ {k \le 3}{\text{{\text{、}}}} $ ${k > 3} $ 个个体被淘汰,转而由 $S/2$ 个适应度较好的个体分裂繁殖替代,保证细菌种群大小始终不变。

d.消除与扩散:这是一种突然性小概率迁移行为。当一个问题的解空间存在多个极值点,算法易陷入局部极值,引入该操作可以提高算法的全局搜索能力。将迁移操作的概率设为 $p$ ,符合迁移条件的新细菌会被随机分配到解空间去。

2)主要参数及选取依据

参数选取如表3所示。依据本文所述,需要对两个参数进行寻优,因此搜索维度为2。依据参数在常规方法中的取值结果,将初始取值设置为(0,100)和(0,50)。参照已知的双参数细菌觅食算法寻优的迭代流程,预设趋化次数为10,消除扩散次数为2,复制步骤数为4,繁殖数量为总细菌数的1/2。消除与扩散为小概率事件,因此消除扩散概率设置为0.1,由扩散概率细菌样本总数的乘积得到期望扩散细菌数。令期望的消除扩散值为2,由此将细菌总数设为20。由于是基于常规方法粗调参数的寻优算法,设置限制的游泳长度为5%~10%的预设区间最大值,此处取限制游泳长度为4。

表3 细菌觅食算法的主要参数 Tab. 3 Main parameters of BFA

3)步长改进方法

受种群代数更迭与适应度提高影响,细菌限制步长发生变化。前代细菌在趋化性操作后进行繁殖,次代细菌的步长须按一定比例因子进行缩进,以实现更高精度的微调寻优。对于步长改变的设定由算法迭代设细菌 $i$ 的初始步长为 ${{C}}\left( {:,1} \right)$ ,运动步长每代缩进10%,最后一次迭代步长为前一代的25%,算法规则表示为:

$ {{C}}\left( {:,k + 1} \right) = \left\{\!\!\!\! {\begin{array}{*{20}{c}} {0.9 \times {{C}}\left( {:,k} \right),k \le 3};\\ {0.9 \times {{C}}\left( {:,k} \right),k > 3} \end{array}} \right. $ (9)

步长改进的调参过程:首先,在基本细菌觅食算法上取步长缩进为25%,多次实验观察迭代结果。在第2次复制操作后,总是存在少量情况,有最小适应度显著小于未改进前。在第3、4次复制操作后,未存在更小适应度,虽最小适应度值不同,但结果相近。由此可得,25%的步长变化量过大,导致迭代过程多数时间无法达到最佳适应度函数区域,但是当步长缩进到75%时,确实可以提高寻优精度。据此,将步长缩进值设为10%,3次复制后步长为原步长的72.9%,与步长缩进为75%时相近,再次进行迭代。结果表明,此时有一半的细菌样本数达到最小适应度值。为在设置少量样本时提高达到最小适应度的样本比例,将最后1次步长设为前次步长的25%,再次进行实验。此时仅有1~2个样本迭代不收敛,考虑消除扩散操作存在0~2个少量样本脱离最佳营养梯度,未收敛样本数在合理范围内。

4)适应度函数的设计基于响应曲线 ${f_{\rm{s}}}$ 的时域性能指标

指标有误差绝对值 $\left| {{e_f}} \right| = \left| {{f_{\rm{d}}} - {f_{\rm{s}}}} \right|$ 、上升时间 ${t_{\rm{r}}}$ 、超调量 $pos$ 和振荡时间(曲线波动时间) ${t_{\rm{c}}}$

设计流程:首先,用MATLAB软件编写.m函数,求取阶跃响应曲线,表征上述性能指标。然后,设计适应度,即代价函数。函数的值越小表明适应度越高,即PD参数取值越优。设计的适应度函数具体为:

$B{_{sj}} = \int\nolimits_0^3 {\left( {{\widetilde \omega _1}\left| {{e_f}} \right|} \right)} {\rm{d}}t + {\widetilde\omega _2}pos + {\widetilde\omega _3}{t_{\rm{c}}}$ (10)

式中: $t = \left[ {0,3} \right]$ ,为函数的定义域,s; ${\widetilde\omega _1} = 1$ ,为误差绝对值加权值; ${\widetilde\omega _2} = \left\{\!\!\!\! {\begin{array}{*{20}{l}}{0,\;pos{\rm{ < 0}}{\rm{.02}}};\\{100\;000,\;pos \ge 0.02}\end{array}} \right.$ ,为超调量惩罚值; ${\widetilde\omega _3} = 100$ ,为振荡时间加权值。

5 仿真分析

图4可知,在Simulink仿真过程中,主从控制器是相互联结的双环反馈控制器整体。

为便于阐述各优化方法的仿真效果,将主机器人的位置偏差输出信号采样保存为.mat文件,通过From Space模块传递给从机器人的控制器模块。由此将双环反馈控制器拆分为两个部分进行叙述。

5.1 MATLAB/Simulink仿真模型

取从机器人的位置信号为期望位置信号( ${x_2} = {x_{\rm{d}}}$ ),代入式(3)得:

$f = {f_1} + {b_{\rm{s}}}{\dot x_{\rm{d}}} + {k_{\rm{s}}}{x_{\rm{d}}} = {m_1}{\ddot x_1} + {b_{\rm{s}}}{\ddot x_1} + {k_{\rm{s}}}{x_1}$ (11)

对式(11)进行拉氏变换得:

$\frac{{{x_1}\left( s \right)}}{f} = \frac{1}{{{m_1}{S^2} + {b_{\rm{s}}}S + {k_{\rm{s}}}}} $ (12)

式(12)为主机器人的传递函数,其位置控制器的MATLAB/Simulink仿真模型如图6所示。

图6 位置控制器仿真模型 Fig. 6 Simulation model of position controller

图6可知,模型包括常规控制与模糊自整定控制两种控制模块。右侧的示波器直接输出主机器人的期望位置信号、实际位置信号与位置误差信号,可直观比较两种方法的参数整定性能。

令主机器人位置控制器输出的位置误差值为 ${e_x} = {x_1}$ ,阻尼控制的从机器人速度修正量由式(6)表示。将 ${e_x} = {x_1}$ 与式(6)代入式(4),可以由力传感器获得实际力 ${f_{\rm{s}}}$ 。阻尼控制器仿真模型如图7所示。

图7 阻尼控制器仿真模型 Fig. 7 Simulation model of damping controller

图7可知,仿真模型通过From Workspace模块引入主机器人的实际位置误差信号 ${e_x}$ ,实现仿真环境下从机器人对主机器人的实时轨迹追踪。此外, ${k_{\rm{p}}}$ ${k_{\rm{d}}}$ 由优化细菌觅食算法的.m函数进行寻优赋值。

Simulink仿真进行3次,输入信号为:

$ {\quad\quad\quad\quad x_{\rm{d}}} = \left\{\!\!\!\! {\begin{array}{*{20}{l}} {0,t \in \left[ {0,0.5} \right]};\\ {a\left( {t - 0.5} \right),t \in \left( {0.5,4.5} \right]};\\ {a\left( { - t + 8.5} \right),t \in \left( {4.5,8.5} \right]} \end{array}} \right. $ (13)
$ {f_{\rm{d}}} = \left\{\!\!\!\! {\begin{array}{*{20}{l}} {0,t \in \left[ {0,0.5} \right]};\\ {b,t \in \left( {0.5,4.5} \right]};\\ { - b,t \in \left( {4.5,8.5} \right]} \end{array}} \right. $ (14)

式中, $a = 20{\text{、}}30{\text{、}}40$ $b = 5{\text{、}}10{\text{、}}20{\text{。}}$

输入信号模拟搬运过程中的匀速往返工况。主机器人的输入信号是匀速往返的期望位置信号,用三角波信号表示;从机器人的输入信号是维持匀速运动所需的期望力,用阶跃信号表示。

5.2 位置控制器的位置追踪

位置控制器分别采用常规方法、模糊控制整定PD参数。输入不同的 ${x_{\rm{d}}}$ ${f_{\rm{d}}}$ 信号,仿真并采集 ${x_1}$ ${e_x}$ 的曲线。当 $a = 40$ $b = 20$ 时,位置追踪误差最大。

图8为输出的位置追踪信号 ${x_1}$ 及其误差 ${e_x}$ 的波形图,获得的位置追踪性能指标如表4所示。

表4 位置追踪性能指标 Tab. 4 Performance of position tracking

图8 位置追踪信号特征曲线 Fig. 8 Characteristic curves of position tracking signal

综合图8表4可知,0.5~1.5 s和4.5~5.5 s时,位置追踪误差波动较大。相对常规PD控制,模糊控制器的最大位置误差量减少约50%,最大位置追踪误差小于2 mm。模糊控制器的信号达到稳态的调整时间更少,信号于最大波动后0.3 s内立即精确追踪输入信号,并且消除了误差零点附近的振荡。由此可见,模糊控制器的位置追踪效果优于常规PD控制。

5.3 阻尼控制器的力追踪

阻尼控制器分别采用常规方法、优化细菌觅食算法整定PD参数。当ab取不同值时,算法迭代的优化效果类似。

$a = 20$ $b = 5$ 图9为输出的力追踪误差 ${e_f}$ 特征曲线,获得的力追踪性能指标如表5所示。

表5 力追踪性能指标 Tab. 5 Performance indicators of force tracking

图9 力追踪误差特征曲线 Fig. 9 Characteristic curves of force tracking error

结合图9表5可知:

1)在0.5~1.0 s和4.5~5.0 s处,力追踪误差波动较大。相对常规PD控制,细菌觅食算法(BFA)寻优的最大力追踪误差减少约40%,最大力追踪误差不超过0.04 N。细菌觅食算法通过惩罚函数优化反向力误差值,峰值误差后的振荡较为平缓,且有效消除了过零点振荡。越过大波动区域后,细菌觅食算法的力追踪效果与常规PD控制相似,均控制在0.01 N以内,并逐渐趋于稳态。

2)根据设计的适应度函数,运行细菌觅食算法优化前后的细菌分布对比如图10所示。

图10 算法优化初始与结束阶段的细菌分布对比 Fig. 10 Distribution comparison of the bacterials at the initial and end stages of optimizing algorithms

运行优化算法寻优6次,在均获得相同最小代价值 ${B_{{\rm{s}}j}} = 23.000\;2$ 的前提下,优化的 ${k_{{{\rm{p}}_f}}}$ ${k_{{{\rm{d}}_f}}}$ 存在表6所示的不同取值。

表6 适应度函数寻优结果 Tab. 6 Optimization results of fitness function

表6为6次迭代的寻优结果, $B_{{\rm{s}}j} $ 最小值均为23.0002,可见算法参数选择得当,适应度函数收敛。选取第1、2组的 ${k_{{{{p}}_f}}}$ ${k_{{{{d}}_f}}} $ 值,分别输出相应 ${e_f}$ 曲线,如图9中曲线BFA1与BFA2所示。二者比较后可知,取得的力误差追踪效果几近相同。由此可以看出,算法具有良好收敛性,且寻优效果较好。

5.4 从机器人的位置与速度修正

$a = 40$ $b = 20$ 时,主机器人位置偏差量 ${x_1}$ 达到最大。从机器人通过阻尼控制器输出速度修正量,实时修正与主机器人实际位移量的偏差。通过Simulink仿真,输出实际位移修正量的主从误差图,并对其进行分析。

实际位移偏移 ${x_1}$ 与位移修正量 ${x_2}$ 的差值如图11所示。在4.5 s附近,误差由0.175 mm跃变为–0.160 mm,位置误差的瞬态变化量约为0.35 mm,远小于柔性夹爪允许的最大误差量。在匀速前进与匀速后退的过程中,稳态误差值不超过0.15 mm,由此可见,从机器人的位移修正量对主机器人位移偏移量有良好的跟随性。

图11 位移误差特征曲线 Fig. 11 Characteristic curve of correction error

实际速度偏移量 ${\dot x_1}$ 与速度修正量 ${\dot x_2}$ 的差值表征为图11曲线的导数。在0.5 s与4.5 s附近速度值分别达到极大值1.5 mm/s和–3.0 mm/s,主从协同运动的速度差值微小。从机器人达到速度极差后,可在0.2 s以内迅速修正。可见,从机器人的速度修正对主机器人速度偏移量的追踪性能良好。

6 结 论

1)采用主从协同的控制模式,提出力/位双环反馈的控制策略。该复合控制策略解决了位置–力控制的控制精度问题,提高了作业稳定性,契合实际工业领域的主从协同模式,为多机器人协同作业系统提供了有效的控制方法。

2)研究结果表明:在自适应控制优化方面,主机器人的最大位置误差为1.53 mm,从机器人的最大力误差为0.038 N。较常规PD控制,减少约40%的最大追踪误差,且有效消除力追踪过程中的过零振荡现象。在主从动态追踪性能方面,追踪位置误差控制在0.18 mm内,从机器人可在0.2 s内快速修正速度偏差,验证了理论方法的合理性与有效性。该方法有效消除了主机器人扰动偏移量对从机器人跟随运动的影响,显著提升了主从机器人间的动态追踪性能,具有一定的工程应用前景。

3)进一步地,将本文所述的单轴向力–位控制策略延伸至笛卡尔空间中力矩–转角控制策略,搭建综合的6维广义力–位控制系统。在后续实验研究中,面向复杂曲面冲压的双机器人协同作业工况,在双机器人作业平台上进一步验证6维广义力–位控制策略应对复杂工况的优越性。最终构建一整套轨迹平滑、运行稳定的双机器人搬运与冲压系统。

参考文献
[1]
Wu Jun,Xu Xin,Lian Chuanqiang. A survey of recent advance in cooperative multi–robot systems[J]. CAAI Transactions on Intelligent Systems, 2011, 6(1): 13-27. [吴军,徐昕,连传强. 协作多机器人系统研究进展综述[J]. 智能系统学报, 2011, 6(1): 13-27. DOI:10.3969/j.issn.1673-4785.2011.01.002]
[2]
Li Zhengyi.Research and application of robot force position control methods for robot-environment interaction[D].Wuhan:Huazhong University of Science and Technology,2011.
李正义.机器人与环境间力/位置控制技术研究与应用[D].武汉:华中科技大学,2011.
[3]
Jankowski K P,Hoda A E. Inverse dynamics and feedforward controllers for high precision position/force tracking of flexible joint robots[J]. Robotica, 1994, 12(3): 227-241. DOI:10.1017/S0263574700017203
[4]
Baigzadehnoe B,Rahmani Z,Khosravi A. On position/force tracking control problem of cooperative robot manipulators using adaptive fuzzy backstepping approach[J]. Isa Transactions, 2017, 70: 432. DOI:10.1016/j.isatra.2017.07.029
[5]
Jung S,Hsia T C,Bonitz R G. Force tracking impedance control of robot manipulators under unknown environment[J]. IEEE Transactions on Control Systems Technology, 2004, 12(3): 474-483. DOI:10.1109/tcst.2004.824320
[6]
Ouyang Fan,Zhang Tie,Chen Yang. Genetic algorithm-optimized PD damping control of dual-robot coordinated transportation[J]. Journal of Shanghai Jiaotong University, 2016, 50(6): 879-883. [欧阳帆,张铁,陈杨. 基于遗传算法的双机器人协调搬运阻尼比例微分控制方法[J]. 上海交通大学学报, 2016, 50(6): 879-883. DOI:10.16183/j.cnki.jsjtu.2016.06.011]
[7]
Li Y N,Ge S S. Force tracking control for motion synchronization in human-robot collaboration[J]. Robotica, 2016, 34(6): 1260-1281. DOI:10.1017/S0263574714002240
[8]
Kab I K,Zheng F Y. Two strategies of position and force control for two industrial robots handling a single object[J]. Robotics & Autonomous Systems, 1989, 5(4): 395-403. DOI:10.1016/0921-8890(89)90023-7
[9]
Zafer C,Goksu G,Murat L,et al. Effects on load-frequency control of a solar power system with a two-area interconnected thermal power plant and its control with a new BFA algorithm[J]. Issn Elektronika Ir Elektrotechnika, 2018, 24(6): 3-10. DOI:10.5755/j01.eie.24.6.22281
[10]
Shubhangi R,Hemant A. Comparative analysis among PI controller,PID controller and fuzzy logic controller for the speed control of induction motor[J]. International Journal of Enhanced Research in Science Technology & Engineering, 2013, 2(7): 39-46.
[11]
Xu Xingzhi. The strategy of the self-turing fuzzy PID control applying on the robot control system[J]. Manufacturing Automation, 2008, 31(8): 105-107. [许行之. 自整定模糊PID控制策略在机器人控制系统中的应用[J]. 制造业自动化, 2008, 31(8): 105-107.]
[12]
刘金琨.先进PID控制仿真[M].北京:电子工业出版社,2004.
[13]
Xu Zheng,Zhang Gong,Wang Weijun. The dual-mode control technology study of a multi-coil electro-mechanical converter based on bacterial foraging algorithm[J]. Journal of Integration Technology, 2016, 5(6): 72-78. [徐征,张弓,王卫军. 基于细菌觅食算法的多线圈电–机械转换器双模控制技术研究[J]. 集成技术, 2016, 5(6): 72-78.]
[14]
Yang Dalian,Li Xuejun,Jiang Lingli. Improved algorithm of bacterium foraging and its application[J]. Computer Engineering and Applications, 2012, 48(13): 31-34. [杨大炼,李学军,蒋玲莉. 一种细菌觅食算法的改进及其应用[J]. 计算机工程与应用, 2012, 48(13): 31-34. DOI:10.3778/j.issn.1002-8331.2012.13.007]