CN108284436B - 具有模仿学习机制的远程机械双臂系统及方法 - Google Patents
具有模仿学习机制的远程机械双臂系统及方法 Download PDFInfo
- Publication number
- CN108284436B CN108284436B CN201810221388.6A CN201810221388A CN108284436B CN 108284436 B CN108284436 B CN 108284436B CN 201810221388 A CN201810221388 A CN 201810221388A CN 108284436 B CN108284436 B CN 108284436B
- Authority
- CN
- China
- Prior art keywords
- steering engine
- dhv828
- digital steering
- data
- xbox360
- 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.)
- Active
Links
Images
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/0081—Programme-controlled manipulators with master teach-in means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J15/00—Gripping heads and other end effectors
- B25J15/04—Gripping heads and other end effectors with provision for the remote detachment or exchange of the head or parts thereof
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- 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
-
- 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/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Processing Or Creating Images (AREA)
- Manipulator (AREA)
Abstract
本发明公开了具有模仿学习机制的远程机械双臂系统及方法,系统包括示教者示教模块、自主设计的仿人机械双臂和数字舵机组成的动作执行模块、XBOX360体感传感器感知模块、远程上位机通信模块及模仿学习算法学习模块。采用模块独立供电方式,示教者在XBOX360传感器前做示范动作,由XBOX360采集示教者的动作数据并在本地上位机(服务器端)进行数据处理,通过模仿学习算法进行学习并通过服务器端与远程上位机(客户端)进行实时通信,然后远程客户端通过串口实时地将数据发送给控制器,接收到数据的控制器指导机械双臂进行模仿学习示教者的示教行为。本发明提高了机械臂作业的智能性,同时也极大地提高了机械臂在危险空间中作业的效率,具有实际的应用意义。
Description
技术领域
本发明涉及一种具有模仿学习机制的远程机械双臂系统及方法,属于智能机器人领域。
背景技术
如今机械臂的应用范围越来越广泛。从传统的加工制造业到医疗行业,从危险作业到外太空的探险,机械臂都发挥着重要的作用,可以说机械臂的应用已经渗透到了很多的领域,直接地影响着现代人类生活的方方面面。随着机械臂智能化要求的提升,机械臂越来越与人近距离接触,机械臂的智能化问题在于如何自主适应新环境、如何自主学习新技能以及如何提升自主作业能力。为实现这一要求,机械臂的模仿学习控制是一种手段。机械臂学习的目的在于提高机械臂的智能化程度,使之更加自主地为人服务。通过模仿人或智能体,使机械臂的行为更加接近人或智能体的行为,并在随机、动态环境中优化适应不确定和不可预见的变化和情况,从而像人一样产生自主的行为,这个过程从学习方法上称为模仿学习。模仿学习通过示教、学习、复制、再现,实现机械臂控制,以代替人作业,减少劳动成本,提高作业效率,降低人类作业的危险性。
用机械臂代替人进行作业时,必须预先对机械臂发出指示,规定机械臂进行应该完成的动作和作业的具体内容,这个过程就称为对机械臂的示教。对机械臂的示教有不同的方法,要想让机械臂实现人们所期望的动作,必须赋予机械臂各种信息,首先是机械臂动作顺序的信息及外部设备的协调信息;其次是与机械臂工作时的附加条件信息;再次是机械臂的位置和姿态信息。前两个方面很大程度上是与机械臂要完成的工作以及相关的工艺要求有关,位置和姿态的示教通常是机械臂示教的重点。
目前,具备模仿学习机制的智能机械臂并不多,尤其是在危险工作环境中,能适应恶劣工作环境和承担危险工作的智能机械臂更是寥寥可数。同时,在机械臂操作过程中,其操作范围也有一定的局限。
发明内容
针对目前能适应恶劣工作环境和承担危险工作的智能机械臂较少、操作范围受限的情况,本发明提出一种具有模仿学习机制的远程机械双臂系统及方法,通过将示教者的示教信息通过体感采集设备经远程通信方式发送给位于恶劣工作环境机械臂,并采用仿人机械双臂结构,不但使得机械臂能轻松应对恶劣环境和危险工作,而且扩展了机械臂的操作范围,丰富了机械臂的操作功能,对于智能机械臂功能的完善和改进有非常积极的作用。
本发明提出的远程机械双臂系统,是一种具有模仿学习机制的远程机械双臂系统,主要包括示教模块、感知模块、学习模块、远程通信模块以及动作执行模块。系统的示教模块主要是示教者做出示教动作;感知模块主要是XBOX360感知模块采集示教者的示教信息;学习模块主要是学习示教者的示教信息;通信模块主要是配置两地上位机实现远程通信;动作执行模块主要是在控制器的指导下机械双臂完成动作模仿及执行。
本发明采用以下技术方案:
具有模仿学习机制的远程机械双臂系统,其硬件部分包括:平台底板(1)、支柱(2)、横梁(3)、DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11)、舵机控制盒一(12)、舵机控制盒二(13)、连杆一(14)、连杆二(15)、连杆三(16)、连杆四(17)、连杆五(18)、连杆六(19)。
平台底板(1)作为整个机械系统的稳定底座,支柱(2)和横梁(3)是机械双臂结构与平台底板(1)的连接,支柱(2)与平台底板(1)连接,横梁(3)安装在支柱(2)的顶部,支柱(2)和横梁(3)垂直布设。连杆二(15)、连杆四(17)、连杆六(19)顺次连接构成了机械双臂的右臂,连杆一(14)、连杆三(16)、连杆五(18)顺次连接构成了机械双臂的左臂。横梁(3)的两端分别与舵机控制盒一(12)、舵机控制盒二(13)连接。
DHV828数字舵机一(4)安装在连杆六(19)的前端。
DHV828数字舵机二(5)安装在连杆二(15)、连杆四(17)和连杆六(19)之间。
DHV828数字舵机三(6)安装在连杆二(15)、连杆四(17)和DHV828数字舵机四(7)之间。
DHV828数字舵机四(7)安装在连杆二(15)、连杆四(17)和舵机控制盒二(13)之间。
DHV828数字舵机五(8)安装在连杆五(18)的前端。
DHV828数字舵机六(9)安装在连杆一(14)、连杆三(16)和连杆五(18)之间。
DHV828数字舵机七(10)安装在连杆一(14)、连杆三(16)和DHV828数字舵机八(11)之间。
DHV828数字舵机八(11)安装在连杆一(14)、连杆三(16)和舵机控制盒一(12)之间。
机械双臂系统运行时,首先,由XBOX360感知模块采集示教者的动作信息,经过空间向量法计算得到人体的关节角度信息并且将数据滤波平滑处理;其次,将采集并经处理得到的一系列示教动作数据保存,经模仿学习阶段循环神经网络(RNN)进行训练得到模仿学习策略,并进行输出得到运动信息;然后,A地上位机和B地上位机进行远程数据通信,运动信息从A地发出,B地上位机负责接收;最后,控制器接收PC端口的运动数据,并通过I/O口输出数据进而指导DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11)转动,实现机械双臂对示教动作的复现。
(1)XBOX360传感器采集捕获示教者动作信息;
当机械双臂系统启动后,示教者站于XBOX360感知模块前方,做出一系列连贯的示教动作,同时XBOX360感知模块对示教者骨骼点进行数据的实时采集。首先,XBOX360感知模块收集视野范围内的每一点,并形成一幅代表周围环境的景深图像,传感器以每秒30帧的速度生成景深图像流,实时地再现周围环境。接着,XBOX360感知模块对景深图像进行像素级评估,来辨别人体的不同部位,采用分割策略将人体从背景环境中区分出来,得到剔除追踪对象背景后的景深图像。最后,XBOX360感知模块会评估模型输出的每一个可能的像素来确定关节点,根据追踪到的20个关节点来生成一幅骨架系统图,并得到每个关节点的空间坐标信息,记P=[p1,p2,...,pi,p20],其中pi=(xi,yi,zi)。pi表示第i个关节点的空间坐标。x、y、z分别为空间坐标信息。
(2)A地上位机即服务器端计算关节角度及关节角度数据滤波平滑处理;
采用Processing软件环境进行上位机编程开发。将获得的骨骼点信息经过空间向量法计算,得到对应关节的关节角度数据。为了防止因为示教者示教动作的波动以及传感器数据采集过程中的误差导致关节角度计算的不准确,将各个关节角度数据经过平均递推滤波算法进行平滑处理,并根据轨迹信息和角度信息构建训练样本,为RNN的训练提供数据支持。
(3)模仿学习阶段RNN的构建、训练及输出;
在MATLAB软件环境中构建循环神经网络RNN,并使用构建的RNN对训练样本进行训练,得到模仿学习策略,而后输出的数据作为机械双臂进行动作模仿的控制角度。
(4)A地上位机即服务器端和B地上位机即客户端进行远程数据通信;
为了实现具有模仿学习机制的远程机械双臂系统,需要A地上位机和B地上位机进行远程数据通信。使用Processing中的Network库,并根据服务器端和客户端的IP地址进行配置,并通过网络传输实现服务器端和客户端之间的远程数据通信,其中服务器端负责数据的发送,客户端负责数据的接收。
(5)控制器接收B地上位机即客户端数据并控制DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11);
为了实现Arduino DUE控制器接收B地上位机即客户端数据并控制DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11),Arduino DUE控制器需要添加通信模块Serial,以实现客户端通过PC端口将数据发送给Arduino DUE控制器,并由Arduino DUE控制器通过I/O口发出控制指令驱动DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11)完成动作模仿。
与现有技术相比,本发明的具有如下优点:
(1)本发明设计了机械双臂的仿生结构,赋予了机械臂模仿学习系统能像人的双臂一样运动,拓展了单机械臂的操作空间,丰富了机械臂协同工作的操作性能。
(2)本发明使用XBOX360作为采集示教信息的体感设备,然后根据得到的数据应用模仿学习算法,指导机械双臂系统进行模仿学习。使用这种感知方式不仅降低了开发成本,而且方便开发,同时也提高了整个系统模仿实现的效率。
(3)本发明设计了远程模仿方式,通过开发服务器端和客户端,可以实现机械双臂的远程模仿学习,通过模仿学习算法学习示教行为信息,提高了机械双臂系统的智能性;同时也可实现远程的在线模仿,极大地丰富了远程机械臂的作业能力。
(4)本文充分考虑到机械臂工作环境的复杂性和危险性,采用远程的模仿学习系统可以将操作者从危险的工作环境中解放出来,在安全场所就可以通过示教的方式指导机械双臂作业,具有实际的应用意义。
附图说明
图1为本发明所涉及的具有模仿学习机制的远程机械双臂结构图。
图2为本发明所涉及的系统的组成框图。
图3为本发明所涉及的系统整体运行流程图。
图4为XBOX360体感设备识别追踪的人体骨骼图。
图5为体感示教及示教数据处理的流程图。
图6为系统模仿学习算法所使用的循环神经网络RNN。
图7为使用RNN进行模仿学习策略获取的流程图。
图8为服务器端和客户端进行远程数据通信的流程图。
图9为控制器指导机械双臂完成模仿任务的流程图。
具体实施方式
下面结合附图对本发明做进一步说明。
图1是本发明所涉及的具有模仿学习机制的远程机械双臂结构图。主要包括:一个平台底板,它作为整个机械结构的稳定底座。一个支柱和一个横梁是机械双臂结构与平台底板之间的支撑。DHV828数字舵机分布在连杆之间或连杆端部构成了机械双臂的各关节部分,且与连杆构成了机械臂的左右两臂结构,类似于人类的双臂结构分布。
图2是远程机械双臂系统的组成框图。远程机械双臂系统由五个部分组成,有示教模块、感知模块、学习模块、远程通信模块、动作执行模块。其中,示教模块包括示教者自身,主要是进行动作的演示和表演。学习模块包括第一代XBOX360体感设备、电源、数据连接线。学习模块包括A地上位机、电源。远程通信模块包括实现A、B地上位机的普通PC机、Processing软件。动作执行模块包括由舵机、连杆以及舵机控制器等组成的仿人双机械臂、B地上位机、电源、数据连接线。
XBOX360体感设备作为感知模块。使用的XBOX360体感设备,由一个RGB摄像机、一个红外激光投射器、一个深度摄像机以及其他传感器组成,其采用3D结构光扫描原理实现人体的3D成像以及动作影像的捕捉和采集。
舵机控制器在控制盒中,位于仿人机械双臂肩部,起到接收B地上位机下发数据以及发送控制指令给各舵机的功能。舵机控制器选用Arduino Due,它是一块基于AtmelSAM3X8E CPU的微控制器板,具有12路PWM输出,84MHz的时钟频率,工作电压为3.3V,IO口可承载电压也为3.3V,低功耗,高时钟频率,满足数据接收和发送的实时性要求。使用Programming Port(编程接口)为Arduino Due下载程序,使用方便。
舵机作为连接机械臂各个连杆的关节,为了实现相应的模仿学习的功能,该仿人机械双臂安装八个舵机。且舵机采用的是DHV828全金属数字舵机,尺寸规格40*20*37mm,最大转动角度180°,工作电压为6.0V-7.4V,速度最大为0.13s/60°(7.4v),扭矩29.2kg-cm(7.4v),符合机械臂各关节的转动使用要求。
两台普通PC机作为远程通信的上位机,分别称作A地上位机和B地上位机。A地上位机除了要与B地上位机实现远程通信的功能,还要实现机械臂学习示教者示教数据的任务。
具有模仿学习机制的远程机械双臂系统的模仿学习过程,其中系统整体运行流程如图3所示。其模仿学习的具体实现步骤包括:
步骤1:XBOX360感知模块采集捕获示教者动作信息;
此阶段仅使用由XBOX360感知模块对示教动作进行数据采集,具体步骤包括以下几步:
步骤1.1:安装所需的驱动和库文件,进行环境的配置;
首先在Windows电脑上下载和安装Open NI驱动、NITE驱动、Prime Sense驱动。使用Open NI的方式对XBOX360感知模块进行驱动以及开发。下载Processing软件环境开发XBOX360感知模块的专用库Simple Open NI,并安装到Processing的Library文件夹下。
步骤1.2:启动XBOX360感知模块;
采用独立供电方式给XBOX360感知模块进行供电,并将XBOX360感知模块的USB接口与PC端口相连接,编写程序并运行,驱动XBOX360进行骨骼追踪。
步骤1.3:示教者在XBOX360感知模块前做出示范动作;
同时示教者在XBOX360感知模块前做出连贯的示教动作,由于只考虑对双臂动作进行模仿,所以只需要示教者的双臂按照一定的速度做出设计好的连贯动作。
步骤2:A地上位机即服务器端计算关节角度及关节角度数据滤波平滑处理;
在步骤1得到原始示教数据后,需要进行关节角度计算以及滤波处理,具体步骤包括以下几步:
步骤2.1:空间向量法计算关节角度;
首先对骨骼点进行标注说明,具体骨骼点图在附图所示。记右大臂翻滚角为∠A,需要用到点p2(x2,y2,z2)、p3(x3,y3,z3)、p4(x4,y4,z4),其中p2、p3、p4分别为骨骼点图中的SHOULDER CENTER(肩中心)、SHOULDER R(右肩)、ELBOWR(右肘),记向量
p3,2=(x2-x3,y2-y3,z2-z3) (1)
p3,4=(x4-x3,y4-y3,z4-z3) (2)
向量p3,2、向量p3,4分别为右肩到肩中心所连接而成的向量、右肩到右肘所连接而成的向量,则
∠p2p3p4为向量p3,2和向量p3,4的夹角,则右大臂翻滚角为:
∠A=∠p2p3p4-90° (4)
记右肘翻滚角∠p3p4p5,需要用到的点为p3(x3,y3,z3)、p4(x4,y4,z4)、p5(x5,y5,z5),其中p3、p4、p5分别为骨骼点图中的SHOULDERR(右肩)、ELBOW R(右肘)、WRIST R(右拳),记向量
p4,3=(x3-x4,y3-y4,z3-z4) (5)
p4,5=(x5-x4,y5-y4,z5-z4) (6)
向量p4,3、向量p4,5分别为右肘到右肩所连接而成的向量、右肘到右拳所连接而成的向量,则右肘翻滚角为:
∠p3p4p5为向量p4,3和向量p4,5的夹角,记右大臂的偏航角为∠AYaw,需要用到点p3(x3,y3,z3)、p4(x4,y4,z4),p3、p4分别为骨骼点图中的SHOULDER R(右肩)、ELBOW R(右肘),取向量n1=(0,0,1),n1为垂直于骨骼点所在平面的向量,则右大臂的偏航角为:
其余各关节角度的计算方法与此相同,编写程序进行计算即可得到示教动作的各关节角度数据。
步骤2.2:使用递推平均滤波算法对关节角度数据进行平滑处理;
连续采集数据时,把连续采集的N个数看成一个队列,队列的长度固定为N,每次采集到一个新数放入队尾,并抛去队首的一个数,然后把这N个数进行算术平均运算,得到滤波结果,使用递推平均滤波算法可以使得数据的平滑性好。在得到数据信息后,根据轨迹信息和角度信息构建训练样本,为RNN的训练提供数据支持。
步骤3:模仿学习阶段RNN的构建、训练及输出;
在得到训练数据后,需要在MATLAB软件环境中构建循环神经网络RNN,并通过RNN对训练样本进行训练以得到模仿学习策略,而后输出的数据作为指导机械双臂进行动作模仿的控制信息。具体步骤包括以下几步:
步骤3.1:RNN的构建;
对系统使用模仿学习算法,采用循环神经网络RNN的方法获得控制策略。首先构建RNN,输入层采用三个神经元,隐含层采用十个神经元,输出层采用三个神经元。在RNN中,定义o代表输入层、s为隐含层、y为输出层,定义输入向量到隐含层的权值矩阵为V、隐含层到输出层的权值矩阵为W、前一隐含层到当前隐含层的权值向量为U。输入包含两部分,分别是当前时刻的样本输入ot以及上一隐含层的输出st-1。其中输入层到隐含层:
sj(t)=f(netj(t)) (9)
隐含层到输出层:
yk(t)=g(netk(t)) (11)
f和g分别代表隐含层和输出层的激活函数。这两个激活函数具有非线性特性,极大地提升了RNN的表达能力。
步骤3.2:RNN的训练及输出
RNN的训练采用BPTT算法进行。训练时使用MSE函数作为损失函数:
式(13)中d代表期望输出,y代表样本真实值,m和a分别代表输出单元数和训练样本数。首先需要获得权值矩阵的变化量Δ(w)、Δ(v)、Δ(u),然后通过梯度下降来更新W、V、U这三个参数。在MATLAB里使用构建好的RNN对训练样本进行训练,得到训练模型,即模仿学习策略,之后进行输出,得到指导机械双臂进行模仿运动的数据信息。
步骤4:A地上位机(服务器端)和B地上位机(客户端)进行远程数据通信
为了实现远程数据传输,需要开发服务器端和客户端进行远程数据通信。通过上位机开发,使服务器端负责数据的发送,客户端负责数据的接收。具体步骤如下:
步骤4.1:开发服务器端;
在得到控制数据信息后,需要将信息通过远程数据通信发送到客户端。在Processing开发环境中,首先导入通信模块Network,通过编写程序保证数据的实时发送。
步骤4.2:开发客户端;
在Processing开发环境中编程,另一个部分是在Arduino开发环境中编程。在Processing开发环境中,首先添加与服务器端通信的模块Network以及与Arduino Due控制器的通信模块Serial,并对设置函数初始化,包括:添加服务器端的IP地址、设置本机与Arduino控制器连接的端口。接着开始设置循环函数,包括:从服务器端接收数据、将数据实时发送给Arduino控制器。
步骤5:控制器接收客户端数据并控制舵机;
为了实现Arduino DUE控制器接收客户端数据并控制舵机,Arduino DUE控制器需要添加通信模块Serial,以实现客户端通过PC端口将数据发送给Arduino DUE控制器,并由控制器通过I/O口发出控制指令驱动舵机完成动作模仿。具体步骤如下:
步骤5.1:接收客户端数据;
首先需要在Arduino开发环境中编写编写控制程序,包括:设置每个舵机对应机械臂的关节位置、设置每个舵机的初始位置、设置每个舵机的PWM接口与控制器的输出接口的连接、设置波特率、在循环函数中通过Serial实时读取来自Processing发送来的数据、保证能接收到客户端发送的数据。
步骤5.2:通过I/O口控制舵机转动;
在接收到控制信息后,根据得到的数据通过I/O口输出PWM给舵机,控制舵机转动相应的角度,指导机械双臂实现动作的模仿。至此完成了整个系统的实现,整个系统工作结束。
Claims (1)
1.一种具有模仿学习机制的远程机械双臂控制方法,其特征在于:机械双臂系统运行时,首先,由XBOX360感知模块采集示教者的动作信息,经过空间向量法计算得到人体的关节角度信息并且将数据滤波平滑处理;其次,将采集并经处理得到的一系列示教动作数据保存,经模仿学习阶段循环神经网络(RNN)进行训练得到模仿学习策略,并进行输出得到运动信息;然后,A地上位机和B地上位机进行远程数据通信,运动信息从A地发出,B地上位机负责接收;最后,控制器接收PC端口的运动数据,并通过I/O口输出数据进而指导DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11)转动,实现机械双臂对示教动作的复现;
(1)XBOX360传感器采集捕获示教者动作信息;
当机械双臂系统启动后,示教者站于XBOX360感知模块前方,做出一系列连贯的示教动作,同时XBOX360感知模块对示教者骨骼点进行数据的实时采集;首先,XBOX360感知模块收集视野范围内的每一点,并形成一幅代表周围环境的景深图像,传感器以每秒30帧的速度生成景深图像流,实时地再现周围环境;接着,XBOX360感知模块对景深图像进行像素级评估,来辨别人体的不同部位,采用分割策略将人体从背景环境中区分出来,得到剔除追踪对象背景后的景深图像;最后,XBOX360感知模块会评估模型输出的每一个可能的像素来确定关节点,根据追踪到的20个关节点来生成一幅骨架系统图,并得到每个关节点的空间坐标信息,记P=[p1,p2,...,pi,p20],其中pi=(xi,yi,zi);pi表示第i个关节点的空间坐标;x、y、z分别为空间坐标信息;
(2)A地上位机即服务器端计算关节角度及关节角度数据滤波平滑处理;
采用Processing软件环境进行上位机编程开发;将获得的骨骼点信息经过空间向量法计算,得到对应关节的关节角度数据;为了防止因为示教者示教动作的波动以及传感器数据采集过程中的误差导致关节角度计算的不准确,将各个关节角度数据经过平均递推滤波算法进行平滑处理,并根据轨迹信息和角度信息构建训练样本,为RNN的训练提供数据支持;
(3)模仿学习阶段RNN的构建、训练及输出;
在MATLAB软件环境中构建循环神经网络RNN,并使用构建的RNN对训练样本进行训练,得到模仿学习策略,而后输出的数据作为机械双臂进行动作模仿的控制角度;
(4)A地上位机即服务器端和B地上位机即客户端进行远程数据通信;
为了实现具有模仿学习机制的远程机械双臂系统,需要A地上位机和B地上位机进行远程数据通信;使用Processing中的Network库,并根据服务器端和客户端的IP地址进行配置,并通过网络传输实现服务器端和客户端之间的远程数据通信,其中服务器端负责数据的发送,客户端负责数据的接收;
(5)控制器接收B地上位机即客户端数据并控制DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11);
为了实现Arduino DUE控制器接收B地上位机即客户端数据并控制DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11),ArduinoDUE控制器需要添加通信模块Serial,以实现客户端通过PC端口将数据发送给Arduino DUE控制器,并由Arduino DUE控制器通过I/O口发出控制指令驱动DHV828数字舵机一(4)、DHV828数字舵机二(5)、DHV828数字舵机三(6)、DHV828数字舵机四(7)、DHV828数字舵机五(8)、DHV828数字舵机六(9)、DHV828数字舵机七(10)、DHV828数字舵机八(11)完成动作模仿。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810221388.6A CN108284436B (zh) | 2018-03-17 | 2018-03-17 | 具有模仿学习机制的远程机械双臂系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810221388.6A CN108284436B (zh) | 2018-03-17 | 2018-03-17 | 具有模仿学习机制的远程机械双臂系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108284436A CN108284436A (zh) | 2018-07-17 |
CN108284436B true CN108284436B (zh) | 2020-09-25 |
Family
ID=62833713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810221388.6A Active CN108284436B (zh) | 2018-03-17 | 2018-03-17 | 具有模仿学习机制的远程机械双臂系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108284436B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109968355A (zh) * | 2019-03-08 | 2019-07-05 | 北京工业大学 | 一种仿人机器人步态平衡模型建立的方法 |
CN111152218B (zh) * | 2019-12-31 | 2021-10-08 | 浙江大学 | 一种异构仿人机械臂的动作映射方法及系统 |
CN111230875B (zh) * | 2020-02-06 | 2023-05-12 | 北京凡川智能机器人科技有限公司 | 一种基于深度学习的双臂机器人仿人作业规划方法 |
CN112183188B (zh) * | 2020-08-18 | 2022-10-04 | 北京航空航天大学 | 一种基于任务嵌入网络的机械臂模仿学习的方法 |
CN112549025B (zh) * | 2020-11-27 | 2022-06-21 | 北京工业大学 | 一种基于融合人体运动学约束的协调图双臂协作控制方法 |
CN112659124A (zh) * | 2020-12-14 | 2021-04-16 | 南昌大学 | 一种基于Android系统的虚拟仿真与控制系统 |
CN112959330B (zh) * | 2021-02-02 | 2022-05-17 | 浙江大学 | 基于主从动态运动基元的机器人双臂运动人机对应装置及方法 |
CN113119132A (zh) * | 2021-04-21 | 2021-07-16 | 浙江大学 | 一种基于模仿学习的深海精细遥操纵任务的实现方法 |
CN114536351B (zh) * | 2022-04-27 | 2022-07-15 | 季华实验室 | 冗余双臂机器人示教方法、装置、电子设备及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5054332A (en) * | 1987-07-07 | 1991-10-08 | Mitsubishi Denki K.K. | Articulated robot |
CN105945918A (zh) * | 2016-06-23 | 2016-09-21 | 广西大学 | 五自由度串并联可控机构式焊接机器人 |
CN106078752A (zh) * | 2016-06-27 | 2016-11-09 | 西安电子科技大学 | 一种基于Kinect的仿人机器人人体行为模仿方法 |
CN106313072A (zh) * | 2016-10-12 | 2017-01-11 | 南昌大学 | 一种基于Kinect的体感控制的类人型机器人 |
CN106971050A (zh) * | 2017-04-18 | 2017-07-21 | 华南理工大学 | 一种基于Kinect的Darwin机器人关节映射解析方法 |
CN107116533A (zh) * | 2017-04-21 | 2017-09-01 | 重庆大学 | 仿人机械臂 |
-
2018
- 2018-03-17 CN CN201810221388.6A patent/CN108284436B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5054332A (en) * | 1987-07-07 | 1991-10-08 | Mitsubishi Denki K.K. | Articulated robot |
CN105945918A (zh) * | 2016-06-23 | 2016-09-21 | 广西大学 | 五自由度串并联可控机构式焊接机器人 |
CN106078752A (zh) * | 2016-06-27 | 2016-11-09 | 西安电子科技大学 | 一种基于Kinect的仿人机器人人体行为模仿方法 |
CN106313072A (zh) * | 2016-10-12 | 2017-01-11 | 南昌大学 | 一种基于Kinect的体感控制的类人型机器人 |
CN106971050A (zh) * | 2017-04-18 | 2017-07-21 | 华南理工大学 | 一种基于Kinect的Darwin机器人关节映射解析方法 |
CN107116533A (zh) * | 2017-04-21 | 2017-09-01 | 重庆大学 | 仿人机械臂 |
Also Published As
Publication number | Publication date |
---|---|
CN108284436A (zh) | 2018-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108284436B (zh) | 具有模仿学习机制的远程机械双臂系统及方法 | |
CN107263449B (zh) | 基于虚拟现实的机器人远程示教系统 | |
CN110026987B (zh) | 一种机械臂抓取轨迹的生成方法、装置、设备及存储介质 | |
US20230150127A1 (en) | Optimizing policy controllers for robotic agents using image embeddings | |
Wang et al. | Video-based hand manipulation capture through composite motion control | |
JP6915605B2 (ja) | 画像生成装置、ロボット訓練システム、画像生成方法、及び画像生成プログラム | |
CN110385694A (zh) | 机器人的动作示教装置、机器人系统以及机器人控制装置 | |
CN110744541A (zh) | 一种视觉引导的水下机械臂控制方法 | |
WO2020185357A1 (en) | Motion transfer of highly dimensional movements to lower dimensional robot movements | |
CN108229678B (zh) | 网络训练方法、操作控制方法、装置、存储介质和设备 | |
He et al. | Learning human-to-humanoid real-time whole-body teleoperation | |
CN115122325A (zh) | 一种具有视场约束的拟人化机械手鲁棒视觉伺服控制方法 | |
JP2021065955A (ja) | ロボット制御システム及びその制御方法及びプログラム | |
Pan et al. | Zero-shot imitation learning from demonstrations for legged robot visual navigation | |
Xia et al. | Gibson env v2: Embodied simulation environments for interactive navigation | |
CN114585487A (zh) | 通过使用基于视觉的机器人任务模型训练模拟到真实模型来减轻现实差距 | |
CN114041828A (zh) | 超声扫查控制方法、机器人及存储介质 | |
Das et al. | GeroSim: A simulation framework for gesture driven robotic arm control using Intel RealSense | |
US11383386B2 (en) | Robotic drawing | |
Ma et al. | Enhancement of a VEX robot with an onboard vision system | |
Sabbaghi et al. | Learning of gestures by imitation using a monocular vision system on a humanoid robot | |
Moore et al. | Robotic grasping and manipulation through human visuomotor learning | |
Fornas et al. | Fitting primitive shapes in point clouds: a practical approach to improve autonomous underwater grasp specification of unknown objects | |
Sui et al. | Transfer of robot perception module with adversarial learning | |
CN116265202A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |