chapter 8 - faculty of mechanical engineering –musa/papers/jrnelexx.doc · web viewexperimental...

17
EXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL A ROBOT ARM Musa Mailah Faculty of Mechanical Engineering Universiti Teknologi Malaysia 81310 Skudai Email: [email protected] 1

Upload: dothuan

Post on 23-May-2018

220 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

EXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND

ITERATIVE LEARNING ALGORITHM TO CONTROL A ROBOT ARM

Musa MailahFaculty of Mechanical Engineering

Universiti Teknologi Malaysia81310 Skudai

Email: [email protected]

1

Page 2: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

ABSTRACT

The paper describes a practical approach to designing and developing a robot force control scheme. An experimental rig was developed to demonstrate the effectiveness of the proposed control strategy which employs the Active Force Control (AFC) method plus iterative learning algorithm embedded in its control loop. The estimated inertial parameter of the arm that is required to effect the AFC strategy is automatically and continuously computed on-line via the iterative learning algorithm. This estimated parameter together with the measured values of the arm’s acceleration and torque are instrumental for the effective compensation of the disturbances. The experiment was carried out on a single link robot arm with a tension spring of unknown stiffness attached at the end of the link providing a force-controlled environment in which the system has to accommodate. Consequently, the performance of the control system was evaluated considering the trajectory tracking control of the arm given specific desired trajectories. Some of the results obtained were compared to an equivalent system employing PID and the traditional AFC methods.

I. INTRODUCTIONRobot force control is an important area of study as it involves the interaction of the robot’s end effector with the outside world in the form of applied external forces or constrained environment. It is especially critical in application where precise trajectory tracking control is required in the presence of disturbances or uncertainties. A number of force control strategies has been proposed [1-4]. However, most of these methods are confined to rigorous simulation works and analytical studies. Hewit et. al. [5-8] proposed a practical force control technique in which the disturbance compensation action is accomplished through physical measurement and estimation of identified robot parameters. The technique was further complimented by the addition of a learning control mechanism embedded in the overall control strategy as described in [9].

The paper presents a practical and novel method of robot force control using active force control (AFC) and iterative learning algorithm. The robustness of the scheme is tested considering a disturbance element acting at the end of a robot arm. The paper is structured as follows; the first part deals with the underlying principle of AFC and iterative learning concepts followed by a narrative ‘mechatronic’ description of the experimental rig and procedure. The experimental results were later presented and discussed. Finally, a conclusion was derived and the direction for future works pointed out.

II. ACTIVE FORCE CONTROL AND ITERATIVE LEARNING

A. Active Force ControlActive force control is a method in which the disturbances (internal or external) can be compensated or eliminated by the physical measurement of the force/torque acting on the physical system and the acceleration of the moving part. In addition to that, an approximation of the inertial parameter should be obtained before the disturbances could be effectively estimated and compensated. Fig. 1 shows an AFC scheme applied to robot control.

IN/Kt Kt

1/Kt

1/H 1/s 1/s

IN

ref

++

Ic Tq

Td

Td*

-+

++coordinate

transformation

Kd

Kp

coordinate transformation

coordinate transformation

It

Ia

x refxbar

xbar

xbar

+

+

-

-

++

++

x

x

.. ..... ..

. .

torque sensor

accelero-meter

Fig. 1: AFC scheme applied to robot control

The symbols used in the diagram are :

H is inertia matrix of the robot armIa is the compensated current vectorIc is the current command vectorIN is the estimated inertia matrixIt is the armature current for the torque motorKp and Kd are the controller gainsKt is the motor torque constantis a vector of positions in joint space

ref

.. and refx

..are reference acceleration vectors

in joint and Cartesian spaces respectivelyTd is the disturbance torqueTd* is the estimate of all the disturbance torques Tq is the applied control torquex and xbar are vectors of actual and desired positions respectively in Cartesian space

At the extreme left hand side of the schematic is a Proportional-Derivative (PD) control component which utilises the Resolved-Motion-Acceleration-Control (RMAC) law defined by the following equation:

)()(......

xxKxxKxx barpbardbarref (1)

the above equation is then transformed into ref

.. by

means of the inverse Jacobian manipulation and fed forward into the AFC control loop.

From the diagram, it can be seen that two transducers, i.e., the torque sensor and accelerometer are utilized. IN is the inertial parameter to be estimated by suitable

2

Page 3: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

means. The important equation for the AFC mechanism is as follows:

Td* = Tq - IN .. (2)

where .. and Tq are measured variables related to the

acceleration and torque of the robotic arm respectively and IN is an approximated quantity of the inertial parameter. Equation (2) can be further simplified as

Td* = Kt It - IN.. (3)

where Tq = Kt It (4)

In this case, instead of measuring torque directly, we measure the torque current It and then multiply it with the torque constant Kt which of course gives the value of the required actuated torque. While the measurement part is obvious, the inertial parameter is not so. It can be obtained by using a number of methods such as crude approximation, reference of a look-up table [5-8] or intelligent means using neural network and iterative learning algorithms [9]. The last method was chosen and implemented in the paper.

B. Iterative LearningOne of the early proposer of the iterative learning method applied to robotic control is Suguru Arimoto who proposed a number of learning algorithms and at the same time provided analytical proof for their convergence, stability and robustness [10-14]. Arimoto et al. showed that tracking error effectively converges to zero with time when an iterative learning scheme is applied to the control of a robot arm. A typical learning algorithm is given by the following equation:

yk+1 = yk + ( + d/dt) ek (5)where

yk+1 is the next step value of the outputyk is the current output valueek is the current positional error input, ek=(xd - xk), and are suitable positive definite constants

(or learning parameters)

We employ a slightly modified learning algorithm to suit our application. Instead of using the absolute positional track error e, we use a sum-squared track error TE. Equation (5) becomes

yk+1 = yk + ( + d/dt) TEk (6)

where TEk is the current sum-squared positional track error, TEk = (xd-xk)2.

In the study, we let the estimated inertia matrix IN (to be computed) as the output while the sum-squared track error TE as the input to the learning algorithm. Thus, the relevant equation is expressed as follows:

INk+1 = INk + ( + d/dt) TEk (7)It is obvious that IN should be positive definite - the sum-squared error which will produce positive definite value fulfils this criteria and hence the proposed modification. Since we use a ‘proportional’ constant and a ‘derivative’ constant the algorithm is described as a PD-type learning algorithm as shown in Fig. 2.

Fig. 2: A PD-type learning algorithmIII. THE PROPOSED CONTROL SCHEMEThe proposed scheme is called AFCAIL, an acronym for Active Force Control And Iterative Learning. Since we use a PD-type learning algorithm in the study, the control scheme is known as AFCAIL-PD. The implementation of the PD-type learning algorithm in AFC is shown in Fig. 3. The box (shown by dashed lines) represents the most important part of the proposed scheme which integrates AFC and the learning algorithm.

IN/Kt Kt

1/Kt

1 / H 1/s 1/s

INk

ref

++

Ic Tq

Td

Td* -+

++coordinate

transformation

Kd

Kp

coordinate transformation

coordinate transformation

It

Ia

x refxbar

xbar

xbar

+

+

-

-

++

++

x

x

++(t)d/dt

(t)+

TEk

INk+1

.. . .. ..

. .

..

Fig. 3: The AFCAIL-PD control scheme

Note that the learning algorithm is easily embedded into the parent AFC scheme with the track error TE as the input and the estimated inertia matrix IN as the output of the learning algorithm. A flow chart showing the logical flow of the main control algorithm is illustrated in Fig. 4.

robotdynamics

d/dt

TEk

tomemory

INk+1

frommemory

INk TEk

++

+

.

3

Page 4: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

Start

Initialise and declare

variables

Apply learning algorithm

IN(k+1)= IN(k) + (d/dt) TE(k)

Feed into robot

dynamics

Stop

No

Yes

Reach errorgoal ?

Begin robot task

IN(k)

TE(k)

IN(k+1)

TE(k+1)

IN optimized

Fig. 4: The learning algorithm applied to the robot arm

An experimental study based on the above integrated scheme is performed considering a number of varying parameters. The robot arm chosen is a rigid single link arm operating in the horizontal plane.

IV. THE EXPERIMENTAL SET-UPA. The Robot ArmThe experimental robot arm comprises of mechanical, electronics and computer control parts. The mechanical part is made up of several machined parts and assembled using bolts. The electrical and electronics components were selected based on the arm dynamics. For example, the motor was selected according to the torque required to accommodate the motion caused by the loads and masses of the arm at the joint. A servo amplifier was required to drive the motor via computer control. Signal conditioning and noise filter circuits are essential for the proper functioning and accurate readings of the rotary encoder and accelerometer and thus these circuits together with the appropriate power supplies were used. The choice of selecting the interface or I/O card greatly depends on the input and output devices to be employed. In the study, a DAS-20 I/O [15] card was used and considered more than adequate to cater for the input and output facilities. The final section was the computer control involving the programming of the I/O card using a selected ‘C’ language to command the robot arm to move according

to the required task using the proposed control strategy. The robot arm is shown in Fig. 5.

CPUDAS20

I/OBoard

MotorDriver

accelerometer

motor

encoder

robot arm

PC andInterface

Fig. 5: A schematic of the robot arm

From the diagram, we can see that the signals from the sensors are fed to the PC via DAS-20 board from the PC to be processed (analogue to digital (A/D) conversions). The signals are then sent to the I/O board again where they are subject to amplification and conversion from digital to analogue (D/A). The signals are later conveyed to the motor driver block which drives the link according to the control algorithm set in the software. The description of the essential components of the rig is given in the following sections.

A.1 The mechanical armThe proposed experimental robot arm comprises a rigid link of suitable length driven by a DC torque motor at the joint. The material used for the mechanical parts were made from light aluminium which provide sufficient strength and rigidity. An orthographic view of the mechanical robot arm is shown in Fig. 6.

Fig. 6: An orthographic drawing of the main robot arm

The 10 mm diameter through hole was to accommodate the motor shaft while the middle straight 2 mm slot passing through this hole was to cater for the clamping of the arm to the shaft by means of a set of nut and screw. The threaded blind holes at the tip of the arm was to facilitate the mounting of the accelerometer and the spring. The housing of the motor and the encoder

4

Page 5: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

support bracket were again made from aluminium material.

B.1 The electrical and electronic componentsa. The I/O Interface CardA single input/output (I/O) card was used. This is basically an electronic interface device which provide the Analogue-to-Digital and Digital-to-Analogue (ADDA) conversions necessary for the communication between the electro-mechanical components and the microprocessor to take place. The I/O card used was a DAS-20 board which has 16 digital channels and two output ports was fitted into one of the expansion slots in the PC. The output from the board is a continuous signal ranging between +10 V and -10 V (bipolar setting). The motor driver servo-amplifier, rotary encoder and the accelerometer were connected to this card.

b. DC Torque Motor and DC Servo AmplifierA DC torque motor was used to drive the arm. The choice of the motor was largely based on the amount of torque required for the actuation of the arm after taking into consideration the physical masses, loads and disturbances. The motor was driven by a 28 V DC supply through a DC servo amplifier, model EM1802 [16] connected to the computer. Fig. 7 shows a schematic diagram of the PSUs (power supply units) and the DC motor servo amplifier used in the experiment.

Fig. 7: The power supply units and the DC servo motor amplifier used in the experiment

It should be noted that the motor driver comprises the HVOPAMP (High Voltage Operational AMPlifier - a Voltage to Voltage (V/V) amplifier) and the Voltage to Current (V/I) linear DC servo amplifier. The gains for both the amplifiers were adjusted so as not to cause overloading of the torque motor. The gain for the V/I amplifier was factory set at 0.5 V/A. For the V/V amplifier, the gain should be set to give the maximum permissible output torque. For a maximum torque of 2.06 Nm (1.52 lb-ft from the datasheet) the HVOPAMP gain can be set to give a peak current of 6.0 A. However, as a precautionary measure, the maximum value was set at 90% of the peak current endurable by the motor. Thus, the effective torque considered was within the range of +1.83 Nm and -1.83

Nm. Accordingly, the gain of the HVOPAMP was set to a value of 1.08. In this way, the maximum signal coming from the DAS-20 board was amplified from 10 V to 10.8 V in the HVOPAMP then was converted to a maximum current value of 5.4 A by the DC amplifier which constitutes about 90% of the peak value.

The characteristics of the motor can be found in the technical data sheet for the motor model TM-4412 [17]. An important relationship that was used in the study was,

Tq = Kt It (8)

where the torque Tq is proportional to the motor current It and from the data sheet, the torque constant, Kt for the selected winding was found to be 0.3387 Nm/A (0.25 lb-ft/A for H winding constant in the data sheet). As mentioned earlier, it is essential that the saturation value of the torque current should not be exceeded during the actual operation which would otherwise can cause serious damage to the motor. For this reason, a limiting current resistor of high dissipative power rating was fitted into the circuit. Two 0.2 ohm resistors were placed in series for this purpose. In addition to that, a safety factor was normally included in the robot control program such that the maximum limit was set to a suitable percentage of the actual saturation values. Any computed value which exceed this saturation limit was accordingly reset to a value which can either be a maximum positive or negative torque.

c. Rotary encoderA rotary encoder was fitted at one end of the shaft motor to provide the measurement of the angular position or joint angle of the link. The encoder is of incremental rotary type, model ROD-420M [18] and was interfaced to the PC via the encoder board which contains the circuit as depicted in Fig. 8.

Fig. 8: A circuit diagram for the encoder board

d. Accelerometer

5

Page 6: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

This is another essential device required to measure the joint acceleration of the arm which subsequently provide the necessary signal to the computer program for the execution of the AFC strategy. A low-cost solid-state accelerometer ADXL05 [19] was utilized which can measure linear acceleration of 5g. An advantage of this type of accelerometer is that the signal conditioning circuitry is built-in the accelerometer itself and thus only requires a few electronic components (such as resistors and capacitors) to be connected at the respective pins. Fig. 9 and 10 respectively show an example of these connections for a DC coupled circuitry and the pin’s layout of ADXL05.

OSCILLATOR SENSOR DEMODULATOR

REFERENCE

4

7

5 1 2 3 8 10 9

6

PREAMP

OSCILLATORDECOUPLINGCAPACITOR

SELF-TEST(ST)

COMC3

+5V

DEMODULATORCAPACITOR

C1 C1 VPR

ADXL05 +3.4V VREFOUTPUT

VOUT

R3VIN-R1

R2

+1.8V

+

-

BUFFERAMP

C2

Fig. 9: A functional block diagram of ADXL05 (Analog Devices Inc. 1996)

Fig. 10: A connection diagram of ADXL05 and its pin layout (Analog Devices Inc. 1996)

The mounting of the accelerometerThe mounting of the device was also crucial so that correct reading based on the proper orientation of the accelerometer was obtained. It is important that the accelerometer is securely and firmly mounted to the arm to avoid possible vibration and hence erroneous reading. The accelerometer used in the experiment was mounted on a small printed circuit board (PCB) at the end of the link and to the arm using screws.

Linear and angular acceleration of the armIt should be noted that the accelerometer gives a measure of linear acceleration of the attached arm whereas we are mainly concerned with the angular acceleration that is required. This was easily solved by using the following simple relationship, i.e.,

= a/r (9)

where is the joint acceleration, a is the linear acceleration and r is the radius of the arm measured from the axis of rotation at the joint and at the end of the link - approximately near central part of the attached accelerometer as shown in Fig. 11.

Fig. 11: The relationship between the angular and linear acceleration of the arm

In AFC, the measured angular acceleration is to be multiplied with the estimated inertia of the arm. For a single link arm, it has been shown that a slight overestimate of the inertia of the arm is a sufficient condition for the stability of the system [6]. The mass moment of inertia of the arm at the joint (shaft motor and the link) was easily computed considering both the mechanical link and the motor shaft assembly.

Given the mass of link, ma = 0.083 kg and the length of link, la = 0.12 m with a solid rectangular cross section 20 mm X 12 mm (P X Q),

Ja = (1/12) ma P2 + (1/3) ma la2 (10)

= 0.0004 kgm2

The mass moment of inertia of the shaft motor assembly can be obtained from the data sheet as 6.2 x 10-4 lb ft s2 or in SI unit,

Jm = 0.00084 kgm2

Thus, the total mass moment of inertia at the joint is

Jt = Ja + Jm (11) = 0.00124 kgm2

The choice of the estimated inertia value, IN > Jt is a sufficient condition for stability.

C.1 Software and Computer Control

6

Page 7: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

The I/O card has software controlled mechanism which can utilize a number of high level language program languages including ‘C’. The user simply writes an interface program that is tailored to the requirements. We developed a flexible robot control program which provide a choice of a number of schemes - the classical P, PD, PI, PID or their combination, AFC (plus the former) and AFC plus the iterative learning control (AFCAIL) algorithms. The experimental works were limited to cover only the PID, AFC and AFCAIL schemes. The computation of the derivative part was performed using a first order polynomial approximation while for the integral term, the trapezoidal approximation was used. For the AFC scheme, we assumed a fixed and overestimated value of the estimated inertia matrix, i.e., IN > Jt which give sufficient stability condition [6]. For the AFCAIL scheme, no prior knowledge of IN was assumed and the learning algorithm chosen was the PD type. In the control program, IN was started from the initial condition of 0 kgm2. The learning parameters were obtained by heuristic means. Part of the control program written in ‘C’ showing the main torque loop containing the essence of the control elements was listed as follows (in italic).

/* The torque loop */do {getencoders(encoders, data, highval, lowval, flag); /* read encoders */

readangaccell(data,xarray); /* accel. & current signals */

ANG=angamp*sin(omega*TCONST*i);

/* Convert to radians */th2 = encoders[5]*convang;

/* Iterative learning algorithm */TE = sqrt(pow((ANG-th2),2));if(i==0){INold = IN;i=1;}TEder = (TE - TEold)/TCONST;TEold = TE;IN = INold + phai*TE + La*TEder;

/* Active Force Control (AFC) */accel = (xarray[2]-2.19)*0.4/(9.81*0.12); /* radius of arm = 0.12m */current = (xarray[3]-xarray[0])/0.1;AFC =0.05*(-current*0.3387 – accel*IN)/0.183; if(i==0){th2old=th2;i=1;}/* Computing the integral term */app=app+KI*(angdes-th2)*TCONST;

/* Computing the derivative */th2d=(th2-th2old)/TCONST;th2old=th2;

/* Computing the torque (AFC) */

t2m = KP*(ANG-th2) - KD*(th2d) + app + (AFCper/100)*AFC;

if ( t2m > M2MAX ) t2m = M2MAX;if ( t2m < M2MIN ) t2m = M2MIN;

/* 0.3387=Kt motor constant,5.4=0.5(gain of V/I amplif.)*1.08(gain of hvopamp)*10(das20 max output voltage) */

tq3 =-t2m*2047/(0.3387*5.4);

i++;}while (i<=1500);

Note that the flexibility of the control program lies in its ability to switch the controller action from the conventional P, PI, PID (or its combination) control mode to the AFC control mode by simply manipulating the controller gains (Kp, KI and Kd) and the percentage of AFC. For instance, by setting the percentage AFC to zero and maintaining appropriate values for Kp, KI and Kd, we have a pure PID control. It is interesting to note that within AFC itself, we can assign the percentage of AFC to be applied to the arm and the performance evaluated.

V. TRAJECTORY TRACKINGIn the experiment, we considered the trajectory tracking control as our basis of approach where the robot arm was planned and forced to move in a prescribed trajectory. In the study, two types of input trajectories were selected - a step and a sinusoidal functions as shown in Fig. 13. In the robot control program, they were mathematically expressed as follows :

i. Step input:ANG = angdes rad (12)

where angdes is the desired input angle in rad.

ii. Sinusoidal input:ANG = angamp/pi*sin(omega*TCONST*i) (13)where

angamp is the amplitude of the sine function in rad.pi = 3.141592684omega is the frequency, omega = 2*pi/Tp,

Tp is the period, Tp = 2sTCONST is the loop delay time, (TCONST = 0.00275 s)i is the number of loops

Note that the duration of the experiment was governed by the number of (torque) loops, i. In the experiment, it was typically set to be between the range 500<i<1000 which correspond to a range of time 1.375<t<2.75 s. The period of the sine function determines the number of ‘sine waves’. Smaller Tp

would produce more waves. A spring of unknown

7

Page 8: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

stiffness was attached at the end of the arm to provide the disturbance element for the force control analysis. The gains of the controller were heuristically determined and a sampling rate of 0.00275 s or 2.75 ms (363 Hz) was used.

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

0.0

0.3

0.6

0.9

1.2

Join

t ang

le (r

ad)

t (s)

(a) step input trajectory

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-0.6

-0.4

-0.2

0.0

0.2

0.4

0.6

Join

t ang

le (r

ad)

t (s)

(b) sinusoidal input trajectory

Fig. 13: Examples of the two types of trajectories considered in the study

Three types of control algorithms were applied individually - firstly the classical PID followed by the AFC and finally the AFCAIL control schemes. By AFC we meant that the estimated inertia matrix was pre-assigned value and the PID element was also incorporated while in the AFCAIL scheme, we included the iterative learning algorithm to estimate the inertia of the arm and the initial value of IN was set to zero. Initially, we disregarded any external disturbances acting on the system. Later, a disturbance torque was applied to the arm and again each control scheme was tested for the trajectory performance of the arm. The results obtained were stored in an array and later plotted.

Fig. 14: A view of the experimental rig

Fig. 15: A closed-up view of the robot arm. Note that a spring is attached to the end of the link and to the fixed

frame at the extreme left.

VI. RESULTS AND DISCUSSIONA.1 Response of the PID, AFC and AFCAIL

Control SchemesFig. 16 shows the superimposed results of the PID, AFC and AFCAIL schemes related to their trajectory track behaviour against the desired step input with a non-linear spring force acting at the end of the arm. It was obvious that the AFC scheme with pre-assigned IN value shows the best results. The curve has a very rapid response with no overshoot and a very small steady state error but at the expense of having a rough profile near the desired value once it reaches the stable state. The roughness of the curve was attributed to the presence of the ‘noises’ in the accelerometer and the current sensor which can be seen in Fig. 17.

8

Page 9: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

0.00

0.05

0.10

0.15

0.20

PID AFC AFCAIL Desired

Angl

e (ra

d)

t (s)

Fig. 16: Superimposed results of the control schemes for a given step input

The parameters used for the above experiments are as follows:

AFC : Kp = 50, KI = 20, Kd = 1, IN = 0.004 kgm2

AFCAIL : Kp = 50, KI = 20, Kd = 1, IN starts from 0 kgm2

Learning constants: = 0.05, = 0.0001

PID: Kp = 50, KI = 20, Kd = 1Desired angle: angdes = 10o

Stiffness of spring: unknown

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-1.0

-0.5

0.0

0.5

1.0

Acce

lera

tion

t (s)

(a) acceleration signal

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-5

-4

-3

-2

-1

0

1

2

Cur

rent

(A)

t (s)

(b) current signal

Fig. 17: The signals plus the ‘noises’ generated by the sensors for the AFC scheme

Evidently, noise filters or suppressors are needed to filter out or smoothen the noises to give improved results.

The AFCAIL and PID schemes produce almost identical results as the curves are almost in line. The AFCAIL curve like the AFC counterpart shows a certain degree of roughness which was also caused by the noises in the sensors. The initial performance was characterized by the large initial error but as the learning progresses, the trajectory approaches the desired value. A further example, analysis and discussion of the AFCAIL scheme’s step response can be seen in the following section.

A.2 Response of the AFCAIL Scheme with A StepInput

0.00 0.25 0.50 0.75 1.00 1.25

0.00

0.05

0.10

0.15

0.20

AFCAIL-PD Desired

Angl

e (r

ad)

t (s)

(a) The trajectory of the arm

9

Page 10: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

0.00

0.05

0.10

0.15

0.20

Traj

ecto

ry tr

ack

erro

r, TE

(rad

)

t (s)

(b) The corresponding track error

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

0.000

0.001

0.002

0.003

0.004

0.005

IN (k

gm2 )

t (s)

(c) The computed inertia

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-1.5

-1.0

-0.5

0.0

0.5

1.0

1.5

Torq

ue (N

m)

t (s)

(d) The torque actuated

Fig. 18: Results for the AFCAIL-PD scheme for a step input

The following parameters were used for the above results (step input) :

Controller gains: Kp = 50, KI = 20, Kd = 1Learning constants: = 0.05, = 0.0001Desired angle: angdes = 10o

Stiffness of spring: unknown

From Fig.18 (a) through (d), we can see that the AFCAIL scheme is effectively implemented. By examining the curve (a), we find that the final trajectory approaches the desired response with a fast rising time. Again, we can observe the rough trace of the actual curve due to the noises captured by the sensors. The corresponding trajectory track error curve shows the error `decays’ in an exponential form. So is the computed estimated inertia curve which decreases exponentially until it stabilizes at a value of approximately 0.0002 kgm2 - this value is considered as the optimized or identified value of IN. It can be seen in (d) that it only requires a relatively a small amount of torque to actuate the arm.

A.3 Response of the AFCAIL Scheme with A Sinusoidal Input

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-0.4

-0.2

0.0

0.2

0.4 AFCAIL Desired

Angl

e (r

ad)

t (s)

(a) The trajectory of the arm

10

Page 11: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

0.00

0.01

0.02

0.03

0.04

Traj

ecto

ry tr

ack

erro

r, TE

(rad

)

t (s)

(b) The corresponding track error

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

0.0000

0.0005

0.0010

0.0015

0.0020

0.0025

Com

pute

d IN

(kgm

2 )

t (s)

(c) The computed inertia

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-1.5

-1.0

-0.5

0.0

0.5

1.0

1.5

Torq

ue (N

m)

t (s)

(d) The torque actuated

Fig. 19: Results for the AFCAIL-PD scheme for a sinusoidal input

The following parameters were used for the above results (sinusoidal input) :

Controller gains: Kp = 50, Ki = 20, Kd = 1Learning constants: = 0.05, = 0.0001Amplitude: angamp = 20o

Stiffness of spring: unknown

Referring to Fig. 19 (a) through (d), the trajectory of the arm as shown in (a) gradually improves with the number of iteration showing that the learning process has indeed taken place. This is further verified by observing the characteristic of the track error curve as in (b) which shows a corresponding gradual decrease in the error. The learning algorithm is evidently forcing the track error to converge to values approaching the zero datum as time increases. It is also noted that the estimated inertia of the arm (c) follows the same pattern of the track error as it is being continuously and adaptively identified. The varying inertias of the arm are obviously having positive values which are as expected from the theoretical point of view. The maximum inertia occurs at the beginning of the cycle which is approximately 0.002 kgm2. The value drops to around 0.00025 at t=1.0 s. We can calculate the average inertia value to be 0.0005 kgm2. The torque curve can be seen to vary in sinusoidal fashion peaking at approximately 0.5 Nm.

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-1.0

-0.5

0.0

0.5

1.0

Acce

lera

tion

t (s)

(a)

11

Page 12: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6

-2

-1

0

1

2

3

4

5C

urre

nt (A

)

t (s)

(b)Fig. 20: The accelerometer and current sensor signals

for the AFCAIL-PD scheme with sinusoidal input

As an additional observation we also include the acceleration and current signals generated by the control schemes like the one shown in Fig. 20. Obviously, the signals are highly non-linear and oscillatory plus containing a relatively high level of noises. On the whole, we can deduce that the iterative learning control algorithm has been effectively and successfully incorporated into the AFC scheme without any difficulty. The learning process was found to be very fast; about 1 s for both the step and sinusoidal responses. It is thought that one of the contributing factors that make it easy to be implemented was due to the fact that the actual inertia of the arm was comparatively small (about 0.002 kgm2). Since IN was assumed to start at 0 kgm2 and the characteristic of the proposed learning algorithm was such that it only computes positive values (IN>0) at every successive trials, the outcome was expectedly to be very favourable. Thus, the experimental results obtained verify the theoretical presumption.

VII. CONCLUSIONThe rig was successfully developed and the experiments were performed according to the planned procedure. The iterative learning algorithm applied to the control strategy was shown to be very effective in bringing down the track error to minimal value as learning took place even in the presence of the spring force. As a consequence, the estimated inertia of the arm was identified and optimized appropriately for both the input test trajectories. This is verified through their excellent trajectory track performance. The learning process of the scheme was also found to very rapid - about 1 s for both tests. The performance could be further improved if a noise filter mechanism is incorporated in the sensory devices to condition and filter out unwanted signals. The control scheme should

be further experimented for the coordinated motion and trajectory track control of robot arm using at least two arm linkages and considering various forms of external disturbances and other different operating conditions.

REFERENCES[1] Raibert M.H., Craig J.J., Hybrid

Position/Force Control of Manipulators, Transaction of the ASME, Journal of Dynamic Systems, Measurement and Control, Vol. 102, pp. 126-133, June 1981.

[2] Masaki Shibata, Toshiyuki Murakami, Kouhei Ohnishi, A Unified Approach to Position and Force Control by Fuzzy Logic, IEEE Transactions on Industrial Electronics, Vol. 43, No. 1, pp. 81-7, February 1996.

[3] Bin Yao, Masayoshi Tomizuka, Adaptive Control of Robot Manipulators in Constrained Motion - Controller Design, Transactions of the ASME, Journal of Dynamic Systems, Measurement and Control, Vol. 117, pp. 321-328, September 1995.

[4] Satoshi Komada, Kouhei Ohnishi, Force Feedback Control of Robot Manipulator by the Acceleration Tracing Orientation Method, IEEE Transactions on Industrial Electronics, Vol. 37, No. 1, pp. 7-12, February 1990.

[5] Hewit, J.R. and Kaddour Bouazza Marouf, Practical Control Enhancement via Mechatronics Design, IEEE Transactions on Industrial Electronics, Vol. 43., No. 1, pp. 16-22, February 1996.

[6] Hewit, J.R., Advanced Control: Teleoperation, Lecture Notes, 1988.

[7] Hewit, J.R.and Burdess, J.S., Fast Dynamic Decoupled Control for Robotics Using Active Force Control, Mechanism and Machine Theory, Vol. 16, No. 5, pp. 535-542, 1981.

[8] Hewit, J.R., Disturbance Cancellation Control, Proc. of Int’l. Conference on Mechatronics, Turkey, pp.135-143, 1996.

[9] Musa Mailah, Intelligent Active Forcve Control Of A Rigid Robot Arm Using Neural Network and Iterative Learning Algorithm, Ph.D Thesis, University of Dundee, Dundee, 1998.

[10] S. Arimoto, S. Kawamura, F. Miyazaki, Applications of Learning Method For Dynamic Control of Robot Manipulators,

12

Page 13: CHAPTER 8 - Faculty of Mechanical Engineering –musa/papers/jrnelexx.doc · Web viewEXPERIMENTAL IMPLEMENTATION OF ACTIVE FORCE CONTROL AND ITERATIVE LEARNING ALGORITHM TO CONTROL

Proc. of 24th Conf. on Decision and Control, Ft. Lauderdale, pp. 1381-6, 1985.

[12] S. Arimoto, S. Kawamura, F. Miyazaki, Bettering Operation of Robots by Learning, Robotic Systems, pp. 123-140, 1984.

[13] S. Arimoto, S. Kawamura, F. Miyazaki, Convergence, Stability and Robustness of Learning Control Schemes for Robot Manipulators, Recent Trends in Robotics: Modeling, Control and Education, ed. by M. Jamshidi, L.Y.S. Luh, and M.Shahinpoor, pp. 307-316, 1986.

[14] S. Arimoto, S. Kawamura, F. Miyazaki, Hybrid Position/Force Control of Robot Manipulators Based On Learning Method, Proc. of Int’l. Conf. on Advanced Robotics, , pp. 235-242, 1985.

[15] DAS-20 Manual, Metrabyte Corporation, 1989.

[16] Direct Drive DC Motors, Inland Motor Specialty Products Division, Kollmorgen Corporation, 1987.

[17] Linear DC Servo Amplifiers, Technical Note, Inland Motor Specialty Products Division, Kollmorgen Corporation, 1987.

[18] Heidenhain, Incremental Rotary Encoders, December 1995.

[19] ADXL05, 1g to 5g Single Chip Accelerometer with Signal Conditioning, Technical Note, Analog Devices Inc., 1996.

13