Professional Documents
Culture Documents
ABSTRACT
In this paper, a flying vehicle with a robotic arm is addressed. The flying robotic arm, called UAVARM, is modeled as
an integrated system comprising a small-scale unmanned, underactuated aerial vehicle (UAV) and a revolute robotic manipulator
which can have a fast and flexible maneuverability in space. The
main concern for the combined system is to control the position
and orientation of the end-effector of the UAVARM while collaboratively stabilizing the UAV body so that it can follow and
track a desired trajectory. Success in solving the control design
problem will allow the system to be used in remote dextrous applications such as replacing bulbs on a radio tower. Many control
challenges exist due to the complexity of the system including
that the UAV is underactuated, inherently unstable, and the interaction of the arm and the UAV. The novelty of this system
is that UAVARM is the complete integration of the subsystem to
function as a single entity - the subsystems are cooperatively controlled in the sense that spatial states such as position, attitude,
and orientation are transferred or cumulated in an automated
manner using homogeneous matrices to the end-effector in order to exactly control the flying arm. The closed-loop controller
will control the trajectory-tracking of the end-effector while satisfying a Lyapunov-type stability of the integrated system, which
yields an asymptotically stable tracking result in a given angle
condition.
INTRODUCTION
In this research, control of a single integrated flying robotic
arm based on developed kinematics and dynamic models is presented. This flying arm, called UAVARM and depicted in Figure
1, consists of an underactuated unmanned aerial vehicle and a
Address
Timothy C. Burg
Dept of Electrical and Computer Engineering
Clemson University
Clemson, South Carolina 29634-0915
Email: tburg@clemson.edu
It is not just the integration of the two systems, but the true coordinated control of the combined system that is sought. To tackle
the modelling issue, the idea for the integration is shown in Figure 3 where (a) is the general UAV model and (b) is the three-axis
orthogonal joint related to roll, pitch, and yaw motion at the same
origin while having the same UAV thrust on the Z-axis. Then the
position and angles of the underactuated UAV are transferred cumulatively through the UAV rigid-body and the manipulator to
the end-effector of the flying robotic arm system [6]. Most UAV
systems with a camera system can claim their system is also a
single robot manipulator but actually each works separately or
the combined system is controlled in a limited space by assuming
(2)
h
iT
T
T
where = , qT
R8 is the acceleration, = T , qT
R8 , q(t) R2 is the joint position, q(t)
R2 is the joint veloc8
ity, and (t) R is vector of a force and torque inputs. Note
that each dynamic modeling of the UAV and robot manipulator
and q(t)
with respect to (t)
except for interactive terms has been
already derived and used here. See the Appendices in [6]. The
system matrices M(q), C(q, q,
), D(q, q,
), G(q, ) are defined
below.
Forces and Torques: (t)
(t) = Bu u in (2) are the linear forces (thrusts), UAV body
torques and joint torques, and Bu is the actuator input configuration matrix as follows
= V
q
Figure 5: Combined UAV and robot manipulator (UAVARM)
Expressed in Body-fixed Frame
scribed here shown in Figure 2 is however underactuated system which has only four control inputs. Although the two-DOF
deficit comes from the underactuation of the UAV, when it combines with the two-DOF robot manipulator as shown in Figure 4,
then we can fully control the EE of UAVARM which needs only
six control inputs rather than having eight ones thus, we will design the underactuated controller for the coordinated unmanned
system. If we will add more links, the system can get surplus
redundancy as much. For example, if we add hyper-redundant
arm such as snake-like robot arm or elephant nose, it gives more
flexibility and versatility of the EE for a variety of applications.
Finally, the control objective of the UAVARM in this paper is to
perform a trajectory-tracking and the controller is designed via a
Lyapunov-type stability [5].
Gv + Ge (q)
+
+
Cm
q
Gm(q)
C3
Dv + D1 + D2 D3
= V ,
D4
Dm + D5
q
q
(1)
B
O62
=
O24 I2
uV
uq
= Bu u
(3)
B
O62
where Bu =
, Ir is a r r identity matrix, the force
O24 I2
and moment acting on the vehicle is defined as V (t) = B uV
R6 uses B R64 [8], a special thruster configuration matrix, to
distribute the inputs uV (t) R4 which has the following com
T
ponents uV = u1 , , , , R4 . The vector uq (t) is the
T
joint torque, uq = q1 , q2 R2 . Note that the UAV body is
under-actuated in the sense that there are four control inputs and
six degrees of freedom.
Mv + M1 (q) Mc (q)
R88 ,
M(q) =
McT (q)
Mm (q)
(4)
C () +C1 (q, q,
) C2 (q, q)
C(q, ) = v
C3 (q, q,
)
Cm (q, q)
(5)
Dv () + D1 (q) + D2 (q, q,
), D3 (q, q,
)
D4 (q, q,
), Dm (q) + D5 (q, q,
)
a or b
xziizi1
()+90
d1
+90
q1 +90
a2
+90
q2
b3
90
(6)
xi1
i xi1
D(q, ) =
Link (i)
J
Jq v1
J1
Jv2
J2
Jv3
J
= v
J3
J
(8)
where Jvi and Ji (i = 1, 2, and 3) are the Jacobian matrices related to the translation and rotational velocities from the UAV
body as the first link to third links, respectively. Now we need
to consider that the robot manipulator are attached on the UAV
as shown in Figure 6. The moving UAV rigid-body coordinate
frame is converted to the earth-fixed inertial frame so that the
body-fixed coordinates are translated and rotated relative to the
earth-fixed inertial frame as the UAV moves for the ground control station while being used as a reference frame relative to
the end-effector where the revolute two-link serial robot manipulator is assumed to be connected close to the UAV center of
gravity point for reducing the complexity of modeling. Then
the position, denoted as pE (t), and orientation, E (t), of the
end-effector expressed in earth-fixed frame can be written as
T
xE = pTE TE R6 . The position rate of the end-effector can
be described by separating the contributing velocity components
and rotational matrices, and can be decomposed into two terms
as vEIE (t) = vEIF + vEFE ; a velocity from the earth-fixed frame to
the UAV frame, vEIF (t), and a velocity from the body-fixed frame
to the end-effector frame, vEFE (t), and the velocities can also be
represented into new terms using rotation matrices as follows:
(7)
vEIF = REF vFIF = REF vF and vEFE = REF vFFE
(9)
Tx ()
1 st ct
TFI () = Ty () = 0 c s
Tz ()
0 s/c c/c
(13)
where t = tan() is used. Next, the velocities, vFFE (t), FFE (t)
R3 , of the end-effector of the 2-link robot manipulator, before
attachment to the UAV-body, can be represented from the origin
O0 . Here we will assume that O0 is the UAV body-fixed frame
F using the end-effector velocity of the robot manipulator, that
is measured in E (or O3 ), refer to the dynamic modeling of the
two-link robot manipulator in [6]
vFFE = Jv q,
FFE = Jw q
(14)
= RIF vF
(10)
+ RIF vFFE .
pE = RIF vF + RIF Jv q.
(15)
pE = RIF vF + Jv q.
I T
p
(RF ) O33
v
6
=
Dx R
O33 (TFI )1
(11)
cc css sc ss + ccs
RIF () = sc cc + sss ssc cs
s
cs
cc
(16)
(17)
(12)
TFI FFE = TFI RFE EFE = TFI J q = J q
(18)
xE =
pE
E
=
RIF ()
O33
vF
O33 Jv23 F
= DE
TFI () J23
q
ep =
(21)
e p =
Jv23
=
J23
sc(o3 -o1 )z +s(o3 -o1 )y z2y (o3 -o2 )z -z2z (o3 -o2 )y
-s(o3 -o1 )x -cc(o3 -o1 )z z2z (o3 -o2 )x -z2x (o3 -o2 )z
cc(o3 -o1 )y -sc(o3 -o1 )x z2x (o3 -o2 )y -z2y (o3 -o2 )x (22)
cc
z2x
sc
z2y
s
z2z
where o1 , o2 , o3 , and z2 vectors are given in [6] and
(23)
DTE R86 .
(26)
(24)
S(E ) O33
e p + ev
O33
O3
(27)
where
DE = DTE DE
T
RIE O33
(xE xD ).
O33 I3
are the last two columns of the first equation in (8) for the twolink manipulator except the UAV-link model as
= DE xE
(25)
T
Moreover, by defining the vectors xE (t) = pTE , TE R6 and
T T T
xD (t) = pD , D R6 , (25) yields
(20)
T
RIE (pE pD )
ep ,
E D
T
pE pD
RIE O33
=
R6 .
E D
O33 I3
(19)
The position and orientation tracking errors are combined to create the end-effector tracking error
T
R IE O33
(xE xD )
O33 I3
T
RIE O33
+
(xE xD ) .
O33 I3
e p =
(28)
The
first equation
on the right side of (28) yields
T
I
S(E ) O33
RE O33
(xE xD ) =
e
where
O33
O33 p
O33 I3
T
T
R IE = S(e ) RIE
and the definition of (26) were used.
The velocitytracking errorin (27), ev (t) R6 , is defined from
T
RIE O33
T T,
(27) as ev
(xE xD ) where xE = pTE ,
E
O33 I3
T T and E = E + E = RE F + RF T J q
xD = pTD ,
IF
FE
F
E
D
where EIF = REF F is defined in the equation (17) and
T
EFE = RFE FFE is in (14). From the definition of ev (t),
differentiating yields
ev ,
I T
-S(E ), O33
(RE ) , O33
ev +
(xE -xD ) .
O33 , O33
O33 , I3
(29)
(30)
where
S(E ) O33
e + ev
O33
O33 p
(31)
V1 = eTp
(38)
e , IF r R3 ,
S(E ) O33
e + eTp ev = eTp ev
O33 O33 p
IF
r = TFI F
r
e =
(32)
where the skew-symmetric matrix property was applied. A filtered tracking error, rE (t) R6 , is defined as
T
1 O33
RIE O33
rE =
(xE xD )
O33 2
O33 I3
T
RIE O33
+
(xE xD )
O33 I3
1
V3 = rET rE .
2
(33)
(34)
1 O33
where is a constant gain matrix given
O33 2
66
3
R , 1 , and 2 R are constant diagonal control gain matrices. Utilizing the definition of (34), (32) yields
V1 = eTp (rE e p ) = eTp e p + eTp rE
r
V2 = eT e = eT TFI F
(40)
by combining the position and the Euler angle errors and the velocity tracking errors as
rE e p + ev
(39)
(41)
(42)
where the definition of right terms are used for rE (t) was used.
Combining the three Lyapunov candidate functions, V1 , V2 with
V3 , yields
(35)
1
V = V1 +V2 +V3 = (eTp e p + eT e + rET rE ),
2
where
(43)
= (xE xD )
RIE O33
.
O33 I3
r +
V = eTp e p + eTp rE + eT TFI F
T
RIE O33
T
T
(xE xD ) .
rE ev + rE
O33 I3
Then,
V1 = eTp e p + eTp rE .
(36)
RIF ()v + Jv q
where the position and oriTFI () + J q
E (t), are deentation rate of the end-effector vector, pE (t) and
fined in (16) and (19), respectively. From the kinematics and
the dynamic modeling equation, we can design the control input
as follows: rewrite (20) and taking the time derivative of xE (t)
yields
From (20), xE =
The last term on the right side in (36) will be designed to cancel
out by the term, rET e p as a scaler, in V3 when designing the closedloop feedback controller u(t). The second Lyapunov candidate
function is selected by
1
V2 = eT e
2
(44)
(37)
xE = DE and xE = D E + DE
(45)
(46)
(53)
in which
1 st ct
d
d
TFI = 0 c s ,
dt
dt
c
s
0 c
c
(47)
and
d
Jv2 Jv3
dt
i
(z1 (O3 O1 )) (z2 (O3 O2 ))
=
q,
,
q1
q2
h z1 z2
d
d
J2 J3 = q , q
dt (J23 ) = dt
1
2
d
dt
(hJv23 ) =
(48)
i
where Jv23 , J23 are given from Jq (t) in (8) for the robot joint velocities. Note that the time derivative of Jacobian matrix can use
the second and third column vectors of (8) related to the robot
is obtained from the integrated modeling equamanipulator. (t)
tion in (2) as a single matrix form
= M 1 { (C + D) G}.
(49)
Substitute (49) into (45) then substitute (23) for (t) in xE (t) to
yield
h
i
xE = D E DE xE + DE M 1 (C + D)DE xE G .
(50)
Substituting the right side equations into the (44) for xE (t) yields
E
O33
T
I F
T
T RI
T
T
V = e p e p + e p rE + e TF r + rE ev + rE
O33 I3
n
h
i
o
D E DE xE + DE M 1 (C + D)DE xE G xD
(51)
where REI
T
RIE
=
and a skew-symmetric property made the first
term zero in (44) and the inverse of M() is assumed to exist.
Design of (t) Based on Lyapunov Approach
Design of (t) R8 from (44)
h
i
= (C + D)DE xE + G + MDE {xD
I
RE O33
DE DE xE
(rE + e p + ev )
O33 I3
(52)
R15 and 5 = min {min {}, min {}, min {}} , then V (t)
yields
V 5 ke p k2 + ke k2 + krE k2 5 kzk2 .
(55)