决策树算法在机械臂碰撞规避方法中的应用

2024-01-26 09:18佳,王
机械设计与制造 2024年1期
关键词:运动学决策树型号

贾 佳,王 俊

(1.开封大学机械与汽车工程学院,河南 开封 475004;2.河南大学人工智能学院,河南 郑州 450046)

1 引言

机械臂应用于多个领域,其作为兼顾安全性和生产效率的实用工具,已成为全球经济高速发展的有力支撑[1-2]。

机械臂能够按照运动轨迹达成指定目的[3-5],该设备具备规避沿途障碍物的能力,即规避碰撞,然而机械臂工作环境的多样性决定了机械臂碰撞规避能力的有限性,考虑到这一情况,国内外研究人员将碰撞规避技术作为重点研究方向,致力于机械臂碰撞规避方法的开发。

文献[6]方法通过自由漂浮模式空间采集机械臂运动路径相关数据,并利用带约束参数优化方法,获取该相关数据的空间占位关系,通过将该关系输入以碰撞规避函数为基础构建的加权目标模型,实现机械臂的碰撞规避,该方法存在碰撞规避效率低的问题。文献[7]方法通过电机转速拟合关系式获取机械臂电流变化速度,并将该速度值输入机械臂运动学模型中弥补机械臂因碰撞产生的运动参数缺损,通过观察运动参数弥补后机械臂运动学模型的电机转速阈值,实现机械臂的碰撞规避,但是该方法由于获取的行为信息不准确,导致方法存在工作效率低的情况。文献[8]方法通过动量偏差观测器获取机械臂预计碰撞力量,并将该预计值输入以外力矩观测值为基础构建的机械臂碰撞系统,根据系统输出的机械臂柔顺性相关参数,实现机械臂的碰撞规避,但是该方法存在规避性能差的问题。以上方法的精度不高的原因,主要是在决策过程中的精度不高。

为了解决上述方法中存在的问题,研究决策树算法在机械臂碰撞规避方法中的应用。该方法引入决策树算法,设计高精度决策树逻辑结构,结合浓度函数和机械臂运动学方程等,实现机械臂碰撞规避,以期提高机械臂的工作效率。

2 机械臂的运动学分析

在构建机械臂碰撞规避方法前,需要进行机械臂的运行学分析,获取机械臂的运动数据,分析结果有利于规避碰撞,并且该历史运动数据将作为机械臂碰撞规避决策树的输入,获取显著的机械臂碰撞规避决策信息。常规机械臂具有3个转动关节,包括肩关节、肘关节和腕关节,三个关节通过串联的方式连接在一起,使机械臂能够在指定空间范围内自由移动。以常规机械臂为例,分析机械臂的运动学规则。机械臂的三个关节是机械臂灵活运动的重要结构,关节端多由球面体组成,最大程度增加机械臂运动自由度,其中机械臂末端对机械臂工作起到主导性作用。理论上来说,机械臂末端的运动空间不受工作环境约束,可以根据自身杠杆参数和关节转角完成指定要求,但实际上,由于工作环境存在障碍物干扰,机械臂末端的运动空间受到多组外力的限制,导致机械臂工作效率不高。因此,机械臂的运动学分析是以现实环境为基础,通过分析障碍物干扰下机械臂杠杆参数和关节转角,获取能够描述机械臂运动的方程式,从而达到机械臂规避碰撞。

2.1 机械臂杠杆参数

根据运动空间原理,杠杆越长,机械臂在实际场景中受到的障碍物干扰强度越强,因此机械臂的杠杆长度需要具备环境适应能力。常规机械臂的两个杠杆长度分别为400mm和600mm。利用蒙特卡洛法分析机械臂杠杆参数,获取该机械臂杠杆在实际场景中的最适运动范围。蒙特卡洛法的表达式如下:

式中:tmini—蒙特卡洛常数;φRAND—实际场景的维度;α—机械臂杠杆在实际场景中的最小运动范围;Ni—机械臂杠杆在实际场景中的最大运动范围。

2.2 关节转角

机械臂关节受到驱动零件及实际场景限制,无法实现全周转动,常规机械臂关节转角包括α、β和γ,其中,β的转动范围为-(360~180)°;α的转动范围为(-60~90)°;γ的转动范围为(0~180)°。利用遍历搜索算法分析机械臂关节转角,获取该机械臂关节转角在实际场景中的最适运动范围。遍历搜索算法的表达式如下:

