机器人 2022, Vol. 44 Issue (3): 281-290  
0
引用本文
黄沿江, 汪子钦, 张宪民, 吴衍傧. 人与机器人共存中的位姿估计与碰撞检测[J]. 机器人, 2022, 44(3): 281-290.  
HUANG Yanjiang, WANG Ziqin, ZHANG Xianmin, WU Yanbin. Pose Estimation and Collision Detection in Human-robot Coexistence[J]. ROBOT, 2022, 44(3): 281-290.  

人与机器人共存中的位姿估计与碰撞检测
黄沿江1,2 , 汪子钦1,2 , 张宪民1,2 , 吴衍傧1,2     
1. 华南理工大学机械与汽车工程学院,广东 广州 510640;
2. 华南理工大学广东省精密装备与制造技术重点实验室,广东 广州 510640
摘要:提出了一种人与机器人共存中的位姿估计与碰撞检测方法。首先,利用光学3维动作捕捉系统获取标记点位姿信息,建立人体手臂的运动学模型。其次,针对工作空间中障碍物遮挡导致部分标记点位姿信息丢失的问题,将角度传感器获取的肘关节角度作为人体手臂运动学模型的输入,获取人体手臂末端位姿信息。再次,构建人体手臂和协作机器人的胶囊体模型,计算各胶囊体之间的最短距离,从而判断人机的相对位姿关系并实现碰撞检测。最后,通过10个人在不同人机共存场景下对人机位姿估计与碰撞检测方法进行评价。实验结果表明,本方法估计的人体手臂末端位置误差在20mm以内,人机最短距离的最大误差为14.53mm,能够实现人机碰撞检测。
关键词人机交互    位姿估计    碰撞检测    手臂运动    
中图分类号:TP242.6            文献标志码:A            文章编号:1002-0446(2022)-03-0281-10
Pose Estimation and Collision Detection in Human-robot Coexistence
HUANG Yanjiang1,2 , WANG Ziqin1,2 , ZHANG Xianmin1,2 , WU Yanbin1,2     
1. School of Mechanical and Automotive Engineering, South China University of Technology, Guangzhou 510640, China;
2. Guangdong Provincial Key Laboratory of Precision Equipment and Manufacturing Technology, South China University of Technology, Guangzhou 510640, China
Abstract: A method of pose estimation and collision detection in human-robot coexistence is proposed. Firstly, an optical three-dimensional motion capture system is used to obtain the pose information of mark points to establish a kinematic model of the human arm. Secondly, in order to solve the problem that the pose information of some mark points is lost due to obstacles in the workspace, the elbow joint angle obtained by the angle sensor is used as the input of the human arm kinematics model to obtain the pose information of the end of the human arm. Thirdly, the capsule model of the human arm and the collaborative robot is established, and the shortest distance among the capsules is calculated, so as to judge the relative pose relationship between the human and the machine and realize the collision detection. Finally, 10 persons are used to evaluate the human-machine pose estimation and collision detection methods in different human-machine coexistence scenarios. The experimental results show that the error of the end position of the human arm estimated by the proposed method is within 20mm, and the maximum error of the shortest distance between the human and the machine is 14.53mm, which is sufficient for man-machine collision detection.
Keywords: human-robot interaction    pose estimation    collision detection    arm movement    

1 引言(Introduction)

随着机器人技术的发展,其应用从工业制造越来越多地进入到家庭服务、医疗护理、航天科技等诸多领域[1-3]。工作环境结构逐渐由传统单一型环境转变为复杂非结构化环境。在过去的几年中,机器人的应用方式已经发生了变化,从机器人单独工作的无人环境到机器人与人协同进行作业的场景[4-7]。当人与机器人共享同一工作空间时,如何判断机器人和人的位姿状态,从而有效避免人与机器人碰撞是人机交互中需要解决的关键难题之一[6-10]

现有的人机碰撞检测方法大部分是基于工作空间的检测,当检测到人类靠近时,机器人会停止运动或降低速度。标准ISO10218和技术规范TS15066定义了协作机器人的安全要求[8]。根据人的位姿信息可以定义适当的人—机安全距离,并选择合适的碰撞检测方法[9-10]。目前,获取人体手臂位姿信息的传感器主要有基于视觉的传感器(例如激光扫描仪、光学3维动作捕捉系统等)和可穿戴式传感器(例如磁性传感器、惯性传感器、表面肌电信号sEMG(surface electromyography)采集器等)[11-12]。基于视觉的传感器具有非接触性和较高的准确性,但是容易受到环境的影响。磁性传感器可精确测量人体运动,但对电磁噪声非常敏感,且需要将其附着在人体上。惯性传感器是相对便宜的可穿戴设备,可以在混乱的环境中使用。但是,由于其存在漂移现象,长时间使用会缺乏准确性[12]。sEMG能够一定程度地反映人体各肌肉的信息,但具有较大的个体差异性[13]

