Content uploaded by Xiaopeng Chen

Author content

All content in this area was uploaded by Xiaopeng Chen on Jan 22, 2015

Content may be subject to copyright.

Bouncing Model for the Table Tennis Trajectory

Prediction and the Strategy of Hitting the Ball

Han Bao, Xiaopeng Chen ZhanTao Wang Min Pan, Fei Meng

Key Laboratory of Robots and Systems

Ministry of Education, P.R. China

Intelligent Robotics Institute, School of

Mechatronic Engineering, Beijing Institute of

Technology

Beijing, 100081, P.R. China

bao_han327@126.com,xpchen@bit.edu.cn

Measurement Technology

Beijing Aerospace Institute

for Metrology and

Measurement

Technology

Beijing, 100081, P.R. China

zhantao_wzt@163.com

Key Laboratory of Robots and Systems

Ministry of Education, P.R. China

Intelligent Robotics Institute, School of

Mechatronic Engineering, Beijing Institute of

Technology

Beijing, 100081, P.R. China

sonyejin@bit.edu.cn, mfly@yahoo.com.cn

Abstract – The bouncing model plays an important role in the

trajectory prediction process when the humanoid robots play table

tennis. A nonlinear bouncing model based on Momentum Theorem

and Moment of Momentum Theorem considering spin of the ball is

established to describe the collision between the ball and the table.

With the constructed bouncing model, the hitting strategy is

discussed to hit the ball the way we expect. The experiments show

that with the existing aerodynamic model, we can predict the table

tennis trajectory within the error range we expect.

Index Terms - error of prediction; bouncing model; the

strategy of hitting the ball

I. INTRODUCTON

The research on the Ping-Pong robot began when John

Billiney suggested having a robot table tennis game in 1983

[1]. In the recent years the Ping-Pong robot has become a

hotspot region of the robotic technology. To make a humanoid

robot playing Ping-Pong like a professional player is exciting

and challenging task for its complexity and it is attracting

more and more people now to investigate.

On the basis of trajectory prediction, setting the paddle’s

velocity and orientation, and calculating the joint parameter

with inverse kinematics, Ping-Pong robot can hit the ball in

the desired direction. In the whole procedure, the flying

trajectory prediction is the key to hit the table tennis the way

we expect. The trajectory of the Ping-Pong could divide into

two segments, flying in the sky and bouncing from the table.

Lots of research has been done to construct the aerodynamic

model of the ball when it flies in the sky and gets the position

and velocity information [2] [3] [4] [5]. But few of people

study of the collision between the ball and the table. One

approach is adopting the concept of restitution coefficient to

establish the linear model [2] [6], and another is constructing

the nonlinear model using Momentum Theorem and Moment

of Momentum Theorem [7] [8].

This work was supported by the Research Fund for the Doctoral Program

of Higher Education of China (Grant No. 20101101120006), the National

High-Technology Research and Development Program (Grant No

2011AA040201), the 111 Project (Grant No. B08043), National Science

Foundation for Distinguished Young Scholar (Grant No. 60925014). The

corresponding author is Xiaopeng Chen.

The advantage of the linear model is with few of

computing and easy to solve, but with the disadvantage of

neglecting the spin of ball, the model is not with the enough

accuracy. The nonlinear model takes into account the effect of

the spin of the ball and it fits the actual motion of the table

tennis. The hitting model of the paddle is similar to the model

the ball collides with the table, but few researches have been

done to it. In this paper the hitting model will be established

and the strategy of hitting the ball will be discussed.

II. THE SYSTEM OF THE PING-PONG ROBOT

We use two humanoid robots and four 200fps high speed

cameras and two low speed cameras to construct the

experiment system. The construction of system is like the

Fig1. The high speed cameras fix on the ceiling of the robot

side to collect initial kinematic information of the ball, and the

low speed cameras fixed behind the robots to get the robots’

location. The table tennis we use is the official ball suggested

for game by the ITTF, with the diameter 0.04m, the radius

0.02m, the mass 0.0027kg, the inertia I along the diameter

is 2

2/3mr . a

ρ

is the density of the air whose value is 1.29

kg/m3 in Beijing, and g is the acceleration of gravity with the

value 2

9.8015m/s . The word coordinate frame of the system

is defined as the Fig.1 shows, with the X axis along the

