摘要
软体机械臂具有灵活性和柔顺性的特点,可在实现对位姿跟踪的同时确保与环境交互的安全性,近年成为研究的热点。但由于软体机械臂材料变形是非线性的,其运动学建模的参数众多且难以获得准确值,使软体机械臂实现运动学控制较为困难。为了补偿软体机械臂的不确定性,在现在视觉伺服的基础上,提出一种基于历史数据驱动的手眼视觉伺服新方法。该方法结合基于随机森林算法的控制器来完成机械臂控制任务,通过对历史数据聚类,基于随机森林回归模型建立软体机械臂驱动状态和末端图像特征的逆映射,无须求解机械臂和摄像机的任何参数,即可快速获取系统输入变量。实验结果表明,所提出的方法可以较好地实现预期控制目标。
与传统的刚体机器臂相比,软体机器臂拥有连续变形机体结构,具有良好的运动能力和环境适应性,可高效完成抓握、攀爬等功能性动作,引起了研究人员的广泛关注,在工业生产、医疗手术、救灾探测、生活护理等方面具有广阔应用前景。虽然软体机械臂具有很多优点,但由于软体机械臂的柔性材料和驱动方式,给构型和结构设计、材料选取、力学建模与仿真带来了挑战,也给控制模型及控制系统设计提出了新的难题。
为实现软体机械臂的精确控制,研究者们提出了很多对软体机械臂进行近似建模的方法。Mahl
数据驱动的无模型控制方法通过机器学习等方法建立感测数据与软体机械臂运动的映射进行控制,可以在一定程度上避开软体机械臂建模困难的问题。Thuruthel
除了通过上述方法建立精确的映射外,运用传感器采集状态信息用于控制反馈是提高控制精度的重要方法。视觉传感器常与机械臂集成,很多学者对视觉伺服进行研究并提出了很多方法。Wang
为了克服软体机械臂建模及控制系统设计困难的问题,提出了一种基于机器学习的eye-in-hand视觉伺服控制方法,通过机器学习建立气动软体机械臂气腔压力与图像映射关系,以图像误差为反馈,对气动软体机械臂状态进行动态调整,从而对流体驱动的软体机械臂进行视觉伺服控制。这种方法不需要求解机械臂和摄像机的任何参数,避开了相机标定和软体机械臂建模困难和不精确的问题,实现软体机械臂视觉伺服控制,具有较高的控制精度。
Eye-in-hand视觉伺服控制方法需将摄像头安装在机械臂末端执行器上。实现对软体机械臂的控制,须先建立驱动空间、操作空间和任务空间的映射关系。
假设驱动空间在平衡状态时刻的输入表示为:,表示维的驱动空间。设为在输入下,软体机械臂的状态。状态与末端执行器在笛卡尔空间中位置向量和方向向量相关。定义操作空间变量,则可由表示:
。 | (1) |
假设软体机械臂的运动为准静态运动,软体机械臂末端运动可表示为
, | (2) |
式中:表示由于输入差异引起的末端执行器在操作空间的变化,即;为时刻与时刻之间系统输入的差值,即。
任务空间定义为内窥镜相机识别的图像空间,用图像上的位移增量表示任务空间在时刻与时刻之间的变化,即,如