式中:vi—遍历搜索常数;Es—实际场景的维度;vr—机械臂关节转角在实际场景中的最大运动范围;Er—机械表关节转角在实际场景中的最小运动范围。

利用随机函数将机械臂杠杆和关节转角在实际场景中的最适运动范围结合,得到能够描述机械臂运动的方程式。随机函数的表达式如下:

式中:ln—随机常数;kn—参与结合的机械臂杠杆在实际场景中的最适运动范围;m—参与结合的机械臂关节转角在实际场景中的最适运动范围。机械臂运动学方程式如下:

式中:ρ—机械臂姿态参数—机械臂位置向量—描述机械臂运动的物理学系数;—现实环境的权重。至此完成机械臂运动学分析,通过分析结果可以获取机械臂的运动数据,更深层次的掌握机械臂,为机械臂规避碰撞奠定基础。

3 机械臂碰撞规避方法

3.1 机械臂工作环境与碰撞初步检测

在引入决策树算法前,需要检测机械臂工作环境,并且进行机械臂碰撞的初步检测,为决策树算法的应用提供环境数据基础,因为环境的多样性对机械臂工作造成一定的阻碍,即环境多样性造成环境复杂。采用二次投影法检测机械臂碰撞过程的本质是将机械臂运动学方程与二次投影法结合,使机械臂碰撞过程简化为三维视角下包围盒[9]相交情况的判断过程。包围盒又称替代模型,包围盒相交情况的判断过程指的是应用线条参与量少、空间维度简单的几何体代替体积庞大、计算较为复杂的目标物体,并在三维视角下,通过观察包围盒离散点分布情况,实现机械臂碰撞检测。机械臂碰撞检测以机械臂运动学方程和二次投影法为基础,构建符合替代条件的三维视角下的包围盒,利用预测函数获取现实场景中障碍物位置与机械臂之间的坐标关系,从而三维空间坐标系与现实场景完全对应,构建机械臂的工作空间。二次投影法的表达式如下:

式中:β—二次投影常数;2a—包围盒构建系数;xOyn—包围盒构建误差;xOym—包围盒与机械臂之间的等比简化参数。预测函数的表达式如下:

式中:qx—预测常数;Qx—三维空间坐标系与现实场景中障碍物位置的对应程度;Aj—三维空间坐标系与现实场景中障碍物位置的对应误差。

机械臂碰撞过程简化后三维视角下包围盒相交情况,如图1所示。

图1 机械臂碰撞过程简化后三维视角下包围盒相交情况Fig.1 Intersection of Bounding Box from 3D Perspective After Simplified Collision Process of Mechanical Arm

图1中,机械臂a、b分别简化为三维坐标系下两个包围盒结构,散落在坐标系下的黑色区域是投影至三维空间的障碍物坐标。成功获取基于机械臂实景运动的简化结构后,通过分析包围盒相交情况,判断机械臂是否发生碰撞。包围盒相交情况的判断过程如下:利用非线性映射方法初步判断包围盒在三维空间中与障碍物坐标的相交情况,若初步判断未取得相交结果,则继续利用投影函数获取障碍物坐标与包围盒之间的最短距离,若输出的最短距离大于0mm,则包围盒与障碍物坐标不相交,若输出的最短距离小于0mm,则包围盒与障碍物坐标相交。根据包围盒与障碍物坐标的相交结果,检测机械臂的碰撞情况。非线性映射方法的表达式如下:

式中:uer—非线性映射常数;tq—三维空间的权重;tq-1—包围盒与障碍物坐标相交情况的判定系数;υ—包围盒与障碍物坐标相交情况的判断误差。投影函数的表达式如下:

式中:pz—投影常数;yz—障碍物坐标与包围盒之间最短距离的获取系数;I4a—障碍物坐标与包围盒之间最短距离的获取误差。

3.2 决策树算法的碰撞规避方法

上述完成了机械臂的工作环境的构建,并且初步检测了机械臂的碰撞情况,但是此时无法使机械臂有效规避碰撞,因此,需要引入决策树算法,构建高效的碰撞规避方法。以简化后三维视角下包围盒所处空间为基础,利用浓度函数采集三维空间中包围盒预计位移信息,根据机械臂追运动学分析结果,并且引入决策树算法,建立基于预计位移信息的机械臂碰撞规避决策树模型,通过将机械臂历史运动数据输入模型,获取机械臂碰撞规避行为决策信息。机械臂可以依靠机械臂碰撞规避决策信息精准定位移动路线,在该路线中机械臂与障碍物隔离,实现机械臂碰撞规避,提高机械臂的工作效率。

