一种获取乒乓球机器人球拍击球姿态和击球速度的方法

文档序号:6328059阅读:385来源:国知局
专利名称:一种获取乒乓球机器人球拍击球姿态和击球速度的方法
技术领域
本发明属于机器人控制领域中的运动规划,具体地说是用于获得乒乓球机器人球拍击球姿态和击球速度的一种方法。
背景技术
传统上乒乓球机器人球拍击球姿态和击球速度的计算主要通过以下两种方法实现1)将乒乓球飞行轨迹模型简化为抛物线,将球拍反弹模型简化为镜面反射模型(参见 "Kalpesh P. M.,Ferat S.,and Eli S.,An application of human robot interaction development of a ping-pong playing robotic arm IEEE International Conference on Systems,Man and Cybernetics,第 2 卷,第 1831 1836 页,2005。”)。2)利用学习算法和专家系统,通过大量的釆样数据获得球拍击球姿态和击球速度(参见“L. Acosta, J. Rodrigo, J. A. Mendez, G. N. Marichal and Μ. Sigut, Ping-pong player prototype, a PC-based, low-Cost, ping pong robot, IEEE Robotics and Automation Magazine,第 10 卷,第 4 期,第 44 52 页,2003 年,,及"Michiya M.,Takaaki H.,Masahiro T.,and Fumio Μ. ,A Learning Approach to Robotic Table Tennis. IEEE Transaction on Robotics and Automation,第21卷,第4期,第767 771页,2005年”)。其中第一种方法由于忽略乒乓球飞行时空气阻力和球拍表面反弹特性,计算简单。但通过模型计算得出的球拍击球姿态和击球速度存在较大的偏差,从而造成乒乓球机器人回球时落点较为分散,回球质量较差, 只能实现乒乓球机器人与人简单对打。第二种方法利用学习算法和专家系统,通过大量训练数据获得球拍击球姿态和击球速度,对于采样数据集内的数据,乒乓球机器人能够计算正确球拍击球姿态和击球速度,但对于采样数据集以外的数据,机器人计算出的球拍击球姿态和击球速度并不能满足控制精度要求。而且在训练采样数据时,来球速度、击球位置等多种因素共同决定了乒乓球机器人回球落点的位置和速度,训练较为困难,回去的落到位置和速度不可控,影响运动员的训练质量。

发明内容
本发明的目的在于提供一种能够克服上述不足、提高乒乓球机器人回球质量的球拍击球姿态和击球速度获取方法。为了实现所述目的,本发明提出的一种获取乒乓球机器人球拍击球姿态和击球速度的方法,利用视觉单元、控制装置中的控制PC机期望落点计算单元、预测击打点单元、击打点出球速度计算单元和非线性模型实现所述方法的具体步骤包括步骤Sl 由视觉单元采集乒乓球初始飞行时的一小段运动轨迹,建立乒乓球飞行解析模型,设定乒乓球落点位置及乒乓球落点速度;步骤S2 预测击打点单元利用飞行解析模型、视觉单元输出的乒乓球的运动轨迹数据计算出乒乓球来球速度Vin、乒乓球的击打位置和击球剩余时间;步骤S3 击打点出球速度计算单元利用飞行解析模型、预测击打点单元输出击打乒乓球的位置信息和击球剩余时间、期望落点计算单元期望输出的乒乓球落点位置、期望乒乓球落点速度计算并生成击打点处的期望出球速度V1 ;步骤S4 利用机器人运动学方程、乒乓球球拍反弹模型、击打点处的出球速度及乒乓球来球速度,建立包含乒乓球机器人球拍击球姿态和击球速度参数的非线性模型为Γ1 (V1-Vh) = ΚΓ1 (Vin-Vh) +B,式中T为已知的乒乓球机器人从世界坐标系到球拍坐标系的变换矩阵,V1为乒乓球在击打点处的期望出球速度,Vh为球拍击球速度,Vin为乒乓球在击打点处的来球速度,K 是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵;Κ、Β为常数由实验确定;步骤S5 设定非线性模型中球拍击球速度Vh在Xw和Zw方向的速度分量为零,利用已知乒乓球在击打点处的出球速度V1、乒乓球在击打点处的来球速度Vin、常数K和B及 L-M优化方法求解非线性方程组,计算得到余下的球拍姿态参数Q1* θ 2和球拍击球速度在Yw方向上的速度分量,得到机器人球拍击球姿态和击球速度;利用多项式插值规划方法对机器人关节进行运动规划,控制球拍在击球时刻以击球速度到达击球位置,并且使机器人球拍调整到击球姿态完成击球,实现对乒乓球的落点位置和落点速度控制。本发明的有益效果本发明与以往乒乓球机器人的简单回球相比,能够实现乒乓球机器人的定点定速回球。本发明考虑乒乓球飞行阻力,建立了乒乓球飞行的解析模型和球拍的速度反弹模型,其参数均通过实验确定,本发明的突出特点是建立了乒乓球飞行的解析模型,利用该模型根据期望的回球落点和预测的击打点位置,结合期望的回球落点速度,能够准确的计算出机器人球拍的击球姿态和击球速度,便于实现对乒乓球机器人的控制。本发明的另一个突出特点是乒乓球机器人的回球落点位置和落点速度可以通过机器人球拍的击球姿态和击球速度控制。