图1 任务空间与位移增量的定义
Fig. 1 Definition of task space and incremental motion
由于图像平面始终垂直于机械臂末端法向方向,因此结合末端执行器状态到图像空间的映射,可将
。 | (3) |
在控制任务中,给定控制目标在任务空间中的期望的运动,对
, | (4) |
式中,的求解在很大程度上取决于当前软体机械臂的状态。在未安装任何末端位姿传感器和软体机械臂状态检测传感器的情况下,软体机械臂状态和末端执行器所在的操作空间始终未知。因此,可以基于软体机械臂的准静态运动,从状态到输入系统状态的直接映射,构建一个新的逆运动学映射来解决操作空间状态未知的问题。这个新的逆运动学映射包含了从状态到输入系统状态的直接映射,可表示为:
。 | (5) |
为了基于实验数据学习逆运动学映射函数,需测量软体机械臂末端执行器相对于图像坐标平面的运动。为了估计图像在2个连续帧之间的二维增量运动,可将图像上特征点所在的像素坐标作为参考。由于软体机械臂工作空间较小,忽略图像坐标在深度上的变化,用平面运动代替进行估计。
估计图像平面中的特征点位移可以先使用轮廓识别算法,提取目标的中心位置后计算位移增量。具体步骤如下:对图像进行二值化处理,按照设定阈值把图像各像素点的灰度值设置为0或255,即将图像转化为黑白图像;通过遍历时刻图像的像素点并识别边界,在OpenC
。 | (6) |
相对于横向移动,相机的轴向移动对特征点坐标识别影响很小,因为轴向运动主要导致被识别对象的缩放,而不是平移。因此,在具有合适帧率的情况下,图像连续帧之间引起的深度变化对图像处理的影响可忽略。在软体机械臂连续运动的过程中,通过特征点图像坐标和预期图像轨迹,能够连续地估计达到预期位置所需要的位移增量。
从图像任务空间运动到驱动空间输入的逆映射学习是一个回归问题。随机森林回归是一种基于CART决策树的集成回归算法,可以解决软体机械臂关节空间和摄像机标定甚至摄像机反馈的噪声引起的参数不确定性。此外,通过聚类将任务空间分类加权,可以提高计算效率和预测的准确度。
CART分类回归
。 | (7) |
对于给定样本集合D,基尼指数为:
, | (8) |
式中,为第类的样本子集。如果样本集合D根据特征A的某一可能值被分割成和两部分,即
, | (9) |
, | (10) |
式中:表示样本集合D中的一个样本;分别是样本的特征值和标签。
在特征A的条件下,集合D的基尼指数定义为
, | (11) |
式中:基尼指数表示集合D的不确定性;基尼指数表示集合D经分割后的不确定性。通过计算每个特征下的基尼指数,可由最小的基尼指数得到最佳的属性划分点。
在控制任务中,可将目标变量看作连续变量,建立回归树,用均方误差(mean-square error, MSE)或者平均绝对误差(mean absolute error, MAE)进行属性划分。对于有M片叶子的回归树,最小化MSE公式为
, | (12) |
式中,表示第m片叶子()的预测值:
。 | (13) |
在每一次的属性划分中,使得每片叶子的MSE之和最小的切分变量和切分点为最优的属性划分。CART选择切分变量和切分点满足
, | (14) |
式中,和表示父节点的输入空间被切分变量和切分点一分为二的2个子集:
(15) |
和由和代入
(16) |
决策树算法所需训练数据少、可靠性高,但易产生过于复杂的模型,对数据的泛化性能差,易产生过拟合现象,对数据微小变化的敏感度高,因此可采用基于决策树的随机森林算法。
随机森林是决策树的集成算法,在集成算法中利用装袋的思想构造多个独立的决策树,根据平均或多数表决原则决定集成评估器的结果,以降低数据过拟合风险。由于算法中加入了随机过程,每个决策树都有少量差异。合并各个树的预测结果,以减少预测方差,提高预测性能。随机森林生成的规则如下:
1)从原始训练集中随机发放回采样训练样本,重复T次;
2)用这T个数据集,分别作为训练集训练T个CART树模型;
3)若特征为M维,指定常数m,随机从M维特征中选取m个子特征集,按照上述建立决策树的方式获得最佳分割;
4)将生成的T棵决策树集成,构成随机森林;
5)由T棵树预测结果的均值作为最终结果并输出。
为了提高机械臂控制的计算效率,减少软体机械臂材料影响,可将输入空间分类。为此,可将分布在整个输入空间中的训练数据划分为N个簇,每个簇中的样本为。使用K均值聚类算法,将每个观测值分配给观测值与聚类中心相似度最大的聚类。驱动输入联合任务空间作为聚类的基础,可以反映机械臂的状态与任务区域的关系。第簇的中心可以表示为,每个簇中的训练数据将生成一个局部的逆运动学映射。对每个簇分别进行随机森林回归算法的训练,保留分类样本的簇中心。在机械臂运动过程中,对实时驱动输入数据依据原有簇中心分类,再代入相对应模型,提高预测精度。
基于随机森林的视觉伺服控制算法如

图2 基于随机森林的视觉伺服控制算法
Fig. 2 Visual servo control algorithm based on random forest
如

