CN117021066A - 一种基于深度强化学习的机器人视觉伺服运动控制方法 - Google Patents
一种基于深度强化学习的机器人视觉伺服运动控制方法 Download PDFInfo
- Publication number
- CN117021066A CN117021066A CN202310621091.XA CN202310621091A CN117021066A CN 117021066 A CN117021066 A CN 117021066A CN 202310621091 A CN202310621091 A CN 202310621091A CN 117021066 A CN117021066 A CN 117021066A
- Authority
- CN
- China
- Prior art keywords
- robot
- visual
- visual servo
- mixed
- reinforcement learning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 230000002787 reinforcement Effects 0.000 title claims abstract description 49
- 230000000007 visual effect Effects 0.000 claims abstract description 153
- 230000008569 process Effects 0.000 claims abstract description 27
- 238000005457 optimization Methods 0.000 claims abstract description 19
- 238000012549 training Methods 0.000 claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 26
- 239000003795 chemical substances by application Substances 0.000 claims description 21
- 238000005265 energy consumption Methods 0.000 claims description 11
- 230000036461 convulsion Effects 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 3
- 238000007499 fusion processing Methods 0.000 claims description 3
- 238000012886 linear function Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000017105 transposition Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种基于深度强化学习的机器人视觉伺服运动控制方法。包括以下步骤:首先,确定机器人的视觉伺服装配定位任务以及对应的优化目标和约束条件;接着,构建基于深度强化学习的混合视觉伺服控制器;然后,在虚拟环境中对混合视觉伺服控制器进行训练,获得训练完成的混合视觉伺服控制器,再部署到真实环境中,进而控制机器人执行实际装配定位任务。本发明利用虚拟孪生环境和深度强化学习来执行混合视觉伺服控制器的离线训练,能够保证训练过程的安全性,避免真实机器人的不必要损耗,训练后的控制器能够直接部署到真实作业场景中,实现在保证机器人视觉伺服任务稳定性的同时,提高机器人的运动性能,具有较好的工程实用价值。
Description
技术领域
本发明属于工业机器人运动控制领域的一种机器人伺服运动控制方法,特别是一种面向工业机器人视觉伺服装配定位过程的运动规划与控制方法。
背景技术
机器人装配定位是自主装配作业中的一个重要环节,它将待装配零件移动到适当的位置与参考零件进行定位。在规划机器人装配定位任务时,通常是根据参考零件在作业场景中的位姿数据确定机器人运动路径点和相应的运动指令。然而,实际应用中参考零件的位置可能与规划时发生偏离,由此导致机器人按照示教程序到达装配定位点位置后出现无法完成后续装配的情况。为了弥补上述不足,研究人员开始采用视觉伺服控制技术来实现机器人的动态装配定位,并在部分应用案例中取得了良好的效果。
在视觉伺服控制技术的辅助下,机器人拥有了更高的自主能力并能够胜任更为灵活的装配任务。但是视觉伺服过程中存在的一系列约束可能会影响作业任务的稳定性和收敛性。总体而言,视觉伺服中的约束分为两大类:图像/相机约束和机器人/物理约束。图像/相机约束主要由视觉***的局限性导致的,包括相机视野约束、图像雅克比奇异等。而机器人/物理约束产生于机器人和物理空间中,包括机器人关节约束、运动学动力学约束、防碰撞约束等。为了提高视觉伺服的稳定性,不少研究人员引入路径规划方法来改善视觉伺服作业过程,使得机器人能够应对各类约束并达到预期的作业性能。这些方法大致可以划分为以下几类:1)基于图像空间的路径规划,2)基于全局的路径规划,3)基于优化的路径规划。这几类针对视觉伺服的路径规划方法分别从不同的切入点解决了视觉伺服中的约束问题,提高了视觉伺服作业过程的鲁棒性。然而,这些方法仍然难以处理任务较为复杂且考虑约束较多时的情形,而且这些方法也很少考虑机器人作业过程中的运动学和动力学性能。
近些年,强化学习逐渐兴起并被应用到机器人应用领域中实现一些复杂任务,如机器人自主抓取、路径跟踪以及轴孔精密装配等等。同时,研究人员也开始尝试将强化学习应用于视觉伺服中。相比于基于规划的方法依赖于模型分析,基于学习的方法则是通过与环境的交互试错自动探索出一个优化的机器人运动策略。目前,大部分文献采用Q学习进行机器人视觉伺服的运动规划,如相机视野约束控制、伺服增益自适应调节等等。然而,Q学习只能处理离散空间下的问题,无法适用于状态空间或动作空间是连续高维的情况,因此利用Q学习进行视觉伺服运动规划仍具有一定的局限性。
发明内容
本发明为了解决机器人视觉伺服装配定位中的运动规划问题,设计了一个基于深度强化学习的混合视觉伺服(Deep Reinforcement Learning-based Hybrid VisualServoing,DRL-HVS)控制器,并通过在虚拟环境中离线训练的方式实现视觉伺服的运动规划与控制。
本发明的技术方案如下:
(1)确定机器人的视觉伺服装配定位任务以及对应的优化目标和约束条件;
(2)根据视觉伺服装配定位任务以及对应的优化目标和约束条件,构建基于深度强化学习的混合视觉伺服控制器;
(3)在虚拟环境中对基于深度强化学习的混合视觉伺服控制器进行训练,获得训练完成的混合视觉伺服控制器;
(4)将训练完成的混合视觉伺服控制器部署到真实环境中,进而控制机器人执行实际装配定位任务。
所述(1)中,视觉伺服装配定位任务具体为:
确定机器人的起始位置和期望位置,在实现优化目标和满足约束条件的前提下,利用视觉伺服驱动机器人实现从起始位置到期望位置的装配定位,其中驱动机器人的控制过程的公式如下:
vc=[vx,vy,vz,ωx,ωy,ωz]T
e=f-f*
其中,vc表示相机坐标系下相机的六自由度运动速度,vx,vy,vz分别表示相机在相机坐标系的x,y,z轴中的速度分量,ωx,ωy,ωz分别表示相机在相机坐标系的x,y,z轴中的角速度分量,T表示矩阵转置,λ为伺服增益,满足λ∈[0,1],为特征雅克比矩阵的伪逆矩阵的估计值,e表示视觉特征误差,f和f*分别表示相机位于当前位置和期望位置下从图像中提取的视觉特征。
所述(1)中,优化目标为在满足约束条件下顺利完成装配定位任务,并且机器人的运动性能达到最优。
所述(1)中,约束条件包括相机视野约束、机器人关节约束和机器人速度约束,其中相机视野约束具体为目标物体不能离开相机的视野,机器人关节约束具体为机器人在运动过程中各关节角度不能超过其限位,机器人速度约束具体为机器人末端的速度不能超过预设上限。
所述(2)具体为:
根据视觉伺服装配定位任务以及对应的优化目标和约束条件,构建混合视觉伺服模型,基于混合视觉伺服模型,对DDPG智能体进行融合处理后,获得面向混合视觉伺服的深度强化学习模型,用于调节混合视觉伺服模型的参数,由混合视觉伺服模型和深度强化学习模型组成基于深度强化学习的混合视觉伺服控制器。
所述混合视觉伺服模型的公式如下:
eH=[e3D,e2D]T
其中,v′c(t)表示修正后的相机运动速度,vc(t)表示混合视觉伺服模型得到的原始相机运动速度,vc(0)表示混合视觉伺服模型在启动时刻得到的相机运动速度,eH为混合误差矩阵,e3D表示PBVS方法中的视觉误差;e2D表示IBVS方法中的视觉误差,LH表示混合特征雅克比矩阵LH的估计值,λ为伺服增益,H表示权重矩阵,表示加权后的混合特征雅克比矩阵的估计值,n为IBVS方法中2D特征点的数量,/>为衰减因子,h表示PBVS方法的权重值,满足h∈[0,1]。
所述(2)中,面向混合视觉伺服的深度强化学习模型的状态空间、动作空间和回报函数设置如下:
其中,状态空间st的公式如下:
st=[e3D,vc,q,ds]
其中,e3D和vc分别表示相机的位姿误差与相机速度,q表示机器人的当前关节角度值;ds表示2D特征点在图像平面的危险距离;
动作空间at,公式如下:
at=[λ,h]
回报函数的公式如下:
Rsucceed=τ+E+η
其中,Rsucceed表示正值奖励,τ表示运动效率指数,E表示能耗指数,η表示平稳性指数,Rfailed表示负值奖励,Kmax为回合的最大步数,K表示当前回合的步数,表示当前状态下2D特征点误差,/>表示初始状态下2D特征点误差,ω为关节的权重系数向量,qd表示期望位置,qinit表示初始位置,qk表示机器人运动到第k步的位置,||表示对位置之差取绝对值;ReLU()表示整流线性函数,Je表示真实机器人允许的最大关节jerk值,max(|Jt|)则表示整个任务过程中机器人的最大关节jerk值。
所述(3)具体为:
(3.1)在虚拟环境中构建与真实环境一致的工作场景,并将视觉伺服装配定位任务以及对应的优化目标和约束条件同步至虚拟环境中;
(3.2)混合视觉伺服控制器与虚拟环境中的机器人不断地交互生成经验数据,混合视觉伺服控制器在交互过程中进行若干个回合的训练,直至混合视觉伺服控制器中深度强化学习模型的累积回报趋向最大化,获得训练完成的混合视觉伺服控制器。
所述(3.2)中,在每一个时间步中,对于深度强化学习模型的智能体,当前智能体的Actor网络根据t时刻获取的状态空间st计算相应的动作空间at并发送给混合视觉伺服模型,混合视觉伺服模型根据接收到的动作空间at以及混合误差矩阵驱动虚拟环境中的机器人作业;智能体获得奖励rt以及下一时刻的状态st+1,接着将当前时间步的状态空间st、动作空间at、奖励rt和下一时刻的状态st+1作为一组经验数据存储到经验池中;当前智能体从经验池中随机抽取经验数据后计算梯度并更新Critic网络的参数。
所述(4)具体为:
真实环境中机器人的状态信息通过数据接口传送到训练完成的混合视觉伺服控制器中,训练完成的混合视觉伺服控制器根据当前机器人的状态信息计算机器人下一时刻的运动速度并发送给机器人,从而驱动机器人运动,直至视觉伺服装配定位任务完成。
本发明的有益效果在于:
(1)基于深度强化学习的混合视觉伺服模型能够综合PBVS和IBVS的优势,根据指定任务利用经验数据不断优化混合视觉伺服模型的参数调整策略,保证视觉伺服任务的稳定性并提高机器人的运动性能;
(2)利用虚拟孪生环境来执行DRL-HVS控制器的离线训练不仅能够保证训练过程的安全性,还能避免真实机器人的不必要损耗而延长其使用寿命,而且训练后的控制器能够直接部署到真实作业场景中。
附图说明
图1是本发明的方法总体框架示意图;
图2是本发明的机器人视觉伺服任务示意图;
图3是本发明的DRL-HVS控制器的结构示意图;
图4是本发明的特征点危险距离定义示意图;
图5是实施例中真实实验场景与虚拟实验场景;
图6是实施例中DRL-HVS控制器参数在执行任务时的自适应输出;
图7是实施例中DRL-HVS控制器的特征点运动轨迹和相机速度变化;
图8是实施例中视觉伺服实验***软硬件配置原理图;
图9是将训练完成的DRL-HVS控制器部署到真实环境的作业情况,其中(a)是机器人的初始位置(即起始位置),(b)是机器人的相机中的图像,(c)是机器人期望位置,(d)是整个视觉伺服过程特征点的运动轨迹,(e)是仿真环境中机器人的关节速度变化,(f)是真实环境中机器人的关节速度变化。
具体实施方式
为了更好的理解本发明的技术方案,下面结合附图以及具体实例对本发明作进一步详细说明。
如图1所示,本发明包括以下步骤:
(1)确定机器人的视觉伺服装配定位任务以及对应的优化目标和约束条件;
(1)中,视觉伺服装配定位任务具体为:
确定机器人的起始位置和期望位置,在实现优化目标和满足约束条件的前提下,在目标零件的CAD模型上设计或指定若干个适当的3D点作为特征点(如CAD模型的包围盒顶点)。随着相机位置的不断更新,这些3D特征点会投影到图像平面成为2D特征点。利用视觉伺服驱动机器人实现从起始位置到期望位置的装配定位,其中,机器人的视觉伺服任务示意如图2所示,驱动机器人的控制过程的公式如下:
vc=[vx,vy,vz,ωx,ωy,ωz]T
e=f-f*
其中,vc表示相机坐标系下相机的六自由度运动速度,vx,vy,vz分别表示相机在相机坐标系的x,y,z轴中的速度分量,ωx,ωy,ωz分别表示相机在相机坐标系的x,y,z轴中的角速度分量,T表示矩阵转置,λ为伺服增益,满足λ∈[0,1],为特征雅克比矩阵(也称为交互矩阵)的伪逆矩阵的估计值,e表示视觉特征误差,f和f*分别表示相机位于当前位置和期望位置下从图像中提取的视觉特征。这里的视觉特征既可以是图像空间中的图像特征(对应于基于图像的视觉伺服IBVS),也可以是相对于目标物体的相机位姿(对应于基于位置的视觉伺服PBVS)。本发明中相机相对于的目标物***姿用六维向量x=[tx,ty,tz,θx,θy,θz]T表示,前三位表示相对平移分量,后三位是用欧拉角表示的相对旋转分量,其对应的齐次变换矩阵为ObjMC。
(1)中,优化目标为在满足约束条件下顺利完成装配定位任务,并且机器人的运动性能达到最优。机器人的运动性能包含三个方面:1)提高机器人的运动效率以缩短作业周期;2)降低机器人的能耗;3)减小机器人各关节的冲击以保证机器人运动的平稳性。
(1)中,从实际作业任务出发,在视觉伺服过程中主要考虑的约束条件包括相机视野约束、机器人关节约束和机器人速度约束,其中相机视野约束具体为目标物体不能离开相机的视野,否则将无法提取图像中的视觉特征而导致视觉伺服任务的失败,机器人关节约束具体为机器人在运动过程中各关节角度不能超过其限位,机器人速度约束具体为机器人末端的速度不能超过预设上限。
(2)根据视觉伺服装配定位任务以及对应的优化目标和约束条件,构建基于深度强化学习的混合视觉伺服(DRL-HVS)控制器;
(2)具体为:
根据视觉伺服装配定位任务以及对应的优化目标和约束条件,构建混合视觉伺服模型,基于混合视觉伺服模型,对DDPG智能体进行融合处理后,获得面向混合视觉伺服的深度强化学习模型,用于调节混合视觉伺服模型的参数,由混合视觉伺服模型和深度强化学习模型组成基于深度强化学习的混合视觉伺服控制器。
为了消除视觉伺服在启动阶段的速度突变从而保证机器人在实际作业中速度连续,混合视觉伺服模型的公式如下:
eH=[e3D,e2D]T
其中,v′c(t)表示修正后的相机运动速度,vc(t)表示混合视觉伺服模型得到的原始相机运动速度,vc(0)表示混合视觉伺服模型在启动时刻得到的相机运动速度,修正项的存在使得相机的运动速度能够从零开始增加。eH为混合误差矩阵,e3D表示PBVS方法中的视觉误差,具体为相机在当前位置与期望位置之间的位姿误差;e2D表示IBVS方法中的视觉误差,具体为相机在当前位置与期望位置之间的2D特征点误差。LH表示混合特征雅克比矩阵LH的估计值,满足LH=[L3D,L2D]T,L3D表示位姿误差e3D对应的特征雅克比矩阵,L2D表示2D特征点误差e2D对应的特征雅克比矩阵。λ为伺服增益,H表示权重矩阵,/>表示加权后的混合特征雅克比矩阵的估计值,n为IBVS方法中2D特征点的数量,/>为衰减因子,一般取/>h表示PBVS方法的权重值,是一个标量,用来调节PBVS方法和IBVS方法在混合视觉伺服中所占的比重,满足h∈[0,1]。显然,当h取0或1时,该混合视觉伺服模型分别退化为IBVS方法或PBVS方法。
将视觉伺服假设为由若干个间隔很短的时间步构成的离散过程,且机器人任意两个时间步之间的速度是恒定的,因此可以将视觉伺服过程看做是一个马尔科夫决策过程。图3是DRL-HVS控制器的结构示意图,其中深度确定性策略梯度(Deep DeterministicPolicy Gradient,DDPG)智能体是一个采用确定性策略梯度理论训练的Actor-Critic强化学习智能体。面向混合视觉伺服的深度强化学习模型的状态空间、动作空间和回报函数设置如下:
其中,状态空间st的公式如下:
st=[e3D,vc,q,ds]
其中,状态空间st是一个20维的向量,e3D和vc分别表示相机的位姿误差与相机速度,q表示机器人的当前关节角度值,满足q=[q1,q2,q3,q4,q5,q6]q1,q2,q3,q4,q5,q6分别为机器人的6轴关节角度值;ds表示2D特征点在图像平面的危险距离,满足ds=[dx,dy],dx,dy分别表示2D特征点在图像平面x和y两个方向上的危险距离。如图4所示,危险距离ds定义为所有特征点中超出安全区域边界的最远距离Δd与预警距离δ的比值,即ds=Δd/δ,ds∈[0,1]。若所有特征点都位于安全区域,则其危险距离值即为0。由此,特征点在图像平面中的位置信息就可以用一个固定维数的向量来描述,避免了状态空间的维数因特征点数量的变化而改变。因此,本发明设计的状态空间独立于目标物体并适应于不同的应用场合。
动作空间at是由混合视觉伺服模型中两个关键参数构成的二维向量,公式如下:
at=[λ,h]
在训练过程中每个回合只有两类终止结果:成功到达目标位置或因不满足约束条件而意外终止。如果视觉特征误差小于设定阈值则认为机器人到达期望位置且该回合被认定为成功。而如果出现以下情况之一的,则认定该回合为意外终止:1)到达回合的最大限定步数;2)特征点超出相机视野;3)超出机器人关节限位;4)超出机器人的最大限定速度。由此在训练过程中的每一个时间步给予智能体如下奖励rt:
当一个回合成功收敛时,其累积回报为由运动效率指数τ、能耗指数E以及平稳性指数η加和的正值奖励Rsucceed。其中,当视觉伺服任务正常运行时,每一个时间步给予一个固定的负反馈-1/Kmax。当机器人经过K步到达期望位置时,智能体将会得到一个与能耗指数E与运动平稳性指数η相关的正值奖励。通常,机器人能耗的计算方式是将每一时刻各关节力矩与相应角速度的乘积进行累加。为了方便计算,本发明通过机器人在完成整个任务过程中各关节的累计转角值来近似代替。运动平稳性指数η是一个与机器人关节jerk相关的函数。作为机器人关节空间中加速度的微分,关节jerk是反映机器人在运动过程中描述平稳性的重要指标。关节jerk越大说明机器人的运动过程中振动越剧烈,而大量的振动会严重影响机器人的寿命。
对于意外终止的回合,应该根据任务完成程度的不同给予不同程度的惩罚,其累积回报为负值奖励Rfailed。例如,当任务终止时机器人距离期望位置越近,则给予的惩罚也应该越小。本发明选取当前状态与初始状态下2D特征点误差的比值来衡量视觉伺服任务的完成程度。2D特征点误差可以通过以下公式计算获得:
其中,row和col分别表示图像平面的高度和宽度,pi表示当前位置的2D特征点,表示期望位置的2D特征点,|| ||表示二范数。
具体地,回报函数的公式如下:
其中,Rsucceed表示正值奖励,τ表示运动效率指数,满足τ∈[0,1],E表示能耗指数,满足E∈[0,1],η表示平稳性指数,满足E∈[0,1],Rfailed表示负值奖励,Kmax为回合的最大步数,K表示当前回合的步数,表示当前状态下2D特征点误差,/>表示初始状态下2D特征点误差,ω为关节的权重系数向量,考虑距离机器人基座越近的关节能量消耗越大的原则,这里取ω=[4,4,2,2,1,1]。归一化后的能耗指标可以用于度量不同任务场景下的机器人能耗。qd表示期望位置,qinit表示初始位置,qk表示机器人运动到第k步的位置,||表示对位置之差取绝对值;能耗指数E公式中的分子部分表示机器人以关节运动方式从初始位置qinit运动到期望位置qd时各关节的累计转角值,分母部分则表示当前回合机器人各关节的累计转角值。ReLU()表示整流线性函数,满足ReLU(·)=max(·,0),用于在训练前期忽略关节jerk较大的回合。Je表示真实机器人允许的最大关节jerk值,max(|Jt|)则表示整个任务过程中机器人的最大关节jerk值。
(3)在虚拟环境中对基于深度强化学习的混合视觉伺服控制器进行训练,获得训练完成的混合视觉伺服控制器;
(3)具体为:
(3.1)在虚拟环境中构建与真实环境一致的工作场景,并将视觉伺服装配定位任务以及对应的优化目标和约束条件同步至虚拟环境中;
(3.2)在完成深度强化学习模型的初始化后,混合视觉伺服控制器与虚拟环境中的机器人不断地交互生成经验数据,混合视觉伺服控制器在交互过程中进行若干个回合的训练,直至混合视觉伺服控制器中深度强化学习模型的智能体的累积回报趋向正值最大化,获得训练完成的混合视觉伺服控制器。
(3.2)中,在每一个时间步中,对于深度强化学习模型的智能体,当前智能体的Actor网络根据t时刻获取的状态空间st计算相应的动作空间at并发送给混合视觉伺服模型,混合视觉伺服模型根据接收到的动作空间at以及混合误差矩阵计算获得修正的相机运动速度并驱动虚拟环境中的机器人作业;智能体获得奖励rt以及下一时刻的状态st+1,接着将当前时间步的状态空间st、动作空间at、奖励rt和下一时刻的状态st+1作为一组经验数据打包成一个单元(st,at,rt,st+1)存储到经验池中;当前智能体从经验池中随机抽取经验数据后计算梯度并更新Critic网络的参数,同时,Actor网络的参数也按照设定的频率进行更新。
(4)将训练完成的混合视觉伺服控制器部署到真实环境(物理空间)中,进而控制机器人执行实际装配定位任务。
(4)具体为:
真实环境中机器人的状态信息通过数据接口传送到训练完成的混合视觉伺服控制器中,训练完成的混合视觉伺服控制器根据当前机器人的状态信息计算机器人下一时刻的运动速度并发送给机器人,从而驱动机器人运动,直至视觉伺服装配定位任务完成。
具体实施中,真实环境中机器人的状态信息具体是先利用传感器(如相机、编码器等)从真实环境中采集原生数据(如实时图像、机器人运动数据等)并传递到数据处理器,数据处理器中的跟踪算法能够实时估计出当前相机相对于目标物体的位置与姿态,进而计算图像中的其他视觉特征,然后将这些视觉特征连同机器人的运动数据规范化成一定格式的状态信息后再发送给训练完成的混合视觉伺服控制器。
本发明实施例给出一种基于深度强化学习的视觉伺服运动控制方法,该方法主要分为虚拟训练和真实部署两个阶段。结合图5所示的广数RB03A1机器人和AprilTag标志物“TAG36_11”作为目标物体,具体实施过程如下:
A虚拟训练
(1)将图5的(a)所示的真实作业任务场景同步到图5的(b)所示的虚拟环境中,包括相机内参、手眼矩阵以及目标物体相对于机器人基座的相对位姿等数据。利用MATLAB中的强化学习工具箱(Reinforcement Learning Tootbox)实现DRL-HVS控制器的开发。其中,广数RB03A1机器人的运动学参数与DDPG算法的超参数如表1所示。
表1为广数RB03A1机器人运动学参数和强化学习算法超参数表
AprilTag标志物的四个特征点在图像平面上的初始位置和期望位置如表2所示。传统的PBVS和IBVS方法将无法胜任该视觉伺服任务:在PBVS方法中特征点会离开相机视野;而在IBVS方法中则会因机器人速度超过设定阈值而导致任务失败。针对该视觉伺服任务构建DRL-HVS控制器并通过虚拟训练进行运动规划。经过大约3000个回合的训练,智能体最终收敛到一个符合设计目标的运动方案。
表2为特征点在图像平面的初始位置和期望位置表
图6展示了训练完成后的控制器在执行任务时参数λ和h随时间的变化曲线。一般来说,机器人的运动速度与视觉特征的误差成正比。由于在视觉伺服任务开始阶段视觉特征的误差较大,为了防止此时机器人的运动速度超过限定值,这个阶段λ的取值会相对偏小(图6的(a));而随着机器人趋近目标物体,视觉特征误差逐渐减小,可以观察到λ值逐渐增大并最后趋近于1,此时λ值的增大有利于视觉伺服任务的快速收敛。另一方面,h值在此过程中不断增大以确保视觉伺服任务的顺利完成(图6的(b))。从图中可以看出两条参数变化曲线均较为平滑,可以保证机器人在整个运动过程中的平稳性。DRL-HVS控制器在虚拟环境中的任务执行效果如图7的(a)和图7的(b)所示。
B实际部署
将训练后的DRL-HVS控制器按照图8中的软硬件配置移植到真实环境中。机器人的初始位置以及相机中的图像分别如图9的(a)和图9的(b)所示,视觉伺服任务启动后,机器人到达如图9的(c)所示的期望位置,且整个视觉伺服过程特征点的运动轨迹如图9的(d)所示。从图9的(d)中可以观察到,特征点的实际运动轨迹与图9的(a)中的仿真结果基本一致,而且机器人的整体运动过程比较平滑。由此说明经过训练的控制器能够成功部署到真实作业场景中,确保了视觉伺服任务在图像和物理约束下的有效执行。图9的(e)和图9的(f)分别展示了该控制器在虚拟环境和真实环境执行任务过程中机器人的关节速度曲线。可以发现,实际速度曲线与仿真曲线相比有一定的滞后,但最大速度值略大于仿真值。这一现象的指导意义在于虚拟训练之前设置运动学和动力学参数阈值时,设置值应稍小于实际允许值。
以上结合附图详细阐述了本发明的基本原理和主要特征,采用上述发明,可以有效地对工业机器人视觉伺服装配定位任务实现运动规划。虽然上述实施例中仅将AprilTag标志物作为目标物体实现了视觉伺服任务的运动规划,但是本发明也可以实现对实际机械零件实现视觉伺服任务的运动规划,并能保证视觉伺服任务的稳定性并提高机器人的运动性能。本发明的保护范围由随附的权利要求书限定,任何在本发明权利要求基础上进行的改动都是本发明的保护范围。
Claims (10)
1.一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,包括以下步骤:
(1)确定机器人的视觉伺服装配定位任务以及对应的优化目标和约束条件;
(2)根据视觉伺服装配定位任务以及对应的优化目标和约束条件,构建基于深度强化学习的混合视觉伺服控制器;
(3)在虚拟环境中对基于深度强化学习的混合视觉伺服控制器进行训练,获得训练完成的混合视觉伺服控制器;
(4)将训练完成的混合视觉伺服控制器部署到真实环境中,进而控制机器人执行实际装配定位任务。
2.根据权利要求1所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(1)中,视觉伺服装配定位任务具体为:
确定机器人的起始位置和期望位置,在实现优化目标和满足约束条件的前提下,利用视觉伺服驱动机器人实现从起始位置到期望位置的装配定位,其中驱动机器人的控制过程的公式如下:
vc=[vx,vy,vz,ωx,ωy,ωz]T
e=f-f*
其中,vc表示相机坐标系下相机的六自由度运动速度,vx,vy,vz分别表示相机在相机坐标系的x,y,z轴中的速度分量,ωx,ωy,ωz分别表示相机在相机坐标系的x,y,z轴中的角速度分量,T表示矩阵转置,λ为伺服增益,满足λ∈[0,1],为特征雅克比矩阵的伪逆矩阵的估计值,e表示视觉特征误差,f和f*分别表示相机位于当前位置和期望位置下从图像中提取的视觉特征。
3.根据权利要求1所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(1)中,优化目标为在满足约束条件下顺利完成装配定位任务,并且机器人的运动性能达到最优。
4.根据权利要求1所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(1)中,约束条件包括相机视野约束、机器人关节约束和机器人速度约束,其中相机视野约束具体为目标物体不能离开相机的视野,机器人关节约束具体为机器人在运动过程中各关节角度不能超过其限位,机器人速度约束具体为机器人末端的速度不能超过预设上限。
5.根据权利要求1所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(2)具体为:
根据视觉伺服装配定位任务以及对应的优化目标和约束条件,构建混合视觉伺服模型,基于混合视觉伺服模型,对DDPG智能体进行融合处理后,获得面向混合视觉伺服的深度强化学习模型,用于调节混合视觉伺服模型的参数,由混合视觉伺服模型和深度强化学习模型组成基于深度强化学习的混合视觉伺服控制器。
6.根据权利要求5所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述混合视觉伺服模型的公式如下:
eH=[e3D,e2D]T
其中,v′c(t)表示修正后的相机运动速度,vc(t)表示混合视觉伺服模型得到的原始相机运动速度,vc(0)表示混合视觉伺服模型在启动时刻得到的相机运动速度,eH为混合误差矩阵,e3D表示PBVS方法中的视觉误差;e2D表示IBVS方法中的视觉误差,表示混合特征雅克比矩阵LH的估计值,λ为伺服增益,H表示权重矩阵,/>表示加权后的混合特征雅克比矩阵的估计值,n为IBVS方法中2D特征点的数量,/>为衰减因子,h表示PBVS方法的权重值,满足h∈[0,1]。
7.根据权利要求5所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(2)中,面向混合视觉伺服的深度强化学习模型的状态空间、动作空间和回报函数设置如下:
其中,状态空间st的公式如下:
st=[e3D,vc,q,ds]
其中,e3D和vc分别表示相机的位姿误差与相机速度,q表示机器人的当前关节角度值;ds表示2D特征点在图像平面的危险距离;
动作空间at,公式如下:
at=[λ,h]
回报函数的公式如下:
Rsucceed=τ+E+η
其中,Rsucceed表示正值奖励,τ表示运动效率指数,E表示能耗指数,η表示平稳性指数,Rfailed表示负值奖励,Kmax为回合的最大步数,K表示当前回合的步数,表示当前状态下2D特征点误差,/>表示初始状态下2D特征点误差,ω为关节的权重系数向量,qd表示期望位置,qinit表示初始位置,qk表示机器人运动到第k步的位置,||表示对位置之差取绝对值;ReLU()表示整流线性函数,Je表示真实机器人允许的最大关节jerk值,max(|Jt|)则表示整个任务过程中机器人的最大关节jerk值。
8.根据权利要求1所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(3)具体为:
(3.1)在虚拟环境中构建与真实环境一致的工作场景,并将视觉伺服装配定位任务以及对应的优化目标和约束条件同步至虚拟环境中;
(3.2)混合视觉伺服控制器与虚拟环境中的机器人不断地交互生成经验数据,混合视觉伺服控制器在交互过程中进行若干个回合的训练,直至混合视觉伺服控制器中深度强化学习模型的累积回报趋向最大化,获得训练完成的混合视觉伺服控制器。
9.根据权利要求8所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(3.2)中,在每一个时间步中,对于深度强化学习模型的智能体,当前智能体的Actor网络根据t时刻获取的状态空间st计算相应的动作空间at并发送给混合视觉伺服模型,混合视觉伺服模型根据接收到的动作空间at以及混合误差矩阵驱动虚拟环境中的机器人作业;智能体获得奖励rt以及下一时刻的状态st+1,接着将当前时间步的状态空间st、动作空间at、奖励rt和下一时刻的状态st+1作为一组经验数据存储到经验池中;当前智能体从经验池中随机抽取经验数据后计算梯度并更新Critic网络的参数。
10.根据权利要求1所述的一种基于深度强化学习的机器人视觉伺服运动控制方法,其特征在于,所述(4)具体为:
真实环境中机器人的状态信息通过数据接口传送到训练完成的混合视觉伺服控制器中,训练完成的混合视觉伺服控制器根据当前机器人的状态信息计算机器人下一时刻的运动速度并发送给机器人,从而驱动机器人运动,直至视觉伺服装配定位任务完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310621091.XA CN117021066A (zh) | 2023-05-26 | 2023-05-26 | 一种基于深度强化学习的机器人视觉伺服运动控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310621091.XA CN117021066A (zh) | 2023-05-26 | 2023-05-26 | 一种基于深度强化学习的机器人视觉伺服运动控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117021066A true CN117021066A (zh) | 2023-11-10 |
Family
ID=88636047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310621091.XA Pending CN117021066A (zh) | 2023-05-26 | 2023-05-26 | 一种基于深度强化学习的机器人视觉伺服运动控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117021066A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118066182A (zh) * | 2024-04-18 | 2024-05-24 | 苏州海卓伺服驱动技术有限公司 | 一种旋转直驱伺服阀工作状态的智能监测方法及*** |
-
2023
- 2023-05-26 CN CN202310621091.XA patent/CN117021066A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118066182A (zh) * | 2024-04-18 | 2024-05-24 | 苏州海卓伺服驱动技术有限公司 | 一种旋转直驱伺服阀工作状态的智能监测方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107490965B (zh) | 一种空间自由漂浮机械臂的多约束轨迹规划方法 | |
US11707843B2 (en) | Initial reference generation for robot optimization motion planning | |
Wang et al. | A hybrid visual servo controller for robust grasping by wheeled mobile robots | |
Leottau et al. | Decentralized reinforcement learning of robot behaviors | |
Wen et al. | Elman fuzzy adaptive control for obstacle avoidance of mobile robots using hybrid force/position incorporation | |
Rodriguez et al. | DeepWalk: Omnidirectional bipedal gait by deep reinforcement learning | |
CN107966907B (zh) | 一种应用于冗余度机械臂的障碍物躲避解决方法 | |
Polverini et al. | Sensorless and constraint based peg-in-hole task execution with a dual-arm robot | |
CN113829343B (zh) | 基于环境感知的实时多任务多人人机交互*** | |
CN110989626A (zh) | 一种基于控制参数化的无人机路径规划方法 | |
Li et al. | A hybrid visual servo control method for simultaneously controlling a nonholonomic mobile and a manipulator | |
CN117021066A (zh) | 一种基于深度强化学习的机器人视觉伺服运动控制方法 | |
CN115480583B (zh) | 飞行作业机器人的视觉伺服跟踪与阻抗控制方法 | |
Ruscelli et al. | A multi-contact motion planning and control strategy for physical interaction tasks using a humanoid robot | |
CN114055467A (zh) | 基于五自由度机器人的空间位姿在线仿真*** | |
Tong et al. | Neural network based visual servo control under the condition of heavy loading | |
CN108693776A (zh) | 一种三自由度Delta并联机器人的鲁棒控制方法 | |
Hofer et al. | An operational method toward efficient walk control policies for humanoid robots | |
Cui et al. | A Task-Adaptive Deep Reinforcement Learning Framework for Dual-Arm Robot Manipulation | |
US20240189989A1 (en) | Object climbing by legged robots using training objects | |
CN117075617B (zh) | 机器人轨迹规划方法、装置、存储介质及电子设备 | |
Namiki et al. | Vision-based optimal control for an air-hockey robot system | |
Güldenstein | Footstep planning using reinforcement learning for humanoid robots | |
Tian et al. | Capplanner: Adaptable to various topology and locomotion capability for hexapod robots | |
CN114347036B (zh) | 优化机械臂关节中心距离和关节运动范围的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |