桌面机械手双臂协作试验研究*
2022-01-21刘祚时房双艳
刘祚时, 房双艳, 饶 远
(江西理工大学 机电工程学院,江西 赣州 341000)
0 引 言
随着传感器技术、现代控制与计算机科学技术快速发展[1],机器人技术已走到综合前沿技术的研究阶段。小型服务类机器人作为未来机器人技术产业化的重要发展方向,除了一般的卫生打扫、碗碟清洗、监管房屋等家用商用价值外,也可在一些场合中代替工业机器人,例如:在科技馆展示机器人、助手机器人、机器人教育等实际场景[2]。因此,针对工作精度要求不高的场合,可以考虑换用成本更低且精度符合应用场合的低价、小尺寸机器人。
王岚等人[3]利用机械手结合旋转桌面搭建了助餐机器人,并在该机器人伺服控制系统的基础上设计了控制器,通过运动轨迹跟踪实验,证明了该助餐机器人的可行性。郭峰等人[4]以Arduino Melzi为控制板设计了一种三自由度的机械手,同时设计了用上位机Pronterface进行在线或离线编程控制的桌面机械手控制系统,实现了机械手书写汉字的效果。刘祚时等人[5]设计了一款辅助进食的桌面机械手,通过摄像头跟踪识别使用者的人脸并结合比例—积分—微分(proportional integral diffirential,PID)控制对机械手关节上的舵机进行动态实时调整,达到机械手末端实时跟随人脸的目的,当使用者说出已经通过预定义的食物编号,便能完成进食任务。周海波等人[6]为了解决小球类运动训练中的捡球问题,设计了一种捡拾机械手,通过对该五自由度的机械手进行运动学与仿真分析后,验证了该机械手的捡拾功能足够满足一般小球类物体。上述的机器人在一定程度上满足了人们的需求,相比工业机器人,成本更低,体积也更小巧。针对工作空间范围较小且对操作精度要求不高的场合所提出的桌面机械手的研究。通过运动学等相关理论过程得出桌面机械手轨迹规划的理论轨迹情况,结合对机械手工作空间的分析,完成桌面机械手双臂协作试验,对后续桌面机械手的双臂协作研究有一定的现实意义。
1 桌面机械手硬件平台搭建
1.1 平台整体框架
本文所搭建的桌面机械手由KS—3527数字舵机作为底座驱动舵机,其余关节处采用KS—3518数字舵机,STM32F429IGT6开发板作为主控制器,并结合MDK-ARM平台、电源适配器、机械手、ST-Link下载器和Arduino扩展板等实现本文的预期效果。桌面机械手硬件平台及其相关上位机软件的整体控制流程框架如图1所示。
图1 软硬件平台整体框架图
1.2 桌面机械手正运动学分析
鉴于本文研究的桌面双臂机械手平台是由两台型号相同且基座可固定安装在指定地点的桌面机械手所组成,其中桌面单臂机械手实物如图2所示,图中数字表示对应数字舵机的编号。
图2 单臂桌面机械手
以单个机械臂作为对象进行运动学分析。现使用D-H参数法建立相应关节处的连杆坐标系,如图3中所示,并选择距离关节1处Z轴方向长度为H=33 mm,Y轴方向为L=180 mm的点作为桌面机械手的坐标原点m。
图3 桌面机械手D-H坐标系
同时经过对机械手外形尺寸的实际测量和图3中建立的D-H坐标系,可得到桌面机械手的D-H参数表,如表1中所示。
表1 桌面机械手D-H参数
表1中各字母的含义为θi表示关节角度,di表示连杆偏移距离,ai表示连杆长度,αi表示连杆的扭转角度。而表内各参数中连杆的偏移距离分别为d2=23 mm,d3=27 mm,d4=152 mm,连杆长度分别为a1=20 mm,a2=15 mm,a3=144 mm。
由于该桌面机械手上的所有关节都为转动关节,故可根据各关节之间的位姿关系得到其位姿变换矩阵i-1Ai的通式为
i-1Ai=Rot(z,θi)Trans(z,di)Trans(x,ai)Rot(x,αi)
(1)
(2)
将表1中的D-H参数代入式(2)中可得到各相邻关节的位姿变换矩阵
(3)
(4)
(5)
1.3 桌面机械手逆运动学分析
对桌面机械手进行逆运动学分析的实质就是在已确定机械手末端位姿矩阵的前提条件下,来对机械臂上各关节变量(关节角)进行求解的过程[7]。由于本文使用的主控芯片自带FPU单元,具有高效的运算能力,其运算速度能够满足在运动学逆解求解过程中对硬件的基础要求。故本文将采用反变换法对桌面机械手的左臂进行运动学反解的求解计算
(6)
2 桌面机械手双臂工作空间分析及其轨迹规划
2.1 桌面机械手双臂工作空间求解
利用蒙特卡—罗法对桌面机械手的双臂模型进行工作空间求解时,需要保证随机产生的角度值在其对应关节的转动范围内,这样便可过随机生成的一组关节角度值{(θ1),(θ2),(θ3),(θ4),(θ5)}m来确定机械手工作空间内的一坐标点Pm;同时当随机点的数量越多时,该随机点的集合即可趋近为双臂的工作空间,从而求解出桌面机械手双臂的工作空间。根据双臂运动学正解中的式(4)和式(5)可知,双臂工作空间可分别表示为
PL=(nx,ny,nz)
(7)
PR=(nx,ny,nz)
(8)
式(7)中所有点的集合表示桌面机械手左臂的工作空间,式(8)中所有点的集合表示桌面机械手右臂的工作空间,同时各关节角度范围满足θmin≤θi≤θmax,i=1~5。现在已知桌面机械手左、右臂末端位置点的条件下采用蒙特—卡罗法求解工作空间:
1)令各关节角的角度值满足式θi=θmin+(θmax-θmin)×rand(N,1),其中rand(N,1)是MATLAB中的随机数函数,rand(N,1)表示随机生成N×1的一维向量,N表示随机生成的随机点个数,同时该一维向量中各元素的值在0~1之间均匀分布,而θmin,θmax则分别表示某一关节角的最小值和最大值,故针对桌面机械手各关节而言,上式(角度值θi公式)始终成立。
2)将上式(角度值θi公式)中得到的N组关节变量值代入式(7)和式(8)中,即可分别求得桌面机械手左、右臂的工作空间。
由此可根据上述步骤利用MATLAB绘制桌面机械手双臂的工作空间点云图如图4所示。
图4 桌面机械手的双臂工作空间点云图
从工作空间点云图中可以看出桌面机械手的双臂工作空间的整体外形与边界,可大致得知工作空间内随机点的分布情况。桌面机械手的左、右臂之间存在相互重合的空间区域,且工作空间为两个相交的球形空间,其工作空间关于平面y=0对称。
2.2 桌面机械手轨迹规划
本文研究的是轻量级的桌面机械手,在运动中产生的惯量较小,因此将利用五次多项式插值对桌面机械手进行轨迹规划[8]。除了原先指定的约束条件(起始点和终止点的位置、速度)之外,还要对始末点的加速度给予条件约束。现假设关节位置处的五次多项式插值函数为
θ(t)=a5t5+a4t4+a3t3+a2t2+a1t1+a0
(9)
对式(9)分别进行求导可得关节速度函数与关节加速度函数,其分别如式(10)和式(11)所示
(10)
(11)
针对式(9)中的六个未知系数,根据约束条件所建立的方程组求解得出
(12)
现通过MATLAB对一个关节的运动情况进行分析,随后将对桌面机械手的左臂进行点到点的运动路径仿真,同时需在仿真前保证该关节的起始角度值与终止角度值在桌面机械手各关节的角度范围内。假设始末位置处的关节角度分别为θm=-π/3,θn=π/4,并令运动时间tn=6 s,同时以Δt=5 ms的时间作为插补间隔,单个关节的运动曲线如图5所示。
图5 单个关节的运动曲线
从图5可知,单个关节的运动曲线都为“S”型光滑曲线,并且在始末位置处满足速度、加速度为零。因此,该平滑的运动曲线足够保证机械手关节位置运动的平稳性,保证运动精度的同时减小运动过程中机械手的振动。
3 桌面机械手双臂协作研究
3.1 桌面机械手固定姿态下双臂抓取
为了描述机械手末端在抓取过程中始终保持沿着Z轴垂直向上的定姿态动作,现采用RPY角即横滚角、俯仰角、偏航角的形式来表述末端执行器的相对位姿关系。此时将末端坐标系沿X轴的转动角度记为θ,旋转矩阵为Rθ;沿Y轴的转动角度记为γ,旋转矩阵为Rγ;沿Z轴的转动角度记为α,旋转矩阵为Rα,如图6所示。
图6 绕各轴旋转角度示意
(13)
以桌面机械手左臂为例,结合式(13)和式(5)可得
(14)
在已知操作对象的中心坐标与尺寸后,可得到机械手末端位姿矩阵的nx,ny,nz,所以在已知L,H,d2,d3,d4,a1,a2,a3的前提下可通过式(14)求得左臂的偏航角αL的值,进而将其代入式(13)中求解出左臂目标对象的位姿矩阵并利用逆运动学解出左臂各关节的角度值θ1~θ5。同理可知右臂的偏航角αR的值及其右臂末端的坐标位置为
(15)
因此,由左、右臂的末端位姿矩阵可知其沿Z轴保持竖直向上定姿态的仿真效果图如图7所示,竖直向上的定姿态效果与预期效果一致。
图7 双臂末端定姿态
3.2 部分约束下双臂不同时协作搬运实验
当桌面机械手在进行双臂不同时协作操作任务时(如双臂搬运传递任务),操作物体应处于双臂工作空间中的协作空间范围内。双臂部分约束条件下的协作示意图如图8所示。其中封闭的椭圆形区域代表双臂协作空间,而桌面机械手左、右臂末端的位姿矩阵分别为TL,TR,而机械臂末端所对应的坐标位置为PL,PR。
图8 双臂协作示意
桌面机械手左右臂之间的关系为
PLR=PL-PR
(16)
其中,PLR表示左臂至右臂的末端相对位置。该实验过程中桌面机械手将从目标对象的初始位置处夹取目标物体,随后运动至双臂协作空间中的某一指定位置,随后另一机械臂末端将运动至前一机械臂末端位置处并夹住目标物体,同时前一机械臂松开目标物体,最后由后一机械臂将目标物体放置回目标物体的初始位置。
在进行双臂搬运传递实验前通过MATLAB将双臂搬运过程中的轨迹插补数据保存为.mat文件格式,并且利用STM32系列开发板的直接存储器访问(DMA)功能将实验中机械臂的运动轨迹数据保存至STM32F429的存储器,该过程可由MDK软件实现数据地导入,最后只需通过MDK软件使能STM32F429的DMA控制器,让桌面机械手依照设定的运行轨迹完成搬运传递的双臂协作,如图9所示。
图9 双臂协作搬运传递实验
实验过程中双臂在三维空间中的运动轨迹即左、右臂的期望运动轨迹如图10所示;同时利用上位机软件串口调试助手从开发板的USART1串口读取初始位置与目标位姿点处的舵机关节角度,其双臂各关节角度如表2中所示。
图10 搬运传递过程双臂的期望运动轨迹
表2 双臂协作实验各关节角参数 (°)
由该实验可知该桌面机械手双臂在搬运传递物体、插装等任务,具有良好的运动稳定性与定位精度。
4 结束语
针对工作空间范围较小的场景,以低成本的桌面机械手双臂为研究对象,对其建立模型并进行运动学分析,采用蒙特卡罗法求解双臂工作空间,对机械手路径规划进行研究,并进行双臂协作搬运实验。结果表明,该桌面机械手双臂可应用于日常生活或精度允许范围内的工业场景,并对小体积目标物体进行搬运作业等操作,且具有良好的运动稳定性与定位精度。