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

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

Info

Publication number
CN102200760A
CN102200760A CN 201110136109 CN201110136109A CN102200760A CN 102200760 A CN102200760 A CN 102200760A CN 201110136109 CN201110136109 CN 201110136109 CN 201110136109 A CN201110136109 A CN 201110136109A CN 102200760 A CN102200760 A CN 102200760A
Authority
CN
China
Prior art keywords
table tennis
speed
ball
racket
ping
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.)
Granted
Application number
CN 201110136109
Other languages
English (en)
Other versions
CN102200760B (zh
Inventor
谭民
徐德
杨平
张正涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Automation of Chinese Academy of Science
Original Assignee
Institute of Automation of Chinese Academy of Science
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Automation of Chinese Academy of Science filed Critical Institute of Automation of Chinese Academy of Science
Priority to CN 201110136109 priority Critical patent/CN102200760B/zh
Publication of CN102200760A publication Critical patent/CN102200760A/zh
Application granted granted Critical
Publication of CN102200760B publication Critical patent/CN102200760B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

本发明是一种获取乒乓球机器人球拍击球姿态和击球速度的方法,建立了乒乓球飞行的解析模型,利用该模型根据期望的回球落点和预测的击打点位置,结合期望的回球落点速度,计算出机器人球拍击球后的出球速度。根据球拍击球前后的乒乓球速度,结合球拍的反弹模型和乒乓球机器人的运动学模型,推导出一组含有球拍击球姿态和球拍击球速度的非线性方程。利用公知的优化方法求解非线性方程组,计算出机器人球拍的击球姿态和击球速度。

Description

一种获取乒乓球机器人球拍击球姿态和击球速度的方法
技术领域
本发明属于机器人控制领域中的运动规划,具体地说是用于获得乒乓球机器人球拍击球姿态和击球速度的一种方法。
背景技术
传统上乒乓球机器人球拍击球姿态和击球速度的计算主要通过以下两种方法实现: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 M.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 M.,A Learning Approach to Robotic Table Tennis.IEEE Transaction on Robotics and Automation,第21卷,第4期,第767~771页,2005年”)。其中第一种方法由于忽略乒乓球飞行时空气阻力和球拍表面反弹特性,计算简单。但通过模型计算得出的球拍击球姿态和击球速度存在较大的偏差,从而造成乒乓球机器人回球时落点较为分散,回球质量较差,只能实现乒乓球机器人与人简单对打。第二种方法利用学习算法和专家系统,通过大量训练数据获得球拍击球姿态和击球速度,对于采样数据集内的数据,乒乓球机器人能够计算正确球拍击球姿态和击球速度,但对于采样数据集以外的数据,机器人计算出的球拍击球姿态和击球速度并不能满足控制精度要求。而且在训练采样数据时,来球速度、击球位置等多种因素共同决定了乒乓球机器人回球落点的位置和速度,训练较为困难,回去的落到位置和速度不可控,影响运动员的训练质量。
发明内容
本发明的目的在于提供一种能够克服上述不足、提高乒乓球机器人回球质量的球拍击球姿态和击球速度获取方法。
为了实现所述目的,本发明提出的一种获取乒乓球机器人球拍击球姿态和击球速度的方法,利用视觉单元、控制装置中的控制PC机期望落点计算单元、预测击打点单元、击打点出球速度计算单元和非线性模型实现所述方法的具体步骤包括:
步骤S1:由视觉单元采集乒乓球初始飞行时的一小段运动轨迹,建立乒乓球飞行解析模型,设定乒乓球落点位置及乒乓球落点速度;
步骤S2:预测击打点单元利用飞行解析模型、视觉单元输出的乒乓球的运动轨迹数据计算出乒乓球来球速度Vin、乒乓球的击打位置和击球剩余时间;
步骤S3:击打点出球速度计算单元利用飞行解析模型、预测击打点单元输出击打乒乓球的位置信息和击球剩余时间、期望落点计算单元期望输出的乒乓球落点位置、期望乒乓球落点速度计算并生成击打点处的期望出球速度V1
步骤S4:利用机器人运动学方程、乒乓球球拍反弹模型、击打点处的出球速度及乒乓球来球速度,建立包含乒乓球机器人球拍击球姿态和击球速度参数的非线性模型为:
T-1(V1-Vh)=KT-1(Vin-Vh)+B,
式中:T为已知的乒乓球机器人从世界坐标系到球拍坐标系的变换矩阵,V1为乒乓球在击打点处的期望出球速度,Vh为球拍击球速度,Vin为乒乓球在击打点处的来球速度,K是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵;K、B为常数由实验确定;
步骤S5:设定非线性模型中球拍击球速度Vh在Xw和Zw方向的速度分量为零,利用已知乒乓球在击打点处的出球速度V1、乒乓球在击打点处的来球速度Vin、常数K和B及L-M优化方法求解非线性方程组,计算得到余下的球拍姿态参数θ1和θ2和球拍击球速度在Yw方向上的速度分量,得到机器人球拍击球姿态和击球速度;利用多项式插值规划方法对机器人关节进行运动规划,控制球拍在击球时刻以击球速度到达击球位置,并且使机器人球拍调整到击球姿态完成击球,实现对乒乓球的落点位置和落点速度控制。
本发明的有益效果:本发明与以往乒乓球机器人的简单回球相比,能够实现乒乓球机器人的定点定速回球。本发明考虑乒乓球飞行阻力,建立了乒乓球飞行的解析模型和球拍的速度反弹模型,其参数均通过实验确定,本发明的突出特点是建立了乒乓球飞行的解析模型,利用该模型根据期望的回球落点和预测的击打点位置,结合期望的回球落点速度,能够准确的计算出机器人球拍的击球姿态和击球速度,便于实现对乒乓球机器人的控制。本发明的另一个突出特点是乒乓球机器人的回球落点位置和落点速度可以通过机器人球拍的击球姿态和击球速度控制。
附图说明
图1a是本发明获取乒乓球机器人球拍击球姿态和击球速度的方法流程图。
图1b是本发明控制装置中击打点出球速度计算单元的计算流程图。
图2a为乒乓球飞行受力模型的Xw-Yw平面。
图2b为乒乓球飞行模型的Yw-Zw平面。
图3为乒乓球机器人实验平台原理图。
图4a为定点回球落点位置球桌视图。
图4b为定点回球落点位置放大视图。
主要元件说明
前后平移机构1,左右平移机构2,
上下平移机构3,左右旋转机构4,
上下俯仰机构5,机器人球拍6,
球桌7,        控制装置8
实际T,        期望Q。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图1示出本发明获取乒乓球机器人球拍击球姿态和击球速度的方法流程图,本发明建立了乒乓球飞行的解析模型,利用该模型根据期望的回球落点和预测的击打点位置,结合期望的回球落点速度,可计算出机器人球拍击球后的期望出球速度。根据球拍击球前后的乒乓球速度,结合球拍的反弹模型和五自由度打乒乓球机器人的运动学模型,建立一组含有球拍击球姿态和球拍击球速度的非线性方程。利用公知的优化方法求解非线性方程组,可以计算出机器人球拍的击球姿态和击球速度,使得乒乓球机器人的回球落点位置和落点速度可以通过机器人控制。利用乒乓球机器人的视觉单元8、控制装置9中的控制PC机期望落点计算单元、预测击打点单元、击打点出球速度计算单元和非线性模型实现获取乒乓球机器人球拍击球姿态和击球速度的步骤包括:
步骤S1:由视觉单元采集乒乓球初始飞行时的一小段运动轨迹,建立乒乓球飞行解析模型,设定乒乓球落点位置及乒乓球落点速度;
步骤S2:预测击打点单元利用飞行解析模型、视觉单元输出的乒乓球的运动轨迹数据计算出乒乓球来球速度Vin、乒乓球的击打位置和击球剩余时间;
步骤S3:击打点出球速度计算单元利用飞行解析模型、预测击打点单元输出击打乒乓球的位置信息和击球剩余时间、期望落点计算单元期望输出的乒乓球落点位置、期望乒乓球落点速度计算并生成击打点处的期望出球速度V1
步骤S4:利用机器人运动学方程、乒乓球球拍反弹模型、击打点处的出球速度及乒乓球来球速度,建立包含乒乓球机器人球拍击球姿态和击球速度参数的非线性模型为:
T-1(V1-Vh)=KT-1(Vin-Vh)+B,
式中:T为已知的乒乓球机器人从世界坐标系到球拍坐标系的变换矩阵,V1为乒乓球在击打点处的期望出球速度,Vh为球拍击球速度,Vin为乒乓球在击打点处的来球速度,K是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵;K、B为常数由实验确定;
步骤S5:设定非线性模型中球拍击球速度Vh在Xw和Zw方向的速度分量为零,利用已知乒乓球在击打点处的出球速度V1、乒乓球在击打点处的来球速度Vin、常数K和B及L-M优化方法求解非线性方程组,计算得到余下的球拍姿态参数θ1和θ2和球拍击球速度在Yw方向上的速度分量,得到机器人球拍击球姿态和击球速度;利用多项式插值规划方法对机器人关节进行运动规划,控制球拍在击球时刻以击球速度到达击球位置,并且使机器人球拍调整到击球姿态完成击球,实现对乒乓球的落点位置和落点速度控制。
请参阅图2a及图2b,乒乓球从P1点飞行到P3点,在此过程中,乒乓球飞行经过最高点P2。将乒乓球的飞行速度分别分解到球桌平面和Zw方向。如图2a所示为乒乓球飞行受力模型的Xw-Yw平面,在球桌平面乒乓球受到球桌平面方向的空气阻力Fxy作用,该阻力的方向与乒乓球飞行方向相反,乒乓球飞行轨迹在球桌平面投影的倾角θ。如图2b所示为乒乓球飞行模型的Yw-Zw平面,在竖直方向,乒乓球在P1点到P2点上升段飞行过程中受到竖直向下的重力mg和竖直向下的空气阻力kfvzs 2,在P2点到P3点下降段飞行过程中受到竖直向下的重力mg和竖直向上的空气阻力kfvzx 2。本发明建立的乒乓球飞行的解析模型如下:
(1)乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式为:
v 1 x = v xy e k f m c cos θ , - - - ( 1 )
v 1 y = v xy e k f m c sin θ , - - - ( 2 )
其中:v1x是乒乓球在击打点处期望出球速度在Xw方向的速度分量,v1y是乒乓球在击打点处期望出球速度在Yw方向的速度分量,θ是乒乓球飞行轨迹在球桌平面投影的倾角,c是乒乓球从击球点到落点的飞行轨迹在球桌平面的投影距离,vxy是乒乓球球速在球桌平面的合速度,m是乒乓球的质量,kf是空气阻力系数。
(2)乒乓球飞行轨迹在球桌平面的投影距离c的函数表达式为:
c = m k f ln ( 1 + k f v 1 xy t m ) , - - - ( 3 )
其中:v1xy是击打点处乒乓球期望出球速度在球桌平面的合速度,t为从击打点处开始计时的时间。
(3)乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量vzs为:
v zs = mg k f tan [ - k f g m t + a tan ( k f mg v 1 z ) ] , ( v 1 z > 0 andt ≤ m k f g a tan ( k f mg v 1 z ) - - - ( 4 )
其中:vzs为乒乓球球速在Zw方向的速度分量,v1z为击打点处乒乓球期望出球速度在Zw方向的速度分量。
(4)乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量zs为:
z s = m k f ln | cos ( k f g m t ) + v 1 z k f mg sin ( k f g m t ) | + z 1 , ( v 1 z > 0 andt ≤ m kg a tan ( k f mg v 1 z ) - - - ( 5 )
其中:z1是乒乓球在击球点处在Zw方向的位置坐标。
(5)乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量vzx为:
v zx = mg k f 1 - e 2 ( t - t 2 ) k f g m 1 + e 2 ( t - t 2 ) k f g m - - - ( 6 )
其中:t2为乒乓球从击打点飞行到最高点所用的时间。
(6)乒乓球处于下降阶段时,乒乓球在Zw方向的位置分量zx为:
z x = - m 2 k f ln ( 1 + e 2 ( t - t 2 ) k f g m ) 2 4 e 2 ( t - t 2 ) k f g m + z 2 - - - ( 7 )
其中:z2为乒乓球在最高点的Zw位置。
利用上述解析模型,根据击打点位置、期望的落点位置和落点速度,计算在世界坐标系中乒乓球的期望出球速度。实现所述方法的步骤如下:
步骤S31:建立乒乓球球速在球桌平面Xw和Yw方向的速度分量v1x、v1y的函数;建立乒乓球飞行轨迹在球桌平面的投影距离c的函数;建立乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量vzs的函数;建立乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量zs的函数;建立乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量vzx的函数;建立乒乓球处于下降阶段时,乒乓球在球桌平面Zw方向的位置分量zx的函数;
步骤S32:利用上述模型中乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式(1)和(2),根据落点速度在球桌平面的速度分量和击打点到落点之间的飞行距离计算击打点处乒乓球期望出球速度在Xw和Yw方向的速度分量v1x和v1y
步骤S33:利用上述模型中乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式(1)和(2)和乒乓球飞行轨迹在球桌平面的投影距离c的函数表达式(3),计算乒乓球从击打点飞行到落点的时间t3
t 3 = m k f ( 1 v 3 xy - 1 v 1 xy ) - - - ( 8 )
其中,m是乒乓球质量,kf是空气阻力系数,v3xy是落点处乒乓球速度在球桌平面的合速度,v1xy是击打点处乒乓球期望出球速度在球桌平面的合速度;。
步骤S34:利用乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量表达式和乒乓球处于下降阶段时,上述模型中的乒乓球在Zw方向的位置分量表达式(5)和(7),得到乒乓球在落点处Zw方向的位置分量zb等于乒乓球的半径如下表示:
z b = - m 2 k f ln ( 1 + e 2 k f g m ( t 3 - t 2 ) ) 2 4 e 2 k f g m ( t 3 - t 2 ) - m k f ln | cos ( k f g m t 2 ) | + z 1 - - - ( 9 )
利用公知的L-M优化方法(Levenberg-Marquardt,L-M),由上式计算出乒乓球从击打点飞行到最高点的时间t2;其中:z1是乒乓球在击球点处在Zw方向的位置坐标,g为重力加速度。
步骤S35:利用乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量表达式和乒乓球处于下降阶段时,利用上述模型中的乒乓球球速在Zw方向的速度分量表达式(4)和(6),计算乒乓球在击打点处的期望出球速度在Zw方向的速度分量v1z
v 1 z = mg k f tan ( k f g m t 2 ) - - - ( 10 )
利用公知的D-H(Denavit-Hartenberg)参数法建立机器人坐标系,得到由世界坐标系到球拍坐标系的变换矩阵T。
建立球拍速度反弹模型如下:
eV=KeVin+B    (11)
其中:eV是球拍坐标系下乒乓球在击打点处的期望出球速度,eVin是球拍坐标系下乒乓球在击打点处的来球速度,K是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵。
K = k 1 0 0 0 0 k 1 0 0 0 0 k 2 0 0 0 0 1 , B = b 1 b 1 b 2 0 - - - ( 12 )
参数k1,k2,b1,b2通过实验确定。
假定在击球时刻机器人的球拍姿态不变。对机器人由世界坐标系到球拍坐标系的变换求导,得到机器人世界坐标系中的速度与球拍坐标系中的速度关系表达式:
V=Vh+TeV                (13)
其中:V是乒乓球在世界坐标系中的速度,Vh(vhx,vhy,vhz)是球拍的击球速度,eV是乒乓球在球拍坐标系中的速度。
根据表达式(13),将击打点处乒乓球的来球速度和期望出球速度转换到球拍坐标系中,然后代入球拍速度反弹模型表达式(11)中,得到:
T-1(V1-Vh)=KT-1(Vin-Vh)+B    (14)
其中:Vin(vinx,viny,vinz)为乒乓球在击打点处的来球速度,V1(v1x,v1y,v1z)是乒乓球在击打点处的期望出球速度。
在上式中,T包含球拍的姿态参数。上式中总共有五个未知数,仅有三个方程进行约束。令球拍击球速度在Xw和Zw方向的速度分量为零,利用L-M优化方法计算得到余下的球拍姿态参数θ1和θ2和球拍击球速度在Yw方向上的速度分量,从而求解出球拍的击球姿态和击球速度。
请参阅图3a示出的乒乓球机器人实验平台原理图,乒乓球机器人为直角坐标机器人,具有五个自由度。具体包括前后平移机构1、左右平移机构2、上下平移机构3、左右旋转机构4、上下俯仰机构5、机器人球拍6、球桌7、视觉单元8和控制装置9。前后平移机构1由两组平行导轨构成,是机器人的第一个平移关节。左右平移机构2为横向导轨,安装在前后平移机构1上,是机器人的第二个平移关节。上下平移机构3为纵向导轨,安装在左右平移机构2上,是机器人的第三个平移关节。左右旋转机构4安装在上下平移机构3上,构成旋转关节,是机器人的第四个关节。上下俯仰机构5安装在左右旋转机构4的末端,构成旋转关节,是机器人的第五个关节。机器人球拍6安装在上下俯仰机构5末端。视觉单元8包括两台智能摄像机、一台视觉PC机和一台集线器。控制装置9包括:一台控制PC机、机器人控制柜及驱动电机。球桌7安放在前后平移机构1的两组平行导轨之间。视觉单元8中的两台智能摄像机与视觉PC机通过集线器相连,使用局域网(LAN)通信。控制装置9中的控制PC机与控制柜通过信号线连接,控制柜与驱动电机通过电缆连接。控制柜中包括机器人的电机驱动器。机器人电机包括三台交流伺服电机和两台步进电机。其中,三台交流伺服电机分别驱动机器人的三个平移关节,两台步进电机分别驱动机器人的旋转关节。
两台智能摄像机完成乒乓球图像的采集与处理,将乒乓球的图像坐标通过局域网发送到视觉PC机。视觉PC机中完成乒乓球轨迹计算,并通过局域网将计算结果发送到控制装置9中的控制PC机。在控制PC机中,实现期望落点计算单元、预测击打点单元、击打点出球速度计算单元、非线性模型、机器人球拍击球姿态和击球速度计算。同时对机器人关节的位置和速度进行多项式插值规划,生成运动指令,下载到控制柜中。在控制柜中利用电机驱动器完成电机的驱动放大,最终控制电机的转动,实现机器人球拍的位置和速度控制。
利用公知的D-H参数法建立机器人坐标系,得到由世界坐标系到球拍坐标系的变换矩阵T:
T = - sin θ 1 cos θ 1 sin θ 2 cos θ 1 cos θ 2 d 3 cos θ 1 cos θ 2 + a 1 + p x cos θ 1 sin θ 1 sin θ 2 sin θ 1 cos θ 2 d 3 sin θ 1 cos θ 2 + p y 0 cos θ 2 - sin θ 2 - d 3 sin θ 2 - d 1 + p z 0 0 0 1 - - ( 15 ) -
其中:θ1为左右旋转机构4的旋转角度,θ2为上下俯仰机构5的旋转角度,px为前后平移机构1的平移量,py为左右平移机构2的平移量,pz为上下平移机构3的平移量,d1为上下平移机构3到左右旋转机构4的连杆偏移量,d3为上下俯仰机构5到机器人球拍6的连杆偏移量,a1为上下平移机构3到左右旋转机构4的连杆长度。
指定期望的落点位置和落点速度。利用前述本发明所建立的乒乓球飞行的解析模型,根据期望的落点位置和落点速度和击打点位置,采用前述步骤计算出在世界坐标系中乒乓球的期望出球速度。
根据前述球拍的速度反弹模型和上述变换矩阵T,将T-1(V1-Vh)=KT-1(Vin-Vh)+B展开,得到的非线性方程组如下:
- ( v 1 x - v hx ) sin θ 1 + ( v 1 y - v hy ) cos θ 1 + k 1 ( v inx - v hx ) sin θ 1 - k 1 ( v iny - v hy ) cos θ 1 - b 1 = 0 ( v 1 x - v hx ) cos θ 1 sin θ 2 + ( v 1 y - v hy ) sin θ 1 sin θ 2 + ( v 1 z - v hz ) cos θ 2 - k 1 ( v inx - v hx ) cos θ 1 sin θ 2 - k 1 ( v iny - v hy ) sin θ 1 sin θ 2 - k 1 ( v inz - v hz ) cos θ 2 - b 1 = 0 ( v 1 x - v hx ) cos θ 1 cos θ 2 + ( v 1 y - v hy ) sin θ 1 cos θ 2 + ( v 1 z - v hz ) sin θ 2 - k 2 ( v inx - v hx ) cos θ 1 cos θ 2 - k 2 ( v iny - v hy ) sin θ 1 cos θ 2 - k 2 ( v inz - v hz ) sin θ 2 - b 2 = 0 - - - ( 16 )
上述方程中,来球速度Vin(vinx,viny,vinz)由视觉系统提供,为已知参数;期望出球速度V1(v1x,v1y,v1z)通过计算得到,球拍速度反弹模型参数k1,k2,b1,b2通过实验确定。击球速度Vh(vhx,vhy,vhz)和击球姿态θ1和θ2未知,是待确定的量。在本实施例中,令Vh中的vhx=vhz=0,即规定在球拍击球时,Xw和Zw方向的速度为零。利用公知的优化方法求解上述三个非线性方程的未知数vhy、θ1和θ2,即可得到球拍的击球速度和击球姿态。
实施例中,空气阻力系数kf=0.00015Ns2/m2,乒乓球质量m=0.0027kg,重力加速度g=9.8m/s2。球拍速度反弹模型参数k1=0.82,k2=-0.88,b1=0.1,b2=-0.1。本实施例中,期望落点指定为(0,2.4,0)m,期望落点速度vxy指定为4.5m/s。表1列出了连续10次打球实验中击球前后乒乓球的参数结果,分别为击打点位置、来球速度、利用本发明计算得到的击球速度vhy和击球姿态参数θ1和θ2。表2给出了上述10次打球实验的实际落点位置及其误差和实际落点速度及其误差。
表1击球前后乒乓球的参数结果
Figure BDA0000063508770000111
表2落点误差和速度误差
Figure BDA0000063508770000121
表1表明,使用本发明的方法,能够计算出乒乓球机器人的击球姿态和击球速度,表2表明实际落点位置和落点速度与期望的落到位置和期望落点速度的误差较小。
图4a为定点回球落点位置球桌视图,机器人与人多次连续对打时,记录下的落到位置。图4中,实际落点位置在Xw方向的偏差范围为-0.25m到0.08m,在Yw方向的偏差为-0.25到0.2m。速度偏差为-0.8到0.6m/s。实验结果表明乒乓球机器人的回球质量较好,落点误差范围不大,较容易实现人机多回合对打。目前,本发明已经应用于乒乓球机器人与人打球,实现了人机连续多个回合的对打。
图4b定点回球落点位置放大视图
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (8)

1.一种获取乒乓球机器人球拍击球姿态和击球速度的方法,其特征在于,利用视觉单元、控制装置中的控制PC机期望落点计算单元、预测击打点单元、击打点出球速度计算单元和非线性模型实现所述方法的具体步骤包括:
步骤S1:由视觉单元采集乒乓球初始飞行时的一小段运动轨迹,建立乒乓球飞行解析模型,设定乒乓球落点位置及乒乓球落点速度;
步骤S2:预测击打点单元利用飞行解析模型、视觉单元输出的乒乓球的运动轨迹数据计算出乒乓球来球速度Vin、乒乓球的击打位置和击球剩余时间;
步骤S3:击打点出球速度计算单元利用飞行解析模型、预测击打点单元输出击打乒乓球的位置信息和击球剩余时间、期望落点计算单元期望输出的乒乓球落点位置、期望乒乓球落点速度计算并生成击打点处的期望出球速度V1
步骤S4:利用机器人运动学方程、乒乓球球拍反弹模型、击打点处的出球速度及乒乓球来球速度,建立包含乒乓球机器人球拍击球姿态和击球速度参数的非线性模型为:
T-1(V1-Vh)=KT-1(Vin-Vh)+B,
式中:T为已知的乒乓球机器人从世界坐标系到球拍坐标系的变换矩阵,V1为乒乓球在击打点处的期望出球速度,Vh为球拍击球速度,Vin为乒乓球在击打点处的来球速度,K是球拍速度反弹模型的比例系数矩阵,B是球拍速度反弹模型的偏移系数矩阵;K、B为常数由实验确定;
步骤S5:设定非线性模型中球拍击球速度Vh在Xw和Zw方向的速度分量为零,利用已知乒乓球在击打点处的出球速度V1、乒乓球在击打点处的来球速度Vin、常数K和B及L-M优化方法求解非线性方程组,计算得到余下的球拍姿态参数θ1和θ2和球拍击球速度在Yw方向上的速度分量,得到机器人球拍击球姿态和击球速度;利用多项式插值规划方法对机器人关节进行运动规划,控制球拍在击球时刻以击球速度到达击球位置,并且使机器人球拍调整到击球姿态完成击球,实现对乒乓球的落点位置和落点速度控制。
2.如权利要求1所述获取乒乓球机器人的球拍击球姿态和击球速度的方法,其特征在于,所述击打点出球速度计算单元计算步骤包括:
步骤S31:建立乒乓球球速在球桌平面Xw和Yw方向的速度分量v1x、v1y的函数;建立乒乓球飞行轨迹在球桌平面的投影距离c的函数;建立乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量vzs的函数;建立乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量zs的函数;建立乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量vzx的函数;建立乒乓球处于下降阶段时,乒乓球在球桌平面Zw方向的位置分量zx的函数;
步骤S32:利用乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式,根据回球落点速度在球桌平面的速度分量和击打点到落点之间的飞行距离计算击打点处乒乓球期望出球速度在Xw和Yw方向的速度分量v1x和v1y
步骤S33:利用乒乓球球速在球桌平面Xw和Yw方向的速度分量的函数表达式和乒乓球飞行轨迹在球桌平面的投影距离的函数表达式,计算乒乓球从击打点飞行到落点的时间t3
t 3 = m k f ( 1 v 3 xy - 1 v 1 xy ) ,
式中,m是乒乓球质量,kf是空气阻力系数,v3xy是落点处乒乓球速度在球桌平面的合速度,v1xy是击打点处乒乓球期望出球速度在球桌平面的合速度;
步骤S34:利用乒乓球处于上升阶段时,在Zw方向的位置分量表达式和乒乓球处于下降阶段时,在Zw方向的位置分量表达式得到乒乓球在落点处Zw方向的位置分量zb等于乒乓球的半径如下表示:
z b = - m 2 k f ln ( 1 + e 2 k f g m ( t 3 - t 2 ) ) 2 4 e 2 k f g m ( t 3 - t 2 ) - m k f ln | cos ( k f g m t 2 ) | + z 1 ,
利用L-M优化方法,由上式计算出乒乓球从击打点飞行到最高点的时间t2;z1是乒乓球在击球点处在Zw方向的位置坐标,g为重力加速度;
步骤S35:利用乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量表达式和乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量表达式,计算乒乓球在打点处的期望出球速度在Zw方向的速度分量v1z
v 1 z = mg k f tan ( k f g m t 2 ) .
3.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球在击打点处期望出球速度在Xw和Yw方向的速度分量v1x和v1y的函数表达式为:
v 1 x = v 3 xy e k f m c 3 cos θ ,
v 1 y = v 3 xy e k f m c 3 sin θ ,
其中:θ是乒乓球飞行轨迹在球桌平面投影的倾角,c3是乒乓球从击球点到落点的飞行轨迹在球桌平面的投影距离。
4.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球飞行轨迹在球桌平面的投影距离c的函数表达式为:
c = m k f ln ( 1 + k f v 1 xy t m ) ,
其中:t为从击打点处开始计时的时间。
5.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于上升阶段时,乒乓球球速在Zw方向的速度分量vzs表示为:
v zs = mg k f tan [ - k f g m t + a tan ( k f mg v 1 z ) ] , ( v 1 z > 0 andt ≤ m k f g a tan ( k f mg v 1 z ) ,
式中,t为从击打点处开始计时的时间。
6.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于上升阶段时,乒乓球在Zw方向的位置分量zs为:
z s = m k f ln | cos ( k f g m t ) + v 1 z k f mg sin ( k f g m t ) | + z 1 , ( v 1 z > 0 andt ≤ m kg a tan ( k f mg v 1 z )
式中:t为从击打点处开始计时的时间。
7.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于下降阶段时,乒乓球球速在Zw方向的速度分量vzx为:
v zx = mg k f 1 - e 2 ( t - t 2 ) k f g m 1 + e 2 ( t - t 2 ) k f g m ,
式中:t为从击打点处开始计时的时间。
8.如权利要求2所述的乒乓球机器人的球拍击球姿态和击球速度的获取方法,其特征在于,所述乒乓球处于下降阶段时,乒乓球在Zw方向的位置分量zx为:
z x = - m 2 k f ln ( 1 + e 2 ( t - t 2 ) k f g m ) 2 4 e 2 ( t - t 2 ) k f g m + z 2
式中:z2为乒乓球在最高点的Zw位置,t为从击打点处开始计时的时间。
CN 201110136109 2011-05-25 2011-05-25 一种获取乒乓球机器人球拍击球姿态和击球速度的方法 Expired - Fee Related CN102200760B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110136109 CN102200760B (zh) 2011-05-25 2011-05-25 一种获取乒乓球机器人球拍击球姿态和击球速度的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110136109 CN102200760B (zh) 2011-05-25 2011-05-25 一种获取乒乓球机器人球拍击球姿态和击球速度的方法

Publications (2)

Publication Number Publication Date
CN102200760A true CN102200760A (zh) 2011-09-28
CN102200760B CN102200760B (zh) 2013-04-17

Family

ID=44661505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110136109 Expired - Fee Related CN102200760B (zh) 2011-05-25 2011-05-25 一种获取乒乓球机器人球拍击球姿态和击球速度的方法

Country Status (1)

Country Link
CN (1) CN102200760B (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102717381A (zh) * 2012-06-06 2012-10-10 北京理工大学 仿人机器人身体姿态角度误差的补偿方法和装置
CN103364579A (zh) * 2013-07-02 2013-10-23 北京理工大学 一种用于乒乓球机器人的乒乓球自旋角速度的预测方法
CN103389738A (zh) * 2013-06-25 2013-11-13 北京理工大学 一种用于乒乓球机器人预测乒乓球轨迹的方法和装置
CN104908044A (zh) * 2014-06-06 2015-09-16 苏州晓炎自动化设备有限公司 一种打球机器人
CN105373128A (zh) * 2015-06-17 2016-03-02 电子科技大学 羽毛球机器人及其全场定位方法
CN106078669A (zh) * 2016-06-14 2016-11-09 夏烬楚 一种基于图像识别技术的击球机器人、系统和控制方法
CN106325302A (zh) * 2015-06-17 2017-01-11 电子科技大学 一种移动物体位置跟踪平台、跟踪装置及跟踪方法
CN106390409A (zh) * 2016-11-17 2017-02-15 中科新松有限公司 一种乒乓球机器人的击球方法及装置
CN106426200A (zh) * 2016-10-14 2017-02-22 深圳四博智联科技有限公司 一种乒乓球机器人及其控制方法
CN106737660A (zh) * 2016-11-23 2017-05-31 河池学院 一种运动教育机器人拍球控制方法
CN107315349A (zh) * 2017-07-31 2017-11-03 中科新松有限公司 机器人的击球运动控制方法
CN107498556A (zh) * 2017-08-15 2017-12-22 中科新松有限公司 一种乒乓球机器人总线控制系统及控制方法
CN108525268A (zh) * 2018-06-04 2018-09-14 四川大学 一种能够自由控制乒乓球旋转状态的发球机
CN108858247A (zh) * 2018-08-23 2018-11-23 中科新松有限公司 机械臂及具有其的乒乓球机器人
CN108939490A (zh) * 2018-10-09 2018-12-07 中科新松有限公司 乒乓球机器人
CN109015682A (zh) * 2018-08-23 2018-12-18 中科新松有限公司 机械臂及具有其的乒乓球机器人
CN109087336A (zh) * 2018-08-29 2018-12-25 上海体育学院 球体旋转姿态检测方法、装置、存储介质及计算机设备
CN110458281A (zh) * 2019-08-02 2019-11-15 中科新松有限公司 乒乓球机器人的深度强化学习旋转速度预测方法及系统
CN110548274A (zh) * 2019-09-25 2019-12-10 中科新松有限公司 乒乓球机器人的发球控制方法
CN111283700A (zh) * 2020-05-11 2020-06-16 上海庞勃特科技有限公司 一种乒乓球发球机器人、乒乓球发球方法和计算机可读存储介质
CN113386126A (zh) * 2020-03-13 2021-09-14 欧姆龙株式会社 旋转推断装置及方法、轨迹预测装置及方法、回球机器人
CN113650010A (zh) * 2021-08-04 2021-11-16 乒乓动量机器人(昆山)有限公司 一种乒乓球机器人的运动控制方法、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2053932U (zh) * 1987-10-26 1990-03-07 国家体委体育科学研究所 乒乓球机器人
CN2917710Y (zh) * 2006-06-22 2007-07-04 杨子奕 机器人乒乓球发球机
CN201036683Y (zh) * 2007-01-26 2008-03-19 黎洁玲 一种发球机出球方向控制装置
CN201441801U (zh) * 2009-07-15 2010-04-28 中国科学院沈阳自动化研究所 用于机械臂的可连续发球的发球机构

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2053932U (zh) * 1987-10-26 1990-03-07 国家体委体育科学研究所 乒乓球机器人
CN2917710Y (zh) * 2006-06-22 2007-07-04 杨子奕 机器人乒乓球发球机
CN201036683Y (zh) * 2007-01-26 2008-03-19 黎洁玲 一种发球机出球方向控制装置
CN201441801U (zh) * 2009-07-15 2010-04-28 中国科学院沈阳自动化研究所 用于机械臂的可连续发球的发球机构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《IEEE》 20040107 Acosta,L Ping-Pong Player Prototype 第10卷, 第4期 *

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102717381B (zh) * 2012-06-06 2015-08-12 北京理工大学 仿人机器人身体姿态角度误差的补偿方法和装置
CN102717381A (zh) * 2012-06-06 2012-10-10 北京理工大学 仿人机器人身体姿态角度误差的补偿方法和装置
CN103389738A (zh) * 2013-06-25 2013-11-13 北京理工大学 一种用于乒乓球机器人预测乒乓球轨迹的方法和装置
CN103389738B (zh) * 2013-06-25 2015-12-02 北京理工大学 一种用于乒乓球机器人预测乒乓球轨迹的方法和装置
CN103364579A (zh) * 2013-07-02 2013-10-23 北京理工大学 一种用于乒乓球机器人的乒乓球自旋角速度的预测方法
CN103364579B (zh) * 2013-07-02 2015-04-15 北京理工大学 一种用于乒乓球机器人的乒乓球自旋角速度的测量方法和测量装置
CN104908044A (zh) * 2014-06-06 2015-09-16 苏州晓炎自动化设备有限公司 一种打球机器人
CN105373128B (zh) * 2015-06-17 2018-06-12 电子科技大学 羽毛球机器人及其全场定位方法
CN105373128A (zh) * 2015-06-17 2016-03-02 电子科技大学 羽毛球机器人及其全场定位方法
CN106325302A (zh) * 2015-06-17 2017-01-11 电子科技大学 一种移动物体位置跟踪平台、跟踪装置及跟踪方法
CN106078669A (zh) * 2016-06-14 2016-11-09 夏烬楚 一种基于图像识别技术的击球机器人、系统和控制方法
CN106426200A (zh) * 2016-10-14 2017-02-22 深圳四博智联科技有限公司 一种乒乓球机器人及其控制方法
WO2018068551A1 (zh) * 2016-10-14 2018-04-19 深圳四博智联科技有限公司 一种乒乓球机器人及其控制方法
CN106426200B (zh) * 2016-10-14 2018-09-18 深圳四博智联科技有限公司 一种乒乓球机器人及其控制方法
CN106390409A (zh) * 2016-11-17 2017-02-15 中科新松有限公司 一种乒乓球机器人的击球方法及装置
CN106390409B (zh) * 2016-11-17 2018-10-02 中科新松有限公司 一种乒乓球机器人的击球方法及装置
CN106737660A (zh) * 2016-11-23 2017-05-31 河池学院 一种运动教育机器人拍球控制方法
CN107315349A (zh) * 2017-07-31 2017-11-03 中科新松有限公司 机器人的击球运动控制方法
CN107315349B (zh) * 2017-07-31 2020-08-21 中科新松有限公司 机器人的击球运动控制方法
CN107498556A (zh) * 2017-08-15 2017-12-22 中科新松有限公司 一种乒乓球机器人总线控制系统及控制方法
CN108525268A (zh) * 2018-06-04 2018-09-14 四川大学 一种能够自由控制乒乓球旋转状态的发球机
CN108525268B (zh) * 2018-06-04 2023-10-31 四川大学 一种能够自由控制乒乓球旋转状态的发球机
CN108858247A (zh) * 2018-08-23 2018-11-23 中科新松有限公司 机械臂及具有其的乒乓球机器人
CN109015682A (zh) * 2018-08-23 2018-12-18 中科新松有限公司 机械臂及具有其的乒乓球机器人
CN109087336A (zh) * 2018-08-29 2018-12-25 上海体育学院 球体旋转姿态检测方法、装置、存储介质及计算机设备
CN109087336B (zh) * 2018-08-29 2020-10-02 上海体育学院 球体旋转姿态检测方法、装置、存储介质及计算机设备
CN108939490A (zh) * 2018-10-09 2018-12-07 中科新松有限公司 乒乓球机器人
CN108939490B (zh) * 2018-10-09 2021-04-23 中科新松有限公司 乒乓球机器人
CN110458281A (zh) * 2019-08-02 2019-11-15 中科新松有限公司 乒乓球机器人的深度强化学习旋转速度预测方法及系统
CN110548274A (zh) * 2019-09-25 2019-12-10 中科新松有限公司 乒乓球机器人的发球控制方法
CN113386126A (zh) * 2020-03-13 2021-09-14 欧姆龙株式会社 旋转推断装置及方法、轨迹预测装置及方法、回球机器人
CN111283700B (zh) * 2020-05-11 2020-08-14 上海庞勃特科技有限公司 一种乒乓球发球机器人、乒乓球发球方法和计算机可读存储介质
CN111283700A (zh) * 2020-05-11 2020-06-16 上海庞勃特科技有限公司 一种乒乓球发球机器人、乒乓球发球方法和计算机可读存储介质
CN113650010A (zh) * 2021-08-04 2021-11-16 乒乓动量机器人(昆山)有限公司 一种乒乓球机器人的运动控制方法、系统及存储介质

Also Published As

Publication number Publication date
CN102200760B (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
CN102200760B (zh) 一种获取乒乓球机器人球拍击球姿态和击球速度的方法
Mülling et al. A biomimetic approach to robot table tennis
CN206214699U (zh) 一种打乒乓球机器人
US9230447B2 (en) Method of recording a motion for robotic playback
CN107309882A (zh) 一种机器人示教编程系统及方法
KR20100020131A (ko) 스윙 시뮬레이션 시스템과 그 방법 및 그 프로그램
CN106390409A (zh) 一种乒乓球机器人的击球方法及装置
CN104436611B (zh) 投影自动发球装置及该装置的发球方法
CN103364579B (zh) 一种用于乒乓球机器人的乒乓球自旋角速度的测量方法和测量装置
CN107498556A (zh) 一种乒乓球机器人总线控制系统及控制方法
CN103721398A (zh) 击球结果推论与姿势修正的方法与装置
CN105999677A (zh) 一种可联网的便携式高尔夫模拟系统及模拟方法
JP2022549170A (ja) 自動投球マシンを使用してボール軌道を再現する方法及びシステム
CN105373128A (zh) 羽毛球机器人及其全场定位方法
Serra et al. An optimal trajectory planner for a robotic batting task: the table tennis example
Zaidi et al. Athletic mobile manipulator system for robotic wheelchair tennis
Yang et al. Varsm: Versatile autonomous racquet sports machine
CN107315349B (zh) 机器人的击球运动控制方法
CN113650010B (zh) 一种乒乓球机器人的运动控制方法、系统及存储介质
Sanders Biomechanical analyses in physical education
KR101962572B1 (ko) 골프스윙 연습장치
CN209790775U (zh) 新型健身飞行器
Mülling et al. A computational model of human table tennis for robot application
Jenkins Golf coaching and swing plane theories
CN207858824U (zh) 机器人羽毛球比赛控制系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130417