parallel to the longer edge of the table, the Z axis vertical to

the table flat, and the Y axis defined according to the right

hand rule.

III. THE BOUCING MODEL BETEEWM THE BALL AND

THE TABLE AND THE STRATEGY OF HITTING THE

BALL

The velocity and angular velocity are both changed after

the ball bounces off the table as in Fig2 shows. From amounts

of experiments, we find that the inaccuracy of the bouncing

model is the important factor which causes the error of the

trajectory prediction. So we must have an accurate bouncing

model that can describe the process the ball collides with the

table.

2002

978-1-4673-1278-3/12/$31.00 ©2012 IEEE

Proceedings of 2012 IEEE

International Conference on Mechatronics and Automation

August 5 - 8, Chengdu, China

For the modeling, we present some assumptions.

Assumption 1: In the Z direction, the emergence velocity is

proportional to the incidence velocity, with the equation:

ez v iz

vkv=− , (1)

where the v

k stands for the restitution coefficient vertical to

the table, and its value is a table dependent constant.

Fig. 1 The Ping-Pong Robot System.

Fig.2 Ball velocity before and after bouncing

Assumption 2: The angular velocity along the Z direction

z

ω

is not changed after the bouncing.

Assumption 3: During the collision process, the ball

either slides or rolls, without the situation that the ball both

slides and rolls.

Assumption 4: The direction of the velocity of the point

where the ball contacts with the ball is not changed.

Now, we go to the bouncing model. The incidence

velocity of the contact point is:

(,,0)

bi ix iy iy ix

vvrvr

ωω

→

=− + , (2)

The direction is r

v

∧

:

bi

r

bi

v

vv

→

∧

=. (3)

The impulse S along r

v

∧

is that:

SN

μ

=−

³. (4)

In the Z direction, according to the Momentum Theorem, The

impulse

z

Sis defined as:

()

z

ez iz

SNmvv

μ

==−

³, (5)

where

μ

stands for the dynamical coefficient of friction of the

table. According to the Momentum Theorem and Moment of

Momentum Theorem, we can find that:

()

x

ex ix

Smvv=−

, (6)

()

yeyiy

Smvv=−

, (7)

()

xiyey

Sr I

ωω

=−

, (8)

()

yexix

Sr I

ωω

=−

, (9)

where

x

Sand y

Sis the component of S, with the equation:

22

()

()()

ix iy

x

ix iy iy ix

vr

SS

vrvr

ω

ωω

−

=

−++

, (10)

22

()

()()

iy ix

y

ix iy iy ix

vr

SS

vrvr

ω

ωω

+

=

−++

. (11)

From (4), (5), (6), (7), (10) and (11), we can find that:

22

22

(1 ) | | ( )

()()

(1 ) | | ( )

()()

vizix iy

ex ix

ix iy iy ix

viziy iy

ey iy

ix iy iy ix

kvv r

vv

vrvr

kvv r

vv

vrvr

μω

ωω

μω

ωω

+−

=−

°−++

°

®++

°=−

°−++

¯

, (12)

and from (4), (5), (8), (9), (10) and (11), we can find:

22

22

3(1 )| |( )

2( ) ( )

3(1 )| |( )

2( ) ( )

viziy ix

ex ix

ix iy iy ix

vizix iy

ey iy

ix iy iy ix

kvv r

rv r v r

kvv r

rv r v r

μω

ωω

ωω

μω

ωω

ωω

++

=−

°−++

°

®+−

°=−

°−++

¯

. (13)

According to (12) and (13), the emergence velocity of the

contact point is:

22

22

2.5 (1 ) | |

(1 )

()()

2.5 (1 ) | |

(1 )

()()

viz

bex bix

ix iy iy ix

viz

bey biy

ix iy iy ix

kv

vv

vrvr

kv

vv

vrvr

μ

ωω

μ

ωω

+

=−

°−++

°

®+

°=−

°−++

¯

, (14)

with the assumption 4, if the condition:

22

(1 ) | | 0.4

()()

viz

ix iy iy ix

kv

vrvr

μ

ωω

+≥

−++

, (15)

satisfies, the emergence velocity of the contact point is zero.

In that case, the ball is rolling, without the sliding friction.

Substituting the equal condition of (15) into (12) and (13), the

emergence velocity and angular velocity is:

