You are on page 1of 7

2009 IEEE International Conference on Robotics and Automation

Kobe International Conference Center


Kobe, Japan, May 12-17, 2009

1-DOF Dynamic Pitching Robot that Independently Controls Velocity,


Angular Velocity, and Direction of a Ball: Contact Models and Motion
Planning
Wataru Mori, Jun Ueda, and Tsukasa Ogasawara

Abstract— This paper demonstrates that a 1-DOF planar Release


ball-throwing robot has the capability of controlling three
kinematic variables of a ball independently: translational ve- Start
locity, angular velocity, and direction. The throwing motion
is modeled using two underactuated contact dynamics, called
a finger-link contact model and a fingertip contact model,
with a unidirectional transition from one model to another.
A combination of a preliminary global search method and Torque
a search algorithm based on a simulated annealing (SA)
algorithm provides joint torque commands for this highly Fig. 1. Ball Pitching Motion
nonlinear system. An experimental system with a 1-DOF planer
manipulator has been developed that throws a disk (ball) in a
frictionless plane. The experimental results confirm the validity
of the contact models and the feasibility of independent control
of the three kinematic variables. Encoder
DC servo motor Camera
I. I NTRODUCTION
Air board
Timing belt
Dynamic manipulation is an actively studied area in Joint
robotics that deals especially with the investigation and
acquisition of manipulation skills induced by the dynamic Finger Stopper

interaction between a robot and an object [1], [2], [3]. The


Disk
results presented by Lynch et al. [4], [5] are remarkable in
showing the various manipulations of a rectangular object, Fig. 2. Experimental Setup: 1 DOF Planar Ball-throwing Robot
such as throwing and rotation on a link that can be realized
by a robot having relatively low degrees of freedom (DOF).
In these works, the nonholonomic property of the dynamics
plays an important role in achieving tasks even though the hand in a very short period of time from the start of the
systems are underactuated. motion to the release of the ball where the interaction is
This paper discusses a ball-throwing motion by a robotic- fundamentally dynamic. The contact condition between the
link mechanism. Several groups have studied ball-throwing ball and hand just before the release is particularly important
robots [6], [7], [8]. However, the main aim was the control of and is regarded as nonprehensile, i.e., not under a static
the trajectory of a ball, i.e., the velocity and direction. Con- grasping condition, where a limited number of fingers are in
sider the ball-throwing motion of humans. As illustrated in contact with the ball, dynamically applying force or torque
Fig. 1, for example, pitching a ball in baseball is considered to the ball.
complex since not only the velocity of the ball needs to be
This paper considers a simple, planar robot that uses a
controlled appropriately, but also the direction and angular
1-DOF link to throw a disk in a horizontal plane. We show
velocity. In biomechanics, a more accurate investigation
that the condition of contact between the robot finger and
including the motion of fingers has been conducted, e.g.,
ball transits from one underactuated contact model, named a
[9].
‘finger-link contact model’, to another underactuated contact
The goal of this work is to independently control three
model, named a ‘fingertip contact model’, during the motion.
kinematic variables of a ball released from a robot link:
This paper presents preliminary results of numerical simula-
velocity, angular velocity, and direction, starting from a
tion and experiments on the capability of controlling the three
common initial condition. All three kinematic variables are
kinematic variables independently. A numerical algorithm to
determined by the physical interaction between the ball and
acquire joint torque commands is developed by applying a
Wataru Mori and Tsukasa Ogasawara are with the Graduate School of simulated annealing (SA) method. The validity of the contact
Information Science, Nara Institute of Science and technology, Nara 630- models is confirmed by experiments. Experimental results
0192, Japan. wataru-m, ogasawar@is.naist.jp
Jun Ueda is with the Mechanical Engineering, Georgia Institute of indicate that the independent control on the three kinematic
Technology, Atlanta, GA., U.S.A.jun.ueda@me.gatech.edu variables is feasible.

978-1-4244-2789-5/09/$25.00 ©2009 IEEE 1655


Initial condition Slipless rolling contact

d d /2
m2 , I 2 φ
Fig. 3. Measurement of Velocity, Angular Velocity, and Direction of the l r m1 , I1
Ball : Snapshots of Image Processing
θ Slipless θ
point contact
II. E XPERIMENTAL S YSTEM τ rg1
L τ
Figure 2 shows the experimental system developed for
this study. To simplify the problem, throwing motion in the Fig. 4. Finger-link contact model Fig. 5. Fingertip contact model
horizontal plane is considered. The planar manipulator has
a single DOF swing-arm mechanism driven by a DC motor.
A plastic disk (hereafter called a ball). is used instead of Initial condition
(common)
a 3-dimensional ball. The friction between the ball and the fh
Finger-link
link is assumed high enough so that the ball rolls on the link l Contact Model
surface without slip because of anti-skid rubber attached on
f h< 0
the link. To eliminate the friction between the ball and the Release
floor an air table is used. Therefore, we assume that the
l >L
velocity, angular velocity, and direction never change after ff
Fingertip
the release. A search algorithm described later and pllied to Contact Model
the DC motor generates the torque command to the joint. ff < 0
The stopper attached to the link is used to set a constant
initial condition between the link and the disk. As shown Release

in Fig. 3, the velocity, angular velocity, and direction of the Fig. 6. Transition of the Condition of Contact
ball after the release from the link are measured by image
processing using a camera.
III. C ONTACT M ODEL BETWEEN ROBOT FINGER AND
BALL       
τ M11 M12 θ̈ h1
A. Contact Models and Transition = + (1)
0 M21 M22 ℓ̈ h2
Two dynamic models are presented based on the condition
of contact between the ball and robot link: (1) the finger-
link contact model, and (2) the fingertip contact model. The 2

1 2

M11 = m1 rg1 + m2 r2 + d + rd1 + ℓ2 + I1 + I2
finger-link contact model shown in Fig. 4 represents the 4
dynamics where the ball and link keep a rolling contact (2a)
 
1 I2
condition. The fingertip contact model shown in Fig. 5 M12 = −m2 r− d − (2b)
2 r
represents the dynamics where the ball is in contact with 
1

I2
an edge of the link (fingertip). M21 = −m2 r− d − (2c)
2 r
The relationship between the two contact models is illus- I2
M22 = m2 + (2d)
trated in Fig. 6. The finger-link contact model is initially r2
applied since the initial condition (see the most-left image h1 = 2m2 ℓθ̇ℓ̇ (2e)
2
h2 = −m2 ℓθ̇ (2f)
in Fig. 3) is given under this condition. The ball is released
from the link if the contact force fh acting on the ball from
the link becomes zero. In this paper we don’t discuss the
case where the link contacts again with a ball once released. where θ is the angle of the link joint, ℓ is the translational
If the ball rolls up along the surface of the link keeping displacement of the ball along the longitudinal direction of
a rolling contact, and reaches the end of the link, then the the link, and τ is the joint torque. m1 and m2 denote the
condition of contact transits to the fingertip contact model. masses, and I1 and I2 denote the moment of inertia of the
This transition is unidirectional and never goes back to the link and ball respectively. L is the length, and d is the width
finger-link contact model. Similarly, the ball is released from of the link. rg1 is the distance from the center of the joint
the fingertip if the contact force ff acting on the ball from to the center of gravity of the link. Assume that the shape
the link becomes zero. of the ball is a perfect circle where r is the radius.
When the ball is released directly from the finger-link
B. Dynamic Equation contact model without the transition to the fingertip model,
1) Finger-link contact model: The dynamic equation of three kinematic variables, i.e., the velocity v, angular velocity
the finger-link contact model is given as follows. ω, and direction db , of the ball are given as follows.

1656
The goal is to obtain joint torque commands that change
q
2 2 2 any one of the three kinematic variables of interest, but keep
v = ℓ˙r + ℓ2r θ˙r + r2 θ˙r − 2ℓ˙r rθ˙r (3a) the remaining one or two variables unchanged.
!
ℓr sin θr + d2 + r cos θr