单一传感信息有时很难反映非结构化环境的特征,部分学者对基于多传感器信息融合的人机位姿估计进行了研究。文[14] 通过光学3维动作捕捉系统和sEMG信息提出一种结合连续小波变换(CWT)和反向传播神经网络(BPNN)的方法来估计人体手臂肘关节的角度和速度。文[15] 结合光学3维动作捕捉系统和sEMG,将肌电信号的特征作为输入,通过神经网络获取关节角度,从而获得数据特征到关节角度的映射。文[16] 通过激光扫描仪和Kinect传感器重建了移动机器人周围环境信息。文[17] 则通过深度传感器和激光扫描仪来获取人与机器人的位姿状态,从而估计人与机器人的相对距离。上述文献中所提出的方法均可以较好地估计人与机器人的相对位姿。但是,在人机交互的复杂非结构化环境中,可能会出现因遮挡导致相关信息丢失的情况,从而影响人机位姿估计和碰撞检测的结果。文[18] 提出了一种基于粒子滤波的人体姿态估计算法,该方法可在人体被局部遮挡的条件下估计人体姿态。文[19] 基于卡尔曼滤波器和最大后验概率目标匹配方法实现了目标的连续跟踪。文[20] 利用改进的分层粒子滤波器来跟踪人体手部运动。文[21] 基于粒子群优化算法,利用多个视角的摄像机所拍摄的视频序列来解决全身关节运动跟踪问题。文[6] 结合光学3维动作捕捉系统和惯性传感器对人体在遮挡情况下的运动信息进行估计。然而,这些方法都采用的是惯性传感器,其自身存在漂移现象,故无法在长时间的人机协作中获取准确的人体运动信息。

在人机协作碰撞检测的研究中,常使用球体[22]、胶囊体[9, 23-24] 和圆柱体[25-28] 等包围盒来构建人与机器人的碰撞检测模型。文[22] 用球体描述人与机器人,机器人通过一组预定义的搜索方向进行搜索和优化,最终选择出一条无碰撞的最优路径。文[9] 用胶囊体来描述人与机械臂,结合惯性测量单元(IMU)和激光扫描数据实现在线碰撞检测。文[25] 采用圆柱体描述不同的物体,并计算圆柱体之间的最小距离,以避免碰撞。文[26] 提出以12个边界框来描述空间状态下的机械臂,并规划出了一条无碰撞的运动轨迹。文[27] 提出了一种能确定相机图像中多个已知对象与多个未知对象之间的最小距离的方法,通过对物体进行投影并判断是否与其他未知对象区域相交来进行碰撞检测。文[28] 利用圆柱体表示机械臂,提出了一种将3维碰撞转变为2维碰撞图的方法。文[29] 提出了一种利用多个深度相机计算物体之间最短距离的方法。文[30] 利用3D点云将面向深度空间的笛卡儿空间离散化,该方法利用网格可以精确描述机器人及其周围环境,但是采用该方法计算机器人与障碍物之间最短距离的成本很高。胶囊体相较于上述方法具有计算成本低、位姿描述准确等优点[24]

本文结合光学3维动作捕捉系统与角度传感器,提出了一种人与机器人共存中的人机位姿估计与碰撞检测方法。首先利用光学3维动作捕捉系统获取人体手臂标记点信息,建立人体手臂的运动学模型。其次,针对运动捕捉系统存在的标记点信息缺失问题,结合角度传感器信息估计人体手臂末端位姿。再次,通过胶囊体构建人体手臂和机器人的碰撞检测模型,计算人机之间的最短距离。最后,通过人机协同作业实验验证本文所提位姿估计与碰撞检测方法的有效性。

2 人与机器人共存中的位姿估计与碰撞检测(Pose estimation and collision detection in human-robot coexistence)

图 1为本文提出的人与机器人共存中的位姿估计与碰撞检测方法。首先,利用动作捕捉系统采集人体手臂的位姿信息,建立人体手臂运动学模型。接着,判断动作捕捉系统的标记点信息是否丢失。当标记点丢失时,结合角度传感器估计人体末端位姿,从而建立人体手臂的胶囊体模型。当标记点未丢失时,则直接根据动作捕捉系统获取的标记点信息建立人体手臂的胶囊体模型。进一步地,根据机器人位姿信息建立机器人胶囊体模型。计算描述人体手臂的胶囊体和机器人的胶囊体之间的最短距离。最后,根据人机最短距离判断是否发生碰撞。

图 1 人与机器人共存中的位姿估计与碰撞检测 Fig.1 Pose estimation and collision detection in human-robot coexistence
2.1 基于动作捕捉系统和角度传感器的人体手臂位姿估计

光学3维动作捕捉系统相较于其他的室内定位技术具有精度高、实时性好等优点。本文采用NOKOV公司的光学3维动作捕捉系统分析手臂前臂和上臂的运动特性。该系统采用8个型号为Mars2H、分辨率为2048$ \times $1088、帧率为340 Hz的红外高速摄像机,系统定位精度为0.02 mm[31-32]。通过不同相机对同一个标记点的空间运动图像进行采集,标记点反射回的红外光通过信号处理后由现场可编程门阵列(FPGA)进行图像抓取和算法处理,获得反光标记点在镜头中的2维坐标。多个镜头通过L形标定框确立空间原点,接着通过T形标定框标定系统工作空间,从而获取每个镜头的具体位置,最终得到标记点的3维坐标。根据获取的3维坐标进行相关性分析,能够在工作空间中捕捉贴有标记点的移动物体的运动。

本文将手臂简化为两连杆结构,在肩关节、肘关节及腕关节上放置5个标记点$ A $$ B $$ D $$ C $$ E $,各点在光学3维动作捕捉系统坐标系中坐标分别为$ (x_{A}, $ $ y_{A}, $ $ z_{A}) $$ (x_{B}, $ $ y_{B}, $ $ z_{B}) $$ (x_{C}, $ $ y_{C}, $ $ z_{C}) $$ (x_{D}, $ $ y_{D}, $ $ z_{D}) $$ (x_{E}, $ $ y_{E}, $ $ z_{E}) $。各点放置位置如图 3(a) 所示。图 3(b)$ O_{\rm{u}} $-$ X_{\rm{u}}Y_{\rm{u}}Z_{\rm{u}} $表示人体上臂坐标系,$ O_{\rm{f}} $-$ X_{\rm{f}}Y_{\rm{f}}Z_{\rm{f}} $表示人体前臂坐标系。$ \theta _{1} $表示竖直状态下两坐标系间的角度偏差。

图 2 光学3维动作捕捉系统工作空间 Fig.2 The workspace of optical 3D motion capture system
图 3 标记点位置及人体上肢坐标系 Fig.3 Mark points position and human upper limb coordinate system

图 4表示简化后的人体手臂两连杆模型,其中,$ {{{\mathit{\boldsymbol{ n }}}}}_{1} $$ {{{\mathit{\boldsymbol{ n }}}}}_{2} $分别表示$ B $$ E $标记点到上臂杆向量$ {{\mathit{\boldsymbol{ L }}}}_{1} $和前臂杆向量$ {{{\mathit{\boldsymbol{ L }}}}}_{2} $的垂直向量。$ F $点表示人体手臂手部末端,向量$ {{{\mathit{\boldsymbol{ L }}}}}_{3} $和前臂杆向量$ {{{\mathit{\boldsymbol{ L }}}}}_{2} $同向(即可理解为将$ {{{\mathit{\boldsymbol{ L }}}}}_{2} $延长至手部末端)。$ \theta $表示肘关节的关节角度:

$ \begin{equation} \theta =\arccos \frac{{{{\mathit{\boldsymbol{ L }}}}}_{1} \cdot {{{\mathit{\boldsymbol{ L }}}}}_{2} }{\left| {{{{\mathit{\boldsymbol{ L }}}}}_{1}} \right|\cdot \left| {{{{\mathit{\boldsymbol{ L }}}}}_{{\rm 2}}} \right|} \end{equation} $ (1)
图 4 简化后的人体手臂两连杆模型 Fig.4 Simplified two-link model of human arm

其中,$ {{{\mathit{\boldsymbol{ L }}}}}_{1}=[x_{A}- x_{C}, y_{A}-y_{C}, z_{A}-z_{C}] $, $ {{{\mathit{\boldsymbol{ L }}}}}_{2}=[x_{C}-x_{D}, y_{C}-y_{D}, $ $ z_{C}-z_{D}] $$ \theta \in (0, \pi ) $。然而,在非结构化环境下,$ D $$ E $两点容易被遮挡,导致前臂位姿信息丢失。针对这一问题,本文通过人体上肢运动学模型结合角度传感器的方法来估计人体手臂末端的位姿。

图 5所示,$ O_{0} $$ O_{1} $所在的位置为图 3(a)$ A $点和$ D $点的位置,$ O_{2} $则表示人体上肢手部末端的位置。上臂姿态的坐标系定义为$ O_{0} $-$ X_{0}Y_{0}Z_{0} $,前臂姿态的坐标系定义为$ O_{1} $-$ X_{1}Y_{1}Z_{1} $$ \theta $为肘关节的关节角度,$ a $表示图 3(a)$ A $点到$ C $点的距离(记为人体上臂长度),$ b $表示图 3(a)$ C $点到$ D $点的距离(记为人体前臂长度),$ c $表示人体上肢手腕到手部末端的距离。

图 5 人体手臂示意图 Fig.5 Schematic diagram of human arm

动作捕捉系统可以根据图 3(a)$ A $$ B $$ C $三点得出上臂坐标系相对于大地坐标系的欧拉角,用$ ZYX $欧拉坐标变换来描述人体上臂的姿态,大地坐标系先绕$ Z $轴旋转$ \alpha $,再绕$ Y $轴旋转$ \beta $,最后绕$ X $轴旋转$ \gamma $。设$ {{{\mathit{\boldsymbol{ R }}}}}^{\rm{world}}_{\rm{arm}} $为大地坐标系到人体上臂坐标系的变换矩阵,可得:

$ \begin{align} {{{\mathit{\boldsymbol{ R }}}}}_{{\rm arm}}^{{\rm world}} &= {{{\mathit{\boldsymbol{ R }}}}}_{Z} (\alpha ){{{\mathit{\boldsymbol{ R }}}}}_{Y} (\beta) {{{\mathit{\boldsymbol{ R }}}}}_{X} (\gamma) \\ &= \begin{bmatrix} {{ c}_{\alpha} { c}_{\beta}} & {{ c}_{\alpha} { s}_{\beta} { s}_{\gamma} -{ s}_{\alpha} { c}_{\gamma}} & {{ c}_{\alpha} { s}_{\beta} { s}_{\gamma} +{ s}_{\alpha} { s}_{\gamma}} \\ {{ s}_{\alpha} { c}_{\beta}} & {{ s}_{\alpha} { s}_{\beta} { s}_{\gamma} +{ c}_{\alpha} { c}_{\gamma}} & {{ s}_{\alpha} { s}_{\beta} { c}_{\gamma} -{ c}_{\alpha} { s}_{\gamma}} \\ {-{ s}_{\beta}} & {{ c}_{\beta} { s}_{\gamma}} & {{ c}_{\beta} { c}_{\gamma}} \\ \end{bmatrix}\!\!\! \end{align} $ (2)

其中$ c_\alpha $表示$ \cos \alpha $$ s_\alpha $表示$ \sin \alpha $,其余依此类推。设$ {{\mathit{\boldsymbol{ t }}}}_{0} = [x_{A}, $ $ y_{A}, $ $ z_{A}]^{\rm T} $,大地坐标系到人体上臂坐标系的齐次变换矩阵$ {{{\mathit{\boldsymbol{ T }}}}}^{\rm{world}}_0 $

$ \begin{equation} {{{\mathit{\boldsymbol{ T }}}}}_{0}^{{\rm world}} = \begin{bmatrix} {{{\mathit{\boldsymbol{ R }}}}}_{{\rm arm}}^{{\rm world}} & {{{\mathit{\boldsymbol{ t }}}}_{0}} \\ 0 & 1 \\ \end{bmatrix} \end{equation} $ (3)

由于人为贴点可能会造成人体手臂在竖直状态下上臂坐标系和前臂坐标系不平行,因此,根据图 3(b) 可知竖直状态下两坐标系间的角度偏差为$ \theta_{1} $。从坐标系$ O_{0} $-$ X_{0}Y_{0}Z_{0} $变换到坐标系$ O_{1} $-$ X_{1}Y_{1}Z_{1} $需要加入补偿值$ {{{\mathit{\boldsymbol{ T }}}}}_{\rm{offset}} $

$ \begin{equation} {{\mathit{\boldsymbol{T}}}}_{{\rm{offset}}} =\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & {\cos \theta_{1}} & {-\sin \theta_{1}} & 0 \\ 0 & {\sin \theta_{1}} & {\cos \theta_{1}} & 0 \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} \end{equation} $ (4)

图 5得坐标系$ O_{0} $-$ X_{0}Y_{0}Z_{0} $变换到坐标系$ O_{1} $-$ X_{1}Y_{1}Z_{1} $的齐次变换矩阵$ {{{\mathit{\boldsymbol{ T }}}}}^0_1 $

$ \begin{equation} {{{\mathit{\boldsymbol{ T }}}}}_{1}^{0} =\begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & {\cos \theta} & {-\sin \theta} & {b\sin \theta} \\ 0 & {\sin \theta} & {\cos \theta} & {b\cos \theta +a} \\ 0 & 0 & 0 & 1 \\ \end{bmatrix} \end{equation} $ (5)

根据式(2)~式(5) 可计算出大地坐标系到人体前臂坐标系的齐次变换矩阵$ {{{\mathit{\boldsymbol{ T }}}}}^{\rm{world}}_1 $

$ \begin{align} {{{\mathit{\boldsymbol{ T }}}}}_{1}^{{\rm world}}& ={{{\mathit{\boldsymbol{ T }}}}}_{0}^{{\rm world}} {\mathit{\boldsymbol{T}}}_{{\rm{offset}}} {{{\mathit{\boldsymbol{ T }}}}}_{1}^{0} \\ &=\begin{bmatrix} {{{\mathit{\boldsymbol{ R }}}}_{1}} & {{{\mathit{\boldsymbol{ t }}}}_{1}} \\ 0 & 1 \\ \end{bmatrix} \end{align} $ (6)

其中,$ {{{\mathit{\boldsymbol{ R }}}}_{1}} $$ {{{\mathit{\boldsymbol{ t }}}}_{1}} $分别为大地坐标系到前臂坐标系的旋转矩阵和平移矩阵。由式(6) 可求出前臂末端$ O_{1} $在世界坐标系中的位姿。

同理,将式(5) 中参数$ b $更改为$ b+c $即可求出手部$ O_{2} $末端的姿态。

2.2 基于胶囊体的碰撞检测

获取人体手臂的位姿信息后,为了保证人机交互的安全性,需要知道人—机之间的最短距离。由图 6可知,本文将人体手臂简化为3个胶囊体(前臂、上臂和手部),6自由度机械臂(UR5)简化为如图所示的4个胶囊体,求出表示人体手臂的3个胶囊体与表示UR5的4个胶囊体的最短距离为人体手臂到UR5的最短距离。