0.6 0.4

0.6 0.4

ex ix iy

ey iy ix

vv r

vv r

ω

ω

=+

®=−

¯, (16)

2003

0.4 0.6 /

0.4 0.6 /

ex ix iy

ey iy ix

vr

vr

ωω

ωω

=−

®=+

¯. (17)

The sliding situation and rolling situation is illustrated in Fig3.

Using the condition (15), we can get the emergence

velocity and emergence angular velocity respectively like:

ei i

vAvB

ω

=+, (18)

ei i

Cv D

ωω

=+ , (19)

while in the sliding situation:

100

01 0

00 v

A

k

α

α

−

ªº

«»

=−

«»

«»

−

¬¼

00

00

000

r

Br

α

α

ªº

«»

=−

«»

«»

¬¼

3

00

2

300

2

000

r

Cr

α

α

ªº

−

«»

«»

«»

=«»

«»

«»

«»

¬¼

3

100

2

3

01 0

2

001

D

α

α

ªº

−

«»

«»

«»

=−

«»

«»

«»

«»

¬¼

,

where

α

is equal to 22

(1 ) | |

()()

viz

ix iy iy ix

kv

vrvr

μ

ωω

+

−++

, while in

the rolling situation:

0.6 0 0

0 0.6 0

00 v

A

k

ªº

«»

=«»

«»

−

¬¼

00

00

000

r

Br

α

α

ªº

«»

=−

«»

«»

¬¼

00.6/0

0.6 / 0 0

000

r

Cr

−

ªº

«»

=«»

«»

¬¼

0.4 0 0

0 0.4 0

001

D

ªº

«»

=«»

«»

¬¼

.

:KHQ%DOO

6OLGLQJ

:KHQ%DOO

5ROOLQJ

%HIRUH

5HERXQG

%HIRUH

5HERXQG

$IWHU

5HERXQG

$IWHU

5HERXQG

Fig.3 Sliding and Rolling When Impact

IV. THE STRATEGY OF HITTING THE BALL

The situation the ball bounces off the paddle is like that

the ball bounces off the table in Fig4. If we want to hit the ball

the way we expect, we must calculate the paddle’s velocity

and orientation with the known incidence velocity and angular

velocity and desired emergence velocity and angular velocity.

The multilayered rubber paddle can cause the analysis of the

model complex with the function of reserving the energy, so

to have a model we can solve, we must simplify the problem

that we have a paddle without rubber. In our Ping-Pong robot

system we also do like this.

Fig.4 Ball velocity before and after hitting

Let’s simplify the model further that we hit the ball along

the paddle’s normal vector, and the ball always rolls never

slides. With the conclusion we get in the part III, we can have

equations like:

0.6( ) 0.4

0.6( ) 0.4

()

p

ex px pix px piy

p

ey py piy py pix

pez pz pv piz pz

vv vv rw

vv vv rw

vv kvv

−= − +

°−= − −

®

°−=− −

¯

. (20)

Solving (20) we can get the paddle velocity

p

v

→

, and with it we

can calculate the final angular velocity with:

0.4 0.6( ) /

0.4 0.6( ) /

pex pix piy py

pey piy pix px

pez piz

vvr

vvr

ωω

ωω

ωω

=−−

°=+−

®

°=

¯

. (21)

Now we can talk about the hitting strategy. If we want to

hit the ball with more spin and with a higher speed, we can

calculate the paddle velocity to meet our needs. The only pity

is we can’t control the spin independently unless we relax the

constraint that we hit the ball along the paddle’s normal vector

and allow having another velocity component t

v, which

perpendicular the

p

v.

V. EXPREMENT

Establishing the aerodynamic model for the process the

table tennis flying in the air together with the established

bouncing model, we can have the whole trajectory predicted.

The Ping-Pong ball flying in the air is given four forces as the

Fig5 shows.

g

F

stands for the gravity, b

F

stands for the buoyancy force,

2004

d

F

stands for the air resistance, and m

F

stands for the

Magnus forces caused by the spin. As b

mm, according to

[7], neglecting the buoyancy force, resultant force F has

following form:

b

F

g

F

d

F

m

F

Fig. 5 The four forces given to ball in the air

23

11

88

da ma

F

mg C D v v C D w v

ρπ ρπ

→→ → →