db = arctan + π (3b) B. Joint Torque Command using Radial Basis Functions
ℓr cos θr − d2 + r sin θr

Radial Basis Functions (RBF) are applied to represent a
ℓ˙r time function of joint torque as follows.
ω = − θ˙r (3c)
r 4
X
where the variables with subscript r denote the quantities at τ (t) = wi Ψi (7)
the time of the release. i=1
2) Fingertip contact model: The dynamic equation for the where Ψi is a RBF defined by
fingertip contact model is given as follows.  
1 2
Ψi = exp − 2 (t − ci ) . (8)
       2σi
τ M11 M12 θ̈ h1
= + (4) In this paper, we consider joint torque from 0.0 [s] ∼
0 M21 M22 φ̈ h2
1.0 [s] given by the summation of 4 weighted RBFs. To
2 1 2 reduce the dimension of search space for generating joint
M11 = m1 rg1 + m2 (r 2 + d + rd1 sin φ (5a)
4 torque commands, c1 = 2/7, c2 = 3/7, c3 = 4/7, c4 = 5/7,
2
+ L + 2Lr cos θ) + I1 + I2
 
(5b) σ1 = 0.08, σ2 = 0.08, σ3 = 0.08, and σ4 = 0.08 are given in
1 advance. Therefore, only the weights, W = [w1 , w2 , w3 , w4 ],
M12 = m2 Lr cos φ + d sin φr + r 2 + I2 (5c)
2
  are free parameters. Expansion of the search area by freeing
1
M21 = m2 Lr cos φ + d sin φr + r 2 + I2 (5d) the parameters currently fixed will be conducted in a future
2
M22 =
2
m2 r + I2 (5e)
paper.
h1 = m2 (dr cos φ − 2Lr sin φ) θ̇ φ̇ C. Preliminary Global Search and Simulated Annealing
 
1 2
+ m2
2
dr cos φ − Lr sin φ φ̇ First, a preliminary global search for W
(5f) =

1
 [w 1 , w 2 , w3 , w4 ] is performed. The range of individual
h 2 = m2 r θ̇ 2
L sin φ − d cos φ (5g)
2 parameters is determined as 0.0 ≦ w1 ≦ 1.0,
−1.0 ≦ w2,3,4 ≦ 1.0 and the normal step size is set to
where φ is the angle of the center of the ball measured from 0.1. The step size is decreased to 0.01 for 0.0 ≦ w1 ≦ 0.1
the point of contact. When the ball is released from the and −0.1 ≦ w2,3,4 ≦ 0.1. The velocity, angular velocity,
fingertip contact model, the velocity, angular velocity, and and direction for each torque command is calculated
direction of the ball are given as follows. using MATLAB simulation and the result is plotted in a
3-dimensional graph as shown in Fig. 7 (a).
p Next, to find a torque command that realizes a particular
v = X2 + Y 2 (6a)
2 set of kinematic variables of the ball, a search algorithm
X = −L sin θr θ˙r − r sin (θr + φr ) θ˙r + φ˙r based on simulated annealing (SA) is applied using the
2
Y = L cos θr θ˙r + r cos (θr + φr ) θ˙r + φ˙r following criterion function.
 !
L cos θr θ˙r + r cos (θr + φr ) θ˙r + φ˙r
db = arctan +π
−L cos θr θ˙r − r sin (θr + φr ) θ˙r + φ˙r J = Kv |vd − v| + Kd |dd − db | + Kω |ωd − ω| (9)


(6b) where Kv =100.0, Kd =10.0, and Kω =0.1 are weights. vd , dd ,