图 6 采用胶囊体表示的人体手臂及UR5 Fig.6 The human arm and UR5 represented by capsules

图 7所示,计算2个胶囊体之间的最短距离可以简化为计算其轴线之间的最短距离。其中每个胶囊可以由2个向量(分别指向胶囊轴段的开始和结束位置)和半径$ \rho $定义。

图 7 碰撞检测的原理示意 Fig.7 Principle of collision detection

$ {{{\mathit{\boldsymbol{ p }}}}}_{1} $$ {{{\mathit{\boldsymbol{ u }}}}}_{1} $(胶囊1)和$ {{{\mathit{\boldsymbol{ p }}}}}_{2} $$ {{{\mathit{\boldsymbol{ u }}}}}_{2} $ (胶囊2)分别表示胶囊轴段端点的位姿向量,因此图中胶囊体的轴线向量分别为$ {{{\mathit{\boldsymbol{ s }}}}}_{1} = {{{\mathit{\boldsymbol{ u }}}}}_{1}-{{{\mathit{\boldsymbol{ p }}}}}_{1} $$ {{{\mathit{\boldsymbol{ s }}}}}_{2}= {{{\mathit{\boldsymbol{ u }}}}}_{2}-{{{\mathit{\boldsymbol{ p }}}}}_{2} $$ {{{\mathit{\boldsymbol{ r }}}}}_{1} $$ {{{\mathit{\boldsymbol{ r }}}}}_{2} $表示2个胶囊体轴线上最近距离的点的坐标,则有:

$ \begin{equation} {{{\mathit{\boldsymbol{ r }}}}}_{1} ={{{\mathit{\boldsymbol{ p }}}}}_{1} +\lambda_{1} {{{\mathit{\boldsymbol{ s }}}}}_{1}, \quad {{{\mathit{\boldsymbol{ r }}}}}_{2} ={{{\mathit{\boldsymbol{ p }}}}}_{2} +\lambda_{2} {{{\mathit{\boldsymbol{ s }}}}}_{2} \end{equation} $ (7)

其中$ \lambda_{1} \in (0, 1) $$ \lambda_{2} \in (0, 1) $,则最短距离函数$ f $

$ \begin{align} \min (f)&=\min (\left| {{{{\mathit{\boldsymbol{ r }}}}}_{1}} \right.-\left. {{{{\mathit{\boldsymbol{ r }}}}}_{2}} \right|) \\ &= \min (({{{\mathit{\boldsymbol{ A }}}}{{\mathit{\boldsymbol{ x }}}}}+{{{\mathit{\boldsymbol{ y }}}}})^{{\rm T}}({{{\mathit{\boldsymbol{ A }}}}{{\mathit{\boldsymbol{ x }}}}}+{\mathit{\boldsymbol{y}}})) \end{align} $ (8)

其中矩阵$ {{{\mathit{\boldsymbol{ A }}}}} ={{{\mathit{\boldsymbol{ s }}}}}_{2}-{{{\mathit{\boldsymbol{ s }}}}}_{1} $$ {{{\mathit{\boldsymbol{ x }}}}} = [ {{{ \lambda}} _{1}} \; \; {{{ \lambda}} _{{2}}}]^{\rm T} $$ {{{ \lambda}} _{{1}}} $$ {{{ \lambda}} _{{2}}} $为0~1之间的随机变量,向量$ {{{\mathit{\boldsymbol{ y }}}}} = {{{\mathit{\boldsymbol{ p }}}}}_{2}-{{{\mathit{\boldsymbol{ p }}}}}_{1} $。采用矩阵$ {{{\mathit{\boldsymbol{ Q }}}}} $$ {{{\mathit{\boldsymbol{ R }}}}} $因式分解矩阵$ {{{\mathit{\boldsymbol{ A }}}}} $,则:

$ \begin{align} \min f &=\min (({\mathit{\boldsymbol{Rx}}}+{{{\mathit{\boldsymbol{ Q }}}}}^{\rm T}{{{\mathit{\boldsymbol{ y }}}}})^{\rm T}({\mathit{\boldsymbol{Rx}}}+{{{\mathit{\boldsymbol{ Q }}}}}^{\rm T}{{{\mathit{\boldsymbol{ y }}}}})) \\ &= \min ({{{\mathit{\boldsymbol{ u }}}}}^{\rm T}{{{\mathit{\boldsymbol{ u }}}}}) \end{align} $ (9)

其中,$ {{{\mathit{\boldsymbol{ Q }}}}} $是一个3$ \times $2的单位正交矩阵,$ {{{\mathit{\boldsymbol{ R }}}}} $是一个2$ \times $2的上三角矩阵。2个胶囊体的最短距离$ d_{\min} $

$ \begin{equation} d_{\min} =\sqrt{\min f +{{{\mathit{\boldsymbol{ y }}}}}^{{\rm T}}{{{\mathit{\boldsymbol{ y }}}}}-{\mathit{\boldsymbol{y}}}^{{\rm T}}{\mathit{\boldsymbol{QQ}}}^{{\rm T}}{{{\mathit{\boldsymbol{ y }}}}}}-\rho_{1} -\rho _{2} \end{equation} $ (10)

其中,$ \rho_{1} $$ \rho_{2} $表示2个胶囊体中圆柱体的半径。

3 实验与讨论(Experiment and discussion) 3.1 不同传感器测量的关节角度对比

在人体手臂前臂被遮挡情况下,需要获取肘关节关节角度来估计人体手臂末端姿态。为验证角度传感器的有效性,本文将角度传感器(型号为SG110)和IMU(型号为LPMS-B2)进行对比。其中,要求测试者按照图 8所示站在动作捕捉系统工作空间中,保持手臂其他部位不动,只运动肘关节让前臂上下摆动。动作捕捉系统、IMU和角度传感器均以100 Hz的频率来测量肘关节角度的变化,肘关节角度的对比结果如图 9表 1所示。

图 8 各传感器的布置 Fig.8 The placement of sensors
图 9 运动轨迹相同时不同传感器测量的关节角度对比 Fig.9 Comparison of joint angles of different sensors with the same motion trajectory
表 1 不同传感器关节角度测量误差比较 Tab. 1 Joint angles error comparison among different sensors

表 1图 9中动作捕捉系统测量的关节角度作为真实值,继而计算出角度传感器和IMU获得的关节角度相对于动作捕捉系统获得的关节角度之间的误差。从表中可以得出角度传感器相较于IMU精度提升了2.27$ ^{\circ} $,且最大误差减小了5.88$ ^{\circ} $。因此,在前臂信息丢失的情况下,角度传感器相比IMU能获得更加准确的关节角度。

3.2 人体上臂末端位姿估计实验

本文实验由10名身心健康的志愿者(男性9人,女性1人,25 $ \pm $ 5岁)参与。受试者按照图 10所示进行运动,其中,M1表示受试者用右手触摸右肩矢状面(保持肩关节不动,肘关节运动),M2表示受试者在矢状平面内将其右臂抬起(保持肘关节不动,肩关节运动),M3表示受试者在冠状平面内将其右臂抬起(保持肘关节不动,肩关节运动),M4表示受试者用右手将地面上的工具放置到工作台上。在实验中,要求受试者按照图 10所示红线轨迹往复运动10 s。

图 10 受试者运动轨迹 Fig.10 Motion trajectories of the subject

图 11中红线表示动作捕捉系统测量的人体手臂末端轨迹,蓝线表示基于角度传感器和手臂运动学模型估计的人体手臂末端轨迹。各受试者在不同运动轨迹下的误差如图 12所示。

图 11 人体手臂末端轨迹 Fig.11 The end trajectory of the human arm
图 12 运动轨迹误差 Fig.12 Motion trajectory error

实验表明,本文方法的M1动作轨迹误差较大,原因是角度传感器需要紧贴在人体手臂,而肘关节在关节角度较大时肌肉紧绷,角度传感器相较人体手臂发生了一定偏移,导致轨迹误差增大。然而在M2、M3和M4动作中,肘关节的关节角度较小,肌肉并未紧绷,因此轨迹误差相较于M1动作较小。整体上看,结合角度传感器估计的手臂末端轨迹与动作捕捉系统获得的末端轨迹接近,个体差异较小,误差在20 mm以内,具有较高的精确性。因此,结合角度传感器信息可在标记点被遮挡情况下较准确地描述人体手臂末端的位姿信息。

3.3 人机碰撞检测实验

图 13为受试者与机器人的碰撞实验。其中,(a) 表示UR5机器人沿$ x $轴方向往复运动时,人体手臂在4~6 s时间段内与其发生碰撞的过程;(b) 表示人体手臂不动,UR5机器人沿图示$ y $轴方向往复运动;(c) 表示在UR5机器人沿$ y $轴方向往复运动,人体手臂在10 ~40 s时间段内与其发生碰撞的过程;(d) 表示UR5机器人不动,人体上肢手部末端与UR5机器人发生碰撞的过程。图 14为在图 13所示运动下的人机碰撞检测实验结果。

图 13 人机碰撞检测实验 Fig.13 Human-robot collision detection experiments
图 14 人机距离测量值与估计值对比 Fig.14 The comparison of measured distance and estimated distance between the human and the robot

图 13中红线表示动作捕捉系统捕捉人体手臂末端标记点计算得到的人机最短距离,蓝线表示利用本文方法估计出人体手臂末端位姿后计算获得的人机最短距离,绿线表示人机距离为0 mm时的检测线。以红线作为人机距离的真实值,估计值与真实值的最大误差如图 15所示。

图 15 人机距离估计值与真实值的最大误差 Fig.15 The maximal error between the measured distance and estimated distance between the human arm and the robot

结果表明,通过本文所提方法计算获得的人机最短距离与通过动作捕捉系统计算获得的人机最短距离相似。当人体手臂与机械臂发生物理接触时,通过本文所提方法计算获得的人机最短距离接近0,说明该方法能够准确地实现碰撞检测。

