Você está na página 1de 6

AME-07

The 21st Conference of Mechanical Engineering Network of Thailand


17-19 October 2007, Chonburi, Thailand

Development and Control of 6-DOF Fully Autonomous Flying Robot

Sukon Puntunan1, and Manukid Parnichkun2


1
Mechanical Engineering Department, Engineering Division, Royal Thai Air Force Academy,
Bangkok, 10220, Thailand
Tel: 0-2534-3674, E-mail: sukon@aerotronix.net
2
School of Engineering and Technology, Asian Institute of Technology,
Pathumthani 12120, Thailand
Tel: 0-2524-5229, E-mail: manukid@ait.ac.th

Abstract specified locations, until landing. The flying robot has six
Control of 6-DOF fully autonomous helicopter-type degrees of freedom in its motion. The problem of this
flying robot is very difficult because of the non-linear kind of the flying robot is its inherent unstability. The
unstable nature of the flying robot. Many researchers in robot dynamics is nonlinear and varies with environment.
this field verified their control algorithms only on The system is always disturbed by noise and disturbance;
simulation. There are very few successful experiments on wind turbulence, ground effect, for instances. As the
fully control of the flying robot. In order to make the result, control of the flying robot is very difficult and
robot fly autonomously, attitude and position controls are very challenging at the same time.
required. In this paper, neuro-fuzzy control (NFC) is Currently, there are some researches focusing on
applied to control roll, pitch and yaw of the flying robot, control of autonomous flying robots by different control
while hybrid adaptive neuro-fuzzy model reference techniques [1]. However, there are very few successful
control (Hybrid-ANFMRC) is proposed to control the experiments on fully control of this kind of robot. The
robot position. The attitude controllers are trained offline researches are separated into 2 directions. The first
to reduce roll, pitch and yaw errors. The position control direction applies model-based approach. The other
learns online to track a velocity reference model to get direction is based on model-free approach. Model-based
short response time, small oscillation, and no steady state approach can not be implemented efficiently in real
error. Parameter robustness of the proposed control world, because of the difficulty in obtaining an acceptable
algorithm is addressed by testing in the experiments and accurate dynamics model of the flying robot. As the
under various ranges of control gains. The experimental system increases its complexity, complete and accurate
results confirm the feasible performance of the proposed identification of the robot mathematical model becomes
control algorithm for the flying robot. difficult. Consequently, the applicable models are just
. only the approximations. To overcome the problem, some
Keywords: flying robot, adaptive control, hybrid control, researches apply model-free technique. Neural network
model reference control. and fuzzy logic are widely used. Wyeth, et.al, applied
flight data to train a neural network controller offline [2].
1. Introduction They obtained direct mapping of sensor inputs to actuator
It is expected that flying robots will be used in many outputs. The control used a “cause” and “effect”
applications in the future, particularly in various approach. It was found from the experimental results that
hazardous areas. For examples, the robot can hover and they failed to control the robot by this approach.
transmit top view video image of hostage situations, Montgomery, et.al developed a “teaching by showing”
enemy locations, or areas contaminated by toxic method to train a fuzzy-neural controller [3]. The
chemicals or biological agents for appropriate further controller was developed and tuned by using training data
actions. They can be used in geological survey and map gathered while the operator manually controlled the
generation purposes with less expense compared with flying robot. The method was successfully applied in
using real airplanes or helicopters. In order to make use simulation but failed to control the flying robot in real
of flying robots in these various applications effectively, operation. Sugeno could successfully control the flying
the robots are to have the ability to fly automatically. A robot by applying a fuzzy logic control [4]. He used the
flying robot is modified from X-Cell 60 radio-controlled knowledge from experienced pilot to design his fuzzy
helicopter. It is developed to support autonomous flight logic controller. He also compared the performance of
control covering wide-mode missions of operation from fuzzy logic control with conventional linear control under
taking off, hovering, flying in forward, backward, a windy environment. Fuzzy controller showed its
leftward, rightward, upward, and downward directions to robustness against wind turbulent better than in linear

439
AME-07

controller. However, the design process took time and Δe(k ) . The output of the neuro-fuzzy controller is
required experimental skill from the expert pilot. change of actuator command, Δδ (k ) . The attitude error,
Drawback of neural network is the difficulty in re-
tuning the network after the training process was once e(k ) and the change of attitude error, Δe(k ) , are
accomplished. Likewise drawback of fuzzy logic control determined as followings.
is the requirement of knowledge about the plant under e(k ) = Φ desired (k ) − Φ (k ) (1)
control. Parameters of fuzzy logic controller are Δe(k ) = e(k ) − e(k − 1) (2)
determined manually. Neuro-fuzzy control takes the
where Φ desired (k ) is the desired attitude, and Φ (k ) is
advantages from fuzzy logic control and neural network.
Learning ability of neural network and tuning ability of the actual attitude of the flying robot.
fuzzy logic control are integrated in the neuro-fuzzy The input parameters of the neuro-fuzzy controller
control. have to be normalized to fit with the hardware
In this paper, a model free approach, neuro-fuzzy constraints. The normalized attitude error, en (k ) and the
control, is applied to control roll, pitch and yaw of the normalized change of attitude error, Δen (k ) are
flying robot. The neuro-fuzzy controllers are trained calculated as followings.
offline from the flight data. Hybrid adaptive neuro-fuzzy
en (k ) = g1 (e(k )) (3)
model reference control (Hybrid-ANFMRC) is proposed
to control position of the flying robot. The position Δen (k ) = g 2 (Δe(k )) (4)
control combines neuro-fuzzy with proportional control. where g1 (•) and g 2 (•) are the normalization functions
The proportional control acts as the basis control, while of the attitude error, e(k ) and the change of attitude
the adaptive neuro-fuzzy model reference control learns
to track a velocity reference model. The reference model error, Δe(k ) , respectively.
is defined as the function of position error. It can be The normalization functions are defined as followings.
linear or non linear function of the position error. The g1 (e(k )) = k e g1neg e(k ) if e(k ) ≤ 0
position control learns from the flight data without using = k e g1 pos e(k ) if e(k ) > 0
any expert knowledge. Experiments are undertaken to
evaluate performances of the proposed control algorithm. g 2 (Δe(k )) = k Δe g 2 neg Δe(k ) if Δe(k ) ≤ 0
Robustness of the position controls is addressed by = k Δe g 2 pos Δe(k ) if Δe(k ) > 0
testing in experiments under various ranges of the
proportional gains. (5)
where k e and k Δe are attitude error and change of attitude
2. Six-DOF Control of Flying Robot error gains, respectively. The constant values; g1neg ,
2.1 Neuro-fuzzy control
g1 pos , g 2 neg and g 2 pos , are the normalization factors for
Neuro-fuzzy controller is applied to control roll, pitch
and yaw of the flying robot. The neuro-fuzzy control is a each input parameters.
class of hybrid controls that fuses fuzzy logic with neural The output of the neuro-fuzzy controller is the result of
network. It combines the advantages of neural network in mapping from the normalized attitude error, en (k ) and
learning ability, optimization abilities and connectionist the normalized change of attitude error, Δen (k ) to the
structure with the advantages of fuzzy logic control in
human-like structure, ease of incorporating expert output, γ (k ) . The change of actuator command, Δδ (k ) ,
knowledge [5]. The structure of the neuro-fuzzy attitude is obtained by multiplying the output, γ (k ) with the
control is shown in Figure 1. output gain kδ .
. Φ
Fine-Tune Mechanism
Δδ (k ) = kδ γ (k ) (6)
T
Neuro-Fuzzy Controller
The actuator command, δ (k ) , is the summation of the
change of actuator command, Δδ (k ) with the control
Φ desired +
-
en
trim, δ trim .
e
δ (k ) = δ trim + Δδ (k )
g1
(7)
γ Δδ δ Flying

z-1 Robot Performance of the neuro-fuzzy control is affected by
Δen
Δe g2 δ trim
changing the attitude error gain, ke , the change of
attitude error gain, k Δe and the output gain kδ .
In this paper, the neuro-fuzzy controller is trained to
reduce the attitude errors. The flight data is used as the
training set. The offline learning of the neuro-fuzzy
Figure 1. Neuro-fuzzy attitude control
controller applies back propagation algorithm. Figure 2
shows symmetrical triangle membership functions of the
From Figure 1, there are two inputs and one output of
neuro-fuzzy controller with fuzzy singleton rule.
the neuro-fuzzy controller. The first input is attitude
error, e(k ) . The second input is change of attitude error,

440
AME-07

μ j ( xi ) 2.2 Hybrid adaptive neuro-fuzzy model reference


Ai
control
Hybrid-ANFMRC is proposed to control position of
the flying robot. The control is a hybrid of a proportional
control with an adaptive neuro-fuzzy model reference
control. In the proposed control algorithm, the
proportional controller generates the output proportional
to position error. The adaptive neuro-fuzzy model
a ij xi reference controller generates the output by learning to
bi j track a velocity reference model. Structure of the Hybrid-
ANFMRC is shown in Figure 3.
Figure 2. Symmetrical triangle membership function Probot
u trim
The symmetrical triangle membership function is Proportional Controller
-
expressed by the following equation. Ρ desired + eP u prop +
+
kp
2 xi − ai j +
+
u hybrid u
μ A j ( xi ) = 1 − , i = 1,2,...n j = 1,2,..., m (8)
Neuro-Fuzzy Controller

bi j
i
-(d/dt)

gv
where xi is the input value, aij is the center of triangle Probot
u neuro

and bi j is the width of triangle. The fuzzy rules, also


R L
+ -
called fuzzy singleton, are in the following form [5]. Reference Model Learning Mechanism
Rule j: If xi is A1j and x2 is A2j and … and xn is
Probot
Anj then γ is w j .
Figure 3. Structure of Hybrid-ANFMRC
where Ai j is a linguistic term with the membership
function, μ iA j ( xi ) , w j is a real number of weight in the From the figure, the Hybrid-ANFMRC consists of a
i
proportional controller and a neuro-fuzzy controller. The
neural network part. By the singleton rule, control output,
position error e p (k ) is the difference between the desired
γ (k ) from the neuro-fuzzy controller is calculated by the
following equation. position, Pdesired (k ) and the actual robot position,
m Probot (k ) .
∑ μ j (k ) w j (k )
j =1 e p (k ) = Pdesired (k ) − Probot (k ) (14)
γ (k ) = m
(9)
∑ μ j (k ) The proportional controller is used to generate the
j =1 control output, u prop (k ) proportional to the position
where error, e p (k ) . The output of the proportional controller is
μ j = μ A1 ( xi ) μ A1 ( xi ) … μ A1 ( xi ) (10)
j 2 n calculated as following.
The weights of the neuro-fuzzy controller are modified u prop (k ) = u prop (k − 1) + k P (e p (k ) − e p (k − 1))
by steepest gradient method to minimize a cost function.
(15)
The cost function is defined as half of the square of the
difference between the command attitude and the actual where k P is the proportional gain.
attitude. Main function of the proportional controller is to
1 reduce the overall error. However, the control output of
E = (Φ desired − Φ ) 2 (11) the proportional controller becomes smaller when the
2
The weights of the neuro-fuzzy controller are modified error approaches zero. As the result, steady-state error
by steepest gradient method as following. always exists by a sole proportional controller. The
adaptive neuro-fuzzy model reference controller is used
∂E
w j (k + 1) = w j (k ) − η (12) to reduce steady state error remaining from the
∂w j proportional controller, while still attenuates the
where η ≥ 0 is the learning rate. oscillation. The output of the proportional controller,
By applying chain rule, the adjusted weights can be u prop (k ) , is summed with the output of the adaptive
determined from neuro-fuzzy model reference controller, u neuro (k ) ,
∂E μ j (k )
= m (Φ desired (k ) − Φ (k )) (13) becoming the hybrid control output, u hybrid (k ) .
∂w j
∑ μ j (k ) u hybrid (k ) = u prop (k ) + u neuro (k ) (16)
j =1

441
AME-07

The hybrid output, u hybrid (k ) , is then summed with the axis, while maintaining the flying robot stable in the other
axis. The signal causes the robot to oscillate about z-axis.
control trim, utrim , to generate the control output, u (k ) .
u (k ) = u hybrid (k ) + u trim
Normalized yaw error
(17) 2

The input of the adaptive neuro-fuzzy model reference 0

-1

controller is velocity of the robot. The robot velocity is -2


0 0.5 1 1.5 2 2.5 3 3.5

then normalized to the normalized velocity, Pn,robot (k ) .


Normalized change of yaw error
2

The normalized velocity is obtained by multiplying the 0

velocity, Probot (k ) with a scaling factor, g v .


-1

-2
0 0.5 1 1.5 2 2.5 3 3.5

P (k ) = g P
Change of control signal (rudder)
400

n ,robot (k ) (18)
v robot 200
Target
Trained result

The output of the adaptive neuro-fuzzy model 0

-200

reference controller is the mapping result from the -400


0 0.5 1 1.5 2 2.5 3 3.5

velocity, Probot (k ) to the adaptive output, u neuro (k ) ,


which is calculated by the weight average method. With Figure 4. Training data for neuro-fuzzy yaw control
the normalized inputs, Pn,robot (k ) , the output, u neuro (k ) ,
is determined from equation (19). Figure 4 shows the training data and the offline
m training result of the neuro-fuzzy yaw control. In the
∑ μ j (k ) w j (k ) control, there are 7 membership functions for each input.
j =1
u neuro (k ) = m
(19) Each linguistic value is expressed by its mnemonic; for
∑ μ j (k ) example, NB for “negative big”, NM for “negative
j =1 medium”, NS for “negative small”, ZO for “zero”, and
where likewise for the positive ( P ) mnemonic.
μ j (k ) = A1i ( Pn,robot (k )) (20) In the experiment, the learning rate is selected at 0.02.
The design parameters are shown in Table 1.
and A1i ( Probot (k ))
is a triangle membership function.
The adaptive neuro-fuzzy model reference controller Table 1. Neuro-fuzzy yaw control parameters (* indicates
learns to track the desired velocity reference model, the values after fine tuning)
r (k ) , which is defined as the function of the position g1 g2 k
error as following. g1neg g1 pos g 2 neg g 2 pos ke k Δe kδ
r (k ) = f ( Probot (k )) (21)
1.0 1.0 1.0
where f (•) is a linear or nonlinear function. 0.0529 0.0684 0.7619 0.4706 *1.0 *2.1 *1.39
Weights of the adaptive neuro-fuzzy model reference
controller are modified with steepest gradient method to Offline training helps to initialize the valid control
minimize a cost function. The cost function is defined as parameters that can stabilize the yaw control of the flying
half of the square of the difference between the velocity robot. Without offline training, parameters of the neuro-
reference model and the actual velocity. fuzzy controller might fall in the unstable region. After
1 offline training, manual coarse and automatic fine tunings
E = (r (k ) − Probot (k )) 2 (22) are also required practically. Automatic online fine tuning
2
The weights are modified as following. is applied to reduce steady state error. Without manual
∂E coarse tuning, the parameters obtained by sole fine tuning
w j (k + 1) = w j (k ) − η (23) might not be converged. The experimental result is
∂w j
shown in Figure 5. At the beginning, the gains of the
where η ≥ 0 is the learning rate. neuro-fuzzy controller are manually tuned until an
By applying chain rule, the adjusted weights can acceptable control performance is achieved. Then the
be determined from neuro-fuzzy controller is online fine-tuned to reduce the
∂E μ j (k ) steady state error.
= m (r (k ) − Probot (k )) (24) The experimental result of yaw control under step
∂w j
∑ μ j (k ) inputs is shown in Figure 6. From the figure, the yaw
j =1 response could follow the step inputs with small
oscillation magnitude and steady state error.
3. Experimental Results
3.1 Experiment of neuro-fuzzy attitude control
Only yaw control is considered here. The principle of
row and pitch control is similar to yaw control and
omitted in the explanation. The training data are obtained
by applying series of input signal to the uncontrolled yaw

442
AME-07
Neuro-Fuzzy yaw control, tuning
180
Desired yaw
Hybrid-ANFMRC result, lateral position control
Yaw response 30
160 Command
Response
25 Learning status
140

20

120
Yaw (deg)

15
Switched to autonomous mode here

100

Distance (m)
10

80
5
Online Tuning "ON"
Manually tuned Learning "ON"
60 0

40 -5
0 5 10 15 20 25 30 35 40 45 50
Time (s)

-10
Switched to autonomous mode here

Figure 5. Tuning result of neuro-fuzzy yaw control -15


0 50 100 150
Time (s)

Neuro-Fuzzy yaw control, step input


70

60

50 Figure 7. Lateral position control by Hybrid-ANFMRC,


Yaw (deg)

Manual Control
40

30

20
Switched to autonomous mode here Desired yaw
10
Yaw response
0
0 10 20 30 40 50 60 70 80 90
Time (s) Hybrid-ANFMRC result, longitudinal position control
8
Control signal (rudder)
3000 Command
2950
6
Response
2900 Learning status
2850
Value

4
2800

2750 Switched to autonomous mode here


2700 2
2650 Learning "ON"

2600
0 10 20 30 40 50 60 70 80 90 100 0
Distance (m)

Time (s)

Figure 6. Step input response of neuro-fuzzy yaw control -2

-4

3.2 Experiment of position control with Hybrid- -6

ANFMRC -8

The outputs of the lateral, longitudinal position and


altitude control are the desired roll, the desired pitch and -10

the change of collective commands, respectively. The roll -12


0 20 40 60 80 100 120
Time (s)
and pitch control are designed similar to the yaw control
described in section 2.1. In the experiment, the
proportional gains of the lateral and longitudinal position Figure 8. Longitudinal position control by Hybrid-
control are both 8.0. The proportional gain of the altitude ANFMRC
control is 30.0. The lateral and longitudinal position
commands are both 0 meter. The altitude command is 20
Hybrid-ANFMRC, altitude control

13.0 meter. The learning rates of the lateral, longitudinal 18


Command
Response
Learning status
position and altitude control are all 0.4. The velocity 16

reference model is defined as a linear function of the


14
position error. The robot velocity is normalized within
12
the range between –1.2 and 1.2. There are 7 elements of
Altitude (m)

the weight for each control axis, which are initialized to 10

zero at the beginning. 8

In Figures 7 and 8, only the proportional control is 6


Switch to autonomous node here

applied at the beginning. The learning process of the 4

Hybrid-ANFMRC is then activated. During learning, the 2

controller adapts the control parameters and learns to 0


Learning "ON"

control position of the robot. Finally, the robot can track 0 50 100 150 200
Time (s)
250 300 350 400

the desired position with no steady state error.


Figure 9 shows the result of altitude control. The Figure 9. Altitude control by Hybrid-ANFMRC
control is switched between manual pilot control and
Hybrid-ANFMRC computer control. Every time the pilot To evaluate robust performance of the proposed
takes control the robot, the learning process is stopped. control algorithm, the longitudinal position control is
The control performance is better with more learning studied. The proportional gain of the longitudinal position
which can be seen from the figure that the oscillation control is varied. Figures 10-12 show responses of
magnitude is small during every learning. The control Hybrid-ANFMRC at the proportional gains of 2.0, 4.0
learns to control the altitude of the robot effectively. and 8.0 respectively.

443
AME-07

15
Hybrid-ANFMRC, robustness test
evaluated from many experiments. The desired
Kp = 2.0 Command
Response
Learning status
performance could be achieved by the proposed control
10
algorithm even with the variation of control gain. The
experiments showed that the proposed control algorithms
5
were able to successfully control the flying robot.
Distance (m)

Learning "ON"
0
Acknowledgments
This research is financially supported by Thailand
-5

Switched to autonomous mode here


Research Fund.
-10

References
-15
[1] S. Saripalli, J. M. Roberts, P. I. Corke, G. Buskey. A
0 50 100 150 200 250 300 350 400 450
Time (s) Tale of Two Helicopters. Robotics Research Lab,
University of Southern California, 2002.
Figure 10. Response of Hybrid-ANFMRC with k P = 2.0 [2] Gordon Wyeth, Gregg Buskey, Jonathan Roberts.
Flight Control Using an Artificial Neural Network.
University of Queensland, 2002.
20
Hybrid-ANFMRC, robustness test
[3] Jame F. Montgomery and George A. Bekey. Learning
Command
Kp = 5.0 Response Helicopter Control Through “Teaching by Showing”.
Learning status
15
[4] M. Sugeno. Development of an Intelligent Unmanned
10
Helicopter. Fuzzy Modeling and Control, Selected
Works of M. Sugeno. P.13-43.
[5] C. Teng, C.S. George. Neural Fuzzy Systems.
Distance (m)

Learning "ON" Prentice Hall Inc; 1999.


0

-5

Switched to autonomous mode here

-10

-15
0 100 200 300 400 500 600
Time (s)

Figure 11. Response of Hybrid-ANFMRC with k P = 4.0

Hybrid-ANFMRC , robustness experiment


10
Kp = 8.0

Learning "ON"
0
Distance (m)

Switched to autonomous mode here


-5

-10

-15

Command
Response
Learning status
-20
0 100 200 300 400 500 600
Time (s)

Figure 12. Response of Hybrid-ANFMRC with k P = 8.0

5. Conclusion
In this paper, neuro-fuzzy control and the
Hybrid-ANFMRC were proposed to control fully
autonomous flying robot. The neuro-fuzzy controller was
applied to control the roll, pitch and yaw of the flying
robot. The controller was trained using the flight data and
fine tuned to achieve the desired response. The Hybrid-
ANFMRC was proposed to control the lateral,
longitudinal positions, and altitude of the flying robot.
The control performance of the Hybrid-ANFMRC was

444

Você também pode gostar