=− + ×

, (22)

where d

Cis the drag coefficient with the value 0.5 in Beijing,

m

Cis the Magnus coefficient which can be received form

offline training, b

mis the mass of the air with the same

volume as the ball. We can have the initial kinematics

parameter for the ball as [6] trained for the trajectory

prediction using the method of maximum error minimization

as:

min max , ,

xi xi yi yi zi zi

pp pp pp

∧∧∧

½

ªº

§·§·§·

−−−

®¾

¨¸¨¸¨¸

«»

©¹©¹©¹

¬¼

¯¿

(23)

where the i

p

stands for the value collected by the high speed

vision system, and i

p

∧

stands for the value we predict.

With the parameter trained, we can predict the whole

trajectory with our system to hit the ball. Fig6 is the three

dimension ball trajectory and prediction trajectory. Fig7~9 are

vision data versus prediction data in each axis respectively.

From the figure bellow, we can find the model we established

is exactly accurate.

Table.1 list the error in position, velocity, and hitting

time between vision data and prediction data, as well as the

angle between the actual velocity and prediction velocity.

With the Table.1 we can find that the error is in our tolerance

to hit the ball the way we expected.

VI. CONCLUSION

In this paper, the bouncing model is established when

the table tennis collides with the table, and extended to the

case when the Ping-Pong robot hit the ball. With the model,

we can have a good prediction of the trajectory and hit the ball

the way we desired. Experiments show that the bouncing

model we constructed is suited and helpful to let the robot

hitting the ball.

0

1

2

3

-1

0

1

0

0.5

1

X / m

3D trajec t predic tion

Y /m

Z /m

original dat a

predict data

Fig.6 3D ball trajectory versus prediction trajectory

00.05 0.1 0. 15 0.2 0. 25 0.3 0.35 0.4 0. 45 0.5

-0.5

0

0.5

1

1.5

2

2.5

time /sec

X /m

original dat a

predict data

error

Fig.7 Vision data versus prediction data in X axis

00.05 0.1 0. 15 0.2 0. 25 0.3 0.35 0.4 0. 45 0.5

-0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

time /sec

Y /m

original dat a

predict data

error

Fig.8 Vision data versus prediction data in Y axis

2005

00.05 0.1 0. 15 0.2 0. 25 0.3 0.35 0.4 0. 45 0.5

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

time /sec

Z /m

original dat a

predict data

error

Fig.9 Vision data versus prediction data in X axis

Table.1 The error of position, velocity and hitting time of prediction

Position error (mm) Velocity error (m/s) Angle

(e)

Error of

Time

(ms)

X Y Z X Y Z

31.2 27.1 25.1 0.09 0.03 0.31 2.69 13.8

REFERENCE

[1] J. Bllingsley, “Robot ping pong,” Practical Computing,1983.

[2] Bo peng, Yongchao Hong, Sensen Du, et al., “An Approach to Hit Point

Prediction for Ping Pong Robot,” Journal of Jiangnan University (Natural

Science Edition), vol. 6, pp. 433-437, 2007.

[3] Russell L. Andersson, “A Robot Ping-Pong Player Experiment in Real-

Time Intelligent Control,” The MIT Press

[4] Z. Zhang, D. Xu, “High-Speed Vision System Based on Smart Camera

and Its Target Tracking

Algorithm

,” Robots, vol. 31, pp. 229-234, 2009.

[5] Lei Sun, Jingtai Liu, Yingshi Wang, Lu Zhou, Qi Yang, Shan He, “Ball’s

Flight Trajectory Prediction for Table-tennis Game by Humanoid Robot,”

International Conference on Robotics and Biomimetics, Guilin,

China,2009.

[6] G. Meng, Y. Chen, “Mechanical Analysis on Table Tennis Sport,”

Journal of Northeast Heavy Machinery Institute, vol. 20, pp. 80-

83,1996.

[7] Xiaopeng Chen, Ye Tian, Qiang Huang, Weimin Zhang, Zhangguo Yu,

“Dynamic Model based Ball Trajectory Prediction for a Robot Player,”

International Conference on Robotics and Biomimetics, Tianjin,

China,2010.

[8] R. K. Adair, P. J. Brancazio, “The physics of baseball,” American

Journal of Physics, vol. 58, p. 1117, 1990.

2006