谢凯 李含希 张艺琼 王存萍
摘要:随着党和国家对社会主义强国建设的迫切需要,不管是国家还是个人都在不断的超越自我,追求更快更强。我们拟设计一款乒乓球陪练机器人,用于个人能力的提高和对自我的超越,本文对此款机器人的三大系统进行了简要分析。
一、视觉系统
视觉系统会收集对手的力量、速度、旋转打球的方法等数据,通过大数据自主学习,随时根据不同对手的能力调整自己的打球水平。
乒乓球陪练机器人以每秒上百次的频率捕捉乒乓球的位置,再通过人工智能的算法计算出球的速度和旋转,从而精确预测出球的运动轨迹,并且在极短的时间内发出指令,时间、方向、速度和力度都控制的刚刚好,这样就实现了与运动员的博弈。
视觉系统的设计主要涉及两个部分,一个是双目相机的标定,一个是目标检测方法。相比于单目相机而言,双目相机更加方便计算空间中乒乓球的三维信息。双目相机的标定是获取相机参数以及转换矩阵的过程,标定精度对于三维信息的获取至关重要。第三个相机是用来关注人的行为特征,这些行为特征可以理解为多分类问题,例如:可以识别人的发球姿势,把运动员分为几个级别,根据不同的级别来改变陪练难度,相当于匹配一个旗鼓相当的对手。不仅如此,摄像机还需要观察人的脸部表情特征,如果发现人的表情變得疲倦或难受[1],机器人可以询问运动员是否需要休息,多与运动员进行沟通或者鼓舞之类,在得到运动员的语音反馈信息后便可根据语音识别系统进行输出回答,实现真正的智能化陪练体系。而这一套体系运用了深度学习的知识来进行实现,首先需要采集大量的运动员的姿态、动作、表情等图像信息,这些信息可以从互联网上获取,通过深度学习中的卷积神经网络模型来进行反复训练提升判断的准确性,这个训练过程是一个权重参数与偏置参数的不断更新迭代过程,找到最合适的权重偏置参数,便能达到最佳的状态判别结果,从而能够准确判断出运动员的水平和心情状态信息[2]。
对于目标检测方法,有利用前后帧关系进行目标检测,还有基于深度学习的目标检测方法,前者无法排除非所需目标的运动信息,后者检测精度与效率不能同时兼顾,除上述方法外,颜色分割目标检测方法在场景单一前提下可以满足精度与效率的问题。考虑到颜色受光照的影响,选择HSV通道颜色分割方法。经过HSV阈值分割算法后,可以得到一张二值化图像。对于颜色分割,背景中往往会存在一些处于该范围的噪点,这些噪点面积要比乒乓球目标小得多,但是仍然会影响查找乒乓球目标位置。所以需要对阈值分割的二值化图像在进行腐蚀操作,图像腐蚀操作虽然会一定程度减小目标面积,但由于最终只需要乒乓球的目标位置点,所以影响不大。
通过目标检测与标定好的双目相机参数计算出乒乓球的实际三维坐标。通过拍摄乒乓球运动过程中的多个瞬间位置信息,便可以预测球的运动轨迹。
二、控制系统
控制系统主要为了实现机械臂对球的击打,分为三个模块:机器人的运动学模块、机器人对乒乓球台避障模块,机器人击球动作路径设计模块。
1.机器人的运动学求解模块
首先我们利用 D-H 法。该方法是在每个关节处建立一个三维坐标系,然后通过相连关节间的旋转平移矩阵来描述有机器人基座坐标系到末端坐标系间的关系。从而,机械臂可以转动或者平移起来。
2.机器人对乒乓球台的避障路径规划
机器人在运动过程中可能会遇到乒乓球台,所以需要设计可行的避障方法,使得机器人在不会碰到障碍物情况下根据系统的不同需求选取一条最优路径进行运动,这类问题被称为机器人避障路径规划问题。
(1)机器人击球位置对乒乓球台避障路径规划
对于避障问题,当决策系统决策出合适的击球点位置和姿态时,机器人可以与无穷组关节角与之对应,所以根据系统的需求选取合适的机器人构型尤为重要[3]。机器人通过自运动让前臂与上臂位于乒乓球台上方时,机器人不会与乒乓球台进行碰撞,因此只要计算出机器人位于乒乓球台上方时的臂形角范围,即可在机器人与乒乓球台不碰撞的情况下选择最优构型。
观察机器人运动可知,机器人与乒乓球台的碰撞主要是机械人前臂对乒乓球台边缘的碰撞和机器人末端位置与乒乓球台面的碰撞,所以可以将机器人击球位置与乒乓球台碰撞问题抽象成求解三维空间中一条直线与圆锥曲面交点、以及三维中某一点处于某一平面上或下的问题。因此只要计算出机器人位于乒乓球台上方时的臂形角范围,即可在机器人与乒乓球台不碰撞的情况下选择最优构型。
算出机器人避免碰撞乒乓球台的臂形角范围,即机器人在击球位置避免碰撞乒乓球台的臂形角范围为[ &1-&2 ]
3.机器人击球动作路径规划
根据前文的工作虽然可以让机器人不碰撞的运动到目标点,但是机器人到达目标点后,将直接停在目标点上,使得机器人没有运动速度,无法完成击球动作,所以需要对机器人最后的击球路径进行单独设计。
我们选取选取最后一个点作为机器人需要到达的目标点,选取距离最后一个点五、六个采样时间的点作为机器人击球击点。由于轨迹预测给出的乒乓球轨迹数据中保存有该点的采样信息,所以假设标点坐标信息为p1,时间信息为t1,击球点坐标信息为p2,时间信息为t机器人末端的运动路径如图所示,因此对机器人的击球路径总体设计如下。
在时间坐标系下,根据目标点与击球点间的连线,在目标点与击球点之间采集两个点坐标,在击球点后采集两个点坐标。然后根据这些点的坐标以及目标点的姿态通过运动学逆解算法得到5组七个关节的角度。设定机器人运动速度v,计算机器人从目标点到最后一个采样点的运动时间th。
控制机器人根据规划好的运动路径运动到目标点,并记录运动的时间tm,运动到目标点或进行一段时间等待,并记录等待时间tw
当tm+tw+th>t1-t2时,控制机器人依次按照5关节角度运动到各个采样点即目标点。因此乒乓球到达击球点位置时,机器人将以向量p1p2方向,速度v击打乒乓球。
三、决策系统
决策系统可以将视觉系统收集到的信息进行整合,最后进行决策输出。首先,决策系统依赖于大数据和机器学习,机器学习将在大数据的帮助下输入无穷个样本,这些样本包括用户平时的行为打法,国际顶尖运动员的打球技巧等,不断自我训练提高水平。通过视觉系统捕捉到用户和球的信息后,在决策系统中进行检索相应回球方案,最终将指令发送到控制系统,控制系统驱动机械臂进行回球。
参考文献
[1] Zhang Z , Xu D , Yu J . Research and latest development of Ping-Pong robot player[C]// World Congress on Intelligent Control & Automation. IEEE, 2008.
[2] 郑魁敬, 崔培. 乒乓球机器人的研究与发展[J]. 机床与液压, 2009, 37(8):238-241.
[3] Billingsley J. Machineroe joins new title fight[J]. Practical Robotics, 1984: 14-16.
第一作者简介:谢凯,1996.10.10生,男,汉族,四川乐山,西南民族大学学生