Copyright © IFAC Nonlinear Control Systems, Stuttgart. Germany. 2004
ELSEVIER
IFAC PUBLICATIONS www.clsevier.com/locate/ifac
ENDURING ROTARY MOTION CONTROL OF DEVIL STICK Shigeki Nakaura * Yasuyuki Kawaida ** Tadasuke Matsumoto * Mitsuji Sampei *
* Tokyo Institute of Technology, Tokyo, Japan **
FUJITSU Ltd., Kanagawa, Japan
Abstract: Devil stick is a kind of juggling as to control a floating stick (center stick) by hitting or pushing with other sticks (hand sticks). Our purpose is to achieve propeller motion that the center stick rotates continuously by only pushing with one hand stick. While a position of the center stick is controlled by output zeroing with suitable output function which is derived from a good jugglers nlotion, an angular velocity is governed by unstable zero dynamics. From an analysis of this zero dynamics, it is shown that the angular velocity is stabilized by changing the contact point of sticks. Copyright © 2004 IFAC Keywords: Juggling Inotion, Devil stick rnotion, Zero dynamics
1. INTRODUCTION Devil stick is a kind of juggling such as to 111anipulate the floating stick (center stick) with the other sticks (hand stick). Various stick nlotions are perfonned by jugglers. For example, they hit the center stick by two hand sticks alternatively(see Fig. 1). This trick is called "idling" nlotion, and Schaal et al. realized hitting the center stick several hundred times on average in experinlents(Stefan Schaal, 1993). The purpose of this paper is to achieve the other trick called '(propeller" 1110tion. This l1lotion is to rotate the center stick continuously by only pushing with one hand stick (see Fig. 2). To achieve this trick, we have to control a position and an angular velocity of the center stick. This paper is organized as follows. In §2, we lllake a devil stick nlodel with sonle assumptions. Control objective to rotate the center stick continuously is stated in §3, and based on it we try to control by output zeroing in §4. The output function is derived fronl a good juggler's performance. And also we consider the angular velocity
Fig. 1. Idling motion
Fig. 2. Propeller motion which realizes a stable rotary motion through an analysis of zero dynamics in §4. Finally \Ve show some experimental results in §5 and concludes this paper in §6.
2. DEVIL STICK NIODEL In this paper, we consider the devil stick rnodel shown in Fig. 3 and use the paranleters listed in Table 1. In this model, the center stick nloves on vertical plane and crosses the hand stick at
d(cP)
~-+--i---~--T---~--
ccutcr stick
Fig. 4. The relationship between $ and d(cjJ)
o Fig. 3. Devil stick rnodel on the vertical plane
Table 2. Physical paranleters
Table 1. Paranleters of the devil stick (T, e)
4> d
F Ft, r~ f'r, Fe
Position of the COG of the center stick Attitude angle of the center stick Position of the contact point Force applied by the center stick (t, n) direction's component of F (T, e) direction's component of F
m
Mass of the center stick
J
Moment of inertia of the center stick Radius of the hand stick Acceleration of gravity
p
g
From assumption 3, if q; reaches to q;jump and d jumps to dmax , the relationship between d( q)) and q; can be written as follows.
right angles. (r, 0) and 4> represent a position of the center of gravity (COG) of the center stick in a polar coordinate and an attitude angle of the center stick respectively. F = [ft, Fn]T = [Fr , Fe]T is an applied force by the hand stick.
d(q;) {
(q;jump
d(q;
+ dmax :S q; < $jump
= -p(cjJ - q;jump)
+ 21T) = d(q;)
+ 21T)
(2)
This relation is represented as Fig. 4.
2.2 State equation 2.1 Contact between center stick and hand stick
We derive the equation of motion about the COG of the center stick in polar coordinate with physical parameters listed in Table 2. Let aT and ae be an acceleration for r direction and for direction, the following equations can be obtained.
\:Ve Inake the following assurnptions about a contact between the center stick and the hand stick.
e
Assumption 1. Friction force at the contact point is large enough, so the center stick doesn't slip along the hand stick but rotates around it.
(3)
gcosO
(4)
And also aT' ae are represented by
FT. aT = - - gSln(),
Assumption 2. The center stick keeps contacting with the hand stick, so the contact point moves by rolling with rotation of the center stick.
ae
m
Fe
= -
m
-
where FT, Fe are component of a force F. Here
[
~'rom
the assumption 2, it can be seen that a position of the contact point d depends on the attitude angle dJ, and this relation can be described as
d(eP) = - PeP + do,
+ r8
ae = 2rO
~] = [ - :~~ i~ =:\ ~~~ i~ =: n[;~]
( 5
)
holds between FT, Fe and Ft, F n from a geometrical relation. Using (4)(5), we have the equation of motion as follows.
(1)
..
where p is a radi us of the hand stick and do is a initial contact position.
r = r
()·2
.
- 9 SIn
e + cos(()-cP)j-''t + sin(e-
n
m
(6)
Our purpose is to keep the center stick rotating continuously. In this case q; will keep increasing and d( eP) will di verge from (1). In order to prevent d( r/J) from diverging, juggler separates the hand stick from the center stick every rotation and rnoves the hand stick near to initial position. As a result of this motion, the contact point doesn't diverge. So we silnplify this rnotion and add the following assurnption.
8=
-
2rO _ 9 cos () _ sin (e - q;) Ft r r rm
+
cos (() - q;) Fn
rm (7)
About the attitude angle dJ, the following equation of nlotion is obtained.
.: d(6)Fn 6=-J
(8)
Defining state x and input u as
x= [r()q;rO~]T
Assumption 3. The contact point jumps to the initial position instantaneously when the center stick is made one turn (q; increases 21T).
u=F=
806
[Ft
Fn]T
(9)
(10)
and combining wit.h (6) (7) (8), we can derive a nonlinear state equation as follows.
x=
+ g(x)u
f(x)
0 0 0 cos (0 - 4»
e [
.
r4>
j02. - 9 sinO 2rO gcos 0 ----j j
center stick
(11)
] +
sin ~ - 4» jm
0 0 0 sin (0 - 4» m
'U
cos (0 - 4»
J{:t)
0
J
3. CONTROL OBJECTIVE m
Our control objective is to realize an enduring rotary motion of the devil stick, that is to control the position and the angular velocity of the center stick. We can observe the following motions from a good juggler's manipulation of the devil stick.
J P 9
Though this output function doesn't contain ~, we will derive a condition about stable ~ by analyzing zero dynamics .
• The position of COG of the center stick oscillates around some point. An oscillation period of this point corresponds to a rotational period of the center stick. • The center stick rotates with a uniform angular velocity.
By linearizing (11), we can obtain the following linear state equation.
e= Ae + Bv
First item says that a direction to which the center stick can be pushed depends on cP. Therefore the position of COG of the center stick oscillates as cP changes. To make the COG of the center stick approach the origin, it is better to keep a relationship between () and cP as constant, that is () - cP = constant.
e=
17 =
(1 (e, 7J)
iJ
Ce
=
[~1 ~2 ~3 ~4]T
(21) (22)
(23)
(2
]
.
(24)
For above system, Fig. 6 shows a simulation result about output zeroing by a conventional state feedback controller with parameters listed in Table 3. We can see that output ~1, ~2 converge to 0, but behavior of the angular velocity ~ = T]2 strongly depends on cPjump and dmax .
Based on §3, we set the output function as
rd - r
(~, ~) = [* ~]
h = J - d(T]dm(rd - ~d cos (a - ~2) i = d(T]l)m{gcOST]l - (-~4 +1J2)(2~3cos(a - ~2) + (-~4 + T]2)(rd - ~d sin (a - ~2))} j = -d(T]dm sin (a - ~2) k = -d(T]dm(rd - ~d cos (a - ~2)
4.1 Rotary motion by output zeroing
a - (() - cP)
T
(20)
4. SIMULATION
[
.
(19)
to realize an enduring rotary motion of the devil stick. To begin with, we try to make a radius r converge to a desired value r d, that is to make the COG of the center stick follow a circle where its radius is r d (See Fig. 5). Then we try to make (()cP) converge to some constant value C:. Note that we don't control the angular velocity cP and leave it as zero dynamics. In other w.ords, we control only two state r, (), and analyze cP as zero dynamics.
=
.
(18)
(2) difference between the argument angle and the attitude angle: () - cP (3) angular velocity: ~
Y1 ] [ Y2
(16) .
(17)
(1) distance from the origin to the COG: r
=
+ (2(e, 7J)v
= [rd - r a - (() - cP) -r -(() - cP)]
So we have to control:
y
(13) (14) (15)
(12)
807
OJH 0.00 -0.01 ..;; -0.02 -0.03 -0.04 -0.05
r--'---'---'---'---"'---"'---r--~
\-.:l~.~.~.
.....Q = 0
; ...::~:_"_ ~_ =
-0.5
~
:
__ J
L.
_
o
, 0 . :
'
.,'
0.0
. :
'. "~'\B
_.
~-+---""""'---"r---;\'---~-~-"r----J.
.
.;;
= -1f/2
-1.0
0:=0
-1.5
Fig. 7. Physical meaning of 0:
12
0:
By substituting (29) into (28), we can obtain following differential equation about
10
J;'
S-
8
-
= (- p(
J = -a1(
2 1
o -1 -2
h---+---"r--_'t__-~-_t:__-~-_'t__--o
4.2 Stabilizing the angular velocity
sin a)] J - d(
d;P,2
dP
dt
dt
dt d
{:}
c~
+r
d~2)
dP = - a 1 (
(32)
a2 )(9 cos qJ"
+ r dP ),
(33)
and we can solve P as a function of
(25)
= e-a1rdcJ>'(cJ>'-2a2)
1
cJ>'
Cl
(Cl : constant, a1 =
-2gal(T - a2)COST dT e- a1 rrlr(r- 2a 2)
T' a2 =
Considering
p% = P%+l =
].
i= 0)
By substituting (32) and ~'2 = Pinto (30), (30) is rewritten as
P(
d(
(31)
d
..
Let 0: be fixed to simplify (25). Fig. 7 shows situations where output zeroing is achieved. When the center stick keeps rotating in these situations, we have to apply the force which balance with centrifugal force to keep distance r. If a = -1f /2, we can apply the force toward rotation center, and this is suitable to realize our control objective. Under a = -1f /2, we obtain simplified zero dynamics:
:t [:] = [
dmax
+ -p-'
2~' J;' = d
{:}
~ [:] = [d(
(30)
To solve
Fig. 6. Simulation results
In this subsection, we try to derive a condition about stable ;p by analyzing zero dynamics. Note that our discussion in this subsection is same as Poincare analysis(E.R. Westervelt, 2003). From (14) (18) (23) and (24), zero dynamics becomes as following equation.
+ rd~'2),
where a 1, a2 are defined as mp al = J' a2 =
(26)
P(
cJ>'->jump+27r
+ 21f, (35)
P( c/J')
= P(
(36)
There is a relation between Pk and Pk+l as follows: To analyze zero dynamics, let
c/J' =
Using the relations become as follows. ",
=
;p' = ;p,
~,
= ~, (26) and (2)
d(
+ A 2·
(37)
Al
=e-47rmrd(p7r-dmax)/J
(38)
A
=e-mrd(>jIlIllP+27r)(p( ->jump+27r)-2d max ) / J x
P%+l =AlP%
(c/Jjump:::;
2
rcJ>
J
j
urn
tfJ.
(28)
p 27r + {
1 e-mrdr(p(r-2cJ>jump)-2d""u)/ J x
'f'JU!IIp
(- 2gm(p(T -
(29)
808
Table 4. Paranleters in A2 calculation parameter Fig.8(a) [m- ] ml] 6.0 [m] 0.009 P ,_ ll015 [m] Td
Fig.8(b) 20.0 0.03 0.05
Fig.8(c) 60.0 0.09 0.15
By solving (37) to consider P:>o, we obtain
P~ =
k (
A, {
2
Po
2 A2 ) Po - 1 _ A,
+
A? . 1 _ -A, (t fA,
+ kA 2
# 1) ('t f Al = 1)
(40) Taking account Al > 0 from (38), we can classify A1 into these three cases. Case 0 < Al < 1:
Fig. 11. Experimental environment
Fn = m{g cos cjJ/ = m{gcoscP/
J
In this case, P':>O = l~~l' If A2 2:: O~ Pk converges to real nurnber. However, if A 2 < 0, Pk converges to imaginary number. This means the center stick begin rotating reversely. Case Al > 1:
P(cj/) =A 3(<1J')P(cjJjump) + A 4(
'). A3 ( cjJ/) =e-mrd(c/>' -tjJjlllllp) (p(fjJ' -fjJjlllllp)-2d lll
L
'f'Jtllllp
4>jump) -
d max ) cos T/ J)} dT (48)
From (45), the condition about Fn > 0 becomes
P( -
A3~
(;d
cos
+ A 4(
I
)) . (49)
Figure 9 and 10 show a sinlulation result where O.
(42) 5. EXPERIMENT We confirnled our results by experiment with Fig. 11. In this experiment, input force to the center stick is applied by industrial lnanipulator and our assu111ptions in §2 is realized by nlechanical structure. To reduce gravitational acceleration, base plate is inclined by 15[deg].
Then we derive the condition to satisfy A2 > 0 by numerical calculation of A 2 , since A2 includes integral term. The sets of paranleter used in this calculation are listed in Table 4 and the calculation results are shown in Fig. 8. For each parameter set, we can see that there exists cPjump and d max which satisfy A2 > O.
At the present, we have succeeded about one rotational motion of the center stick as Fig. 12. V,le can see the center stick rotated along the desired circle and the output functions converged to 0 as Fig. 13. Now we are still trying to achieve the enduring rotary motion of devil stick.
Here we consider the condition about Fn > 0, though we don't care about Fn < 0 in the above analysis. Under output zeroing is achieved and Q: = -7r /2, U is represented by
+ g(J sin cjJ + d(cjJ )nLrd cos et»)
]
J
6. CONCLUSION
m(g cos cP + rd~2)
..
{e-mrdr(p(r-2fjJjtlIllP)-2dmn.x)/J x
(-2gm(p( T -
The contact point d( cP) between the center stick and the hand stick will moves in range of d max 2p7r < d( cP) ::; d max · So d( cP) inclines toward negative value.
(43)
In this paper, we dealt with the motion control of the devil stick. The main results are as follows.
)
Let cP/~
J
1
fjJ'
By considering parameters m, J, p and r d are real value, this condition is rewritten as
[
X)/
A4 (cjJ/) =e- mrclfjJ ' (p(fjJ' -2fjJjump)-2dmax )/ J X
From the above discussion, AI, A2 have to satisfy o < Al < 1 and A 2 > 0 for stable angular velocity of the center stick. The condition for 0 < Al < 1 is given fronl (38) as
m(d( 9 )mT~~2
(46) l.l
(47)
J
U=
(44) (45)
where
If Po = l~~l ' Pk = Po for all k. Otherwise Pk diverges. Case Al = 1: If A2 = 0, Pk = Po for all k. If A2 < 0, the center stick begin rotating reversely. If A 2 > 0, Pk diverges.
dmax < p7r.
+ rdP(cjJ/)} + rdA3(cjJ')P(cjJjump)}
= P(q)') ~ Fn is rewritten as follows.
809
1\0=,::
A
10
.'\" .
O="':':
0-
80 40
-5
-40
~::
pTrd nuu.
(a) Fig. 8. variation of A2
t=O
t
= 0.3
t
= 0.05
t
= 0.35
= 0.1
t = 0.15
t = 0.2
t
t
= 0.4
t = 0.45
t = 0.5
t = 0.55
t = 5.55
t = 5.6
t = 5.65
t = 5.9
t
= 0.25
.~
-
•
= 5.45
.. t
t
= 0 to t = 0.55
Fig. 9. Devil stick motion from t
t
(c)
(b)
= 5.75
t
= 5.5
t
= 5.8
-t
= 5.85
= 5.95
t
= 6.0
Fig. 10. Devil stick motion from t = 5.45 to t = 6.0 0.08
r---~--.--~------,
0.04
}0">~~_'-'''\
o -0.04
center of gravity - desired traj~.Gt9ry
I ./
o
\
f,/· ~,
\~'~'('
-0.08 L----_---'--_ _ -0.08 -0.04 0
/
j
1 1.2 1.4 1.6 1.8
time [s]
~ -~;! !'-'i>-i,-_L~!~--~>-
L--_--'--_---'
0.04
0.2 0.4 0.6 0.8
o
0.08
--I
0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
x[m]
time [s]
Fig. 12. Experin1ental result of COG locus
Fig. 13. Experimental results of output functions REFERENCES
• We derived the state equation of the devil stick under son1C assumptions. • \Ve set the output function by observing a good juggler's manipulation. • \Ve sinntlated the stable enduring rotary n1Otion of the devil stick by output zeroing. • vVe analyzed the behavior of the angular velocity. As a result, we showed the existence of the parameters for stable angular velocity independence on the initial value.
E.R. Westervelt, J.\V. Grizzle, D.E. Koditschek (2003). Hybrid zero dynanlics of planar biped walkers. IEEE Trans. on Automatic Control 48(1),42-56.
Kreyszig (1999). Advanced Engineering A1athematics 8th edition. John \Viley & Sons, Inc. Stefan Schaal, Christopher G. Atkeson (199:3). Open loop stable control strategies for robot juggling. Proc. of IEEE Int. Conf. on Robotics and Automation pp. 913-918.
810