ω = φ˙r − θ˙r (6c) and ωd are desired variables for v, db , and ω respectively.
Optimization of J obtains W = [w1 , w2 , w3 , w4 ] that realizes
the desired kinematic variables. The initial condition for SA
Note that the two contact models are underactuated since
is chosen from the closest ones obtained by the global search.
each of the dynamic equations includes two variables but
only one torque input. In addition, the two models are D. Feasibility of Independent Control on Two Kinematic
second-order nonholonomic systems since both of the models Variables
satisfy the condition proposed by Nakamura and Oriolo [10]. Figure 7 (b)-(d) shows the distributions of the results in
IV. ACQUISITION OF J OINT T ORQUE terms of two out of three kinematic variables. Figure 7(b)
shows the distribution of the results in a velocity-direction
A. Problem Statement plane, indicating that the independent control in terms of
This paper investigates the control capability of the ball in velocity and direction is feasible when neglecting angular
terms of v, db , and ω starting from the same initial condition. velocity. For example, points A to C in Fig. 8 obtain the
Since the dynamics is highly nonlinear and underactuated, same velocity but different directions. Also, points C to E
numerical methods are used for preliminary investigation. obtain the same direction but different velocities. Fig. 7(c)

1657
TABLE I
C OMPARISON BETWEEN S IMULATION AND E XPERIMENT FOR T HROWS
Angular velocity[deg/s]

A–E

Velocity[m/s]
Velocity Direction Angular velocity
[m/s] [deg] [deg/s]
A Simulation 1.00 179.9 855.8
Velocity[m/s] Direction[deg]
Experiment 1.07 183.5 810.8
Direction[deg]
Error [%] 6.9 2.0 5.3
B Simulation 1.00 190.0 659.0
(a) Search Result (b) Velocity-Direction Experiment 0.94 191.4 611.9
Error [%] 6.1 0.7 7.1
C Simulation 1.00 200.0 672.9
Experiment 1.01 200.2 696.5
Angular velocity[deg/s]

Angular velocity[deg/s]
Error [%] 1.2 0.1 3.5
D Simulation 2.00 200.1 1385.8
Experiment 1.90 199.8 1330.3
Error [%] 4.8 0.1 4.0
E Simulation 3.00 200.0 1886.8
Experiment 2.59 200.8 1760.9
Direction[deg] Velocity[m/s]
Error [%] 13.8 0.4 6.7
(c) Angular velocity-Direction (d) Angular velocity-Velocity
Fig. 7. Result of Preliminary Global Search
Joint torques for Throws 1 to 6 shown in Figs. 10 to 12
have been obtained using the SA method. Table II shows
the obtained kinematic variables. As shown in the table, the
independent control in terms of the three kinematic variables
is considered feasible even though the range is small.
Velocity[m/s]

E
D
f
lo
Angular velocity [deg/s]

ro
A B C n t i on
Co rect
Di
Co
n
Ve trol o
loc
ity f
Direction[deg]

Angular velocity
Control of
Fig. 8. Independent control of Velocity and Direction
Velocity [m/ s]
Direction [deg]
Base point

indicates that the independent control in terms of angular


velocity and direction is feasible when neglecting velocity. Fig. 9. Schematic Diagram of Independent Control
In contrast, Fig. 7(d) shows that the velocity and angular
velocity are strongly correlated. This strong correlation is
reasonable since, e.g., as can be seen in (3a) and (3c), the
Throw 1
only factor that makes (3a) independent from (3c) is ℓr which
appears in the second term of (3a). Without ℓr , (3a) is totally Throw 2
dependent on (3c). In other words, the independent control 0.26[m/s]
in terms of velocity and angular velocity neglecting direction
Angular velocity [deg/s]

is still feasible even though the range is small.


E. Feasibility of Independent Control on Three Kinematic
Variables
Figure 9 shows a basic concept of the independent control. Velocity [m/s] Direction [deg]

Taking the horizontal axis on velocity for example, the


independent control in terms of velocity is to find torque Fig. 10. Control of Velocity
commands corresponding to the two points shown in light
blue along the axis from a base point. The difference
V. E XPERIMENT 1: P ITCHING IN H ORIZONTAL P LANE
among the three throws on the axis is only on velocity.
The remaining two values, angular velocity and direction, A. Validation of Experimental System: Comparison between
are unchanged. MATLAB Simulation and Experiments
Set a base point that achieves the velocity of 1.23[m/s], Figures 13 to 17 show the comparisons between the MAT-
direction of 195.0[deg], and angular velocity of 868.4[deg/s]. LAB simulations using the contact models and experimental

1658
TABLE II
I NDEPENDENT C ONTROL OF T HREE K INEMATIC VARIABLES
Throw 4
Throw 3
(E XPERIMENT )

Velocity [m/s] Direction [deg] Angular velocity[deg/s]


9.8[deg] Base 1.23 195.0 868.4
Angular velocity [deg/s]

Throw 1 1.35 194.7 889.8


Throw 2 1.09 194.9 880.0
Throw 3 1.22 188.3 895.7
Throw 4 1.19 198.1 871.8
Throw 5 1.24 194.6 987.4
Velocity [m/s] Direction [deg] Throw 6 1.22 194.6 734.8

Fig. 11. Control of Direction


trajectories that reach a particular position of the goal is not
unique. The fastest trajectory among the candidates has been
Throw 5 chosen in this experiment.
252.6[deg/s]
VII. D ISCUSSION AND C ONCLUSION
Throw 6
This paper has demonstrated that a 1-DOF planar-robot-
Angular velocity [deg/s]

link mechanism has the capability of controlling three kine-


matic variables of a ball independently: velocity, angular
velocity, and direction. Contact dynamics describing the
robot throwing, with a transition from finger-link contact
Velocity [m/s] Direction [deg]
to fingertip contact, has been proposed and validated by
simulation and experiment. A combination of the global
Fig. 12. Control of Angular Velocity search and the SA algorithm provides joint torque commands
for this highly nonlinear dynamic system.
This paper focused on a modeling and preliminary fea-
results. Throws A–E are used to validate the simulation sibility study on the independent control. As presented,
models. Table I shows obtained kinematic variables and the two contact models are fundamentally underactuated,
errors. Overall, the experimental results agree well with the thus satisfying the nonholonomic property. In addition, the
simulation. transition from one model to another is unidirectional in
this throwing motion. The difference of these throwing dy-
B. Independent Control of Two Kinematic Variables
namics from other underactuated systems is that the contact
As described earlier, Throws A–E have been obtained in dynamics switch instead of the controller; the switching-
the velocity-direction plane, neglecting the change in the control technique has been used widely in many papers on
angular velocity. Figures 18 and 19 show the comparison underactuated systems. This unique characteristic may be a
among Throws A–C and C–E respectively. key to controlling the underactuated problem [11]. A detailed
mathematical analysis will follow in our future paper.
C. Independent Control of Three Kinematic Variables
Figures 20 to 22 show the experimental results for Throws R EFERENCES
1 to 6. For example, Fig. 20 shows the results in terms of [1] M. Mason and K. Lynch, “Dynamic manipulation,” Intelligent Robots
velocity by keeping the remaining two variables unchanged. and Systems’ 93, IROS’93. Proceedings of the 1993 IEEE/RSJ Inter-
The observation of the experimental results confirms the national Conference on, vol. 1, 1993.
[2] E. Aboaf, S. Drucker, and C. Atkeson, “Task-level robot learning:
feasibility of independent control of the three kinematic juggling a tennis ball more accurately,” Proceedings on the 1989 IEEE
variables although the range is limited. International Conference on Robotics and Automation, pp. 1290–1295,
1989.
VI. E XPERIMENT 2: T HROWING IN A V ERTICAL P LANE [3] Q. Li and S. Payandeh, “Planning Velocities of Free Sliding Objects
as a Free Boundary Value Problem,” The International Journal of
The presented contact models in the horizontal plane Robotics Research, vol. 23, no. 1, p. 69, 2004.
can be easily extended to vertical planes by taking the [4] K. M. Lynch and M. T. Mason, “Dynamic underactuated nonprehensile
manipulation,” 1996 IEEE/RSJ International Conference on Intelligent
effect of gravity into account. Figure 23 shows the modified Robots and Systems, pp. 889–896, 1996.
experimental system where an open-top box is used as the [5] M. T. Mason, “Progress in nonprehensile manipulation,” The Interna-
goal. Given a position of the goal in an x-y vertical plane, the tional Journal of Robotics Research, vol. 18, no. 11, pp. 1129–1141,
1999.
velocity and direction of the ball at the release are obtained [6] E. Aboaf, C. Atkeson, and D. Reinkensmeyer, “Task-Level Robot
by calculating the ballistic motion of the ball. The SA method Learning: Ball Throwing,” AIM-1006, 1987.
is applied to find the corresponding torque input such that [7] J. Schneider and R. Gans, “Efficient search for robot skill learning:
simulation and reality,” Intelligent Robots and Systems’ 94.’Advanced
the ball reaches the goal. Figures 24 and 25 show successful Robotic Systems and the Real World’, IROS’94. Proceedings of the
results for two different cases. Note that the number of IEEE/RSJ/GI International Conference on, vol. 2, 1994.

1659
Throw A
0.3

0.25

0.2

0.15

0.1
y(m)

0.05

Throw B
0

-0.05

-0.1

-0.15

-0.2
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1
x(m)

Throw C
(a) Simulation (b) Experiment
Fig. 13. Throw A

0.3

0.25

0.2

0.15 Fig. 18. Throwing in the same velocity, but in different directions: Throws
0.1
A to C
y(m)

0.05

Throw D Throw C
-0.05

-0.1

-0.15

-0.2
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1
x(m)

(a) Simulation (b) Experiment


Fig. 14. Throw B

0.3

Throw E
0.25

0.2

0.15

0.1
y(m)

0.05

-0.05

-0.1

-0.15 Fig. 19. Throwing in the same direction, but in different velocities: Throws
-0.2
-0.5 -0.4 -0.3
x(m)
-0.2 -0.1 0 0.1 C to E

(a) Simulation (b) Experiment


Throw 1

Fig. 15. Throw C

0.3

0.25

0.2

0.15

0.1
y(m)

0.05
Base

-0.05

-0.1

-0.15

-0.2
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1
x(m)
Throw 2

(a) Simulation (b) Experiment


Fig. 16. Throw D

0.3

0.25

0.2

0.15
Fig. 20. Throwing in the same direction and angular velocity, but in
0.1
different velocities
y(m)

0.05

-0.05

-0.1

-0.15

-0.2
Brain Research, vol. 103, no. 2, pp. 277–286, 1995.
-0.5 -0.4 -0.3
x(m)
-0.2 -0.1 0 0.1
[10] Y. Nakamura and G. Oriolo, “Control of mechanical systems with
second-order nonholonomic constraints: Underactuated manipulators,”
(a) Simulation (b) Experiment Decision and Control, 1991.,Proceedings of the 30th IEEE Conference
Fig. 17. Throw E on, no. 3, pp. 2398–2403, 1991.
[11] M. W. Spong, “Bipedal locomotion, robot gymnastics, and robot
air hockey: A rapprochement,” Super-Mechano Systems (SMS’99)
Workshop, Tokyo, Japan, 1999.

[8] N. Kato, K. Matsuda, and T. Nakamura, “Adaptive control for a


throwing motion of a 2 DOF robot,” Advanced Motion Control, 1996.
AMC’96-MIE. Proceedings., 1996 4th International Workshop on,
vol. 1, 1996.
[9] J. Hore, S. Watts, J. Martin, and B. Miller, “Timing of finger opening
and ball release in fast and accurate overarm throws,” Experimental

1660
Throw 3
0.0[s] 0.1[s]

Base

0.2[s]
Throw 4

0.3[s]

Fig. 21. Throwing in the same velocity and angular velocity, but in different
0.4[s] 0.5[s]
directions

0.6[s]
Throw 5

0.7[s]

Fig. 24. Throwing in the Vertical Plane: Throw V 1


Base
Throw 6

0.0[s]

Fig. 22. Throwing in the same velocity and direction, but in different
angular velocities
0.1[s]

0.2[s]

x
0.3[s]

0.4[s]
Fig. 23. Experimental System for Vertical Throwing
Fig. 25. Throwing in the Vertical Plane: Throw V 2

1661

You might also like