图3 软体机械臂结构
Fig. 3 The structure of soft manipulator
气动肌肉由橡胶管、两端刚性基板、外部编织网构成,其内部无任何刚性结构,可以伸长和弯曲。气动肌肉全长180 mm,直径14 mm,壁厚2 mm,外部编织网角度约为70°,可在充气后伸长。
3根气动肌肉和基座连接盘中间留有直径约为6 mm的间隙孔,中间嵌入工业内窥镜相机用以采集实时图像并传输至上位机。相机镜头直径5.5 mm,刚好穿过间隙和小孔,线材长2 m,帧率为30 FPS,采集图像像素为640×480,镜头上带有6个LED灯,可以补充光线,提高图像质量。
驱动系统由气泵、3个电磁比例阀构成。气泵为无油空气压缩机,转速1 380 r/min,公称容积流量40 L/min,额定排气压力0.7 MPa。电磁比例阀为SMC公司ITV0030-3BS轻薄型空气电子比例阀,压力调节范围0.001~0.5 MPa,输出压力分辨率为0.001 MPa。3个电磁比例阀分别与3根气动肌肉相连控制其气压。
在对软体机械臂进行控制之前,要先采集软体机械臂运动时的状态数据建立初始化模型。
在数据采集中,均匀且连续地改变电磁比例阀的气压值,驱动软体机械臂在未知工作空间中运动。当软体机械臂达到平衡状态后,采集对应气压值的末端相机捕获的图像。
为当前状态下的驱动量。系统驱动变化量可以由软体机械臂在2个不同状态下的驱动量和差值得到:
。 | (17) |
图像特征变化量可以由软体机械臂在2个不同状态下的图像特征位置和获得:
。 | (18) |
对于采集的数据集D,驱动空间的维数高于图像空间维数,这可能会导致是一个多值映射,存在多个驱动变量,使软体机械臂从状态下达到预期目标图像特征。为了解决上述多值映射问题,可以使数据及D满足下列约束:
。 | (19) |
上述约束确保3个气动肌肉气腔压力至少有一个为0,从而使多值映射变为单值映射,使每一个驱动变化量对应唯一的尖端位置。
根据数据集D中的软体机械臂驱动状态量进行K均值聚类,使用Python的sklearn库中函数,按照
1)采集原始数据:令其中一个气腔压力为0,其他2个气腔气压从0遍历至0.20 MPa,并采集图像特征点位置,获得1 323条原始数据。
2)训练数据集获取:对采集数据两两作差,获得在不同状态和图像特征变化量下的驱动变量,共计1 749 006条训练数据。
3)数据聚类:根据软体机械臂状态和图像特征对训练数据集聚类,获得3个聚类。
4)训练模型:在每个聚类数据中随机获取部分数据集进行训练,剩余数据用于模型验证并计算R方值,每个聚类模型计算结果分别为0.83、0.85、0.80。
5)获得整个运动空间的随机森林控制模型。
通过2个控制任务检测控制模型的性能。
1)单个点的追踪:在640×480的图像平面中,任意选择目标点,通过随机森林模型预测驱动变量,驱动软体机械臂,使软体机械臂末端相机图像特征点到达目标点。图像平面中,特征点运动轨迹如

图4 单个点追踪目标点轨迹
Fig. 4 Target point trajectory for single point tracking
2)预期轨迹的运动:在640×480的图像平面中,规划一条预期目标轨迹,通过随机森林模型预测驱动变量,驱动软体机械臂,使软体机械臂末端相机图像特征点按照预期轨迹运动。图像平面中,特征点运动轨迹如

图5 追踪预期轨迹的运动
Fig. 5 The movement of the target point for the expected trajectory tracking
实验结果表明,运用随机森林模型近似的逆映射能够准确地拟合输入空间和任务空间的关系,并对到达预期目标位置的驱动变量进行准确的预测。实验结果验证了控制策略的有效性和随机森林模型的准确性。
为了克服软体机械臂运动学建模困难和相机标定的问题,提出了一种基于随机森林算法的气动软体机械臂视觉伺服方法。该方法基于历史数据建立气动软体机械臂气腔压力与图像映射关系,以图像误差为反馈,对气动软体机械臂状态进行动态调整,从而实现对流体驱动的软体机械臂视觉伺服控制。最后搭建了一个由3根气动肌肉构成的软体机械臂实验平台,在此平台上进行单个目标点和预期目标轨迹的追踪控制。实验结果表明软体机械臂追踪时反应迅速,追踪平均误差约为20像素,能够达到预期精度,验证了模型的准确性和有效性。
但是,目前的方法控制精度对历史数据依赖度高,对环境变化适应性不强。在未来的工作中,将研究在线学习的算法进一步提高软体机械臂追踪的准确度和环境适应能力,同时探索一些更有挑战性的动态控制任务。
参考文献
Mahl T, Hildebrandt A, Sawodny O. A variable curvature continuum kinematics for kinematic control of the bionic handling assistant[J]. IEEE Transactions on Robotics, 2014, 30(4): 935-949. [百度学术]
Falkenhahn V, Mahl T, Hildebrandt A, et al. Dynamic modeling of bellows-actuated continuum robots using the euler-lagrange formalism[J]. IEEE Transactions on Robotics, 2015, 31(6): 1483-1496. [百度学术]
Webster R J, Jones B A. Design and kinematic modeling of constant curvature continuum robots: a review[J]. International Journal of Robotics Research, 2010, 29(13): 1661-1683. [百度学术]
Penning R S, Jung J, Ferrier N J, et al. An evaluation of closed-loop control options for continuum manipulators[C]// IEEE International Conference on Robotics and Automation. IEEE, 2012: 5392-5397. [百度学术]
Luo M, Pan Y X, Skorina E H, et al. Slithering towards autonomy: a self-contained soft robotic snake platform with integrated curvature sensing[J]. Bioinspiration & Biomimetics, 2015, 10(5):055001. [百度学术]
Wang C S, Frazelle C G, Wagner J R, et al. Dynamic control of multisection three-dimensional continuum manipulators based on virtual discrete-jointed robot models[J]. IEEE/ASME Transactions on Mechatronics, 2021, 26(2): 777-788. [百度学术]
Till J, Bryson C E, Chung S, et al. Efficient computation of multiple coupled Cosserat rod models for real-time simulation and control of parallel continuum manipulators[C]// IEEE International Conference on Robotics & Automation. IEEE, 2015: 5067-5074. [百度学术]
Lee K H, Leong M, Chow M C W, et al. FEM-based soft robotic control framework for intracavitary navigation[C]// IEEE International Conference on Real-time Computing and Robotics. IEEE, 2018: 11-16. [百度学术]
Thuruthel T G, Falotico E, Manti M, et al. Learning closed loop kinematic controllers for continuum manipulators in unstructured environments[J]. Soft Robotics, 2017, 4(3):285-296. [百度学术]
Lee K H, Fu D K C, Leong M C W, et al. Nonparametric online learning control for soft continuum robot: an enabling technique for effective endoscopic navigation[J]. Soft Robotics, 2017, 4(4): 324-337. [百度学术]
Liu Y H, Wang H S, Wang C Y, et al. Uncalibrated visual servoing of robots using a depth-independent interaction matrix[J]. IEEE Transactions on Robotics, 2006, 22(4): 804-817. [百度学术]
Wang H S, Chen W D, Yu X J, et al. Visual servo control of cable-driven soft robotic manipulator[C]// IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2014: 57-62. [百度学术]
Wang H S, Yang B H, Liu Y T, et al. Visual servoing of soft robot manipulator in constrained environments with an adaptive controller[J]. ASME Transactions on Mechatronics, 2017, 22(1): 41-50. [百度学术]
Xu F, Wang H S, Chen W D, et al. Visual servoing of a cable-driven soft robot manipulator with shape feature[J]. IEEE Robotics and Automation Letters, 2021, 6(3): 4281-4288. [百度学术]
Xu F, Wang H S, Wang J C, et al. Underwater dynamic visual servoing for a soft robot arm with online distortion correction[J]. IEEE/ASME Transactions on Mechatronics, 2019, 24(3): 979-989. [百度学术]
Fang G, Wang X M, Wang K, et al. Vision-based online learning kinematic control for soft robots using local Gaussian process regression[J]. IEEE Robotics and Automation Letters, 2019, 4(2): 1194-1201. [百度学术]
Wang X M, Fang G, Wang K, et al. Eye-in-hand visual servoing enhanced with sparse strain measurement for soft continuum robots[J]. IEEE Robotics and Automation Letters, 2020, 5(2): 2161-2168. [百度学术]
Cao Y, Huang J, Ru H G, et al. A visual servo-based predictive control with echo state Gaussian process for soft bending actuator[J]. IEEE/ASME Transactions on Mechatronics, 2021, 26(1): 574-585. [百度学术]
Siciliano B, Khatib O. Springer handbook of robotics[M]. Berlin, Heidelberg: Springer Berlin Heidelberg, 2008. [百度学术]
Zelinsky A. Learning OpenCV-computer vision with the OpenCV library [J]. IEEE Robotics & Automation Magazine, 2009, 16(3):100. [百度学术]
Suzuki S, Be K. Topological structural analysis of digitized binary images by border following[J]. Computer Vision, Graphics, and Image Processing, 1985, 30(1): 32-46. [百度学术]