接着,本文做了前臂末端标记点被遮挡后的人机碰撞检测实验。受试者按照图 16所示的动作顺序进行运动,在2~3.5 s时间段内手臂末端标记点被遮挡。图 17表示该运动下人体手臂前臂末端标记点被遮挡前后人体手臂与机械臂的人机最短距离,图中蓝线表示标记点被遮挡后通过本文方法估计的人机最短距离,红线表示标记点被遮挡前通过动作捕捉系统获得的人体手臂末端到机器人的最短距离。

图 16 前臂末端信息丢失前后运动示意图 Fig.16 The movement of the forearm before and after information loss
图 17 前臂信息丢失前后手臂与机器人的最短距离 Fig.17 The shortest distance between the human arm and the robot before and after the forearm information loss

实验结果表明,本文方法可以及时估计出人体手臂末端的位姿,并进一步计算出人体手臂与机器人之间的最短距离,从而进行碰撞检测。

4 结论(Conclusion)

本文针对人机共存时的安全问题,提出了一种人与机器人共存中的位姿估计与碰撞检测方法。利用光学3维动作捕捉系统和角度传感器信息,获取了人体手臂的运动信息。通过胶囊体建立了人体手臂和机器人的碰撞包围模型,并实现了碰撞检测。为了验证本文方法的有效性,进行了3组对比实验:(1) 将角度传感器和IMU在同一运动下获取的肘关节角度进行对比;(2) 通过本文方法计算获得的人体前臂末端运动轨迹和光学3维动作捕捉系统测量获得的轨迹进行对比;(3) 通过计算人机最短距离实现人机碰撞检测。实验结果表明本文所提方法可以准确地估计人体手臂末端位姿信息,并计算出人机最短距离,从而解决在非结构化环境下人机碰撞检测问题。

未来,将研究如何把人机位姿状态和最短距离反馈给机器人,并进行人机运动规划,实现人机快速自适应避障。

参考文献(References)
[1]
Sheikholeslami S, Moon A, Croft E A. Cooperative gestures for industry: Exploring the efficacy of robot hand configurations in expression of instructional gestures for human-robot interaction[J]. International Journal of Robotics Research, 2017, 36(5-7): 699-720. DOI:10.1177/0278364917709941
[2]
Portugal D, Alvito P, Christodoulou E, et al. A study on the deployment of a service robot in an elderly care center[J]. International Journal of Social Robotics, 2019, 11: 317-341. DOI:10.1007/s12369-018-0492-5
[3]
de Stefano M, Mishra H, Balachandran R, et al. Multi-rate tracking control for a space robot on a controlled satellite: A passivity-based strategy[J]. IEEE Robotics and Automation Letters, 2019, 4(2): 1319-1326. DOI:10.1109/LRA.2019.2895420
[4]
贾计东, 张明路. 人机安全交互技术研究进展及发展趋势[J]. 机械工程学报, 2020, 56(3): 16-30.
Jia J D, Zhang M L. Research progress and development trend of human-machine safe interaction technology[J]. Journal of Mechanical Engineering, 2020, 56(3): 16-30.
[5]
Ersen M, Oztop E, Sariel S. Cognition-enabled robot manipulation in human environments: Requirements, recent work, and open problems[J]. IEEE Robotics & Automation Magazine, 2017, 24(3): 108-122.
[6]
Amorim A, Guimares D, Mendona T, et al. Robust human position estimation in cooperative robotic cells[J]. Robotics and Computer-Integrated Manufacturing, 2021, 67. DOI:10.1016/j.rcim.2020.102035
[7]
王天然. 机器人技术的发展[J]. 机器人, 2017, 39(4): 385-386.
Wang T R. Development of the robotics[J]. Robot, 2017, 39(4): 385-386.
[8]
Saenz J, Behrens R, Schulenburg E, et al. Methods for conside- ring safety in design of robotics applications featuring human-robot collaboration[J]. The International Journal of Advanced Manufacturing Technology, 2020, 107: 2313-2331. DOI:10.1007/s00170-020-05076-5
[9]
Safeea M, Neto P. Minimum distance calculation using laser scanner and IMUs for safe human-robot interaction[J]. Robotics and Computer-Integrated Manufacturing, 2019, 58: 33-42. DOI:10.1016/j.rcim.2019.01.008
[10]
Safeea M, Neto P, Bearee R. On-line collision avoidance for collaborative robot manipulators by adjusting off-line generated paths: An industrial use case[J]. Robotics and Autonomous Systems, 2019, 119: 278-288. DOI:10.1016/j.robot.2019.07.013
[11]
Ordóñez F J, Roggen D. Deep convolutional and LSTM recurrent neural networks for multimodal wearable activity recognition[J]. Sensors, 2016, 16(1). DOI:10.3390/s16010115
[12]
Wolf M T, Assad C, Vernacchia M T, et al. Gesture-based robot control with variable autonomy from the JPL BioSleeve[C]// IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2013: 1160-1165.
[13]
陈锴彬. 基于表面肌电信号的人体手臂关节运动信息预估及人机顺应协作研究[D]. 广州: 华南理工大学, 2020.
Chen K B. Research on the prediction of human arm joint motion information based on surface EMG signal and human-machine compliance collaboration[D]. Guangzhou: South China University of Technology, 2020.
[14]
Huang Y J, Chen K B, Zhang X M, et al. Joint torque estimation for the human arm from sEMG using backpropagation neural networks and autoencoders[J]. Biomedical Signal Processing and Control, 2020, 62. DOI:10.1016/j.bspc.2020.102051
[15]
丁其川, 赵新刚, 韩建达. 基于肌电信号的上肢多关节连续运动估计[J]. 机器人, 2014, 36(4): 469-476.
Ding Q C, Zhao X G, Han J D. EMG-based estimation for multi-joint continuous movement of human upper limb[J]. Robot, 2014, 36(4): 469-476.
[16]
Kousi N, Stoubos C, Gkournelos C, et al. Enabling human robot interaction in flexible robotic assembly lines: An augmented reality based software suite[J]. Procedia CIRP, 2019, 81: 1429-1434. DOI:10.1016/j.procir.2019.04.328
[17]
Magrini E, Ferraguti F, Ronga A J, et al. Human-robot coexistence and interaction in open industrial cells[J]. Robotics and Computer-Integrated Manufacturing, 2020, 61. DOI:10.1016/j.rcim.2019.101846
[18]
Casalino A, Guzman S, Zanchettin A M, et al. Human pose estimation in presence of occlusion using depth camera sensors, in human-robot coexistence scenarios[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2018: 1-7.
[19]
冯柯, 陈临强. 户外环境下抗遮挡的运动目标跟踪方法[J]. 计算机工程与应用, 2011, 47(11): 187-189, 200.
Feng K, Chen L Q. Anti-occlusion moving object tracking method in outdoor environment[J]. Computer Engineering and Applications, 2011, 47(11): 187-189, 200.
[20]
Makris A, Kyriazis N, Argyros A A. Hierarchical particle filtering for 3D hand tracking[C]//IEEE Conference on Computer Vision and Pattern Recognition Workshops. Piscataway, USA: IEEE, 2015: 8-17.
[21]
John V, Trucco E, Ivekovic S. Markerless human articulated tracking using hierarchical particle swarm optimization[J]. Image and Vision Computing, 2010, 28(11): 1530-1547.
[22]
Balan L, Bone G M. Real-time 3D collision avoidance method for safe human and robot coexistence[C]//IEEE/RSJ International Conference on Intelligent Rbots and Systems. Piscataway, USA: IEEE, 2006: 276-282.
[23]
Liu C L, Tomizuka M. Algorithmic safety measures for intelligent industrial co-robots[C]//IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2016: 3095-3102.
[24]
Safeea M, Neto P, Bearee R. Efficient calculation of minimum distance between capsules and its use in robotics[J]. IEEE Access, 2018, 7: 5368-5373.
[25]
Fang C, Rocchi A, Hoffman E M, et al. Efficient self-collision avoidance based on focus of interest for humanoid robots[C]// IEEE-RAS 15th International Conference on Humanoid Ro-bots. Piscataway, USA: IEEE, 2015: 1060-1066.
[26]
Ouyang F, Zhang T. Virtual velocity vector-based offline collision-free path planning of industrial robotic manipulator[J]. International Journal of Advanced Robotic Systems, 2015, 12(9). DOI:10.5772/60127
[27]
Kuhn S, Henrich D. Fast vision-based minimum distance determination between known and unkown objects[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Piscataway, USA: IEEE, 2007: 2186-2191.
[28]
Afaghani A Y, Aiyama Y. On-line collision avoidance between two robot manipulators using collision map and simple escaping method[C]//IEEE/SICE International Symposium on System Integration. Piscataway, USA: IEEE, 2013: 105-110.
[29]
Fabrizio F, Luca A D. Real-time computation of distance to dynamic obstacles with multiple depth sensors[J]. IEEE Robotics and Automation Letters, 2017, 2(1): 56-63.
[30]
Kaldestad K B, Haddadin S, Belder R, et al. Collision avoidance with potential fields based on parallel processing of 3D-point cloud data on the GPU[C]//IEEE International Conference on Robotics and Automation. Piscataway, USA: IEEE, 2014: 3250-3257.
[31]
杨明辉. 基于循环神经网络的运动目标轨迹预测[D]. 武汉: 武汉大学, 2019.
Yang M H. Prediction of moving target trajectory based on recurrent neural network[D]. Wuhan: Wuhan University, 2019.
[32]
NOKOV. 几种智能机器人室内定位方法对比[EB/OL]. (2013-02-28)[2021-06-30]. https://www.nokov.com/support/blogs_detail/Comparison-of-several-indoor-positioning-methods-for-robots.html.
NOKOV. Comparison of several indoor positioning methods of intelligent-robots[EB/OL]. (2013-02-28)[2021-06-30]. https://www.nokov.com/support/blogs_detail/Comparison-of-several-indoor-positioning-methods-for-robots.html.