• 沒有找到結果。

Chapter 1 Introduction

1.2 Content Organization…

This thesis is organized into six chapters. Chapter 1 gives an introduction.

Chapter 2 describes the FEM model of the flexible arm. Chapter 3 presents the scheme and theorem of sliding mode controller. The control purpose in this thesis is to regulate the hub angle of the flexible arm with vibration suppressed. Chapter 4 simulates the flexible arm control in Matlab and then Chapter 5 fulfills the experiment.

Finally, concluding remarks are stated in Chapter 6.

Chapter 2

System Modeling of a Flexible Arm

Although there are some documents using system identification method to identify the flexible arm model [19], the derived mathematical model is used in this thesis because of its accuracy of physical meaning to describe the nonlinear model.

2.1 Introduction

Mathematical model derivation of flexible arm is generally concluded into two methods. One is using Assumed Mode Method (AMM), and the other is using Finite Element Method (FEM). In Assumed Mode Method, the vibration modes in flexible arm are considered as shape functions, and the amplitude of these modes are state variables. The shape function of AMM is more complicated and could not be used for different complex geometry shape system. It means that different plant needs different shape function. FEM divides the flexible arm into several elements, and the shape function of each one is the same. The shape functions are simple polynomial equations and do not change when different complex geometry shape flexible arm is applied. The state variables of FEM model are deformations of all elements which are

easier to get from the strain gauge feedbacks. The FEM-based flexible arm model is derived as follows.

A clamped-free single flexible arm is generally modeled by a partial differential equation [9], expressed as

t p ρ w x

EI w

x 2

2 =

∂ + ∂

⎟⎟⎠

⎜⎜ ⎞

2 2 2

2

(2.1.1) where

E : Young’s modulus of elasticity.

I : area moment of inertia of the arm’s cross section.

w : transverse displacement (deformation).

ρ: mass per unit length.

p : external force per unit length.

There is no exact solution for (2.1.1). Instead, an approximate approach using polynomials is adopted to solve the partial differential equation. A more correct solution will be obtained when higher order polynomials are used. FEM is employed to derive the single flexible arm model in this paper.

2.2 FEM-Based Model description

The flexible arm is a one-meter stainless steel ruler shown in Fig. 2.2.1. The left-hand side of the arm is clamped on the motor joint and the right-hand side is free.

Consider vibration and rotation in horizontal direction and neglect shear deformation, as in the Euler-Bernoulli beam shown in Fig. 2.2.1. The motor rotational angleθ( )t

and deformation, transverse displacement, w , are expressed in the fixed X-Y ( )x t

coordinate system and reference x-y coordinate system, respectively. To model the FEM structure, it is required that the transverse displacement w , be small, less ( )x t

than one tenth of the full arm length.

y Y

w(x,t) x

( )

t

θ X

Fig. 2.2.1 The flexible arm structure

The flexible arm dynamic equation is generally derived by Hamilton’s principle described as

( ) 2 0

1 2

1

= +

tt nc t

t δ T V dt δW dt (2.2.1)

where

T : system kinetic energy V : system potential energy

Wnc

δ : virtual work by non-conservative forces

The system kinetic energy is composed of rotational and moving energies, written as

( ) +

( )

= L

0

2 2

h ρv x,t dx

2 t 1 θ 2J

T 1 & (2.2.2)

where Jh is the rotational inertia of the hub, and

v=v( ) ( ) (x,t =w& x,t + x+r) ( )θ&t

represents flexible arm velocity.

Because the flexible arm rotates on the horizontal plane, the gravity potential energy is neglected, and total system potential energy only contains strain energy, expressed by

⎜⎜ ⎟⎟

Virtual work δWnc done by non-conservative force is described as

( )t u Wnc δθ

δ = 1 (2.2.4)

where u1 is the motor torque applied to the system. Substituting T, V and δWnc into (2.2.1) yields

( )

and rearrange (2.2.5) as

( )

where is the deformation that refers to the rotational reference coordinate system x-y and is described by FEM. Since and Based on FEM, the flexible arm consists of many linear piecewise arm elements, each

with four degrees of freedom (DOF). The deformation w , of the j-th element is ( )x t

written as

( ) 4

( )

( ) 1

where v1j(t) and v2 j(t) (v3j(t) and v4j(t)) represent the transverse deflection and rotation at node j (j+1) as depicted in Fig. 2.2.2, and φi( )x means the shape functions [6]. To solve the shape functions φi( )x , i=1,2,3,4, the following boundary conditions must be satisfied

Fig. 2.2.2 Four degrees of freedom of an element

Substituting (2.2.11) into (2.2.10) yields

( )

0 =1

φ1 , φ&1

( )

0 =φ1

( )

h =φ&1

( )

h =0

2

( )

0 =1

φ& , φ2

( )

0 =φ2

( )

h =φ&2

( )

h =0

( )

1

3 h =

φ , φ3

( )

0 =φ&3

( )

0 =φ&3

( )

h =0

( )

h =1

φ&4 , φ4

( )

0 =φ&4

( )

0 =φ4

( )

h =0 (2.2.12)

where h is the length of the flexible arm. Since there are four boundary conditions per interpolation function, the simplest functions we can select are linear polynomials of the form

( )x =C +C x+C x2+C x3

φ , i = 1, 2, 3, 4 (2.2.13)

Substitute (2.2.12) into (2.2.13) to solve the four shape functions, which are obtained

where x is the distance to the base.

Fig. 2.2.3 Shape functions

Calculate the second partial derivative of w , to time and the second partial ( )x t

derivative of w ,(x t) to x, then

( )

∑ [

( )

]

( )

Substituting (2.2.15) and (2.2.16) into (2.2.8) and (2.2.9) and integrating spatial domains leads to the global mass and stiffness matrices (the local mass and stiffness matrices are showed in Appendix A). The assembled set of matrix differential

equations is as follows [1, 2, 14, 18]:

N is the number of elements,

⎥⎦

represents the state variables,

⎥⎦

represents the mass matrix for the FEM-based model.

⎥⎦

K 0 represents the stiffness matrix for the FEM-based model.

where

⎥⎥

Finally, the tip position defined as [8]

( )

x t L

( ) (

t w x t t , = θ + ,

)

is also an important index in this thesis.

2.3 Nature frequencies of the flexible arm

To determine the nature frequencies of the flexible arm described in (2.2.17), the inertial matrix M is often changed into MU by neglecting the coupling elements between hub coordinate θ and flexible coordinates such that the dynamic equation becomes as

(2.3.1) u

K

MU x&&+ x=bN

where denotes the uncoupled inertial matrix. Hence, (2.3.1)

can be further decomposed into the following equations

⎥⎦

Furthermore, the matrices MVV and KVV are symmetric and positive-definite.

N

(2.3.4), rewrite (2.3.3) into

Which implies KVN is symmetric and positive definite, same as KVV. Hence, it can be written as

(2.3.7) ΩP

P KVN = T

where P is the orthogonal matrix and is the diagonal matrix. Substituting (2.3.7) into (2.3.5) yields

Define a new modified state vector

, (2.3.9)

PNv y =

where y is the vetor of model coordinates. The transformed equation of motion (2.3.3) becomes

1

2.4 Parameter Identification

In order to test and validate the controller designed in this thesis, an experimental setup, which is shown in Fig. 2.4.1, was developed.

Fig. 2.4.1 Experimental plant

The main characteristics of the prototype of Fig. 2.4.1 are shown in Table 2.4.1.

Table 2.4.1: Physical parameters of the system

Arm length l 0.94[m]

Arm width 0.031[m]

Arm thick 0.0015[m]

Arm mass m 0.3706[kg]

Flexible arm mass per unit length ρ 0.3554[kg/m]

Young’s modulus E 2.08×1011[Nt/m2] Cross-section inertia momentum I 8.718×10-12[m4] Hub rotary inertia Jh 1.12×10-4[kg m2]

Hub radius r 0.0265[m]

In Section 2.3, the nature frequencies of the flexible arm, shown in (2.3.12), are derived for its uncoupled model. The Young’s modulus E could be determined from the expression of nature frequencies of the uncoupled model (shown in Appendix B) [17], which is constructed with the flexible arm fixed in the hub. To attain the nature frequencies, an impulse force is generally required as the excitation source. In this experiment, the impulse force is created by a hammer knocking near the root of the flexible arm. After a knock, the strain gage feedback signal of the uncoupled flexible arm is recorded. In order to get the nature frequencies of the uncoupled flexible arm, a Fast Fourier transform (FFT) is performed for the signal to get the primary nature frequencies which results in high amplitude response at the frequencies. For the precise position of the nature frequencies, it is necessary to obtain many samples from many experiments. Using the precise nature frequencies position, the Young’s

modulus E is derived in Appendix B. Since the Young’s modulus E is acquired, the precise nature frequencies of the coupled model can be derived in the same way like the derivation of section 2.3. The difference of the coupled model and the uncoupled model is that the latter is neglecting the coupling elements between hub coordinate θ and flexible coordinates. Because the controller is designed for the flexible arm FEM model, it is important to make sure the accuracy of the FEM model. It is a good way to check the accuracy of the FEM model by checking the nature frequencies of the derived FEM model is the same as the experiment flexible arm. So, let the flexible arm free with the hub and give a knock to the arm, the nature frequency response of the coupled model is obtained by performing FFT to the strain gages feedback signal.

Finally, compare the nature frequencies of the coupled experimental model with the derived model, the result, Table 2.4.2, shows that they were remarkably close to each other, and it means that the finite-element-method is valid to describe the flexible arm [9].

Table 2.4.2: Nature frequencies (Hz) of coupled and uncoupled models Coupled Model Uncoupled model

Fig. 2.4.2 shows the frequency response of coupled model and uncoupled model.

Fig. 2.4.2 (a) Coupled model frequency response

FEMb FEM

Expa Nature

freq.

Exp

N=2 N=10 N=40 N=2 N=10 N=40

f1 5.9 5.9404 5.9057 5.9056 1.5 1.4313 1.4306 1.4306 f2 18.8 20.474 18.918 18.916 8.9 9.0416 8.9658 8.9655

a Exp means the experimental nature frequencies

b N means that there are N-elements used in FEM

Fig. 2.4.2 (b) Uncoupled model frequency response

With the accurate flexible arm FEM model, the controller could be validly designed in the next chapter.

Chapter 3 Controller Design

3.1 Introduction

Two main classes of controllers were considered here to control the hub angle of the arm. Firstly, the flexible arm was modeled with a two-element FEM model derived in Chapter 2, and a rigid controller was developed. Then, a sliding mode controller was developed and its performance was compared with that of rigid controller. These controllers were designed to meet the following specifications:

In response to a step inputs:

1. The steady-state error must be minimized.

2. The settling time must be minimized.

3. The vibration effect of the flexible arm hub angel and tip position must be minimized.

3.2 Rigid Controller Design

The rigid controller is meant by considering the controller design of a rigid arm,

so the coupled terms in the FEM model, the stiffness matrix, and the mass matrix could be neglected. Then, the model is in a simple form:

(

JR+Mθθ

)

θ&&=u (3.2.1)

In order to control such a double differential model, the PID controller is a candidate.

There are several well documented methods available to design PID controller.

Furthermore, PID controllers are relatively easy to implement. But in practical Integral controller is not useful because that it may windup when the steady-state error is large and may cause damage to the transient response, such as more overshoot or undershoot. In this experiment, the drawback of I controller was verified, so PD controller was adapted. In order to design a suitable PD controller for the flexible arm, the PD parameters are chosen based on the FEM model. From (3.2.1),

(JR +Mθθ)θ&&=u=kDθ&+kPθ (3.2.2) Then, the poles placement method was used to assign the two poles to the left half

plane in s domain. Because the motor has limited maximum torque, the two poles should be assigned to the proper position for the purpose that the input could be below the maximum value.

3.3 Introduction to the Variable Structure Control (VSC)

Variable structure control (VSC) is one influential method to deal with the uncertainties of system. The structure of a VSC is a nonlinear control that switches with different control input, according to some pre-assigned algorithm or law of substructure change in the current value of the error signal and its derivatives. For

example, assume there is a system u

x x&&+ =

With its initial condition,

( )0 =1 x( )0 =0

x &

VSC is used to changing the input u in different conditions in fig.3.3.1. The response of x is better than the conditional control because VSC combines the advantages of the different inputs.

0 2 4 6 8 10 12 14 16 18 20

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

time(sec)

x

sliding-mode control

line u=-5x ---- u=0

xxxx u=0 when x>0.05 u=-5x when x<=0.05

Fig. 3.3.1 Sliding Mode Control input combined with different inputs

Sliding mode control is an influential control method and is generally chosen for VSC nowadays. At first, a stable sliding surface should be determined in sliding mode control. The state variables of the system will lead to the sliding surface by variable structure control and will not leave the sliding surface. VSC is robust for the noise and disturbance and its rise time and transient response are also satisfied. Generally there are two steps in designing the sliding mode controller, the first is choosing the sliding surface, and the second is designing the sliding mode controller. The purpose of the second one is to reaching the sliding surface in limited time and it is easier to achieve than the first. Choosing a good sliding surface is an art.

3.4 Sliding Mode Controller Design

The purpose of this experiment is to rotate the flexible arm to the desired angle

θd and eliminate the vibration of the arm. So the state variables of the FEM should be brought to zero finally, in the beginning, the controllability of the plant model must be checked out. From (2.2.17), because M is positive definite matrix that its inverse

matrix is exist.

Bu Ax

x& = + (3.4.1)

Where x =

[

θ v1 L v2N θ& v&1 L v&2N

]

(3.4.2)

⎥⎦ rank for all eigenvalues λ . After checking all the eigenvalues, the result shows that the flexible arm FEM model is controllable and could be used poles placement method to design the controller. Then, design the error states as

e1 =θθd (3.4.5)

Substituting (3.4.5) into (2.2.17) yields Bu

Although there are some documents mentioned about the global damping matrix in

dynamic equation [12], we still neglect the phenomenon because the effect is not very clear. In order to design the sliding mode controller, sliding surface is need to be chosen at first. The sliding surface in our design is based on Lyapunov method shown in Appendix C. assume the sliding Surface is expressed as

Cx S=

Z C

s= T (3.4.12)

where C is the sliding surface coefficient chosen in Appendix C [16]. The equivalent control input could be obtained from

Z C

s& = T & (3.4.13)

Substituting (3.4.9) into (3.4.12) yields dD C Bu C AZ C

s&= T + T eq + T (3.4.14)

( ) (

C B C AZ C dD

ueq =− T −1 T + T

)

(3.4.15)

The controlled system’s sliding motion now is restricted by

(

I B

( )

C B C

)

AZ

(

I B

( )

C B C

)

dD

Z& = − T 1 T + − T 1 T (3.4.16)

=0

=C Z

s T (3.4.17)

According to (3.4.17), the order of the system is reduced by one. In order to guarantee that the trajectory of the states will enter the sliding surface, the control law must satisfied the reaching and sliding condition

<0

s&s (3.4.18)

Substituting (3.4.14) into (3.4.18) yields

(

C AZ C Bu C dD

)

s s

s&= T + T eq + T (3.4.19)

If the control law is set as

( )

C B

(

C AZ C dD

( )

s k

u=− T −1 T + T +sgn

)

(3.4.20)

where k>0

(3.4.21)

( )

⎩⎨⎧

<

= >

0 1

0 1

s if

s s if

sgn

1

s -1

Fig. 3.4.1 Sgn(s) function

The condition (3.4.18) will be met because

( )

s ks ks

s

s&=− sgn =− (3.4.18)

When the control law (3.4.15) is applied, using sign function will cause chattering effect which could be eased off by Slotine’s boundary-layer modification.

We use the saturation function

( )

s sgn

( ) ( )

⎩⎨

= >

ε ε

ε s if s

s if s s

/

sat sgn (3.4.22)

1

substituted for sign function sgn

( )

s . Therefore, the control law is rewritten as

( )

C B

(

C AZ C dD

( )

s k

u=− T −1 T + T +sat

)

(3.4.23)

Before entering the sliding layer s >ε, the modified control law is the same as the

previous one. The control law forces the system trajectory to reach the sliding layer ε

s ≤ in a limit time. When entering the sliding layer, gain of the control law must

be minimized. And, the system can’t maintain zero when there occurs a disturbance. It means that the control law couldn’t make all states to zero but around zero. The tradeoff of the decreased precision is that the input chattering effect is slow down and input gain is decreased. The key point is that the sign function of (3.4.20) is not

s -1

ε

ε

Fig. 3.4.2 Sat(s) function

realizable in practical because of its infinite switch, and the modified control input (3.4.23) could be realized in practical component.

Chapter 4

Simulation Results

4.1 Pole Placement

From Chapter 2, two-element model is chosen as the desired control system [11], and the flexible model has 10 system poles shown in Fig. 4.1.1. Before system simulation, the desired system poles should be determined first. In rigid control, the poles -0.5 and -2 are determined and used in experimental demonstration. Then, consider about the Sliding mode control, Lyapunov method which has been introduced in Appendix C is used to design the sliding surface. The system poles of the control system should be designed in the procedure of applying Lyapunov method.

The desired poles for sliding mode control are shown in Fig. 4.1.2. The dominant poles of SMC are designed at -0.5 and -2, and the other poles are designed as complex conjugates lined in 45 degrees to the origin in left half plane. The imaginary part of original poles (Fig. 4.1.1) and desired poles (Fig. 4.1.2) are of the same value, so that the sliding surface will let the controller better with low input torque. But, the shortcoming of the Lyapunov method is that the finally poles of the system may not be the same position as we expected in controller design when the control goal is

achieved which is meant that the system is in sliding surface. However, there is a significant advantage of the Lyapunov method based on its fundamental algorithm which is come from energy for the sliding surface design yields the less input torque required. Not only consider about the limited motor torque in this experiment but also concern for power consumption, Lyapunov method achieves a good result in input restricted torque compared with the transformation matrix method. As for PD controller, it also needs large torque for better transient response [5]. Although the worse case could be corrected by adding a shaping reference input [13, 4].

-10 -8 -6 -4 -2 0 2 4 6 8 10

-600 -400 -200 0 200 400 600

Pole-Zero Map

Real Axis

Imaginary Axis

Fig. 4.1.1The system poles of the flexible arm

-600 -500 -400 -300 -200 -100 0 -600

-400 -200 0 200 400 600

Imaginary Axis

Real Axis Pole Map of SMC

Fig. 4.1.2The desired poles of the sliding mode controller

4.2 Sliding Mode Controller Simulation Results

According to poles placement in section 4.1, the system poles are determined in sliding mode control. Then, the software Matlab is used to verify the controller. With the experimental equipment parameters showed in Table 2.4.1, the simulation results for hub angle regulation are shown in Fig. 4.2.1 to Fig. 4.2.5, and the parameters

01

=0.

ε andσ =5.

0 2 4 6 8 10 12 14 16 18 20

Fig. 4.2.1 Hub angle regulation in sliding mode control

0 5 10 15 20

Fig. 4.2.2 Four states response in sliding mode control

0 2 4 6 8 10 12 14 16 18 20 -4.5

-4 -3.5 -3 -2.5 -2 -1.5 -1 -0.5 0 0.5x 10-6

t(s)

Sliding Surface(m)

S=CX

Fig. 4.2.3 Sliding surface in sliding mode control

0 2 4 6 8 10 12 14 16 18 20

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35

t(s)

Norm[z](m)

SMC

Fig. 4.2.4 Norm of the error states in sliding mode control

0 2 4 6 8 10 12 14 16 18 20 -0.05

0 0.05 0.1 0.15 0.2 0.25 0.3

t(s)

Tip position(m)

SMC

Fig. 4.2.5 Tip position regulation in sliding mode control

We have considered the sliding mode controller for the flexible arm. A set of simulation has been carried out. Simulation results confirm that the controller performs remarkably well with suppressed vibration.

Chapter 5

Experimental Demonstration

This chapter is about the flexible arm experimental demonstration. The results will show the sliding mode controller is successful in vibration tolerance and the developed FEM model of the flexible arm is valid. Compared with the simulation results, the experimental demonstration makes us convinced of the controller design in chapter is work. The beginning of this chapter is about experiment setup included of Matlab xPC target environment, motor setup, and deflection measurement which are the foundations of experiment.

5.1 Experimental Setup

5.1.1 Matlab xPC Target Environment

This experiment is established in Matlab toolbox-xPC Target. In Fig.5.1.1, xPC-MC240 I/O card is used to get the angle from the motor and PCI-1716 card is used to do AD/DA signal convert. The xPC Target is a solution for prototyping, testing, and deploying real-time systems using standard PC hardware. It is an

environment that uses a target PC, separate from a host PC, for running real-time applications. In this environment the desktop computer as a host PC with Matlab and Simulink creates a model using Simulink blocks. After creating the model, xPC Target lets the blocks and a C/C++ compiler to create executable code with its embedded coder. The executable code is downloaded from the host PC to the target PC running the xPC Target real-time kernel. After downloading the executive code, the

environment that uses a target PC, separate from a host PC, for running real-time applications. In this environment the desktop computer as a host PC with Matlab and Simulink creates a model using Simulink blocks. After creating the model, xPC Target lets the blocks and a C/C++ compiler to create executable code with its embedded coder. The executable code is downloaded from the host PC to the target PC running the xPC Target real-time kernel. After downloading the executive code, the

相關文件