浓度函数的表达式如下:

式中:sin—浓度常数;Jnm—机械臂预计位移信息采集系数;|yk|—机械臂预计位移信息采集误差。

应用决策树算法(ITERATIVE DICHOTOMISER 3,ID3),并且根据机械臂运动学分析结果,建立基于预计位移信息的机械臂碰撞规避决策树模型,具体过程如下:利用ID3算法获取包围盒(前文模拟的机械臂)预计位移信息基于不同方向的属性划分点,并规定X方向为包围盒前进方向,该方向的属性划分点为建立机械臂碰撞规避决策树模型的最高决策结点。其他方向的决策结点以最高决策结点为中心持续分裂,直至分裂出一颗完整的机械臂碰撞规避决策树。通过计算决策树每单位分支的信息熵[10],获取基于决策树分支的信息增益,使决策树分支具备机械臂碰撞规避决策效应。

ID3算法的表达式如下:

式中:yent(s)—ID3常数;||—属性划分点获取系数;|e|—属性划分点获取误差。信息熵计算公式如下:

式中:aargmax—信息熵计算常数;ΔT—机械臂碰撞规避决策树分支的信息增益阈值;lv—信息熵计算误差。每单位分支均具备机械臂碰撞规避决策效应的决策树在拟合方法的作用下建立机械臂碰撞规避决策树模型,碰撞规避决策树模型的表达式如下:

式中:w(n)—拟合常数;Sn—决策树模型构建系数;lbn—决策树模型构建误差。机械臂碰撞规避决策树模型,如图2所示。

图2 机械臂碰撞规避决策树模型Fig.2 Collision Avoidance Decision Tree Model of Manipulator

通过式(4)获取机械臂历史运动数据,并且将其输入机械臂碰撞规避决策树模型,模型根据决策函数分析机械臂历史运动数据,并输出碰撞规避效果显著的行为决策信息,从而机械臂避免由于障碍物干扰导致活动受限的问题,实现真正意义上的机械臂碰撞规避。机械臂碰撞规避决策的表达式如下:

式中:η—决策常数;ni—参与计算的机械臂历史运动数据量;btree—决策树模型的权重。

通过上述的机械臂碰撞规避决策树模型,可以实现机械臂的碰撞规避。

4 实验与结果

为了验证决策树算法在机械臂碰撞规避方法中的应用效果,需要测试所提方法的性能,并且选择文献[6]方法和文献[7]方法作为对比方法。

4.1 实验对象与参数

实验过程,选取三家某工业车间三个不同型号的可移动机械臂为研究对象,分别命名为型号一、型号二和型号三机械臂,试验对象,如图3所示。三种型号的机械臂参数,如表1所示。

表1 三种型号的机械臂参数Tab.1 Three Types of Mechanical Arm Parameters

图3 试验对象Fig.3 Test Object

4.2 实验障碍物设置

利用Matlab2010b、Intel Core i8-6900H 计算机处理器,建立障碍物环境,共设置19个障碍物,障碍物大小不一,位置不同,且每个障碍物均标注英文字符以保证试验清晰,多个障碍物构成了工作环境的多样性,即复杂性。障碍物环境,如图4所示。

图4 障碍物环境Fig.4 Barrier Environment

4.3 实验场景路径设置

实验分析碰撞性能和隔离性能,测试均采用图4 的实验环境,但是机器臂行走路径不同,路径均为人工设置。碰撞性能测试的路径为,型号一以障碍物S为起始点,沿障碍物Q、P、N达到终点O,型号二以障碍物I为起点,沿障碍物H、G、F达到终点E,型号三以障碍物J为起点,沿障碍物K、L、达到终点M,三种型号机械臂的路径不同,前进方向不同。隔离性能测试路径是规定三种型号的机械臂固定路线,以障碍物S为起点,沿障碍物Q、P、N、O,达到终点G。

4.4 实验性能分析

4.4.1 碰撞检测性能

利用快速逆运动学模型,采集各型号机械臂在运动过程中的关节力矩绝对值。机械臂碰撞检测是所提方法的初步检测,后续规避碰撞均是以此为基础,因此,需要先验证所提方法的机械臂碰撞检测性能,该性能正常或者更加优异的情况下,验证机械臂碰撞规避性能。正常情况下,机械臂的关节力矩绝对值仅与机械臂型号有关,但是在机械臂位于障碍物较多的复杂环境时,由于机械臂极易与障碍物碰撞而产生力矩损耗,因此机械臂的关节力矩绝对值并不稳定。