图Ia是本发明获取乒乓球机器人球拍击球姿态和击球速度的方法流程图。图Ib是本发明控制装置中击打点出球速度计算单元的计算流程图。图加为乒乓球飞行受力模型的Xw-Yw平面。图2b为乒乓球飞行模型的Yw-Zw平面。图3为乒乓球机器人实验平台原理图。图如为定点回球落点位置球桌视图。图4b为定点回球落点位置放大视图。主要元件说明前后平移机构1,左右平移机构2,上下平移机构3,左右旋转机构4,上下俯仰机构5,机器人球拍6,球桌7, 控制装置8实际T, 期望Q。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。图1示出本发明获取乒乓球机器人球拍击球姿态和击球速度的方法流程图,本发明建立了乒乓球飞行的解析模型,利用该模型根据期望的回球落点和预测的击打点位置, 结合期望的回球落点速度,可计算出机器人球拍击球后的期望出球速度。根据球拍击球前后的乒乓球速度,结合球拍的反弹模型和五自由度打乒乓球机器人的运动学模型,建立一组含有球拍击球姿态和球拍击球速度的非线性方程。利用公知的优化方法求解非线性方程组,可以计算出机器人球拍的击球姿态和击球速度,使得乒乓球机器人的回球落点位置和落点速度可以通过机器人控制。利用乒乓球机器人的视觉单元8、控制装置9中的控制PC 机期望落点计算单元、预测击打点单元、击打点出球速度计算单元和非线性模型实现获取乒乓球机器人球拍击球姿态和击球速度的步骤包括步骤Sl 由视觉单元采集乒乓球初始飞行时的一小段运动轨迹,建立乒乓球飞行解析模型,设定乒乓球落点位置及乒乓球落点速度;步骤S2 预测击打点单元利用飞行解析模型、视觉单元输出的乒乓球的运动轨迹数据计算出乒乓球来球速度Vin、乒乓球的击打位置和击球剩余时间;步骤S3 击打点出球速度计算单元利用飞行解析模型、预测击打点单元输出击打乒乓球的位置信息和击球剩余时间、期望落点计算单元期望输出的乒乓球落点位置、期望乒乓球落点速度计算并生成击打点处的期望出球速度V1 ;步骤S4 利用机器人运动学方程、乒乓球球拍反弹模型、击打点处的出球速度及乒乓球来球速度,建立包含乒乓球机器人球拍击球姿态和击球速度参数的非线性模型为Γ1 (V1-Vh) = ΚΓ1 (Vin-Vh) +B,式中T为已知的乒乓球机器人从世界坐标系到球拍坐标系的变换矩阵,V1为乒乓球在击打点处的期望出球速度,Vh为球拍击球速度,Vin为乒乓球在击打点处的来球速度,K 是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵;Κ、Β为常数由实验确定;步骤S5 设定非线性模型中球拍击球速度Vh在Xw和Zw方向的速度分量为零,利用已知乒乓球在击打点处的出球速度V1、乒乓球在击打点处的来球速度Vin、常数K和B及 L-M优化方法求解非线性方程组,计算得到余下的球拍姿态参数Q1* θ 2和球拍击球速度在Yw方向上的速度分量,得到机器人球拍击球姿态和击球速度;利用多项式插值规划方法对机器人关节进行运动规划,控制球拍在击球时刻以击球速度到达击球位置,并且使机器人球拍调整到击球姿态完成击球,实现对乒乓球的落点位置和落点速度控制。请参阅图加及图2b,乒乓球从Pl点飞行到P3点,在此过程中,乒乓球飞行经过最高点P2。将乒乓球的飞行速度分别分解到球桌平面和Zw方向。如图加所示为乒乓球飞行受力模型的Xw-Yw平面,在球桌平面乒乓球受到球桌平面方向的空气阻力Fxy作用,该阻力的方向与乒乓球飞行方向相反,乒乓球飞行轨迹在球桌平面投影的倾角Θ。如图2b所示为乒乓球飞行模型的Yw-Zw平面,在竖直方向,乒乓球在Pl点到P2点上升段飞行过程中受到竖直向下的重力mg和竖直向下的空气阻力kfvzs2,在P2点到P3点下降段飞行过程中受到竖直向下的重力mg和竖直向上的空气阻力kfvzx2。本发明建立的乒乓球飞行的解析模型如下
(1)乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式为
权利要求
1 一种获取乒乓球机器人球拍击球姿态和击球速度的方法,其特征在于,利用视觉单元、控制装置中的控制PC机期望落点计算单元、预测击打点单元、击打点出球速度计算单元和非线性模型实现所述方法的具体步骤包括步骤Sl 由视觉单元采集乒乓球初始飞行时的一小段运动轨迹,建立乒乓球飞行解析模型,设定乒乓球落点位置及乒乓球落点速度;步骤S2 预测击打点单元利用飞行解析模型、视觉单元输出的乒乓球的运动轨迹数据计算出乒乓球来球速度Vin、乒乓球的击打位置和击球剩余时间;步骤S3 击打点出球速度计算单元利用飞行解析模型、预测击打点单元输出击打乒乓球的位置信息和击球剩余时间、期望落点计算单元期望输出的乒乓球落点位置、期望乒乓球落点速度计算并生成击打点处的期望出球速度V1 ;步骤S4 利用机器人运动学方程、乒乓球球拍反弹模型、击打点处的出球速度及乒乓球来球速度,建立包含乒乓球机器人球拍击球姿态和击球速度参数的非线性模型为 T"1 (V1-Vh) = Kr1 (Vin-Vh)+B,式中τ为已知的乒乓球机器人从世界坐标系到球拍坐标系的变换矩阵,V1为乒乓球在击打点处的期望出球速度,Vh为球拍击球速度,Vin为乒乓球在击打点处的来球速度,K是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵;Κ、Β为常数由实验确定;步骤S5 设定非线性模型中球拍击球速度Vh在Xw和Zw方向的速度分量为零,利用已知乒乓球在击打点处的出球速度力、乒乓球在击打点处的来球速度Vin、常数K和B及L-M优化方法求解非线性方程组,计算得到余下的球拍姿态参数9工和θ 2和球拍击球速度在YwS 向上的速度分量,得到机器人球拍击球姿态和击球速度;利用多项式插值规划方法对机器人关节进行运动规划,控制球拍在击球时刻以击球速度到达击球位置,并且使机器人球拍调整到击球姿态完成击球,实现对乒乓球的落点位置和落点速度控制。
2.如权利要求1所述获取乒乓球机器人的球拍击球姿态和击球速度的方法,其特征在于,所述击打点出球速度计算单元计算步骤包括步骤S31 建立乒乓球球速在球桌平面Xw和Yw方向的速度分量vlx、vly的函数;建立乒乓球飞行轨迹在球桌平面的投影距离c的函数;建立乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量Vzs的函数;建立乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量 Zs的函数;建立乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量Vzx的函数;建立乒乓球处于下降阶段时,乒乓球在球桌平面Zw方向的位置分量\的函数;步骤S32 利用乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式,根据回球落点速度在球桌平面的速度分量和击打点到落点之间的飞行距离计算击打点处乒乓球期望出球速度在Xw和Yw方向的速度分量Vlx和Vly ;步骤S33 利用乒乓球球速在球桌平面Xw和YwS向的速度分量的函数表达式和乒乓球飞行轨迹在球桌平面的投影距离的函数表达式,计算乒乓球从击打点飞行到落点的时间式中,m是乒乓球质量,kf是空气阻力系数,V3xy是落点处乒乓球速度在球桌平面的合速度,Vlxy是击打点处乒乓球期望出球速度在球桌平面的合速度;步骤S34 利用乒乓球处于上升阶段时,在Zw方向的位置分量表达式和乒乓球处于下降阶段时,在Zw方向的位置分量表达式得到乒乓球在落点处τ、方向的位置分量^等于乒乓球的半径如下表示
3.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球在击打点处期望出球速度在Xw和Yw方向的速度分量Vlx和Vly的函数表达式为
4.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球飞行轨迹在球桌平面的投影距离c的函数表达式为
5.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量Vzs表示为
6.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量Zs为
7.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量Vzx为
8.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于下降阶段时,乒乓球在Zw方向的位置分量\为
全文摘要
本发明是一种获取乒乓球机器人球拍击球姿态和击球速度的方法,建立了乒乓球飞行的解析模型,利用该模型根据期望的回球落点和预测的击打点位置,结合期望的回球落点速度,计算出机器人球拍击球后的出球速度。根据球拍击球前后的乒乓球速度,结合球拍的反弹模型和乒乓球机器人的运动学模型,推导出一组含有球拍击球姿态和球拍击球速度的非线性方程。利用公知的优化方法求解非线性方程组,计算出机器人球拍的击球姿态和击球速度。
文档编号G05B13/04GK102200760SQ201110136109
公开日2011年9月28日 申请日期2011年5月25日 优先权日2011年5月25日
发明者张正涛, 徐德, 杨平, 谭民 申请人:中国科学院自动化研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1