저작자표시 비영리 공연 및 방송할 수...

61
저작자표시-비영리-동일조건변경허락 2.0 대한민국 이용자는 아래의 조건을 따르는 경우에 한하여 자유롭게 l 이 저작물을 복제, 배포, 전송, 전시, 공연 및 방송할 수 있습니다. l 이차적 저작물을 작성할 수 있습니다. 다음과 같은 조건을 따라야 합니다: l 귀하는, 이 저작물의 재이용이나 배포의 경우, 이 저작물에 적용된 이용허락조건 을 명확하게 나타내어야 합니다. l 저작권자로부터 별도의 허가를 받으면 이러한 조건들은 적용되지 않습니다. 저작권법에 따른 이용자의 권리는 위의 내용에 의하여 영향을 받지 않습니다. 이것은 이용허락규약 ( Legal Code) 을 이해하기 쉽게 요약한 것입니다. Disclaimer 저작자표시. 귀하는 원저작자를 표시하여야 합니다. 비영리. 귀하는 이 저작물을 영리 목적으로 이용할 수 없습니다. 동일조건변경허락. 귀하가 이 저작물을 개작, 변형 또는 가공했을 경우 에는, 이 저작물과 동일한 이용허락조건하에서만 배포할 수 있습니다.

Transcript of 저작자표시 비영리 공연 및 방송할 수...

Page 1: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

저 시-비 리-동 조건 경허락 2.0 한민

는 아래 조건 르는 경 에 한하여 게

l 저 물 복제, 포, 전송, 전시, 공연 송할 수 습니다.

l 차적 저 물 성할 수 습니다.

다 과 같 조건 라야 합니다:

l 하는, 저 물 나 포 경 , 저 물에 적 허락조건 확하게 나타내어야 합니다.

l 저 터 허가를 러한 조건들 적 지 않습니다.

저 에 른 리는 내 에 하여 향 지 않습니다.

것 허락규약(Legal Code) 해하 쉽게 약한 것 니다.

Disclaimer

저 시. 하는 원저 를 시하여야 합니다.

비 리. 하는 저 물 리 적 할 수 없습니다.

동 조건 경허락. 하가 저 물 개 , 형 또는 가공했 경에는, 저 물과 동 한 허락조건하에서만 포할 수 습니다.

Page 2: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Adaptive Neural Network Controller for Quadrotor with Two Degree ofFreedom Robotic Arm

by

GEUNO KIL

THESIS

Presented to the Faculty of the Graduate School of

Seoul National University

in Partial Fulfillment

of the Requirements

for the Degree of

MASTER OF SCIENCE

Department of Mechanical and Aerospace Engineering

Seoul National University

June 2017

Page 3: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Abstract

Adaptive Neural Network Controller for

Quadrotor with Two Degree of Freedom

Robotic Arm

Geuno Kil

Department of Mechanical and Aerospace Engineering

The Graduate School

Seoul National University

Modeling of the quadrotor with a two degree-of-freedom robotic arm is

performed, and baseline controller and adaptive controller are designed

for the attitude control of the quadrotor. Newton-Euler dynamics and Ar-

ticulated body dynamics are used to model the quadrotor with a robotic

arm. For a case that a robotic arm in the quadrotor does not hold pay-

load, a baseline controller is designed using sliding mode control scheme.

If the robotic arm holds any unknown payload, then some moment is

generated from the robot arm. The generated moment can be considered

as uncertainty in the quadrotor system. To compensate the effects of the

uncertainty, adaptive neural network controller is designed. Numerical

simulation is performed to verify the performance of the proposed con-

troller for a quadrotor system with uncertainty.

Keywords : Unknown payload, Adaptive control, Neural network,

blankblankbQuadrotor with a robotic arm

Student Number : 2015-22728

ii

Page 4: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Table of Contents

Page

Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii

Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . iii

List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v

List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi

Chapter

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Related Research . . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Objective and Contents . . . . . . . . . . . . . . . . . . . 4

1.4 Thesis Organization . . . . . . . . . . . . . . . . . . . . . 5

2 Modeling of Quadrotor with 2-DOF Robotic Arm . . . . . . . . 6

2.1 Modeling of Robotic Arm with Fixed Base . . . . . . . . . 7

2.2 Modeling of Quadrotor with a Robotic Arm . . . . . . . . 12

2.2.1 Preliminary . . . . . . . . . . . . . . . . . . . . . . 13

2.2.2 Dynamic Modeling . . . . . . . . . . . . . . . . . . 16

3 Controller Design of Quadrotor with Robotic Arm . . . . . . . 21

3.1 Baseline Controller 1 : Quadrotor . . . . . . . . . . . . . . 23

3.2 Baseline Controller 2 : Robot Arm . . . . . . . . . . . . . 29

3.3 Adaptive Controller using NN . . . . . . . . . . . . . . . . 30

4 Numerical Simulation . . . . . . . . . . . . . . . . . . . . . . . 37

4.1 Simulation Environment . . . . . . . . . . . . . . . . . . . 37

4.2 Simulation Results . . . . . . . . . . . . . . . . . . . . . . 41

4.2.1 Numerical Simulation of baseline controller . . . . 41

4.2.2 Numerical Simulation of adaptive NN controller . 45

iii

Page 5: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

iv

Page 6: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

List of Tables

4.1 Actuator dynamics parameters . . . . . . . . . . . . . . . 38

4.2 Quadrotor parameters . . . . . . . . . . . . . . . . . . . . 38

4.3 Robot arm parameters . . . . . . . . . . . . . . . . . . . . 38

4.4 Numerical simulation cases of baseline controller . . . . . 40

4.5 Numerical simulation cases of adaptive controller . . . . . 40

4.6 Neural network adaptive gains . . . . . . . . . . . . . . . 40

4.7 Rms error for euler angle tracking with little uncertainty . 41

4.8 The performance comparison with moment uncertainty . . 46

v

Page 7: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

List of Figures

1.1 Amazon aerial vehicle delivery project . . . . . . . . . . . 2

2.1 Serial-chain robot arm . . . . . . . . . . . . . . . . . . . . 7

2.2 Spatial notation for rigid-body dynamics . . . . . . . . . . 8

2.3 Articulated-body dynamics . . . . . . . . . . . . . . . . . 11

2.4 Configuration of the coordinates for the system . . . . . . 14

3.1 Structure of the whole controller . . . . . . . . . . . . . . 22

3.2 Structure of the Baseline controller . . . . . . . . . . . . . 24

3.3 Structure of neural networks . . . . . . . . . . . . . . . . . 32

3.4 Structure of adaptive controller . . . . . . . . . . . . . . . 36

4.1 Euler angle responses (Case 1) . . . . . . . . . . . . . . . 42

4.2 Joint angle responses (Case 1) . . . . . . . . . . . . . . . . 42

4.3 Euler angle responses (Case 2) . . . . . . . . . . . . . . . 43

4.4 Joint angle responses (Case 2) . . . . . . . . . . . . . . . . 43

4.5 Euler angle responses (Case 3) . . . . . . . . . . . . . . . 44

4.6 Joint angle responses (Case 3) . . . . . . . . . . . . . . . . 44

4.7 Euler angle responses (Case 4) . . . . . . . . . . . . . . . 47

4.8 Joint angle responses (Case 4) . . . . . . . . . . . . . . . . 47

4.9 Euler angle responses (Case 5) . . . . . . . . . . . . . . . 48

4.10 Joint angle responses (Case 5) . . . . . . . . . . . . . . . . 48

4.11 Euler angle responses (Case 6) . . . . . . . . . . . . . . . 49

4.12 Euler angle responses (Case 7) . . . . . . . . . . . . . . . 49

vi

Page 8: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Chapter 1

Introduction

1.1 Background

Unmanned aerial vehicles (UAVs) have been used in many applications,

such as surveillance, reconnaissance, rescue, and searching disaster areas

where people cannot enter directly. Recently, research has concentrated on

quadrotors because they can land and take off vertically, making it easier

to approach places where conventional fixed-wing aircraft cannot. For

various missions, a quadrotor has become the base of a robot manipulator,

and many researchers have designed various robot manipulators to hold

a payload, e.g. using a gripper or a cable. In particular, companies such

as Amazon and Google have also created aerial vehicle delivery projects

using quadrotors, as shown in Fig. 1.1

When the aerial robot grasps an object, it is influenced by the mo-

ment and force due to that object. Therefore, attitude stabilization of the

aerial robot and end effector position control are very important. Since

the manipulator can cause undesirable effects on attitude stabilization,

quadrotor attitude control during the mission is essential.

1

Page 9: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 1.1: Amazon aerial vehicle delivery project

Quadrotors with grippers experience little effect from the manipula-

tor, because the payload is close to the quadrotor center of mass. However,

the quadrotor cannot contact a distant payload due to the short gripper

range. On the other hand, quadrotors with a cable cannot directly con-

trol the payload motion with the quadrotor attitude, and the quadrotor

cannot place the payload precisely.

The robotic arm [1] was introduced to solve the shortcomings of grip-

per and cable options. End effector position control is easy, and stowing

the robotic arm can locate the payload near the quadrotor center of mass,

minimizing undesirable payload effects.

1.2 Related Research

The dynamics of the quadrotor and robot arm are highly coupled. Pre-

vious research on dynamic modeling for quadrotors with a robotic arm

2

Page 10: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

treated the issue in two ways.

In the first approach, the quadrotor systems with a robotic arm were

modeled using an integrated system approach [2]-[6]. Usually, Euler-Lagrange

dynamics were employed to model the entire system, and the dynamical

relationship between the quadrotor and robot arm was implicitly included

in the modeling process.

Cartesian impedance control for the integrated system has also been

considered [2], and cascade controllers [3] have been employed to move

the quadrotor to the desired position as well as track the desired pose of

the end effector. Inverse kinematics was used and model uncertainty was

considered.

An adaptive sliding mode controller [4] has been applied based on the

combined system, and some experiments such as holding the unknown

payload, moving to designated position, and releasing the payload were

conducted. A variable parameter integral backstepping controller was de-

signed to stabilize the quadrotor attitude considering the robot arm dy-

namics [5]. The quadrotor manipulator system has been decoupled into

the translational and rotational dynamics of the quadrotor’s rotation and

robot arm configuration, and a controller for tracking the desired trajec-

tory of end effector was designed [6].

In the second approach, the quadrotor and the robotic arm are con-

sidered as separated systems that affect each other, and Newton-Euler

dynamics is used to derive the equations of motion. Some studies have

employed recursive Newton-Euler dynamics [7], [8], and others used an

articulated body concept [9].

The robot arm has been regarded as a disturbance to the quadrotor

[7], and a proportional integral derivative (PID) controller was designed

for quadrotor attitude stabilization using model reference adaptive con-

3

Page 11: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

trol. A quadrotor controller was designed using the arm joint variables

to compensate for the effect of robot arm [8], and the information of the

quadrotor in the robot arm controller was used to compensate for the

effect of quadrotor motion.

When the quadrotor robot arm system holds the payload, an uncer-

tainty is induced in the quadrotor. Several studies have considered the

quadrotor robot arm grasping unknown payloads [4], [7], [10], [11]. The

unknown payload has been regarded as a disturbance to the quadrotor

[7], and the unknown mass has been estimated with an adaptive controller

designed to control the entire system [10], [11].

1.3 Objective and Contents

Previous research has considered uncertainty as being generated for the

entire dynamic system. In contrast, the current study considers uncer-

tainty as generated to β∗part, which is defined in Chapter 3. Therefore, com-

pensation needs consider only moment uncertainty, which significantly

reduces the computational burden.

Attitude stabilization of the quadrotor and end effector control are

necessary to complete missions using the quadrotor robot arm system.

The objective of this study is to design a controller for attitude stabiliza-

tion of a quadrotor with robotic arm. Moment caused by the robot arm is

analytically computed using the articulated body concept. If the robotic

arm holds an unknown payload, then the uncertainty is generated to the

quadrotor. An adaptive neural network controller is designed to deal with

the uncertain moment.

The contents of this study are summarized as follows,

First, additive uncertainty, i.e., moment generated by the robot arm

holding an unknown payload, is considered as a simple uncertainty model.

4

Page 12: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Second, an adaptive neural network controller is designed to com-

pensate for the effect of the moment uncertainty, and enables quadrotor

attitude tracking.

Third, quadrotor attitude is stabilized, allowing independent manip-

ulation of the robot arm and robot arm control.

1.4 Thesis Organization

The thesis is organized as follows. Chapter 2 derives the articulated body

dynamics. Chapter 3 describes the design of the sliding mode controller for

quadrotor attitude tracking and PID controller for the robot arm. The un-

certainty model is described, and an adaptive neural network controller is

designed. Chapter 4 presents numerical simulation results to demonstrate

the performance of the baseline and adaptive neural network controllers.

Chapter 5 summarizes the study and presents concluding remarks.

5

Page 13: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Chapter 2

Modeling of Quadrotor with

2-DOF Robotic Arm

Quadrotor with a robotic arm can be described mathematically in a var-

ious ways. Among many methods, Euler-Lagrangian and Newton-Euler

dynamics have been widely used [7],[4]. Euler-Lagrangian dynamics con-

siders the quadrotor with a robotic arm as an integrated system, and

therefore the interactive force and moment between a quadrotor and a

robotic arm are not expressed explicitly. On the other hand, Newton-

Euler dynamics regards the system as separate systems. Therefore, force

and moment, which are exchanged between the quadrotor and the robotic

arm, are explicitly represented in the model.

In this study, Netwon-Euler dynamics is chosen for system modeling,

which enables the force and moment between a quadrotor and a robotic

arm to be exploited. In the modeling phase, the robotic arm is consid-

ered as an articulated body. That is, a quadrotor with a robotic arm

is considered as a quadrotor and an articulated body. Using recursive

Newton-Euler dynamics and articulated body dynamics, mathematical

model of a quadrotor with a robotic arm can be obtained.

In this chapter, Articulated Body dynamics is derived using a robotic

arm with a fixed base. Then, a robotic arm with a moving base, i.e.,

quadrotor, is considered. Articulated body dynamics is derived in Section

2.1. Notation, kinematics and dynamics used in the modeling are also

reviewed. Section 2.2 provides a description of the coordinate systems,

6

Page 14: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

parameters, and dynamic modeling of a quadrotor with a robotic arm.

2.1 Modeling of Robotic Arm with Fixed Base

Articulated body dynamics is widely used for the analysis of multibody

robot dynamics. The N link robotic arm with a fixed base is considered to

define variables, before dealing with the moving base which is a quadro-

tor.

Link 1

1 1q

22q

Link 2

N

Nq

Link 0(Base)

Joint 1

Joint 2

Joint N

Link N

Figure 2.1: Serial-chain robot arm

Figure 2.1 shows N links between a base and an end effector. The ar-

rows between the links imply joint axes. In general, a joint axis can have

any number of degree-of-freedom. In this study, however, the degree of

freedom is limited to 1. In the Articulated Body dynamics (AB dynam-

ics), a spatial notation is used, which includes rotational elements and

translational elements. The joint axes are defined in the spatial nota-

tion as 6×1 unit vectors, φi, where the subscript i represents a link or

a joint number. The joint axis is aligned with z-axis defined in a link’s

7

Page 15: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

coordinate, and Modified Denavit-Hartenberg notation [12] is used to

define a link’s coordinate system. For revolute joint, the joint axis unit

vector φi can be represented as [0, 0, 1, 0, 0, 0]T . If the joint is prismatic,

φi = [0, 0, 0, 0, 0, 1]T . Joint angle qi, joint velocity qi, joint acceleration

qi, and input torque/force τi can be written as scalar values utilizing the

joint axis unit vector. The motion of the robot arm can be expressed with

the joint acceleration, which is easily obtainable in AB dynamics. AB dy-

ia

if

i

gfJoint i

Link i

Joint i+1

1if

Figure 2.2: Spatial notation for rigid-body dynamics

namics can be derived from the force balance equation on each link. As

shown in Fig. 2.2, force balance equation for link i can be written as

fi −i+1 XTi fi+1 +i fg = Iiai − βi (2.1)

where fi is the spatial force transferred to link i from link i − 1, which

includes the effect of joint spatial torque/force, τi. Similarly, fi+1 is the

spatial force transferred to link i+1 from link i, which includes the effect

of τi+1. And ifg is the gravitational force on link i, βi is a vector of

velocity dependent term, i+1Xi is the spatial transformation matrix, and

8

Page 16: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Ii is the 6×6 inertia matrix which will be defined later. The spatial force

term consists of three-dimensional moment vector N , and force vector F .

Therefore, spatial force can be written as

fi =

Ni

Fi

(2.2)

Similar to the spatial force vector, spatial acceleration vector, ai, of a link

is composed of rotational and translational acceleration as

ai =

wivi

(2.3)

In Eq. (2.1), Ii indicates the spatial inertia of link i, which can be

defined as

Ii =

Ii hi

hTi mi13

(2.4)

where Ii is the 3×3 moment of inertia matrix for the link i with respect

to its own coordinate system, vector hi is the first mass moment of link

i which is defined as misi, mi is the mass of link i, si is the vector from

the coordinate system origin of link i to the center of mass of link i, and

13 is a 3×3 identity matrix. The tilde ( ˜ ) of the vector means a skew

symmetric matrix of the vector. For example, for hi = [a, b, c]T , hi can be

written as

hi =

0 −c b

c 0 −a

−b a 0

(2.5)

Matrix i+1Xi is a spatial transformation matrix from i to i+1 coordinate

system. Spatial transformation matrix is defined as follows,

i+1Xi =

i+1Ri 0

i+1RiipTi+1

i+1Ri

(2.6)

9

Page 17: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

where i+1Ri is the rotation matrix from i to i + 1 coordinate system,

which is attached to each link. Vector ipi+1 is the 3×1 vector, which is a

position vector of the origin of the link (i + 1)’s coordinate system with

respect to the link i’s coordinate system.

To model the robotic arm, biased acceleration term is introduced to

exclude the gravitational effect as

a′i = ai −

0

iag

(2.7)

According to Eq.(2.7), Eq.(2.1) can be represented as the following equa-

tion, which reduces computational burden and simplifies the modeling

process.

fi −i+1 XTi fi+1 = Iia

′i − βi (2.8)

The biased acceleration a′i, which can be obtained from kinematic equa-

tions, is needed to compute the force balance equation. Therefore, kine-

matic equations are also needed to compute the biased acceleration. Bi-

ased acceleration, rotational, and translational velocity can be computed

by solving the following equations recursively.

a′i = iXi−1a

′i−1 + φiqi + ζi (2.9)wi

vi

= iXi−1

wi−1vi−1

+ φiqi (2.10)

where ζi is the Coriolis and centripetal acceleration terms which can be

computed by using given joint spatial velocity. As shown in Eq.(2.10), the

biased acceleration of link i can be computed using the biased accelera-

tion of link (i − 1) and the joint acceleration between link i and (i − 1).

Therefore, biased acceleration from the base to the end effector can be

computed, and the spatial force of each link can be computed using the

computed biased acceleration. This procedure is equivalent to the inverse

10

Page 18: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

dynamics problem determining the torque/force of the joint to satisfy

desired trajectory. While propagating the biased acceleration, Eq.(2.9),

joint angles and velocities are known, whereas joint angular acceleration

is unknown. Without joint angular acceleration, biased acceleration and

spatial forces cannot be computed. A concept of AB inertia [13] can be

applied to solve the problem.

Link N

1Nf

ia

if

Link i

Link i+1

* *,i iI

Figure 2.3: Articulated-body dynamics

Figure 2.3 shows the principle of AB dynamics; the effects of link i+1

through N and tip force are reflected in AB inertia matrix I∗i and bias

force β∗i . To introduce this concept, Eq.(2.8) for a single link is trans-

formed into the following expression.

fi = I∗i a′i − β∗i (2.11)

Compared to Eq.(2.8), Eq.(2.11) includes the dynamic effects of links i

to N . Matrix I∗i is the 6×6 AB inertia matrix, which is felt at link i

11

Page 19: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

while joints i + 1 through N are freely moving, i.e., there are no joint

torque/force exerted. Similarly, the spatial force vector, β∗i , is the bias

force exerted on link i by the spatial force generated from link i + 1 to

link N , but excluding the gravitational effect.

With the transformed force equation, Eq.(2.11), and kinematic equa-

tions, Eq.(2.9) and Eq.(2.10), the procedure to get the joint acceleration,

q, can be implemented. First, the step of forward kinematics recursion

computes the rotational and translational velocity recursively, and com-

putes velocity dependent term such as ζi, βi from the base to the tip.

Second is a backward dynamics recursion, which computes AB inertia

matrix I∗i and bias force β∗i using Eq.(2.11) from the tip to the base.

Finally, forward acceleration step calculates the biased acceleration and

joint acceleration recursively through the two-stage information and the

biased acceleration of the base for the fixed base case. The detailed pro-

cess will be given in the next section.

2.2 Modeling of Quadrotor with a Robotic Arm

In the previous section, AB dynamics for a robotic arm is derived based

on a fixed base. However, in this study, the base is moving with respect

to the inertial frame. Therefore, the quadrotor body should be considered

as an another link, link 0, between the inertial frame and a robotic arm.

Quadrotor has 3 DOF translational and rotational motion. Therefore,

joint 0, which has 6 DOF consists of three dimensional rotational joint

and prismatic joint, is introduced to represent the quadrotor motion.

In this case, the joint axis vector φi is a 6×6 identity matrix. There-

fore, the joint velocity is equal to the quadrotor body’s spatial velocity,

q0 = [w0, v0]T , represented in the quadrotor’s body fixed coordinate. Also,

the joint acceleration is same as rotational and translational accelera-

12

Page 20: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

tion of the quadrotor, q0 = [w0, v0]T . The joint torque/force τ are same

as quadrotor external spatial force f0 = [Mx,My,Mz, 0, 0, T ]T , where

Mx,My,Mz are x-y-z components of the moments, and T is a thrust.

Note that moment and thrust are generated in the rotors, which are rep-

resented in quadrotor body fixed coordinate. The biased acceleration of

the base a′0 is not zero any more, and therefore the biased acceleration of

the base should be computed as

a′0 = (I∗0 )−1(f0 + β∗0) (2.12)

With the above initial condition, joint accelerations can be computed

recursively in the forward acceleration step. The original spatial acceler-

ation of the link can be obtained by adding the gravitational effect to

biased acceleration as shown in Eq.(2.7). In the following, the coordinate

systems and parameters of the quadrotor with a robotic arm are defined.

Then, the dynamic model of the quadrotor with a robotic arm will be

obtained.

2.2.1 Preliminary

Figure 2.4 shows the coordinate system used in this study. The inertial

coordinate system is denoted as OI . Ob and Oi represent the coordinate

system fixed to the quadrotor and the link i, respectively. The subscript

i= 1, 2 represents the link number.

13

Page 21: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

bxby

bzRotor 1

Rotor 2Rotor 3

Rotor 4

1z1y

1x

2y

2x

Link 1

Link 2

Link 0

IXIY

IZ

bO

1O

2O

IO 2z

Figure 2.4: Configuration of the coordinates for the system

Quadrotor body fixed coordinate is located at the center of mass of

the quadrotor, and the origin of the link’s body fixed coordinate is located

at the link’s top position. In O1 and O2, x-axis is aligned along the link.

The joint angles, q1 and q2, are defined as rotation angles about zi axis.

And zi axis is parallel to xb axis. In this study it is assumed that robotic

arms can move only in zb−yb plane, and the robotic arm can be controlled

directly by joint motors. From this description, a rotation matrix ,i+1Ri

and vectors, ipi+1 and si can be calculated, which are used to define the

inertia matrix and spatial transformation matrix. In this study, (3-2-1)

Euler angles are used to compute the rotation matrices, 0RI ,1R0, and

2R1.

0RI =

cθcψ cθsψ −sθ

cψsθsφ− cφsψ cφcψ + sθsφsψ cθsφ

sφsψ + cφcψsθ cφsθsψ − cψsφ cθcφ

(2.13)

14

Page 22: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

1R0 =

cq1 sq1 0

−sq1 cq1 0

0 0 1

0 0 −1

0 1 0

1 0 0

(2.14)

2R1 =

cq2 sq2 0

−sq2 cq2 0

0 0 1

(2.15)

where c and s denote cosine and sine functions, respectively. Coordinate

system 0 is the body coordinate system fixed to the quadrotor, and φ,

θ, ψ are Euler angles of the quadrotor. Note that 0p1 = [0, 0, 0]T , 1p2 =

[L1, 0, 0]T , s0 = [0, 0, 0]T , s1 = [L12 , 0, 0]T , and s2 = [L2

2 , 0, 0]T . To form

the 6×6 inertia matrix, 3×3 moment of inertia matrix and first mass

moment, hi, should be computed. In this study, it is assumed that links

1 and 2 are square beams with relatively small cross-sectional area. To

compute following 3×3 inertia matrices, parallel axis theorem is applied,

because center of mass of the link and the origin of the coordinate system

attached to the link are not coincident.

I0 = Ib (2.16)

I1 =

(m1L

21

12+m1

L21

4

)0 0 0

0 1 0

0 0 1

(2.17)

I2 =

(m2L

22

12+m2

L22

4

)0 0 0

0 1 0

0 0 1

(2.18)

where Ib is quadrotor body inertia matrix. Using Eqs. (2.4), (2.16), (2.17)

and (2.18), inertia matrix can be computed.

15

Page 23: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

2.2.2 Dynamic Modeling

In this section, dynamic model of the quadrotor with a robotic arm is

obtained using the following three steps.

Step 1. Forward Kinematics recursion

The forward kinematics recursion describes the translational and rota-

tional motion of the links. Step 1 computes an angular velocity depen-

dent term, Coriolis effect related term, and centripetal term starting

from the link 0, vehicle body, to the link 2. Joint axis unit vectors are

φ1 = [0, 0, 1, 0, 0, 0]T and φ2 = [0, 0, 1, 0, 0, 0]T , i.e. two revolute joints.

• Link 0

Parameters 0ag and β0 are computed for given 0RI ,w0 and v0 as

0ag =0 RIIag (2.19)

β0 = −

w0 × I0w0

w0 × (w0 × h0)

(2.20)

where Iag = [0, 0,−g]T , the initial condition w0 = Ω is a quadrotor

body angular rate, v0=0RI [x, y, z]

T , and [x, y, z]T is a quadrotor inertial

velocity.

• Link i , for i=1,2

For given iRi−1,i−1pi and qi, following terms are computed.

wivi

= iXi−1

wi−1vi−1

+ φiqi (2.21)

iag = iRi−1i−1ag (2.22)

16

Page 24: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

ζi =

0

iRi−1[wi−1 ×

(wi−1 ×i−1 pi

)]+

iRi−1 (wi × qizi)

0

(2.23)

βi = −

wi × Iiwi

wi × (wi × hi)

(2.24)

where zi is a unit vector pointing along the ith link’s rotation axis rep-

resented in ith coordinate system. Note that ζi is a 6×1 column vector,

and 0 means 3×1 zero vector in Eq.(2.23).

Step 2. Backward Dynamics Recursion

Backward dynamics recursion calculates AB inertias I∗i , bias forces, and

β∗i using joint torque moment from the end effector to the base. In the

recursion process, new parameters, ni,m∗i , and Ni, are presented. The in-

ertia matrix, Ni, is a reflected inertia of link i, which reflects the inertias

of the links i+ 1 through N . Note that all joints are free to move and no

torque/force are applied.

Let us define the concept of AB inertia. Equation (2.29) signifies that

AB inertia of (i − 1)th link can be computed by adding the reflected in-

ertia to the inertia matrix of (i− 1)th link, Ii−1. And m∗i in Eq.(2.26) is

the inertial load by the links i+1 through N , which is felt at the ith joint

motor.[13]

• Link i , for i=2,1

For given τi , β∗2=β2−1X2f2, and I∗2 = I2, following terms are computed

17

Page 25: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

ni = I∗i φi (2.25)

m∗i = φTi Ii∗φi (2.26)

Ni = I∗i − ni (m∗i )−1 nTi (2.27)

τ∗i = φ∗iβ∗i + τi (2.28)

I∗i−1 = Ii−1 +i XTi−1N

iiXi−1 (2.29)

β∗i−1 = βi−1 +i XTi−1

[β∗i −Niζi − ni (m∗i )

−1 τ∗i

](2.30)

where f2 is a tip force.

Step 3. Forward Accelerations Recursion

In this step, the joint torque moment from external input and the effect

from previous links are considered to compute the joint accelerations.

• Link 0

For given f0, spatial accelerations of link 0 is computed as

a′0 = (I∗0 )−1 (f0 + β∗0) (2.31)

a0 = a′0 +

0

0ag

(2.32)

where

f0 =

Mx

My

Mz

0

0

T

Ga(1)

Ga(2)

Ga(3)

0

0

0

(2.33)

18

Page 26: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

• Link i , for i=1,2

For given iXi−1, following terms are computed.

ai = iXi−1a′i−1 + ζi (2.34)

qi = (m∗i )−1 τ∗i −

[ni (m∗i )

−1]Tai (2.35)

a′i = ai + φiqi (2.36)

As mentioned before, f0 is a spatial force generated by the quadrotor

represented in the body fixed coordinate. From the beginning of previous

step, spatial acceleration, a0, of the quadrotor considering the dynamic

effect of a robotic arm is computed. Now, using Eq.(2.3), quadrotor body

rotational acceleration and body translational acceleration are derived.

Therefore, the quadrotor dynamics can be obtained as follows,

Ω

v0

= (I∗0 )−1

Mx

My

Mz

0

0

T

Ga(1)

Ga(2)

Ga(3)

0

0

0

+ β∗0

+

0

0ag

(2.37)

ϕ = Q Ω (2.38)

where ϕ denotes Euler angle and, Q is defined as follows,

Q =

1 sφtθ cφtθ

0 cφ −sφ

0 sφcθ

cφcθ

(2.39)

where t is a tangent function. VectorGa is the gyroscopic torque generated

by rotating body and rotors, which can be expressed as follows,

Ga =

4∑i=1

Ir (Ω× ez) (−1)i+1 ωi (2.40)

19

Page 27: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

where ωi is the rotor angular rate, and ez = [0, 0, 1]T .

Finally, the quadrotor body moment and thrust can be computed

using rotor angular rate as

T =

4∑i=1

bω2i (2.41)

Mx = db(ω24 − ω2

2) (2.42)

My = db(ω23 − ω2

1) (2.43)

Mz = Kd(ω21 − ω2

2 + ω23 − ω2

4) (2.44)

where d denotes the distance from the quadrotor center of mass to the

rotors, b and Kd are positive parameters dependent on rotor blade’s size

and shape, respectively [14]. Note that the dynamics of the robotic arm

can be computed by Eq.(2.35), and joint input torque and quadrotor

acceleration effect are included in robotic arm dynamics.

20

Page 28: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Chapter 3

Controller Design of Quadrotor

with Robotic Arm

In this chapter, two different controllers are designed, one for a quadrotor

and another for a robotic arm. For the design of the quadrotor attitude

tracking, the assumption of the time scale separation is used. Baseline

sliding mode controller computing control input to track the Euler angle

command is designed as two-loop structure. A simple PID controller is

designed to track the joint angle command for the robotic arm.

The quadrotor with a robotic arm can be used to grab the object.

When the mass of the object is unknown, the moment generated by the

robotic arm grabbing the object should be considered as uncertainty to

the quadrotor. Neural network is combined into the baseline sliding mode

controller to compensate for the effect of the uncertainty. The structure

of the controller for the entire system is shown in Fig.3.1.

21

Page 29: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

PIDController

Quadrotor with2-DOF Robotic

Arm

OuterSMC

InnerSMC

NeuralNetwork

Baseline Controller 1

Adaptive Controller

Baseline Controller 2

Figure 3.1: Structure of the whole controller

22

Page 30: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

3.1 Baseline Controller 1 : Quadrotor

Before designing the baseline controller 1, let us consider the quadrotor

dynamics with a robotic arm which is derived in chapter 2. The dynamic

equation can be simplified for the attitude control. That is, in this study,

Ω dynamics for rotational motion in Eq. (2.37) is only needed as

Ω = (I∗0 )−1upper

Mx

My

Mz

0

0

T

Ga(1)

Ga(2)

Ga(3)

0

0

0

+ β∗0

(3.1)

where (I∗0 )−1upper is the 1st, 2nd and 3rd row vectors of the inverse of the AB

inertia matrix, i.e., (I∗0 )−1. Therefore, (I∗0 )−1upper is a 3×6 matrix. Matrix

(I∗0 )−1upper is separated into left 3×3 matrix and right 3×3 matrix to only

consider the moment term. Note that the elements of the right matrix

have relatively small values compared to those of the left matrix. It is

because that the effect of the translational force is smaller than that of

the rotational torque. Therefore, in this study, it is assumed that the

right 3×3 matrix of (I∗0 )−1upper is negligible and the left part is defined as

(I∗0 )−1part. Now, the dynamic equation can be approximated as

Ω = (I∗0 )−1part

Mx

My

Mz

−Ga + β∗part

(3.2)

where β∗part has upper 3 elements of the β∗0 vector. Quadrotor controller

is designed using Eq.(3.2). In this study, the assumption of the time scale

separation between body angular rate and Euler angle of the quadrotor

23

Page 31: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

is applied. Therefore, the quadrotor controller is composed of outer-loop

and inner-loop controllers as shown in in Fig.3.2.

Outer-Loop Controller

c

c

c

(1)

(2)

(3)

c

c

c

x

y

z

M

M

M

Inner-Loop Controller

ControlMixer

ActuatorQuadrotorRobot armDynamics

1

2

3

4

c

c

c

c

1

2

3

4

ManipulatorController

1

2

T

T

Actuator1

2

T

T

Figure 3.2: Structure of the Baseline controller

The reference Euler angle command is given to the outer-loop con-

troller, then the outer-loop controller generates body angular rate com-

mand. Subsequently, body angular rate command is transferred to the

inner-loop controller, which generates moment command to track the

body rate command. The control mixer, Eqs.(2.41)-(2.44), converts the

moment command into the desired rotor angular rate command.

The outer-loop and inner-loop controller are designed by the slid-

ing mode control scheme under the assumption of time scale separation,

utilizing the kinematic equation, Eq.(2.38), and the dynamic equation,

Eq.(3.2) [17]. The objective of the sliding mode controller is to make the

system stay in the specified sliding surface. In other words, sliding mode

control scheme defines the sliding surface σ and generates control input

24

Page 32: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

to make a system be confined in the sliding mode, σ = 0. Therefore, de-

signing appropriate sliding surface is important to perform the mission,

i.e., tracking the command input.

Let us consider a following Lyapunov candidate function.

V1 =1

2σTσ (3.3)

Differentiating the Lyapunov candidate function with respect to time

gives

V1 = σT σ (3.4)

The property that the derivative of Lyapunov candidate function V1 is

negative definite is a sufficient condition for the existence of the sliding

mode. To satisfy this property, following condition is used.

σ = −Kpσ −Kssign(σ) (3.5)

With Eq.(3.5), V1 is negative definite except σ = 0. Additionally, if the

sliding mode, σ = 0, exists in the tracking problem, corresponding error

states should also go to zero.

Let us define a following sliding surface.

σ = e+ λ

∫ t

0edτ (3.6)

where e is the error between current state and command value, i.e., e =

x−xc. When state values of the system are staying in the sliding surface,

σ = 0, then Eq.(3.6) becomes

0 = e+ λ

∫ t

0edτ (3.7)

Differentiating Eq.(3.7) with respect to time yields

e = −λ e (3.8)

25

Page 33: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Equation (3.8) indicates that error state is exponentially stable with con-

vergence rate λ.

To begin with, let us consider an outer-loop controller, which generates

body angular rate command to regularize the following Euler angle error.

e1 =

e11

e12

e13

=

φ

θ

ψ

−φc

θc

ψc

= ϕ− ϕc (3.9)

Let us consider the following sliding surfaces for attitude tracking control.

σ11 = e11 + λ11

∫ t

0e11dτ (3.10)

σ12 = e12 + λ12

∫ t

0e12dτ (3.11)

σ13 = e13 + λ13

∫ t

0e13dτ (3.12)

where λ11,λ12, and λ13 are positive constants, which determine the error

converging rate, and e1 = [e11, e12, e13]T . Using σ1=[σ11 σ12 σ13]

T and

Λ1 = diag[λ11 λ12 λ13], the sliding surface variable σ1 can be represented

as follows,

σ1 = e1 + Λ1

∫ t

0e1 dτ (3.13)

Differentiating Eq.(3.13) with respect to time gives

σ1 = e1 + Λ1 e1 (3.14)

Substituting Eq.(3.9) and (2.38) into Eq.(3.14) yields

σ1 = (ϕ− ϕc) + Λ1e1

= QΩ + (−ϕc + Λ1e1) (3.15)

Substituting Eq.(3.5) into the left hand side of Eq.(3.15) gives a desired

body angular rate command Ωc as

Ωc = Q−1 [ϕc − Λ1e1 −−Kp1σ1 −Ks1sign(σ1)] (3.16)

26

Page 34: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Equation (3.16) is the body angular rate command generated from the

outer-loop controller to track the command euler angle.

Next, an inner-loop controller tracking the desired body angular rate

Ωc is designed. Let us define the body angular rate command error e2 as

e2 =

ep

eq

er

= Ω− Ωc (3.17)

Sliding surfaces for tracking body angular rate are chosen as follows,

σp = ep + λp

∫ t

0epdτ (3.18)

σq = eq + λq

∫ t

0eqdτ (3.19)

σr = er + λr

∫ t

0erdτ (3.20)

Equations (3.18)-(3.20) can be re-written as

σ2 = e2 + Λ2

∫ t

0e2dτ (3.21)

where σ2 = [σp σq σr]T , and Λ2 = diag[λp λq λr]. Taking time derivative

of Eq.(3.21) yields

σ2 = e2 + Λ2e2 (3.22)

Substituting Eqs.(3.2) and (3.17) into Eq.(3.22) yields

σ2 =(

Ω− Ωc

)+ Λ2e2

= (I∗0 )−1part(u−Ga + β∗part

)− Ωc + Λ2e2 (3.23)

To design the controller, following assumptions are needed.

Assumption 1: To design the attitude inner-loop controller, AB iner-

tia matrix (I∗0 )part is approximated as I0, quadrotor body moment inertia.

27

Page 35: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Assumption 2: The gyroscopic effect is negligible. Thus, the gyro-

scopic term is not considered in designing the controller.

Note that Assumption 1 is not restrictive when the robot arm is relatively

light compared to the quadrotor body. And Assumption 2 is reasonable

for the case that quadrotor is operating in the normal range. In this case,

gyroscopic effect is relatively small.

Under the Assumptions 1 and 2, substituting the convergence condi-

tion, Eq.(3.5), into Eq.(3.23) gives moment control input as

u = I0

[Ωc − Λ2e2 −Kp2σ2 −Ks2sign (σ2)

]− β∗part (3.24)

In Eq.(3.24), β∗part can be computed using the information of the quadro-

tor state and robot arm actuator control input. To prove the stability of

the sliding surfaces σ1 and σ2, a following Lyapunov candidate function

is considered.

V2 =1

2σT1 σ1 +

1

2σT2 σ2 > 0 (3.25)

Using Eq.(3.5), the time derivative of V can be expressed as

V2 = σT1 σ1 + σT2 σ2

= −σT1Kp1σ1 − σT1Ks1sign(σ1)

−σT2Kp2σ2 − σT2Ks2sign(σ2) ≤ 0 (3.26)

Time derivative V2 is negative definite except σ1 and σ2 are both zero.

Therefore, outer-loop and inner-loop controllers, Eq.(3.16) and Eq.(3.24),

stabilize the sliding surfaces σ1 and σ2 in the Lyapunov sense. According

to Eqs.(3.7) and (3.8), controllers also stabilize e1 and e2. In conclusion,

two sliding mode controllers tracking the attitude command are designed,

and body angular rate command Ωc and moment input u are generated

by Eqs.(3.16) and (3.24).

28

Page 36: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

3.2 Baseline Controller 2 : Robot Arm

Joint acceleration is acquired by the Step 3, forward acceleration recur-

sion, in the previous chapter. As shown in Eq.(2.35), the robot arm dy-

namics is complex to be incorporated in the controller. Therefore, in this

study, a following robotic arm dynamics is used. [15]

H(q)q + C(q, q)q + g(q) = τ (3.27)

where q = [q1, q2]T , H(q) is a 2×2 positive definite moment of inertia,

C(q, q) is a 2×2 matrix specifying centrifugal and coriolis effects, g(q) is

a 2×1 vector due to gravity, and τ is a 2×1 vector of torques of each joint

actuator. It is assumed that following properties are satisfied.

a1I ≤ H(x) ≤(a2 + c2 ‖x‖+ d2 ‖x‖2

)I (3.28)

‖C(x, y)z‖ ≤ (c1 + d1 ‖x‖) ‖y‖ ‖z‖ (3.29)

‖g(x)− g(y)‖ ≤ α ‖x− y‖ (3.30)∥∥∥∥g(x)− g(y)− ∂g(y)

∂y

∥∥∥∥ ≤ α2 ‖x− y‖2 (3.31)

The classical PID control law can be expressed as follows,

uarm = −Kpq −Kd˙q −Ki

∫ t

0qdτ + ζ0 (3.32)

where q = q−qc, qc is a joint angle command, ζ0 is a constant vector, and

Kp, Kd and Ki are the proportional, differential and integral gains of the

PID controller, which are positive definite diagonal matrices. Trajectory

of the robot arm joint, qc, is assumed to be twice differentiable. Let us

define the state X as

X =

˙q

q∫ t

0q(τ)dτ +K−1i (g(qc(t))− ζ0)

(3.33)

29

Page 37: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

The state X is uniformly ultimately bounded when the following condi-

tions of the PID gains are satisfied.

Kd > ε‖q‖

‖q − qc‖max‖q‖≤R

H(q) + (c1 + d1 ‖q‖) ‖q − qc‖ I

εK′p ≡ ε (Kp − αI) > Ki Ki > 0 (3.34)

where ε is a positive constant, and c1, d1 and α are parameters in Eqs.(3.29)

and (3.30). Detailed proof can be found in [15]. The conditions on PID

gains allow the robot arm to follow the given joint angle command.

3.3 Adaptive Controller using NN

The dynamic model of the entire system is derived in Chap.2. In the dy-

namic model, there exists a moment term, β∗part, which is created by a

robotic arm. The moment term can be computed analytically by using

quadrotor state, robotic arm joint angle, and joint torque information,

with the assumption of little uncertainty. In [4], it was shown that un-

known payload can degrade the performance of the controller. Usually,

the quadrotor with a robotic arm is used in delivery mission, and the mass

and size of object are different according to the mission. Because of these

unknown properties of the object, β∗part cannot be computed exactly. A

moment uncertainty term caused by unknown payload is added to β∗part

to include the effects of the uncertainty in the model. In this study, NN

adaptive controller is used to compensate the effect of the uncertainty.

To consider the moment uncertainty term in β∗part, true moment gen-

erated from the robot arm is expressed as follows,

βtrue = β∗part + ∆ (3.35)

where the uncertainty, ∆, is added to β∗part, which is the moment trans-

ferred from the robot arm to the quadrotor. It is assumed that ∆ is a

30

Page 38: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

low frequency uncertainty, because uncertainty effect is caused by the un-

known payload. Then, the quadrotor rotational dynamics can be written

as

Ω = (I∗0 )−1part

Mx

My

Mz

−Ga + βtrue

(3.36)

If the quadrotor controller input u in Eq.(3.24) is applied to the uncer-

tainty model in Eq.(3.36), Eq.(3.26) can be modified as

V2 = −σT1Kp1σ1 − σT1Ks1sign(σ1)

−σT2Kp2σ2 − σT2Ks2sign(σ2) + σT2 I0−1

∆ (3.37)

Compared to Eq.(3.26), Eq.(3.37) has additional term σT2 I0−1

∆. There-

fore, V2 may not be negative semi-definite any more due to the additional

term. To resolve the problem of the low frequency uncertainty term, ∆,

NN with a three layer structure as shown in Fig. 3.3 is considered in this

study [16]. The neural network consists of 6 nodes in the input layer and

3 nodes in the hidden layer. The dimension of the output vector, ynn, is

3, because NN approximates the three dimensional moment uncertainty,

and input vector is defined as xnn = [Ω,Ωc]T .

A following sigmoid function is used as a NN activation function.

A(x) =1

(1 + e−x)(3.38)

NN output is expressed as follows,

ynn = W TA(V TXnn

)(3.39)

where W and V are matrices of adjustable weight values of NN, bold text

means a vector, and A(x) and Xnn are defined as

A(x) = [1, A(x1), A(x2), A(xend)]T

Xnn = [1, xnn]T (3.40)

31

Page 39: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Activation

function

nnx

nny

( )A x

1

( )A x

( )A x

( )A x

1

Figure 3.3: Structure of neural networks

Based on the universal approximation property of the multi layer neu-

ral network, the ideal weight parameters W and V exist. The moment

uncertainty can be approximated as follows,

∆ = W TA(V TXnn

)+ ε(Xnn) (3.41)

where ε(Xnn) is a reconstructional error related to the NN structure, and

ε(Xnn) ≤ εM bounded.

Let us consider following assumptions to design the NN controller.

Assumption 3. The residual term w designed in Eq.(3.49) is ignored

when considering the neural network output error.

Assumption 4. The ideal NN weights are bounded by some positive

32

Page 40: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

parameters as

‖W‖F ≤WM , ‖V ‖F ≤ VM (3.42)

where WM and VM are known positive parameters, and ‖‖ denotes the

Frobenius norm of a matrix.

Following theorem promotes a NN controller.

Theorem1. The control input uNN is provided by the following ex-

pression.

uNN = u− W TA(V TXnn

)(3.43)

where W and V are the estimates of the parameter matrices, and u is a

quadrotor nominal attitude controller input, Eq.(3.24). The adaptive law

for the neural network weight matrices is given by

˙W = γw

[A(V TXnn

)σT2 I0

−1 − A(V TXnn)V TXnnσT2 I0−1]

+ κγwW

˙V = γvXnn

[A(V TXnn)T W I0

−Tσ2

]T− κγvV (3.44)

where γw, γv and κ are positive adaptive gains, and a matrix A is defined

as follows,

A(x) =dA

dx

x=x

(3.45)

Then, the state errors e1 and e2 in Eqs.(3.9) and (3.17) and the weight

matrix estimation errors W and V are uniformly ultimately bounded.

Additionally, the state errors and weight matrix estimation errors can be

made arbitrarily small by adjusting the parameters γw, γv, κ, Kp1 and

Kp2 under the Assumptions 1− 4.

Proof) Let us consider a following Lyapunov candidate function.

V3 =1

2σT1 σ1 +

1

2σT2 σ2 +

1

2γwtr[W T W

]+

1

2γvtr[V T V

](3.46)

33

Page 41: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

where W = W − W , and V = V − V . Time derivative of Lyapunov

function gives

V3 = −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

+σT2 I0−1(

∆− W TA(V TXnn)− ε(Xnn))

+1

γwtr[W T ˙W

]+

1

γvtr[V T ˙V

](3.47)

NN output error can be represented using Taylor series expansion [16] as

∆− W TA(V TXnn)− ε(Xnn) = W T A(V TXnn)V TXnn + w

+W T[A(V TXnn

)− A(V TXnn)V TXnn

](3.48)

where w is given by

w(t) = W T (O(V TXnn

)+ W T A

(V TXnn

)V Xnn (3.49)

Note that O(V TXnn

)is high order terms caused by Taylor series expan-

sion, and w is bounded by∥∥∥W∥∥∥

F,∥∥∥V ∥∥∥

F, and ‖Xnn‖ [16].

Substituting Eq.(3.44) and Eq.(3.48) into Eq.(3.47) under theAssumption 3

gives

V3 = −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

+σT2 I0−1(W T

[σ(V Txnn

)− σ(V Txnn)V Txnn

]− W T σ(V Txnn)V Txnn

)−tr

[W T

[σ(V Txnn)σT2 I0

−1 − σ(V Txnn)V TxnnσT2 I0−1]− κW T W

]−tr

[V T[σ(V Txnn)T W I0

−Tσ2

]T− κV T V

](3.50)

Utilizing the property tr[yxT ] = xT y, the expression in Eq.(3.50) can be

simplified as

V3 = −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

κ tr[W T W ] + κ tr[V T V ] (3.51)

34

Page 42: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Using the property tr[XT X] = tr[XTX]− tr[XT X] ≤∥∥∥X∥∥∥

F‖X‖F −∥∥∥X∥∥∥2

Funder Assumption 4 gives

V3 ≤ −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

κ

(∥∥∥W∥∥∥F‖W‖F −

∥∥∥W∥∥∥2F

)+ κ

(∥∥∥V ∥∥∥F‖V ‖F −

∥∥∥V ∥∥∥2F

)= −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

−κ2

(∥∥∥W∥∥∥F−WM

)2− κ

2

∥∥∥W∥∥∥2F

2W 2M

−κ2

(∥∥∥V ∥∥∥F− VM

)2− κ

2

∥∥∥V ∥∥∥2F

2V 2M

≤ −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

−κ2

∥∥∥W∥∥∥2F

2W 2M −

κ

2

∥∥∥V ∥∥∥2F

2V 2M (3.52)

Let c1 ≡ κ2 (W 2

M + V 2M ), then we have

V3 ≤ −σT1Kp1σ1 − σT1Ks1sign(σ1)− σT2Kp2σ2 − σT2Ks2sign(σ2)

−κ2

∥∥∥W∥∥∥2F− κ

2

∥∥∥V ∥∥∥2F

+ c1 (3.53)

Let us take µ as a constant satisfying the following inequality.

0 < µ ≤ min(Kp1,Kp2,

κγw2,κγv2

)(3.54)

Then, Eq.(3.53) can be written as follows,

V3 ≤ −2µV3 + c1 (3.55)

In Eq.(3.55), V3 < 0 if V3 >c12µ , which indicates that sliding surfaces,

σ1 and σ2, and parameter estimation errors, W and V , are bounded and

exponentially converge to the following residual set D.

D =

σ1, σ2, W , V

‖σ1‖2+‖σ2‖2+1

γw

∥∥∥W∥∥∥2F

+1

γv

∥∥∥V ∥∥∥2F≤ c1µ

(3.56)

Also, the state errors are bounded because sliding surfaces, σ1, σ2, are

bounded, which completes the proof.

35

Page 43: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 3.4 shows the structure of the adaptive NN controller.

Outer-Loop Controller

Inner-Loop Controller

ControlMixer

ActuatorQuadrotorRobot armDynamics

ManipulatorController

Actuator

( )A x

1

( )A x

( )A x

( )A x

1

Figure 3.4: Structure of adaptive controller

36

Page 44: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Chapter 4

Numerical Simulation

Numerical simulation is performed to demonstrate the performance of the

proposed adaptive neural network controller. When unknown payload is

not considered, a baseline controller is used for tracking the Euler angle

command of the quadrotor and joint angle command of the robot arm. If

there exists an unknown payload grabbed by the robot arm, then adaptive

neural network controller is used to deal with the uncertainty caused by

the payload. Three simulation cases using different Euler angle command

are considered for the baseline controller, and four cases using different

Euler angle command are considered for the adaptive neural network

controller.

4.1 Simulation Environment

In the simulation, the sign function in the input, Eq.(3.16) and (3.24), is

replaced by atan function to reduce the chattering effect. The actuator

dynamics of the quadrotor is considered as

ω = −kiIrω (4.1)

where Ir is a rotor inertia moment, ω = ω − ωc, and ki is a positive con-

stant. The actuator of robot arm directly exerts the moment to the joint,

and the following 2nd order delay is considered as actuator dynamics.

M

Mc=

ω2n

s2 + 2ζωn + ω2n

(4.2)

37

Page 45: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Table 4.1: Actuator dynamics parameters

ki ωn(rad) ζ

0.001 150 1

Table 4.2: Quadrotor parameters

Parameter Value

mb 4.34kg

Ib diag[0.0820, 0.0845, 0.1377] kg· m2

Ir 40.887e−6 kg· m2

b 1.2953e−5

d 0.315m

Kd 1.0368e−7

g 9.81m/s2

Table 4.3: Robot arm parameters

Parameter m1 m2 L1 L2

Value 0.1kg 0.1kg 0.5m 0.5m

The parameters of the actuator dynamics are given in Table 4.1.

Quadrotor model in [14] is adopted in this study, and the model pa-

rameters are summarized in Table 4.2. The robot arm parameters are

also summarized in Table 4.3. Based on the model parameters, numer-

ical simulation is performed with zero initial values; i.e., Euler angles,

φ = θ = ψ = 0, and the joint angle, q1 = q2 = 0.

38

Page 46: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

The following three different Euler angle commands are considered.

ϕ1 = [6 sin(t), 6 cos(t), 6 sin(t)]T

ϕ2 = [6, 6, 0]T for 8sec

= [−6,−6, 0]T for 8sec (4.3)

ϕ3 = [10, 10, 0]T

Also, the following trigonometrical functions are considered as the low

frequency moment uncertainty.

∆1 = [0.3 cos(t),−0.2 sin(t

2), 0.05 sin(

t

3)]T

∆2 = [sin(t), 0, 0]T (4.4)

First moment uncertainty mimics the effects of an unknown payload while

the quadrotor is under the attitude control. Second uncertainty represents

the effects of the robot arm extended far away from the quadrotor’s center

of mass with the payload. Gains of the baseline controller are chosen as

Λ1 = diag[20, 5, 8]

Kp1 = diag[1, 1, 0.1]

Ks1 = diag[5, 5, 0.1]

Λ2 = diag[0.5, 0.1, 0.5]

Kp2 = diag[1, 1, 0.1]

Ks2 = diag[1, 1, 0.1] (4.5)

Kp = diag[0.4, 0.5]

Ki = diag[2, 1.8]

Kd = diag[0.3, 0.1]

ζ0 = [0, 0]T

39

Page 47: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Simulation cases for baseline controller and adaptive controller are sum-

marized in Tables 4.4 and 4.5. The neural network adaptive gains γv and

γw are set differently in each case, which are summarized in Table 4.6.

Table 4.4: Numerical simulation cases of baseline controller

Case Euler angle command

Case 1 ϕ1

Case 2 ϕ2

Case 3 ϕ3

Table 4.5: Numerical simulation cases of adaptive controller

Case Euler angle command Moment uncertainty

Case 4 ϕ1 ∆2

Case 5 ϕ1 ∆1

Case 6 ϕ2 ∆1

Case 7 ϕ3 ∆1

Table 4.6: Neural network adaptive gains

Parameter Case 4 Case 5 Case 6 Case 7

γw 0.08 0.05 0.07 0.2

γv 0.08 0.05 0.07 0.2

40

Page 48: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

4.2 Simulation Results

4.2.1 Numerical Simulation of baseline controller

In this section, only the baseline controller is used for the attitude con-

trol of quadrotor with robot arm. Figures 4.1, 4.2 show the Euler angle

and joint angle responses of the Case 1. Euler angles track the command

values successfully, and joint angles track the command values well. Note

that little time delay is shown in tracking the joint angle command. Fig-

ures 4.3 and 4.4 show the Euler angle and joint angle responses of the

Case 2. In case 2, input is a square wave, and it is hard to track the

command rapidly for the quadrotor. Therefore, 1st order command filter

is introduced for the smooth input. Simulation results of the Case 3 are

shown in Figs. 4.5 and 4.6. In summary, the baseline controller makes

the Euler angles and joint angles track the commands satisfactorily when

little uncertainty exists. Table 4.7 summarizes the root mean square error

for Euler angle tracking using the baseline controller. In Case 2 and Case

3, erms is relatively larger than Case 1 due to 1st order command filter.

Table 4.7: Rms error for euler angle tracking with little uncertainty

Case 1 Case 2 Case 3

erms(deg) 0.7907 4.2580 1.4980

41

Page 49: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 4.1: Euler angle responses (Case 1)

Figure 4.2: Joint angle responses (Case 1)

42

Page 50: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 4.3: Euler angle responses (Case 2)

Figure 4.4: Joint angle responses (Case 2)

43

Page 51: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 4.5: Euler angle responses (Case 3)

Figure 4.6: Joint angle responses (Case 3)

44

Page 52: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

4.2.2 Numerical Simulation of adaptive NN controller

Figures 4.7-4.12 show the simulation results using adaptive NN controller.

In the figure, blue dashed dotted line shows the results of baseline con-

troller, and the orange line shows the result of adaptive controller with

neural network, while the black dashed line is the command value.

Figure 4.7 shows the Euler angle response, and Fig.4.8 shows the joint

angle responses of Case 4. In Fig.4.7, baseline controller cannot prop-

erly track the roll angle command because of strong moment uncertainty

on x-axis. However, adaptive controller makes the roll angle follow the

command value except at the initial transient period because of neural

network adaptation. Figure 4.8 shows that both controllers can make the

joint angle of the robot arm follow the command values.

Figure 4.9 shows the results of Case 5. As compared to Case 4, the

moment uncertainty exists on all axes. As shown in Fig. 4.9, baseline con-

troller cannot track the command value. Thanks to neural network, the

adaptive controller can make the attitude follow the command value suc-

cessfully except at the initial transient period. The joint angle responses

are almost same as those of Case 4, because joint angle controller is sep-

arately designed from the attitude controller of the quadrotor.

Figure 4.11 shows the results of Case 6. Baseline controller cannot

properly track the command value, and the result shows that the Eu-

ler angle responses fluctuate around the command values. However, the

adaptive controller makes the quadrotor attitude follow the command

values with acceptable errors.

Figure 4.12 shows the results of Case 7. In this case, the command

value is constant, and the baseline controller cannot track the command

value because of the moment uncertainty. As shown in Figs. 4.12, the

Euler angles are oscillating. With the adaptive controller, however, the

45

Page 53: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

constant Euler angle values are maintained despite the moment uncer-

tainty.

In conclusion, the adaptive controller with neural network accom-

plishes attitude tracking of the quadrotor under the moment uncertainty

due to unknown payload. Table 4.8 summarizes the erms of baseline and

adaptive controller. In Cases 4-7, the root mean square errors of the base-

line controller are larger than those of the baseline controller in Case 1-3

due to moment uncertainty on quadrotor. When adaptive NN controller

is used, the erms is decreased comparing to using baseline controller.

Table 4.8: The performance comparison with moment uncertainty

erms(deg)

Case Baseline Adaptive

Case4 3.3648 0.8721

Case5 2.0551 0.8149

Case6 5.1627 4.0739

Case7 2.7159 1.6394

46

Page 54: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 4.7: Euler angle responses (Case 4)

Figure 4.8: Joint angle responses (Case 4)

47

Page 55: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 4.9: Euler angle responses (Case 5)

Figure 4.10: Joint angle responses (Case 5)

48

Page 56: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Figure 4.11: Euler angle responses (Case 6)

Figure 4.12: Euler angle responses (Case 7)

49

Page 57: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

Chapter 5

Conclusions

In this study, an adaptive neural network controller was designed for atti-

tude tracking of a quadrotor with robot arm. Previous research has dealt

with a quadrotor with robot arm systems by considering the uncertainty

due to unknown masses as an integrated manner, and moment generated

by the robot arm was not considered explicitly.

A baseline controller was designed for the quadrotor with robotic

arm system. Without payload, the effect of uncertainty generated by the

robotic arm to the quadrotor is not significant, and the baseline controller

can make the quadrotor attitude track the command value successfully.

However, with unknown payload, the moment generated by the robotic

arm significantly degrades the performance of the quadrotor attitude sta-

bilization. In this study, uncertainty caused by the robotic arm holding an

unknown payload was compensated by an adaptive neural network con-

troller. Numerical simulation results show the performance of the baseline

controller with little uncertainty as well as the adaptive neural network

controller for the quadrotor system with large moment uncertainty.

The proposed controller can be applied to quadrotor attitude con-

trol while holding an object. Further research is required regarding flight

testing considering practical missions, including guidance and control of

the quadrotor with robotic arm system. The proposed adaptive neural

network controller should also be applied for systems with more practical

uncertainty models.

50

Page 58: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

References

[1] C. M. Korpela, T. W. Danko, and P. Y. Oh, “MM-UAV: Mobile

Manipulating Unmanned Aerial Vehicle,” Journal of Intelligent and

Robotic Systems, Vol. 65, No. 1, 2012, pp. 93-101.

[2] V. Lippiello, and F. Ruggiero, “Cartesian Impedance Control of a

UAV with a Robotic Arm,” International IFAC Symposium on Robot

Control, Dubrovnik, Croatia, Sep. 2012.

[3] G. Arleo, F. Caccavale, G. Muscio, and F. Pierri, “Control of Quadro-

tor Aerial Vehicles Equipped with a Robotic Arm,” Mediterranean

Conference on Control and Automation, Crete, Greece, June. 2013.

[4] S. Kim, S. Choi, and H. J. Kim, “Aerial Manipulation Using a

Quadrotor with a Two DOF Robotic Arm,” IEEE/RSJ Interna-

tional Conference on Intelligent Robots and Systems (IROS), Tokyo,

Japan, Nov. 2013.

[5] G. Heredia, A. E. Jimenez-Cano, I. Sanchez, D.Llorente, and

V. Vega, “Control of a Multirotor Outdoor Aerial Manipulator,”

IEEE/RSJ International Conference on Intelligent Robots and Sys-

tems, Chicago, IL, Sep. 2014.

[6] H. Yang, and D. Lee, “Dynamics and Control of Quadrotor with

Robotic Manipulator,” International Conference on Robotics and

Automation, Hong Kong, China, June. 2014.

[7] M. Orsag, C. M. Korpela, S. Bogdan, and P. Y. Oh, “Hybrid Adap-

tive Control for Aerial Manipulation,” Journal of Intelligent and

Robotic Systems, Vol. 73, No. 1, 2014, pp. 693-707.

51

Page 59: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

[8] A. E. Jimenez-Cano, J. Martin, G. Heredia, and A. Ollero, “Con-

trol of an Aerial Robot with Multi-link Arm for Assembly Tasks,”

International Conference on Robotics and Automation, Karlsruhe,

Germany, May. 2013.

[9] S. Mcmillan, D. E. Orin, and R. B. Mcghee, “Efficient Dynamic

Simulation of an Underwater Vehicle with a Robotic Manipulator,”

IEEE Transactions on Systems, Man, and Cybernetics, Vol. 25, No.

8, 1995, pp. 1194-1206.

[10] H. Lee, S. Kim, and H. J. Kim, “Control of an Aerial Manipula-

tor using On-line Parameter Estimator for and Unknown Payload,”

International Conference on Automation Science and Engineering,

Gothenburg, Sweden, Aug. 2015.

[11] H. Lee, and H. J. Kim, “Estimation, Control, and Planning for Au-

tonomous Aerial Transportation,” IEEE Transactions on Industrial

Electronics, Vol. 64, No. 4, 2017, pp. 3369-3379.

[12] J. J. Craig, Introduction to Robotics: Mechanics and Control, 4th

edition, Pearson, Cambridge. UK. 2016.

[13] S. Mcmillan, Computational Dynamics for Robotic System on land

and under Water, Ph.D Dissertation, Department of Electrical En-

gineering, The Ohio State University, Columbus, OH, March 1994.

[14] P. Pounds, R. Mahony, and P. Corke, “Modeling and Control of a

Large Quadrotor Robot,” Control Engineering Practice, Vol. 18, No.

7, 2010, pp. 691-699.

[15] A. A. Pervozvanski, and L. B. Freidovich, “Robust Stabilization of

Robotic Manipulators by PID Controllers,” Dynamics and Control,

Vol. 9, No. 3, 1999, pp. 203-222.

52

Page 60: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

[16] T. Lee, and Y. Kim, “Nonlinear Adaptive Flight Control Using Back-

stepping and Neural Networks Controller,” Journal of Guidance,

Control and Dynamics, Vol. 24, No. 4, 2001, pp. 675-682.

[17] Y. Lee, and Y. Kim, “Sliding Mode Based Missile-Integrated At-

titude Control Schemes Considering Velocity Change,” Journal of

Guidance, Control and Dynamics, Vol. 39, No. 3, 2016, pp. 423-436.

53

Page 61: 저작자표시 비영리 공연 및 방송할 수 있습니다s-space.snu.ac.kr/bitstream/10371/137332/1/000000145701.pdf · uncertainty, adaptive neural network controller is designed.

요 약 (국문초록)

로봇 팔이 장착된 쿼드로터로 복잡한 임무를 수행하는 연구들이 활발하게

수행되고 있다. 쿼드로터에 장착된 로봇 팔은 주어진 임무를 수행하는 과

정에서 쿼드로터에 외란으로 작용하고, 이러한 외란의 영향은 쿼드로터가

임무 비행중에 안정적으로 궤적을 추종하거나 정지상태를 유지하는 것을

방해할 수 있다. 따라서 외란에도 불구하고 쿼드로터가 정밀한 자세제어를

수행 할 수 있도록 강건한 제어기 설계가 요구된다.

본 논문에서는 로봇 팔이 장착된 쿼드로터의 자세제어기 설계에 관한

연구를 수행하였다. 물체를 잡지 않았을 때의 쿼드로터 로봇팔 시스템을

제어하기 위해 기준 제어기를 구성하였다. 쿼드로터 자세제어기는 슬라이

딩 모드 제어기법을 이용하여 강건 제어기를 설계하였고, 로봇 팔 제어기는

PID 제어기로 설계하였다. 물체를 잡았을 때 로봇 팔에 의해서 생기는 불확

실성 영향을 고려하기 위해 불확실성 모델을 고려하였다. 로봇팔이 물체를

잡았을때생기는불확실성을보상하고쿼드로터자세제어를수행하기위해

인공신경망을 활용한 적응제어기를 설계하였다. 제안된 기법의 성능을 검

증하기 위하여 수치 시뮬레이션을 수행하였다. 시뮬레이션 결과 로봇 팔이

임무를 수행하기 위해 다양한 임무명령이 인가되어도 쿼드로터의 자세가

안정하게 유지됨을 보였다.

주요어 : 물체, 적응 제어기, 인공신경망, 쿼드로터 로봇팔 시스템

학번: 2015-22728

54