现采用所提方法、文献[6]方法和文献[7]方法检测三种型号机械臂的碰撞情况,选择文献[6]方法和文献[7]方法的原因是这两种方法是近期的方法,在时间上具有代表性,并且其与其他方法相比,具备一定的普遍性,因此,选择文献[6]方法和文献[7]方法作为对比方法。在碰撞检测性能中,以关节力矩绝对值超过规定的力矩损耗为机械臂发生碰撞的判断依据,最先检测出机械臂力矩损耗的方法,即是所有方法中碰撞检测效率最高的方法。关节力矩绝对值公式如下:

式中:A—机械臂惯性,单位为kg·m2;B—机械臂角加速度,单位为rad/s^2;V—机械臂质量,单位为kg;δ—机械臂力矩系数。

结合式(14),应用不同方法检测不同型号的机械臂关节力矩情况,如图5所示。

图5 不同型号机械臂力矩损耗检出情况Fig.5 Detection of Torque Loss of Different Types of Manipulator

如图5所示,所提方法针对三种型号的机械臂力矩损耗检出速度均快于文献[6]方法和文献[7]方法,其中在型号二机械臂中,所提方法在0.29s时,检测出机械臂发生碰撞,关节力矩绝对值超过了规定的力矩损耗7.5N·m,文献[6]方法在0.35s检测出机械臂碰撞,关节力矩绝对值超过了7.5N·m,文献[7]方法在0.43s检测出机械臂碰撞,关节力矩绝对值超过了7.5N·m,三者相比可知,所提方法以最短的时间有效检测出机械臂的关节力矩绝对值超过规定的力矩损耗值,即检测出机械臂发生碰撞,因此,分析结果表明采用所提方法检测机械臂碰撞时,其碰撞检测效率更高,可以更快速地为机械臂规避碰撞提供有效数据,从而降低碰撞时长,提高工作效率。

这是因为所提方法通过分析机械臂运动学获取机械臂运动学方程,并以该方程为基础,结合二次投影法将机械臂碰撞过程简化为三维视角下包围盒相交情况的判断过程,使得机械臂碰撞检测的效率更高。

文献[6]方法和文献[7]方法针对三种型号的机械臂力矩损耗检出速度均慢于所提方法,说明采用文献[6]方法和文献[7]方法检测机械臂碰撞时,二者的碰撞检测效率均较低。经上述对比可知,采用所提方法检测机械臂碰撞的效率明显优于传统方法。

4.4.2 隔离性能

采用所提方法、文献[6]方法和文献[7]方法应用于三种型号的机械臂,通过对比不同方法应用后的机械碰撞规避效果,判断不同方法针对机械臂的规避性能。

三种型号机械臂在固定路线上的碰撞规避情况,如图6所示。

图6 机械臂在固定路线上的碰撞规避情况Fig.6 Collision Avoidance of a Manipulator on a Fixed Route

如图6可知,应用所提方法的三种型号的机械臂均未与障碍物发生碰撞,应用文献[6]方法和文献[7]方法的三种型号机械臂均与障碍物发生碰撞,其中文献[6]方法在三种情景下,均与S、Q和O障碍物发生碰撞,文献[7]方法在三种情景下,均与S、P和G障碍物发生碰撞,因此,文献[6]方法和文献[7]方法的机械臂规避碰撞时,二者的规避性能均不佳,所提方法的碰撞规避性能最佳,可以有效隔离机械臂与障碍物。

5 结束语

近年来,机械臂往往展现出优于人工操作的能力,但是机械臂的碰撞规避性能不佳,导致工作效率不高,因此,设计了以决策树算法为基础的机械臂碰撞规避方法,分析了机械臂的运动学后,应用决策树算法,完成机械臂碰撞规避。该方法经过实验分析后,其有效降低了机械臂与障碍物发生碰撞的情况,提高了工作效率。在后续研究中,将针对方法运行时CPU 占比进行深入研究,以期进一步提高方法的运行效率。

猜你喜欢
运动学决策树型号
“三化”在型号研制中的应用研究
航天型号批生产管理模式的思考
型号产品配套管理模式探索与实践
基于MATLAB的6R机器人逆运动学求解分析
一种针对不均衡数据集的SVM决策树算法
基于D-H法的5-DOF串并联机床运动学分析
决策树和随机森林方法在管理决策中的应用
基于决策树的出租车乘客出行目的识别
不同型号CTC/TDCS设备的互联互通
基于运动学原理的LBI解模糊算法