191
Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the degree of Master of Applied Science Department of Mechanical and Industrial Engineering University of Toronto @Copyright by Jayavel Sankaran 1997

Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Real-Time Computed Torque Control of

Flexible-Joint Robots

by Jayavel Sankaran

h thesis submitted in conformity with the requirements for the degree of

Master of Applied Science

Department of Mechanical and Industrial Engineering University of Toronto

@Copyright by Jayavel Sankaran 1997

Page 2: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

National Library 191 of Canada Bibliothèque nationale du Canada

Acquisitions and Acquisitions et Bibliographie Services seMces bibliographiques

395 Wellington Street 395. nie Wellington Ottawa ON K1A ON4 Ottawa ON K1 A ON4 Canada Canada

The author has granted a non- exclusive licence allowing the National Library of Canada to reproduce, loan, distribute or sell copies of this thesis in microfonn, paper or electronic formats.

The author retains ownership of the copyright in this thesis. Neither the thesis nor substantial extracts fiom it may be printed or othewise reproduced without the author's permission.

L'auteur a accordé une Licence non exclusive permettant à la Bibliothèque nationale du Canada de reproduire, prêter, distribuer ou vendre des copies de cette thèse sous la forme de microfiche/£ilm, de reproduction sur papier ou sur format électronique.

L'auteur conserve la propriété du droit d'auteur qui protège cette thèse. Ni la thèse ni des extraits substantiels de celle-ci ne doivent être imprimés ou autrement reproduits sans son autorisation.

Page 3: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Title : Real-Time Computed Torque Control of Flexible-Joint Robots

Degree : Master of Applied Science' 1997

Author : .JayaveI Sankaran

Dept. : Depart ment of Mechanical and Industrial Engineering

Univ. : University of Toronto

Abstract

Evergroiving demand for speed, accuracy and higher payload capacity of industrial

robots has Ied to redefining the robot control problem. As speed and accuracy are

always at loggerheads, achieving one without compromising on the other, calls for

a closer examination of the physical system of the robot, to devise sophisticated

control techniques that would meet the rigorous specifications. This thesis aims at

modelling the dynamics of a typical indust rial robot, incorporating the Bexibili ty

effects due to the mechanical compliance of the joints. Using a reduced order mode1

of the flexible-joint system, the computed torque control method is implemented on

the robot, in order to evaluate the real-time trajectory tracking performance of the

computed torque controller, compared to the PID-based commercial controller of the

robot. Issues related to real-time multi-axis servo control, dynamics modelling and

analysis, parallel processing, electro-mechanical systems design and integration, are

addressed in this thesis.

Page 4: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

To the memory of m y father

Let u s realize that uhat happens around us

is largefy outside our control, but that

the may we choose to react to if

is inside our control

J. Petty, "-4pples of Gold"

Page 5: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Acknowledgement

This thesis would not have been possible but for the timely opportunity $\.en by

Prof.J.K.3lilIs. 1 sincerely thank him for his relentless support. able guidance and

encouragement through-out the project. 1 would also like to t hank Prof.R.M.H.Cheng

and Prof. R-Ramesh of Concordia University. for their support during the initial stages

of rny graduate s t u d . 1 wish to extend my thanks to m - parents for their moral

support which is vital to al1 my efforts. Thanks are also due to my colleagues. past

and present, for their siiggestions and help which saved a lot of time.

Page 6: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Contents

Abst ract I

Acknowledgement iii

List of Figures vii

List of Tables xiii

Nomenclature xv

Introduction 1

1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 The Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.3 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . :3

1.4 Scope of This Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Flexible Transmission Effects in Robots 6

2.1 Compliance Distribution in Robot Mechanisms . . . . . . . . . . . . . 6

2.2 Harrnonic Drive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3 Singular Perturbation Theory in Robots with Transmission Compliance 11

2.3.1 The Concept of Singular Perturbation . . . . . . . . . . . . . 14

2.3.2 Uodeling Transmission Corn pliance With The S ingular Pert ur-

bation Method . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.3.3 S tability Analysis of Mechanical Systems With Transmission

Compliance . . . . . . . . . . . . . . . . . . . . . . . . . . . . lS

Page 7: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

3 Dynamic Modeling of Flexible-Joint Robots 20

3.1 The Dynamic Mode1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.1.1 Rigid Manipulator Dynamics . . . . . . . . . . . . . . . . . . 21

3.1.2 Flexible- Joint Robot Dynamics . . . . . . . . . . . . . . . . . 21

. . . . . . 3.2 Singular Perturbation Analysis of the Flexible-Joint Robot 23

3.2.1 Stability of theFlexible-Joint Robot System . . . . . . . . . . 2.3

4 Cornputed Torque Control 26

3.1 Why Computed Torque Control? . . . . . . . . . . . . . . . . . . . . 26

4.1.1 Shortcomings of The PID Control Method - . . . . . . . . . . . 2 1

4 - 1 2 3 ler i tsofTheCornputedTorqueControl~fethod . . . . . . . 28

4.2 U'hat is Computed Torque Control? . . . . . . . . . . . . . . . . . . . 30

4.2.1 The Computed Toque Control Law . . . . . . . . . . . . . . . 32

5 Experimental Set-up 34

5 . 1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

5.2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . :34

5 . 3 Computed Torque Control with The Inner Torque-Loop . . . . . . . . 36

5.4 Computed Torque Contrcl without The Inner Torque-Loop . . . . . . 38

1 The Current-Based Torque Control l lethod . . . . . . . . . . 39

6 Experirnental Results 43

6.1 DesignofExperiments . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6.1.1 Parameters of Control . . . . . . . . . . . . . . . . . . . . . . 14

6-12 Parameters of Observation . . . . . . . . . . . . . . . . . . . . 4.5

6.2 ResultsandDiscussion . . . . . . . . . . . . . . . . . . . . . . . . . . 36

6.2.1 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

7 Concluding Remarks 59

1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

1.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

7.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Page 8: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

7 . 4 Recommendations For Future Work . . . . . . . . . . . . . . . . . . . 64

7.4 . 1 Issues Related to 3IodeIling . . . . . . . . . . . . . . . . . . . 64 - ~ 4 . 2 IssuesRelatedtotheE?cperimentaISet-up . . . . . . . . . . . 64

A Optimal Loop-Gain Values 70

B Control Software Listing 71

B . 1 'r'etwork Information File: ctorq.nif . . . . . . . . . . . . . . . . . . . 71

B.2 Network Configuration File: ctorq.rvir . . . . . . . . . . . . . . . . . . 71

B.3 Xetwork Load File: ctorq-bat . . . . . . . . . . . . . . . . . . . . . . 12

B.4 Make File.ctorq.mak . . . . . . . . . . . . . . . . . . . . . . . . . . . 1'2

. . . . . . . . . . . . . . . . . . . . . . . . . . . . B.5 Link File: c to rqhk 7 3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.6 'C' Source Code 74

B.6.1 General Description . . . . . . . . . . . . . . . . . . . . . . . . 74 m.

B.6.2 Control program description . . . . . . . . . . . . . . . . . . . l a -- B.6.3 ct0rq.c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1

B.6.4 contrea1.c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.6.5 contro1.c 9:3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B.6.6 c0ntini.c 99

C Graphical Results of Real-time Experiments on

the CRS A460 Robot

Page 9: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

List of Figures

'2.1 The Harmonic Drive unit . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2 Schematic Representation of the Harmonic Drive Driven Joint . . . . 11

3 Block Diagram of the Flexible-Joint Mode1 . . . . . . . . . . . . . . . I l

3.3 Free-body Diagram of the Flexible-Joint System . . . . . . . . . . . . 12

1.1 .A schematic representation of the Computed Torque Control System :3 O

5.1 The CRS A360 Robot . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5

2 Topologyofthetransputernetwork . . . . . . . . . . . . . . . . . . . 37

5.3 Cornputed Torque Control with the Inner Torque-Loop . . . . 38

5.4 Computed Torque Control without the Inner Torque-Loop . . . . . . 39

5 . 5 The Armature Current Control Scheme . . . . . . . . . . . . . . . . . 41

Position history of joint4 under computed torque control . . . . . . .

Position history of joint4 under independent-joint PD control . . . .

Position historp of joint-1 under PD cont rol with gravity compensation

Position history of joint-? under computed torque control . . . . . . .

Position history of joint-:! under independent-joint PD control . . . .

Position history of joint-2 under PD control with gravity compensation

Position history of joint-3 under computed torque control . . . . . . .

Position history of joint-3 under independent-joint PD control . . . .

Position history of joint-3 under PD control with gravity compensation

C.1 Position history of joint-1 under computed torque control . for motion

aided by gravity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

Page 10: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Position history of joint-l under PD control. for motion aided b~ gravityl03

Position history of joint-1 under PD control with gravity compensation.

for motion aided by gravity . . . . . . . . . . . . . . . . . . . . . . . 104

Position history of joint-l under computed torque control. for motion

against gravity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.5

Position history of joint-1 under PD control? for motion against gravity 106

Position history of joint-1 under PD control with gravity compensation,

for motion against gravity . . . . . . . . . . . . . . . . . . . . . . . . 107

Position history of joint-1 under computed torque control. at a peak

joint-speed of 0.1 radis and a payload of O.5Lb . . . . . . . . . . . . . 10s

Position history of joint-1 under computed torque control, at a peak

joint-speed of 1 rad/s and a payload of O.5Lb . . . . . . . . . . . . . . 109

Position history of joint-l under computed torque control. at a peak

joint-speed of 3 radis and a payload of O.5Lb . . . . . . . . . . . . . . 110

C.10 Position history of joint-1 under computed torque control. at a peak

joint-speed of 0.1 radis and a payload of LSLb . . . . . . . . . . . . . 11 1

C.11 Position history of joint-1 under computed torque control. at a peak

joint-speed of 1 rad/s and a payload of l.5Lb . . . . . . . . . . . . . . 112

C.12 Position history of joint-1 under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of l.5Lb . . . . . . . . . . . . . . 113

C.13 Position history of joint-1 under computed torque control. at a peak

joint-speed of 0.1 radis and a payload of 23Lb . . . . . . . . . . . . . 114

C.14 Position history of joint-l under computed torque control. at a peak

joint-speed of 1 rad/s and a payload of 2.5Lb . . . . . . . . . . . . . . 115

C.l.5 Position history of joint-l under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of 2.5Lb . . . . . . . . . . . . . . 116

Position history of joint-1 under computed torque control, at a peak

joint-speed of 0.1 rad/s and a payload of 3.5Lb . . . . . . . . . . . . . 117

Position history of joint-1 under computed torque control. at a peak

joint-speed of 1 rad/s and a payload of 3.5Lb . . . . . . . . . . . . . . 118

Page 11: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

C.18 Position history of joint-1 under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of 3.5Lb . . . . . . . . . . . . . . 119

C.19 Position history of joint-l under computed torque control. at a peak

. . . . . . . . . . . . . joint-speed of 0.1 rad/s and a payload of 4.5Lb

C.20 Position history of joint-1 under computed torque control. at a peak

. . . . . . . . . . . . . . joint-speed of 1 rad/s and a payload of 4.5Lb

C.21 Position history of joint-1 under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of 4.5Lb . . . . . . . . . . . . . .

C.22 Position history of joint-l under computed torque control. a t a peak

joint-speed of 0.1 rad/s and a payload of 5.5Lb . . . . . . . . . . . . .

C.23 Position history of joint-l under computed torque control? at a peak

. . . . . . . . . . . . . . joint-speed of 1 rad/s and a payload of L j L b

C.24 Position history of joint-1 under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of 5.5Lb . . . . . . . . . . . . . . C.25 Position history of joint-? under computed torque control for mot ion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . against gravi ty

C.26 Position history of joint-? under independent-joint PD control for rn*

. . . . . . . . . . . . . . . . . . . . . . . . . . . . tion against gravity

C.27 Position history of joint-2 under PD control with gravity compensation

. . . . . . . . . . . . . . . . . . . . . . . . for motion against gravity

C.2S Position history of joint-:! under computed torque control for motion

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . aided by gravity

C.29 Position history of joint-2 under independent-joint PD control for mo-

. . . . . . . . . . . . . . . . . . . . . . . . . . . tion aided by gravity

C.30 Position history of joint-2 under PD control with gravity compensation

for motion aided by gravity . . . . . . . . . . . . . . . . . . . . . . .

C.31 Position history of joint-2 under computed torque control. at a peak

joint-speed of 0.1 rad/s and a payload of O.5Lb . . . . . . . . . . . . . C.32 Position history of joint-2 under cornputed torque control, a t a peak

joint-speed of 1 rad/s and a payload of 0.5Lb . . . . . . . . . . . . . .

Page 12: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

C.33 Position his toq of joint-2 under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of O5Lb . . - . . . . . . . . . . .

C.34 Position history of joint-2 under computed torque control, at a peak

joint-speed of 0.1 rad/s and a payload of 1.5Lb . . . . . . . . . . . . .

C.35 Position history of joint-? under computed torque control. at a peak

joint-speed of 1 radis and a payload of E L b . . . . . . . . . . . . . .

C.36 Position history of joint-% under computed torque control, at a peak

joint-speed of 3 rad/s and a payload of l.5Lb . . . . . . . . . . . . . .

(2.37 Position history of joint-2 under computed torque control, at a peak

joint-speed of 0.1 rad/s and a payload of 2.5Lb . . . . . . . . . . . . . C.3S Position history of joint-2 under computed torque control, at a peak

joint-speed of 1 rad/s and a payload of 2.5Lb . . . . . . . . . . . . . .

C.39 Position history of joint-? under computed torque control, at a peak

joint-speed of 3 radis and a payload of 2.SLb . . . . . . . . . . . . . .

CAO Position history of joint-? under computed torque control. at a peak

joint-speed of 0.1 rad/s and a payload of 3.5Lb . . . . . . . . . . . . .

C.41 Position history of joint-? under cornputed torque control. at a peak

joint-speed of 1 rad/s and a payload of 3.5Lb . . . . . . . . . . . . . .

CA? Position history of joint-' under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of 3.5Lb . . . . . . . . . . . . . .

CA3 Position history of joint-2 under computed torque control. at a peak

joint-speed of 0.1 rad/s and a payload of 4.5Lb . . . . . . . . . - . - .

C.41 Position history of joint-:! under computed torque control, at a peak

joint-speed of 1 ïad/s and a payload of 4.5Lb . . . . . . . . . . . . . .

C.45 Position history of joint-? under computed torque control, at a peak

joint-speed of 3 radis and a payload of 4.5Lb . . . . . . . . . . . . . .

C.46 Position history of joint-2 under cornputed torque control. at a peak

joint-speed of 1 radis and a payload of 5.J.Lb . . . . . . . . . . . . . -

C.47 Position history of joint-9 under computed torque control, at a peak

joint-speed of 3 rad/s and a payload of 5.5Lb . . . . . . . . . . - . . .

Page 13: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

C.48 Position history of joint-3 under computed torque control for motion

aided by gravi ty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C .49 Position history of joint-3 under independent-joint PD control for m e

. . . . . . . . . . . . . . . . . . . . . . . . . . . tion aided by gravity

C.50 Position history of joint-3 under PD control with gravity compensation

. . . . . . . . . . . . . . . . . . . . . . . for motion aided by gravity

C.51 Position history of joint-3 under computed torque control for motion

against gravity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C.52 Position history of joint-3 under independent-joint control for motion

against gravity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C.53 Position history of joint-3 under PD control with gravity compensation

for motion against gravity . . . . . . . . . . . . . . . . . . . . . . . .

C.34 Position history of joint-3 under computed torque control, at a peak

. . . . . . . . . . . . . joint-speed of 0.1 rad/s and a payload of 0.5Lb

C.55 Position history of joint-3 under computed torque control. at a peak

joint-speed of 1 rad/s and a payload of 0.5Lb . . . . . . . . . . . . . .

C.56 Position history of joint-3 under cornputed torque control. at a peak

joint-speed of 3 rad/s and a payload of O.5Lb . . . . . . . . . . . . . .

C.57 Position history of joint-3 under computed torque control. at a peak

. . . . . . . . . . . . . joint-speed of 0.1 rad/s and a payload of l.5Lb

C.33 Position history of joint4 under computed torque control, at a peak

. . . . . . . . . . . . . . joint-speed of 1 rad/s and a payload of l.5Lb

C..59 Position history of joint-3 under computed torque control. at a peak

. . . . . . . . . . . . . . joint-speed of 3 rad/s and a payload of l.5Lb

C.60 Position history of joint-3 under computed torque control. at a peak

joint-speed of 0.1 rad/s and a payload of 2.5Lb . . . . . . . . . . . . .

C.61 Position history of joint-3 under computed torque control, at a peak

joint-speed of 1 rad/s and a payload of 2.5Lb . . . . . . . . . . . . . . C.62 Position history of joint-3 under computed torque control, at a peak

joint-speed of 3 radls and a payload of 2.5Lb . . . . . . . . . . . . . .

Page 14: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

C.63 Position history of joint-3 under computed torque control. at a peak

. . . . . . . . . . . . . joint-speed of 0.1 radis and a payload of 33Lb

(2.61 Position history of joint-3 under cornputed torque control. at a peak

joint-speed of 1 rad/s and a payload of 3.5Lb . . . . . . . . . . . . . .

C.65 Position history of joint-3 under computed torque control. at a peak

. . . . . . . . . . . . . . joint-speed of 3 radis and a payload of 3.5Lb

C.66 Position history of joint-3 under computed torque control. at a peak

. . . . . . . . . . . . . joint-speed of 0.1 radis and a payload of 4.5Lb

C.67 Position history of joint-3 under computed torque control, at a peak

joint-speed of 1 rad/s and a payload of 4.5Lb . . . . . . . . . . . . . .

C.6S Position history of joint-3 under computed torque control. at a peak

joint-speed of 3 rad/s and a payload of 4.5Lb . . . . . . . . . . . . . .

C.69 Position history of joint-3 under computed torque control at a peak

. . . . . . . . . . . . . joint-speed of 1 rad/s and a payload of 5.5 Lb

C.70 Position history of joint-3 under computed torque control at a peak

. . . . . . . . . . . . . . joint-speed of Srad/s and a payload of 5.5 Lb

Page 15: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

List of Tables

C.1 Joint-l peak position error in degrees . . . . . . . . . . . . . . . . . . 172

C.2 Joint-2 peak position error in degrees . . . . . . . . . . . . . . . . . . 172

C.3 Joint-3 peak position error in degrees . . . . . . . . . . . . . . . . . . 172

C.4 Joint-1 peak position error in degrees, under computed torque control 173

C.5 J o i n t 2 peak position error in degrees. under cornputed torque control 173

C.6 Joint-3 peak position error in degrees. under computed torque control 173

Page 16: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Nomenclature

~ ( 6 . e ) vector of Coriolis and centrifuga1 forces

D(6) inertia tensor of the rigid manipulator

G(0) vector of gravitational forces

inert ia of the motor. referred to the Ioad-side

overalI inertia on the load-side

joint st iffness matrix

proportional gain matrix

derivat ive gain mat rix

torque loop gain matrix

transmission mat rix

joint damping matrix

vector of joint-torque input

vector of motor-torque input

transformation varible defined as S K

singular perturbation parameter

stretched time variabie

vector of joint position coordinates

vector of joint velocity

vector of joint accelerat ion

vector of actual joint-posi t ion coordinates

vector of actual joint-velocity

joint compliance vector

time-derivat ive of the joint compliance vector

variables associated with the fast subsgstem

variables associated with the slow subsystem

xiv

Page 17: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 1

Introduction

1.1 Motivation

The brain of a robot is the controller which controls the body of the robot, the mecha-

nism consisting of physical links, actuators and transmission elements. Therefore the

successful performance of a robot largely hinges upon the efficacy of the controller,

among other factors. Most industrial robots are primarily, position-controlled de-

vices. Though this type of control is adequate for most industrial applications, tasks

that require high precision as in electronic assembly, safety critical applications like

robot-assisted surgery, high speed tasks like visual servoing, applications involving

high payload as in space craft manoeuvres, cal1 for more sophisticated control strate-

gies. This was the motivation for investigating model-based control techniques like

the computed torque control method that promise to cater to the needs of applica-

tions t hat demand higher accuracy and higher speeds while retaining flexi bili ty. The

advantages of using the computed torque control method over the independent-joint

PID control, will become clear in the ensuing chapters.

1.2 The Challenge

Any model-based control method requires a reasonably accurate mathematical mode1

of the physical system under control. Therefore, modelling a physical system as

Page 18: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

realistically as possible is the first step in the application of model-based control. A

model derived under the assumptions of rigid body dynamics may not represent the

real attributes of the physical system as every mechanical system exhibits structural

flexibility to some estent. The flexibility effects of the physical system have to be

rnodeled as well, in order to mathematically capture the actual behaviour of the

system. Hence, the dynarnics of the system can no longer be governed by the laws of

rigid body dynarnics alone. Flexible body dynamics of the system can be analysed by

advanced techniques like the singular perturbation met hod which will be discussed in

detail, in the following chapter.

After formulating the model, the next challenge is to implement the control strat-

egy using the model. There are two major problems associated with using the corn-

plete flexi ble-joint mode1 for real-time cont rol: First ly, acquiring joint-cornpliance

data and its derivatives in real-time, is difficult, if not impossible, due to hardware

constraints. Secondly, in the computed torque controi method, the complete inverse

dynamics computation has to be carried out in real-time. As the complexity of the

model grows to represent the actual p hysical system, the corn put at ional burden in-

creases as well. Though the present-day computers have overcome many bottlenecks

in highspeed computation, it is cumbersome to use the complete higher-order flexible-

joint mode1 for real-time calculations. Through parallel processing, online inverse dy-

namics calculations for a system as complex as a multi-axis robot is not impossible.

However, simplifying the higher-order mode1 to recover a reduced-order model, which

would represent the actual system with reasonable accuracy, is quite acceptable. In

this thesis, the flexiblejoint model is simplified to generate the reduced-order mode1

used for real- t ime con t rol.

From the implernentation point of view, the torque control method involves ser-

voing the joint motors to the commanded torque computed by the controller. The

method of torque servo-loop using a strain-gauge based torque feedback loop is prob-

lematic due to the tendency of the strain-gauge bridge to pick up noisy signals as a

result of weak surface bonding and temperature variations PO]. Therefore, alternate

means of implementing the torque control loop, like the current-based torque control

Page 19: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

method, have to be investigated.

1.3 Literature Review

In the p s t , researchers in computed torque control ivere faced with the huge corn-

putational demands of real-time inverse dynamics computat ions. In 1980, Paul and

Wu [32] successfully demonstrated a joint-torque sensor experiment on a single joint

manipulator. Subsequently, Luh, Fischer and Paul [19] applied the technique to two

joints of the Stanford Arm research manipulator. Computed torque control experi-

ments on a Puma 500 manipulator were conducted by Pfeiffer, Iihatib and Hake [24]

in 1989. Hashimoto [ I l ] came up with a joint-torque feedback control scheme using a

conventional position compensator for robot motion control. Faced with the difficulty

of using complex dynamics models for the application of computed torque control to

industrial manipulators, researchers focussed on the dynamically simpler class of ma-

nipulators - the direct drive arms. As early as 1983, Asada, Kanade and Takeyama [3]

conceptualized the control of direct-drive arms. In 1984, Youcef-Toumi and Asada (41

demonstrated joint-torque measurement of direct-drive arms. Hollerbach, An and

Atkeson [l] evaluated various model-based control schemes like feedforward control

and computed torque control, in comparison with the independent-joint PID control,

on the MIT Serial Link Direct Drive Arm. in 19S6. Khosla and Kanade [17] imple-

mented model-based control on a CMU Drive Drive Arm in 1986. Bejczy, et al [7]

studied the performance of various model-based servo schemes on a Puma 560 robot.

Mills and Baines [-O] designed a feedback Iinearized joint-torque control method for

DC motor driven robots in 1995. Rajagopalan, et al, applied cornputed torque con-

trol methods to control wheeled mobile robots [26]. In 1996, Zadeh and Porter [25]

designed a computed torque control based fuzzy logic controller for robotic manipu-

lators.

Robot dynamics models have been developed for several industrial robot manip-

ulators using rigid body assumptions. Armstrong (21 derived the dynamics model for

a Puma560 robot, incorporating friction models, in 1988. Tuttle [30] has dealt with

Page 20: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

modelling flexibility of the harrnonic drive, in great detail. Due t o the complexity

of flexible-joint robot models, real-time control implementation is difficult, if not im-

possible. Readman [27] has treated flexiblejoint robot modelling and control quite

extensively. Flexible-joint robot simulations have been reported by Tahboub [29], Lin

and Yu [lS]. De Luca [IO] has reported feedback linearization of robots with mixed

rigid and elastic joints. Tosunoglu [31] has dealt with modelling flexible elements in

robotic systems.

1.4 Scope of This Thesis

This thesis addresses issues related to real-time multi-axis servo control, parallel pro-

cessing, dynamics modelling, and eiectremechanical systems design and integration.

The thesis attempts to mode1 the flesibility effects of a typical industrial robot, mith a

view to implernent computed torque control on the flexible system, airning at achieve-

ing high-speed and high-precision real-time trajectory tracking.

While structural flexibility can arise from a variety of sources, as most industrial

robots have sufficiently rigid links. only joint-flexibility is dealt with. Among the

popular high-torque transmission devices used in indust rial robots, the harmonic-

drive transmission is known to eshibit a built-in cornpliance, contributing to the

flexibility of robot joints! substantially. A detailed discussion of the modelling and

analysis of the flexibility effects of harrnonic drives is presented in Chapter 2.

Based on the insight gained into flexi ble-joint system modelling, a comparative

study of the dynamics model, with and without joint-flexibility, of a CRS A460 type

robot of CRS Robotics Corporation, is presented in Chapter 3. However, the dynam-

ics modelling and analysis is restricted to the first three joints of the six degrees of

freedom CRS robot. The first three joints of the robot, namely, the waist, the shoul-

der and the elbow, are used for attaining the three degrees of freedom for positioning

the end-effector, while the last three joints of the wrist, namely, pitch, roll and yaw,

are used for the other three degrees of freedom, required for orienting the end-effector

in space. The last three wrist-joints have loiver inertia and smaller dynamics effects

Page 21: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

like centrifugal, Coriolis, frictional and interaction forces, compared to the first three

joints, due to their lower toque-handling necessity and smaller size. Hence, if the

control system can be proved to be successful for controlling the first three joints, the

technique can be extended to the last three joints, subsequently. Moreover, due to

the practical dificulty of implementing met hods to measure cornpliance and i ts higher

derivatives in reai-time, in commercially available industrial robots like the CRS A460

robot, using the complete flexible-joint mode1 of the robot for real-time control, is

difficult, is not impossible. Therefore, only a reduced order mode1 has been adopted

for the real-tirne implementation of computed torque control of the CRS A460 robot,

in this thesis.

Chapter 4 deals with the computed torque control method, presenting a thorough

understanding of the technique and its merits over the independent-joint PID control

method. From the point of view of controlling the joint-motor torque, computed by

the model-based controller for a particular manoeuvre, the computed torque control

method can be categorized as the method with the inner-torque loop (111 , [5] and

that wi t hout the inner-torque loop. While the former met hod employs strain gauges

to actually measure the joint torque so as to implement a closed-loop torque control at

the lowest or the "innermost" level of the control system, the latter method senses the

motor torque via the current drawn by the armature circuit. Due to the elimination of

the afore-said st rain gauge based inner-torque foop, the current- based torque control

method has been advantageously adopted in this thesis.

Chapter 5 presents the detailed description of the experimental design, explaining

the method of implementing the cornputed torque controller without the inner-torque

loop. The experimental results are presented, compared and analyzed in Chapter 6

and finally, Chapter 7 summarizes the thesis and presents a critical analysis of the

conclusions deri ved.

Page 22: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 2

Flexible Transmission Effects in

Robots

The theoretical concept of a rigid body that does not deform under external forces,

is an engineering simplication of the actual physical characteristics of the material

which forms the body. In practice, however, al1 materials have finite stiffness and

hence deform under external forces and moments. The mechanical structure of a

robot is composed of links, joints and drive components, each of which is flexible.

Sources of compliance include gear teet h, timing belts, cables, transducers used to

measure forces and moments, built-in flexibility as exhibited by harrnonic drives,

and the compressibility of the transmission medium as in pneumatic drives. While

some of the compliance may be purposely introduced by mechanical design, as in

the flexspline of a harrnonic drive, a majority of them arise due to many inevitable

factors associated with the properties of materials used and manufacturing methods

employed. A discussion of the sources of compliance in the mechanism of a robot is

in order.

2.1 Cornpliance Distribution in Robot Mechanisms

The rnechanisrn of the robot consists of linkages, supporting elements like bearings,

guideways, and power transmission elements Like gear drives, timing belts, cables,

Page 23: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

hydraulic and pneumatic cylinders. Every element in the mechanism contributes to

the overall compliance of the mechanical structure of the robot, although in varying

proportions. Compliance is desirable in certain cases as in a RCC (Remote Center

Compliance) device. However in many other cases, structural compliance is unde-

sirable but inevitable in mechanical design. Increasing the cross sections or using

high-modulus conventional materials, as a means to reduce compliance, are in many

cases ei ther counterproductive or not cost effective. Over-design increases the weight

and results in larger delections due to larger inertia forces. In many instances, both

the external and interna1 dimensions of the links are limited by design and application

constraints. Though stiffness enhancement by means of additional supports is very

effective, it limits the universality of the robot as the supports have to be custom

designed for specific applications.

In order to minimize, if not eliminate, the compliance of the overall structure, thus

to improve the performance and accuracy characteristics of the robot without losing

generality, one has to understand the sources of structural compliance, compute a

breakdown of compliance among the various structural constit uents like linkages and

transmission elements and direct design efforts toward their improvement. Since the

most important goal is reduction of deflections in structural chains caused by a force

at a certain point, the use of a compliance parameter instead of a stiffness parameter is

natural in many cases as compliance breakdown is equivalent to deflection breakdown.

Effective compliance of a structure is measured by the response of the structure

to certain performance-induced forces like inertial forces, and forces caused by inter-

actions with the environment. Structural compliance is a result of the following four

basic factors:

Structural deformations of load-t ransmit ting components which are idealized for

computational purposes as beams, rods, plates, shells, etc., also wi t h idealized

loading and support conditions.

Contact deformat ions between parts contact ing along nominally small contact

surfaces like balls, roller, etc., or nominally large but act ually small contact

Page 24: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

surfaces like imperfectly rnachined flat surfaces.

a Deformat ions in the transmission devices caused by mechanical deflect ion of

gear tooth. compressibility of a working medium as in hydraulic or pneumatic

systems, deformation of electromagnetic field in electric motors. etc.

a Modifications of numerical st iffness values caused by kinematic transformations

between the area in which the deformations originate and the point for which

the effective stiffness is analyzed.

There are many ways of measuring and analyzing compliance distribution in a ma-

nipulator structure. They include static loading of the linkage and measuring ensuing

static deflections and measuring natural frequencies under shock or sinusoidal exci-

tation, compiling mathematical modekt calculating masses and moments of inerita.

and finall- deducting compliance values. To construct the distribut ion, compliances

of structural elements as well as transmission devices. have to be computed.

The significance of each of the contributors to the overall effective compliance.

depends not only on the magnitudes of their compliance but also on their operat ing

speeds. To evaluate the effect of individual cont ribut ors. al1 the compliance magni-

tudes have to be reflected to one selected structural element. If such a reduction is

properly done. neither natural frequencies nor modes of vibration are affected and

the overall compliance referred to a certain cornponent of the system ~ o u l d be the

same as the compliance value measured by the application of force or torque to this

component and recording the resulting deflection. The condition to be satisfied for

the reduced algorithm to be correct is that both potential and kinetic energy are the

same for mathematical models of the original and the reduced systems.

A direct consequence of structural compliance is that it rvould result in loss of

overall steady state positional accuracy of the robot. if the positional parameters

are measured only at the driver-end of the transmission, assuming total rigidity of

the transmission components. This kinematic error could be corrected by suitable

calibration procedures. A more serious effect . however, is t hat flexibili ty int roduces

complexities in the dynamics of the otherwise simpler rigid system due to the addi-

Page 25: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

tional degrees of freedom. Therefore, in pract ice. a robot's mechanical structure is

nonrigid and dynamically more cornplex than predicted by the rigid body dynamic

model. If the flexible transmission effects are neglected, t hen the closed-loop band-

width of the joint angle and task space control loops will be limited. and dynamic

positioning errors can occur if the fast dynamics are ercited.

This t hesis deals wit h compliance introduced only by joint-flesi bility. Robot joints

are actuated by electric motors or hydraulic or pneumatic actuators and the mechan-

ical motion is transmitted to the links via transmission components like gear box.

timing belts, cables, etc., except direct-drive robots in which case the actuators are

moun ted directly ont O the links, t hereby minimizing any Bexi ble transmission ef-

fects, at the cost of large-sized and expensive actuators, comparativeiy Due to the

compliance of t hese individud transmission elements. the overall joint of the robot

becomes flexible. One of the typical mechanical transmission systems used in indus-

trial robots. which int roduce joint-flexibility, are harrnonic drives. It is t herefore of

interest to study the flexibility effects of harrnonic drives in detail.

2.2 Harmonic Drive

Harrnonic drives are characterized by a high transmission ratio and compact size.

They are favoured for electromechanical systems wit h space and weight constraints.

hloreover. the? result in the use of relatively light high-speed motors. The harrnonic

drive is kinematically akin to a planetary drive with one gear that is made with a

flexible rim. It consists of a flexspline, a circular spline and a wave generator, as

illustrated in figure 2.1. The flexspline lies inbetween the circular spline and the

wave generator and it takes the shape of the wave generator which rotates in close

contact with the flexspline. The wave generator is ellipticai in shape so that only a

fraction of the teeth of the flexspline are in contact with the corresponding teeth on

the circular spline. Also, the flexspline has a couple of teeth less than the circular

spline. A schematic representation of a typical harmonic drive driven joint is depicted

in figure 9.2.

Page 26: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Wave Generator Flexspline Circular SpIine Figure 9.1: The Harmonie Drive unit

The gear ratio and the direction of rotation can be modified by fising any one of

the three components and using the other two as the input link and the output link.

respective&-. Typicaltp. the wave generator is clriwn by a high speed niotor and the

Bexspline is connected to the output link. while t h e circular spline is kept fixed.

Flesspline is the primary flesible element in a harmonic drive. srhich introduces

compliance into the transmission. Torsional stiffness of the flexspline. like man- other

spring elements. is nonlinear. Hoivever. cince the variations in torsional stiffness of

the Aesspline are unpredictable and minimal. for a11 practical purposes it can be

considered to be constant. without loss of generality Thus the compliance of the

harmonic drive can be modelled by means of a spring element of constant stiffness

and a damping element to represent the cumulative damping effects of the drive as

shown in Figure '2.3.

Since the wave generator and the dril-e-motor are mounted coasially. their rotor

inertias can be lumped toget her and reflected ont0 t h e load side of the gear box. The

transmission ratio. n. of the harmonic drive in this configuration can be calculated as

follows:

Page 27: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Figure 2 . 2 Schematic Representation of the Harmonic Drive Driven Joint

joint damper

n drive angle S

joint deflection 0

link angle

Figure 2.3: Block Diagram of the Flexible-Joint Mode1 C273

Page 28: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Figure 2.4: Free-body Diagram of the Flexible-Joint System

w here,

n,, = is the number of teeth on the flexspline

n, = is the number of teeth on the circular spline

The free body diagram of the harrnonic drive joint is shown in Figure 2.4. .4c-

cordingly, the dynamic model of the flexible-joint is formulated as follows:

where, al1 inertial quantities are referred to the load-side of the drive, unless stated

otherwise:

n = transmission ratio

Jm effective polar moment of inertia on the motor-side

= (Jrnotor f Juauegmerator ) X n 2

Page 29: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

JI = effective polar moment of inertia on the load-side

C= effective damping of the joint

K= torsional stiffness of the Aexspline

Bm input link position

Bm input link velocity

Bm input link acceleration

Br= output link position

&= output link velocity

al= output link acceleration

The flexible joint mode1 of the harmonie-drive driven joint can be furiher simplified

by rewriting Equations 2.2 and 2.3 in terms of torsional compliance, z, of the flexspline

instead of the actual link coordinates. Therefore, by defining the torsional compliance,

z and its derivat ives as follorvs,

the fourth order flesible joint system modelled by equations '2.2 and 2.3 can be rewrit-

ten in terms of the joint compliance z as

Futher transposition of equations 2.7 and 2.8, yields

Page 30: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

By subtracting equation 2.10 from equation 2.9, the fourth order system in 8,

shown in equations 2.2 and 3.3, can be simplified to a second order system in terms

of the transmission compliance z, as follows:

where,

2.3 Singular Perturbation Theory in Robots with

Transmission Compliance

2.3.1 The Concept of Singular Perturbation

The singular perturbation method is a tool to simplify cornplex dynamic rnodels

without much loss of generalization. The dynamic model of a physical system can

be considered to be made up of two coupled dynamic systems, namely, the usual

rigid body or low frequency dynamics and the other, high frequency dynamics due

to compliance [XI. This decomposition into slow and fast systems is governed by

a separation of time scales. Typically, the reduced model represents the average

phenomena while the boundary layer models evolve in faster time scales and represent

deviations from the predicted slow behavior.

In principle, the singular perturbation approach involves the identification of a

parameter in the model, which can tend to become a negligibly smail quantity in

the limiting case. This parameter is termed as the perturbation variable. As this

perturbation variable tends to zero, the model is said to be singularly perturbed.

Upon suitable manipulation of the perturbation parameter and the time scale, the

Page 31: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

high frequency dynamics of the system can be analysed (271. Thus? the singular

perturbation method of analysis, in essence, involves the following procedure:

Singularly perturbed system modeling: The systern is represented in the stan-

dard form and the perturbation parameter is identified.

Recovery of the rigid body model: Then, the singular perturbation parameter

is set to zero and the rigid body model is regenerated from the flexible model.

Stretching the time scale: The time scale is stretched by a suitable transforma-

tion so as to reveal the high frequency dynamics of the flexible system.

A Reduced Order flexible model is generated to include the effect of joint flexi-

bility wit hout increasing the order of the rigid body model.

If the high frequency dynamics of the flexible model can be proven to be asymp-

totically stable, t hen any traditional controller for rigid robot control can be

used to design the controller.

Corrective control can be designed to achieve the compensation of the joint

flexibility using the reduced order flesi ble model.

The advantages of modelling a flexible system as a singularly perturbed system is

that the model obtained is of the same order as the rigid system but is a more accurate

model for flexible joint model. The reduced order system is linearizable by nonlinear

feedback and a feedback signal for this system does not require information about

the joint acceleration and jerk. Moreover, it is of practical interest to deal separately

with the fast mode cont rol and rigid body control. which has a much lower frequency,

thereby enabling different sampling rates for each subsystem to be designed. Also,

the laws that are designed for rigid body control can be readily adopted to control

the flexible system whose model accounts for cornpliance.

Page 32: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

2.3.2 Modeling Transmission Cornpliance wit h the Sin-

gular Perturbation Met hod

Consider the case of the harrnonic drive transmission w hich has an in-built flexibility

due to the flexspline. The one d.0.f. harmonic-drive driven flexiblejoint model has

been derived as equations 2.11 and 2.12, in Section 2.2.

It is quite evident that the compliance of the joint, i , can readily serve as the

singular perturbation variableo p. Upon applying the mapping: z + w, such that

the afore-said harrnonic drive mode1 transforms into

.As the stiffness of the flexspline is knorvn to be high, of the order of 10' Nm/rad

[ 'T l , i.e., k » 1, it follo~vs that the singular perturbation parameter p « 1. There-

fore, we can regenerate the rigid body model from the flesible model as the singular

perturbation, p -t O. Hence. from equations 2-16 and 2-17, the slow subsystem can

be regenerated as follorvs:

wher e, the overline indicates that the variables belong to the "slown subsystem, due

to the rigid body dynamics.

In order to visualize the high frequency dynamics of the "fast" subsystem, the

Page 33: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

time scale must be stretched by applying the following temporal transformations t o

the flexible model:

In the stretched time scale, the flesible joint model 2.11 and 2-12, becomes

To separate the effects of high frequency dynamics due to the fast subsystem,

from the overall flexible-joint model, subt ract equat ion 2.30 from equation 2.15 and

equation 2.21 from equation 2.19. Thus,

where, the " hat" , A indicates variables associated wi t h high frequency dynamics.

C learly,

w = (w - TV)

wf = (wl - 0)

+J = (w" - O).

Hence, Equations 2.22 and 2-23 represent the high frequency dynamics of the

flexible joint, due to the cornpliance of the system.

Page 34: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

2.3.3 S tability Analysis of Mechanical Syst ems Wit h

Transmission Cornpliance

Consider t he high frequency dynamics of the flexible joint rnodel, represented by

equation 2.22. It is apparent that the rigid body dynamics of the afore-said system is

stable. Therefore, the overall system will be stable if and only if the high frequency

dynamics of the flexible joint rnodel does not destabilize the system [ls]. Hence, if

Ive can prove that equation 2.22 is asymptotically stable, then the overall system will

be stable.

Transforming equation 2.22 to Laplace transform domain, we have

We can prove that this system will be stable if the poles of the characteristic

equation lie on the negative half of the s-plane. As the parameters C and J are

physical constants, t hey are positive definite. Furt her analyzing the determinant of

the characterist ic equation 2.27 reveals the following t hree cases:

In al1 the three cases: it can be seen that the poles lie on the negative half of the

splane. This proves that the high frequency dynamics of the flexible joint system are

asymp totically stable.

Also, the complete solution of the flexible-joint system dynamics, consis ts of two

components, namely, that due to the slow subsystem and the other due to the fast

subsystem. i.e.,

Page 35: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Complete solution = Slow-system solution + 0 ( p )

where, 0 ( p ) is the perturbation due to the fast subsystem dynamics. Since the fast

subsystem has been proved to be asymptotically stable, Tikonov's theorem 1151 proves

t hat the overall flexible-joint system represented by equation 2.22 is stable.

Page 36: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 3

Dynamic Modeling of

Flexible- Joint Robots

Compliance in the mechanical structure of a robot, complicates the dynamics of the

system as it is no longer governed by rigid body dynamics alone. The nonlinear

system ivould consist of a slow subsystem which is contributed by the rigid body

dynamics and a fast subsystem ivhich is a consequence of the flexibility in the system.

High frequency dynamics thus introduced into the system due to compliance can be

modelled by the singular perturbation rnethod, discussed in Section 2 - 3 2

Tivo principal sources of flexibility are link flexibili ty and joint flexibility. Al-

though both types of compliance can be minimized by mechanical design and proper

manufact uring met hods, t hey cannot be completely eliminated. Though direct drive

design can be employed to overcome the demerits of transmission compliance, in ex-

isting robots, mechanical improvements may not be possible or may prove to be too

espensive to be economically feasible. Hence the effects of compliance can be over-

corne by suitable control strategies. This calls for a knowledge of the high frequency

dynamics that are introduced by compliance. If the variables to be controlled can

be measured, a controller can be designed to improve the real time response and the

control bandwidth of the robot. This chapter focusses on modeling the dynamics of

a CRS A-460 robot, incorporating the joint-flexibility introduced by the harmonic

drives of the first three joints.

Page 37: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

3.1 The Dynamic Mode1

Robot dynamics has been traditionally deait wi th respect to rigid manipulators in the

literature, by Asada and SIotine (19S6), Spong and Vidyasagar (1989). This section

discusses about the dynamic mode1 of a jointed-arm, vert ically art iculated open-chain

kinemat ic configuration type of robot from the rigid body perspective as well as the

flexible system a~proach . However, the flexible manipulator dynamics are curtailed

to the treatment of flexibility in the joints of the mechanism.

3.1.1 Rigid Manipulat or Dynamics

The dynamic mode1 of a rigid manipulator can be represented as follows:

~ ( e ) ë + c(e,é) + ~ ( e ) = T

where,

J ( B ) E RnXn is the inertia matrix of the robot,

C ( 0 , è) E Rn is the vector of centrifuga1 and Coriolis forces ex-

pressed in the robot joint space,

G E 31" is the vector of gravitational forces,

T E Rn is the vector of joint torque input,

0 E Rn is the vector of joint coordinates of the robot.

3.1.2 Flexible- Joint Robot Dynamics

As mentioned earlier, this thesis focusses on the dynamics due to joint-flexibility

effects alone. In t his section, the dynamic mode1 of a CRS A460 robot is presented

with respect to the flexibility effects of the harmonic drives of the first three joints,

narnely, waist, shoulder and elbow. Through Lagrangian principles, the high-speed

dynamics of the flexible-joint robot can be modelled as follows:

Page 38: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

where,

n, = transmission matrix

TmF motor input torque vector

rotor inertia matrix, consisting of

the motor and the wave generator inertia,

referred to the Ioad-side

output link acceleration vector

joint-corn pliance vector

joint stiffness rnatrix

matrix of joint damping efficients

Note that the transmission matrix is not diagonal due to the transmission coupling

effect between joint 2 and joint 3.

Following the same notation, the slow subsystem due to the rigid body dynamics

can be formulated as follows:

where,

Page 39: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

C(0, 8) = vector of centrifuga1 and coriolis forces

G(9) = vector of gravity forces

J = overall effective inertia matrix,

referred to the load-side

bi = second derivative of the joint-cornpliance

= vector tvith respect to tirne

3.2 Singular Perturbation Analysis of the Flexible-

Joint Robot

The flexible-joint robot model represented by equations 3.2 and 3.3 can be analyzed by

the singular perturbation method discussed in Section 2.3.2. By solving equation 3.3

for 8 and substituting in equation 3.3, we have

In dealing with robot joints, ive readily have a singular perturbation parameter,

the transmission compliance of the joint itself. Hence, any dynamic model accounting

for transmission compliance, can be analyzed by the singular perturbation method

discussed in Section 2.3.2, by decomposing the original model into its constituent slow

and fast subsystems. Therefore, the singular perturbation parameter,

where, K = d i a g { k i . b,. , kn). Assuming Ici to be equal and applying the transfor-

mation,

such that,

Page 40: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

equat ion 3.4 t ransforms to

In practice it is quite reasonable to assume that the joint stiffness is quite high in

industrial robots using a high gear reduction as in harmonic drive driven robot joints.

It is knotvn that the flexspline of the harmonic drive exhibits high stiffness of the order

of 10' Nm/rad [ 'LT]. This assumption of high stiffness would rnake the perturbation

variable tend to zero and thereby sirnplify the higher order flexible model, without

largely compromising on the accuracy of the model.

This fact leads to the singularity condition of the singular perturbation model 3.5

of the flexible-joint system. Since IKI >> 1, it follows that p << 1. Thus, setting

Ip( = 0, the slow subsystem due to the rigid body dynamics can be regenerated as

follows:

~ T , ( I - J;'J) = J;~JTF+ c(8,e) + ~ ( e ) (3.6)

In order to reveal the fast subsystern dynamics, the time scale can be stretched

by defining the following transformations:

where, r is the nerv tirne variable in the stretched tirne scale.

Upon stretching the time scale, Equation 3.5 becomes,

Defining the high speed variables,

Page 41: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

and substituting in equation 3.7, the high frequency dynamics of the system can be

represented as,

(J - JJW" + J ; ~ JRW' + J;'JW = O (3.8)

where, the prime symbol ' indicates differentiation, * indicates variables associated

with high frequency dynamics while the overline - refers to the slow system variables.

3.2.1 Stability of the Flexible-Joint Robot System

It is clear that the slow subsystern 3.3 of the flexible-joint system modelled by equa-

tions 3.2 and 3.3, is stable. As discussed in Section 2.3.2 for a one d.0.f. system, it

can also be proved for the multiple d.0.f. robot system by Tikonov's theorem [l5]

that the stability of the overall system hinges upon the stability of the fast subsystem

dynamics represented by equation 3.2. Therefore to prove that the overall system

will be stable, it is sufficient to show that the high frequency dynamics of the fast

subsys tem, represented by equat ion 3.8, is asymptot ically stable [l.j].

Upon analyzing equation 3.8, it can be seen that al1 the parameters involved are

physical guantities and hence, are positive definite. Furthermore, the term (J - J,) is always positive: since the quantity 'J' is the overall effective inertia of al1 the

components of the flexible joint, referred to the load-side, while the quantity 'J,'

is the inertia of the rnotor armature and the wave generator alone? referred to the

load-side and hence, the latter is always smaller than the former.

Clearly, al1 the coefficients w and its derivatives in equation 3.8 are positive defi-

nite. As a result, it is proved that the high frequency dynamics, shown in equation 3.2,

of the flexible-joint system represented by equations 3.2 and 3.3, is asymptotically sta-

ble. Therefore by Tikonov's theorem (151, it can be concluded that the application of

a rigid control law to a system with joint-flexibility, does not destabilize the system.

Page 42: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 4

Computed Torque Control

4.1 Why Computed Torque Control?

The ever-groiving demand for speed and accuracy, at higher payload capacity has

led to the burgeoning of model-based control strategies. Speed and accuracy are

a t loggerheads. .A given task can be performed accurately at a slower speed while

the same task if done faster, might incur a penalty in the accuracy with which the

task is performed. The situation is further aggravated if the task is to be performed

wit h a larger payload. O n the other hand, performance can also deteriorate a t very

slow speeds wi th large payloads. Because at higher speeds, the inertia of the system,

provides enough moment urn to follorv a given t rajectory mi t hout much discontinui ty,

thereby resulting in a "smoother" position trajectory. However, a t very slow speeds.

due to the lack of any significant inertial effects, the systern tends to yield relatively

easily, to any inherent disturbances like frictional effects, environmental interaction

effects and the dynamics of the payload.

Besides speed, accuracy and payload, the application for which the system is

designed also plays a major role in evaluating the importance of the method of con-

trol. For instance, in safety-critical applications like robot-assisted surgery, nuclear

materials handling in reactors, hazardous waste disposal, space-craft manoeuvres in

outer-space, settling for a simpler control method would amount to compromising on

the safety standards. In contact applications like robotic deburring, the dynamics of

Page 43: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

the closed-loop system, demands a robust controller which can reject external distur-

bances introduced by the process of application. Hence, for any method which does

not even compensate for the dynarnics of the system, let alone the dynamics of the

payload and the environment, it is difficult, if not impossible, to meet al1 the specifi-

cations of speed, accuracy and payload. Wi t h the compu ted torque control method,

if the mode1 of the system is known reasonably accurately, then the system dynam-

ics can be compensated effect ively, t hereby minimizing deviat ions from the desired

t rajectory.

4.1.1 Shortcomings of The PID Control Method

One of the most commonly used commercial robot controllers is the PID controller or

more specificaliy, the independent-joint PID controller. The PID controller is popular

because of its simplici ty: computationally less intensive t han model-based control

methods like the computed torque control technique, while being robust enough for

most of the less demanding applications. However, the PID control method suffers

from the following drawbacks, for controlling a cornplex electro-mechanical system

like a robot:

Only k inemat i c constraints are taken into account while rigid body

dynamics are treated as disturbances: The task of the control system is to

move the robot from the present position in space to the target position, with-

out regard to the dynamical effects like forces and moments, that may corne into

play during the motion, affecting the ver? execution of the task itself. This neg-

ligence of dynamics of motion, is suitable for slow speeds and small payloads at

low acceleration, in which case dynamic effects caused by rigid-body dynarnics,

like inert ia forces, cent rifugal forces, coriolis forces, gravi tat ional forces, viscous

friction forces and nonlinear coupling effects are minimal. However, at higher

accelerat ion, higher veloci t ies and larger payload, rigid body dynamics become

dominant and hence, if neglected, result in larger performance errors.

Page 44: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

2. The underlying assumption made justifying the use of an independent-joint

controller is that the joints of the mechanism are dynamically decoupled, with

each joint treated as though it is independent of the other joints of

the mechanism of the robot: In reality, the interaction between the vari-

ous links of a robot manipulator, are significant and are cross-coupled through

nonlinear dynamics. Hence when the controller attempts to compensate for the

performance error of one joint without taking into account the influence of the

other joints upon this particular joint, it is difficult to attain the set-point con-

dition in real-time. .\ny compensatory action taken at one joint may introduce

in an offset in the set-point at the rest of the joints. This interaction effect

becomes more pronounced at higher speeds and Iarger payloads.

3. The controller is purely error driven: Error is the cause and the controller

action compensating for the error, is the result, although the control signal

may or may not be able to completely eliminate the error in real-tirne. Faster

control action can be achieved by using larger gains, however, higher gains cal1

for higher sampling rates, which is limited by the availability of computing

hardware. Besides, larger gains may iead to instability. Therefore, for a given

hardware, there is an inherent saturation lirnit for the accuracy that can be

at tained by the controller.

4.1.2 Merits of The Computed Torque Control Method

Though the Corn pu ted Torque Cont rol met hod is computationally demanding, i t

overcornes the drawbacks of the Independent-Joint PID control method. Computing

power is no longer a bottleneck as present day cornputers are much faster than those

that were amilable when the PID control method was available. Parallel processing

using transputersl DSPs enables the complete computation of inverse dynamics of the

CRS A460 robot in real-time, within one millisecond. The advantages of computed

torque control can be surnmarized as follows:

Page 45: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

1. As the controller uses a mathematical model of the system dynamics, in order

to generate a control signal to compensate for the rigid-body dynamics of the

physical system, performance is superior to that of the PID controller, under

similar operating conditions. This difference is more pronounced a t very high

speeds and high acceleration with a massive payload.

2. Since the exact torque demanded by a particular motion with a particular pay-

load, is computed and is known, it is possible to protect the system lrom unex-

pectedly large torques mhich may arise due to collisions with the environment,

by adopting on-line safety measures.

3. The computed torque control method is practically robust to external distur-

bances like payload variations if the dynamics of the payload is less significant

compared to the dynamics of the system under control. Horvever, in situations

like handling a large mass of liquid payload, the dynarnics of the payload cannot

be treated as disturbances and hence, must be incorporated in the dynamics

model of the systern under control.

4. Compared to the cause-and-effect type of control employed by the PID controller

which reacts only after an error occurs, the computed torque controller is an

anticipatory type of controller due to the feed-forward component of the control

sys tem. Due to inevi table modelling inaccuracies, t here is, however, a small

error in the prediction made and this is corrected by the feedback component of

the controller. This ability of the computed torque controller to actually predict

the appropriate control signal to compensate for errors, if any, that may arise

during the motion in real-time, is the power of the method.

5. The controller utiiizes the model of the system in the feedback loop in order

to decouple the dynamics of the systern, in real-tirne. As a result, each joint

of the cross-coupled dynamic system can be controlled independently, once the

cont rol signais have been computed.

Page 46: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Trafectory Inverse Inverse Planner Kinematics Dynamrcs

Robot

Feedback Control

Figure 4.1: A schematic representation of the Cornputed Torque Cont rol System [il

6. Though the computed torque controller uses the dynamics mode1 of the system

under control. to compute the control signals. model inaccuracies have minimal

effect on performance [16]. Robustness of the computed torque control method

is a result of using the model in addition to the PID control technique.

4.2 What is Computed Torque Control?

Computed Torque Control [l] is a model-based control rnethod which utilizes the

dynamics model of the system to compute the control torque signals that are input

to the system. given the present state of the system. in order to bring about the

desired motion. Computed Torque Control is regarded as a form of Xon-Linearity

Cancellation Techniqve [II, for if the dynamics model of the system is exact. then

the nonlinear dynamic perturbations are exact ly cancelled. Figure 4.1 illust rates a

generalized cornputed torque control system applied to a robot.

Page 47: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

In principle. the computed torque control method is a combination of feedforward

and feedback control. The feedforward component is used to compute the control

torque signal using the inverse dynamics model while the feedback control component

employs a PD (Proportional-derivat ive) control law, to es timate a quant ity called

Corrected Acceleration [l], which is to be attained by the system in order to achieve the

desired position at the desired velocity within the desired tirne, carrying the desired

payload and/ or imparting the desired force on the environment. The corrected

acceleration is used in the place of inertial acceleration, to compute the inertia forces

that would corne into play during the motion. Other components of the control torque

signal, required to compensate for gravitational forces, Coriolis and centrifuga1 forces,

and friction forces, are calculated using t he inverse dynamic model of the system. The

feedforward computation is done on the basis of the actual trajectory; hence inverse

dynamics computations must be done in real-time. Thus the overall control torque

signal is computed, every sampling period, using the dynamic model, by knorving the

present state of the system, and the desired state, under the temporal and spatial

const raints.

Typically, the computed torque control system consists of an inverse dynamics

computation module, a trajectory planner, an inverse kinematics module and a torque

servo module. The trajectory planner could be part of a task-planning module which

generates the sequence of tasks to be carried out by the robot. The task-planning

module is at the highest rung in the hierarchy of the control system software. The

trajectory planner which is at the next lower level, would eventually generate kine-

rnatic target commands, with respect to the task coordinate frame. Through in-

verse kinematics, the Cart esian t arget cornmands - desired position, desired velocity

and desired acceleration, are converted to the corresponding joint space commands.

Knowing the actual position and the actual velocity in the joint space coordinates, the

inverse dynamics module would compute the control torque signals for that particular

sampling period, using the inverse dynamic model of the system. The torque servo

module forms the lowest level in the control hierarchy; it accepts computed torque or

current commands from the inverse dynamics module and executes a low-level servo

Page 48: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

loop inorder to bring about the desired motion.

The greatest challenge of using the computed torque control method is that of

computing the cornplete inverse dynamics model of the system, arnong other calcula-

tions, within the sampling period. This is quite challenging, as the sampling period

employed in commonly used digital control systems is of the order only a few mil-

liseconds. However, thanks to the modern techniques of parallel computing, with the

aid of the present-day commercially avai Iable parallel processors like t ranspu ters and

DSPs (Digital Signal Processors), which employ RISC (Reduced Instruction Set Corn-

puting) based design, there is a tremendous amount of computing power available at

the disposa1 of the cornmon user. Futherrnore, higher computationally intensive tasks

can also be perforrned using more powerful massively parallel architectures.

4.2.1 The Computed Torque Control Law

Consider the typical robot manipulator system, represented by the following dynamic

IV here,

J(B) E WnXn is the inertia matrix of the robot,

C ( 0 , é ) E Rn is the vector of centrifuga1 and Coriolis forces ex-

pressed in the robot joint space,

G E Rn is the vector of gravitational forces,

T E 32" is the vector of joint torque input,

F(0, e ) E Rn is the vector of static and viscous frictional forces

expressed in the robot joint space,

B E Rn is the vector of joint coordinates of the robot.

The computed torque control law for the model 4.1 is stated as follows:

Page 49: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

wvhere, al1 the terms are as defined in mode1 4.1, except the corrected acceleration

terrn, a*, which is defined as follows:

where,

ëd E 8" is the vector of desired acceleration with respect

to the joint coordinates of the robot

ed E Rn is the vector of desired velocity with respect to the

joint coordinates of the robot

ë E 32" is the vector of actual velocity with respect to the

joint coordinat es

d d E 8'' is the vector of desired position with respect to

the joint coordinates

8 E 32" is thevectorofactual position withrespect to the

joint coordinates of the robot.

I i , is the proportional gain matrix

Ku is the derivative gain matrix

The proportional and the derivative gains can be designed by knowing the phys-

ical characteristics of the system or by following empirical tuning methods like the

Zeigler-Nichols method [33]. Thus, for every sarnpling period, from the position and

velocity feedback information, the corrected acceleration is estimated using Equa-

tion 4.3 and thereby, the control torque can be computed using the control law 4.2.

The computed torque signal is further communicated to the torque servo module for

real-tirne execution. This process is carried out repeatedly, through the trajectory

period, at regular sampling intervals, until the desired trajectory is cornpleted.

Page 50: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 5

Experimental Set-up

Hardware

The experimental subject for the computed torque control experiments described in

this thesis is a CRS Robotics Corporation A460 type robot with a C500 controller,

which is a six-axis vert ically zrt iculated jointed arm robot manipulator, having a

payload capacity of 2 .9Xg (6.5 lb) and capable of attaining a peak joint acceleration

of 12.56 rad/s2 and a maximum joint velocity of 3.14 rad/s.

In order to conduct the e~periment with different payloads, circular steel discs,

each tveighing 0.23Kg (O.jLb), were designed such that they can be bolted on to the

face plate of the manipulator wrist.

5.2 Software

The real-time control system software runs in a network of six transputers, config-

ured in a customized pipeline architecture, such that the channels of communication

between the transputers is serial in nature, as shown in Figure 5.2. The various

transputer modules are symbolically narned as Runex, Traj, Control, Fti, Servo and

Kin. Runez serves as a user interface, Traj does trajectory calculations to generate

online setpoint commands for the Control module which is responsible for the inverse

dynamics computations and control signal generation. Servo is dedicated to low-level

Page 51: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Figure 5.1: The CRS A160 Robot

Page 52: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

servo loop control, while K in does the inverse kinematics calculations. Fti is an in-

terface for the force/torque sensor mounted on the robot endeffector. The control

software is executed within a cycle tirne of Ims, that is, at the rate of 1000Hz. The

interested reader is referred to (321 for more detail.

5.3 Computed Torque Control

with the Inner Torque-Loop

The control torque signal that is computed by the control algorithm has to be executed

by the motor control hardware. The torque delivered by the motor or the load torque

that can be overcome by the motor must be equal to the commanded torque control

signal. This can be accomplished by executing a torque servo loop at the lowest or

the innermost level and hence the name, Inner Torque Loop. The method of using

the inner torque loop to servo the commanded torque, is illustrated in Figure 5.3.

The inner torque loop can be considered as another PID control loop at the lowest

level. The set point to the torque servo loop is the control torque computed by the

cornputed torque controller. The actual load torque on the joint can be measured

using a suitably calibrated strain-gauge bridge mounted on the flexspline of the har-

monic drive of the joint motor. This rneasured torque can be used as a feedback on the

comrnanded torque and hence a closed-loop torque control scheme can be developed.

This method was adopted by [?O], [ I l ] and [11], previously.

The method of using the inner torque loop to servo the computed torque, although

straightforward, suffers frorn the following drawbacks:

0 The strain gauges mounted on the flexspline are subject to continuously alter-

nating tension and compression, during the operation of the harmonic drive. As

a result of the fatigue loading, the bonding between the strain gauges used for

torque-sensing, and the surface of the flexspline, is susceptible to failure. This

ivould result in spurious torque feedback signals, Ieading to poor performance

or even instability.

Page 53: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

466 COMPUTER WTïH TMB16 l

X O-" 1 'ROOF

801bô 'GU ES?

- - - - - - - "

-.-- - -- - -- ------ -- 1

E F

- I

3

I

X

I

T b O S ' T J X S ' N D ' Tb05 ' T m ToOS 8 KIN 7 SERVO TOROUE 7 FORCE ';- WNTROL 7 TRAJ

2 A 3 3

. b

80288 'HOSF

b

-- ----

Figure 5.2: Topology of the transputer network Cs]

Page 54: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Figure 5.3: Cornputed Torque Control with the Inner Torque-Loop

Frequent preventive maintenance procedures must be adopted to ensure the

proper operat ion of the s t rain-gauge based torque feedback loop. This requires

trained personnel, to follow appropriate calibration procedures, because once

the settings are changed, the strain-gauge sensor has to be recalibrated for

correct readings. This would result in longer downtime of the machine, during

maintenance.

Initial installation as well as operating costs are substantial due to the require-

ment of additional hardware and software, to implement the torque sensing

scheme, using strain-gauges.

5.4 Computed Torque Control

without the Inner Torque-Loop

The success of any closed-loop control problern hinges upon the fidelity of the feedback

signal, among other parameters. Moreover, closing the servo loop at the lowest control

level is deterimental to the control system, if the feedback signal is unreliable. This

thesis presents an alternate method to overcome the problems of the afore-said inner

torque loop - elimination of the inner torque loop. The proposed scheme is illustrated

in Figure 5.4.

Page 55: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Figure 3.1: Cornputed Torque Control without the Inner Torque-Loop

5.4.1 The Current-Based Torque Control Method

The torque generated by an electric motor is a function of the current drawn by the

motor. Depending on the type of the motor. this functionality could be as simple

a linear relationship as in a constantly excitated armature controlled DC motor: or

as complex as in a AC induction motor. Thus. the required information about the

torque delivered by the rnotor is embedded in the current drawn by it. This is the

crus of the current-based torque sensing method. Fortunatel-. servo motors have a

linear curent-torque relationship. which is the reason for their ease of control and

hence. their popularity In the case of a permanent magnet armature-controlled DC

motor, under a constant exciting voltage. the current floming through the armature

is directly proportional to the torque acting on the motor shaft. Commercially avail-

able permanent magnet DC servo motors are designed to have a linearized operating

torque-current characteristics.

Mat hematically,

where,

Tm = torque on the motor shaft

39

Page 56: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

16 = Torque constant

1, = current drarvn by the armature.

Using Equation 5.1, the current that rvill be drawn by the armature of the motor,

for a computed load torque, can be calculated. Thus, it follows that

Therefore, using the armature current informat ion, it is possible to ascertain the

torque delivered by the rnotor or vice versa. The current flowing through the motor

armature circuit can be sensed by including a current-sensing resistor in series with

the armature coil, and measuring the voltage drop across the resistor [28]. This sensed

armature current can be used as a feedback signal to the current command calculated

in Equation 5.2. Thus the torque servo control problem discussed in Section 5.3,

t ransforms into a current control problem.

The servo amplifier of the joint motors of the CRS A460 robot, has the feature

of switching between current mode and voltage mode. This further simplifies the

problem of implementing the armature current control loop. By switching the mode

of the amplifier through the specified srvitch settings provided by the manufacturer,

the robot controller can be set to operate in the current control mode as shorvn in

figure 5.5. This is the simplicity of the method and it becomes very cost effective

in modifying existing robots to operate under the computed torque control method

without the inner torque loop.

It is to be understood that although the inner torque loop is eliminated from the

digital control system, the process of controlling the armature current of the motor

and hence its shaft torque, is done through the analog control loop implemented in

the curent-control feature of the servo amplifier. Hence, the current control scheme

is in fact a feedback control method, and not a feedforward control as viewed from

the digital component of the controller.

The final step in the method, is to calibrate the armature circuit with the amplifier

in the current mode, against the DAC (Digital-teAnalog Converter) input data. The

Page 57: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Figure 5.5: The Armature Current Control Scheme

Page 58: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

DAC is the interface between the amplifier and the transputer. The calibration cuve

is linear within the operating range.

The method of computed torque control without the inner torque loop, compared

to the met hod using the inner torque loop described in Section 5.3, has the following

advant ages:

O By knowing the exact current required for a particular motion, with a particu-

lar payload, the control system can conduct on-line safety checks to detect the

feasibility of a user-specified operation by referring to the design current Iimi ts

of the system. The significance of this in-built safety feature of current-based

computed torque control without inner torque loop, can be better understood

by comparison with voltage-based control methods. In the latter case, rvhere

only the terminal voltage is controlled, it is still possible for the motor to draw

dangerously large amounts of current due to unforeseen loads, resulting in seri-

ous damages to the rnotor or complete systern shutdown due to fuse blorv-outs.

Unlike the strain gauge based torque sensing method, the current based torque

sensing method is quite rugged, due to the reason that no mechanically moving

parts are involved in the sensing process and hence. less wear and tear.

The method results in practically maintenance-free operation, thereby resulting

in shorter downtime,

It is quite cost-effective, due to the optimum utilization minimal hardware re-

sources, besides eliminating extra software requirements due to the eradication

of the inner torque loop. bIoreover, it is easier to adapt the existing machines

to this met hod with fetver modifications.

Page 59: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 6

Experimental Result s

The aim of the computed torque control experiments conducted on the set-up de-

scri bed in the previous chap ter is three-fold:

a Firstly, to verify the theoretical proof discussed in Section 3.2.1, that the appli-

cation of a rigid control law on a flexible-joint robotic system such as the CRS

A460 robot, does not destabilize the system.

Secondl- to prove that the computed torque control scheme can provide supe-

rior performance to that of the independent-joint PID control scheme, originally

adopted by the manufacturer.

0 Finally, to eliminate the inner torque loop described in Section 5.3, and test

the current-based torque control technique by replacing the unreliable strain-

gauge based torque sensing method with the cost-effective and rugged method

of armature current control of permanent rnagnet DC servo motors, discussed

in Section 5.4.

Page 60: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 6

Experimental Result s

The aim of the computed torque control experiments conducted on the set-up de-

scri bed in the previous chapter is t hree-fold:

a Firstly. to verify the theoretical proof discussed in Section 32.1. that the appli-

cation of a rigid control law on a flexible-joint robotic system such as the CRS

-4460 robot, does not destabilize the system.

Secondly. to prove that the computed torque control scheme can provide su-

perior performance than the independent-joint PID control scheme. originaily

adopted by the manufacturer.

Final15 to eliminate the inner torque loop described in Section 5.3. and test

the current-based torque control technique by replacing the unreliable strain-

g a u g based torque sensing method with the cost-etfect ive and rugged met hod

of armature current control of permanent magnet DC servo motors. discussed

in Section 5.3,

Page 61: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

6.1 Design of Experiments

The main objective. being comparative performance evaluation of a computed torque

cont roller as against an independent-joint PID cont roller. the tests to be conduct ed

rvere categorized on the basis of the cont roller employed. as follo~vs:

1. Independent-Joint PID Cont rol

2. Independent- Joint P ID Control wi t h Gravit' Compensation

3. Computed Torque Control without Inner Torque Loop

S ince Independen t- Joint PID con trol was the controller commercially provided by

the manufacturer, the gain values originally designed by CRS Robotics Corporation,

have been adopted for the customized PID controller used for testing purposes. It

is of further interest to ascertain whether gravitational effects play a significant role

on real-time tracking performance of the robot. Besides. gravitational offsets can be

compensated wit h relatively lesser computation. cornpared to the complete inverse

dynamics mode1 of the robot. Therefore. the PID controller \vas augmented with a

gravity compensator. to study the effects of gravity compensation on tracking accu-

racy. -411 the t hree cont rollers Lvere tested under ident ical operat ing condit ions. to

facilitate comparative evaiuat ion.

6.1.1 Parameters of Control

The criterion for evaluating the efficiency of a control algorithm. for the experiments

described ir. this thesis. is the positional accuracy of the robot. It has been observed

that the tracking performance of the robot is a function of its Peak acceleration. max-

imum operating speed. payload carried by the endeffector and the initial kinematic

configuration of the robot. among various other parameters that could possibly af-

fect its operating characteristics. Therefore the experiments cal1 for the investigation

of maximum acceleration. maximum velocity, payload carried by the robot and the

starting kinematic configuration of the mechanism, on the tracking accuracy of the

robot.

Page 62: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

In order to minimize the number of control parameters. the peak acceleration of

al1 the three joints. was set to the maximum design limit of 12.56 radians/s2. in joint

space. The experiments were conducted at three different speeds- very slow speed.

medium speed and high speed. wi t h frequent reversal of direct ions. .Accordingl~,

the maximum operating speeds in joint space. for the three respective categories of

experiments were chosen to be 0.1 radia+. 1 radian/s and the maximum design limit

of 3.14 radianls. repect ively.

The d e c t of payload variation on performance rvas observed by varying the pay-

load in steps of O.'L3Iig (0.jLb). to the maximum design limit of 2.7ZIig (6Lb). Finally.

the kinematic configuration of the starting position of the robot mechanism was varied

for different sets of experiments to observe its effect on the performance of the robot.

Starting positions. such as arm vertically up. a rm horizontal. and wrious other con-

figurations rvere adopted. in order to cover the entire work envelope of the robot and

to subject the robot to varying frictional efTects and difFerent starting gravitational

forces/ torques.

6.1.2 Parameters of Observation

It is of interest to measure the real-time positional tracking accuracy of the robot.

Hence. the joint encoders are sarnpled at 100Hz. for recording. although the actual

control sarnpling frequency is 1000Hz. From the shaft encoder readings. the joint-

wise posi tional errors are calculated. Besides position errors. the corn puted torque

signal and hence the current command signals are evaluated. The current command

signal gives an idea of the current waveform generated in the armature in real-t ime.

Sloreover. it is useful in predicting the operating Life of the motor and other power

elect ronics. bp knowing the maximum current drawn.

Page 63: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

6.2 Results and Discussion

Graphical results of the various experiments ment ioned previously. are illust rated

joint-wise. in this section. This provides a comprehension of the relative performance

of the afore-said controllers on the real-time trajectory tracking performance of the

robot. The experiments involve a combination of different manoeuvres covering the

entire work envelope. so as to evaluate the performance of the respective controllers

mithout spatial biases. if an- A s mentioned earlier. in this thesis. real-time position

error is used as the major criterion for evaluating the performance of a controller. The

maximum current drawn by the motor is also considered a critical design condition

for evaluating the motion control system, as larger current surges would result in

shorter brush life of the motor.

Page 64: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

PayIoad = 5.5 Lbf Max. joint velocity = 3 rad/s

Joint #1: Desired 8 Actual Position Trajectory Joint #1: Position Error

Time (sec.)

-0.1 O 1 2 3 4

Time (sec.)

Joint #1: Computed Torque Command

l o o 0

-50 ' I O 1 2 3 4

Time (sec.)

Joint #1: Cornputed Current Command

6c

7

O 1 2 3 4 Time (sec.)

Figure 6.1: Position history of joint4 under computed torque control

Page 65: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint velocity = 3 rad/s

Joint #1: Desired & Actual Position Trajectory

Time (sec.)

Joint #? : Computed Torque Command

Time (sec.)

Joint #1: Position Error

n

-1 O 1 2 3 4

Time (sec.)

Joint #1: Computed Current Command 2

A 1

s 0 O u C 2 -1 3 O

-2 .

-3 - O 1 2 3 4

Time (sec. )

Figure 6.2: Position history of joint-l under independent-joint PD control

Page 66: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint velocity = 3 rad/s

Joint # A : Desired 8 Actual Position Trajectory Joint # A : Position Error

'A

-1 O0 O 1 2 3 4

Time (sec,) O 1 2 3 4

Time (sec.)

Joint #1: Computed Torque Cornmand

40 O

-40 I O 1 2 3 4

Time (sec.)

Joint #1: Computed Current Comrnand

-0 1 2 3 4 Tirne (sec.)

Figure 6.3: Position history of joint-1 under PD control mith gravit? compensation

Page 67: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint velocity = 3 radfs

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

o 1 1 O 1 2 3 4

Tirne (sec.)

Joint #2: Computed Torque Command

*O0 0

-200 ' 1 O 1 2 3 4

Time (sec.)

4.1 l I O 1 2 3 4

Time (sec.)

Joint #2: Computed Current Command

- O 1 2 3 4

Time (sec.)

Figure 6.4: Position history of joint-? under computed torque control

Page 68: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory

"O 1 2 3 4 Time (sec.)

Joint #2: Computed Torque Command

Time (sec.)

Payload = 5.5 Lbf Max. joint velocity = 3 rad/s

Joint #2: Position Error

-3 O 1 2 3 4

Time (sec.)

Joint #2: Cornputed Current Cornmand

' O 0

- lo l 1 O 1 2 3 4

Time (sec.)

Figure 6.5: Position history of joint-? under independent-joint PD control

Page 69: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint velocity = 3 radh

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error 200 - 2 -

h

0 - -2 - O 1 2 3 4 O 1 2 3 4

Time (sec.) Tirne (sec.)

Joint #2: Computed Torque Command

4 Time (sec.)

Joint #2: Computed Current Command

I O 0

-10' O 1 2 3 4

Time (sec.)

Figure 6.6: Position history of joint-? under PD control with gravity compensation

Page 70: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint velocity = 3 radfs

Joint #3: Desired 8 Actual Position Trajectory Joint #3: Position Error

Time (sec.)

Joint #3: Computed Torque Command

looo

-1001 I O 1 2 3 4

Time (sec.)

-0.1 O 1 2 3 4

Time (sec.)

Joint #3: Computed Current Comrnand

' -0 1 2 3 4 Time (sec.)

Figure 6.7: Position history of joint-3 under computed torque control

Page 71: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint velocity = 3 radis

Joint #3: Desired & Actual Position Trajectory

Time (sec.)

Joint #3: Computed Torque Command

100o

-1 00 O 1 2 3 4

Tirne (sec.)

Joint #3: Position Error

4r

-4 O 1 2 3 4

Time (sec.)

Joint #3: Computed Curent Command

- - -

O 1 2 3 4 Time (sec.)

Figure 6.8: Position history of joint-3 under independent-joint PD cont rol

Page 72: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory o1 1

Time (sec.)

Joint #3: Computed Torque Command 1001 1

c -1 *Oo 1 2 3 4

Time (sec.)

Payload = 5.5 Lbf Max. joint velodty = 3 rad/s

Joint #3: Position Error 2

- O 1 2 3 4

Time (sec.)

Joint #3: Computed Current Command

-5 O 1 2 3 4

Time (sec.)

Figure 6.9: Position history of joint-3 under PD control with gravity compensation

Page 73: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

6.2.1 Discussion

Each of the graphs typically shows the desired position trajectory in joint space

ceordinates. the actual trajectory of the joint. the joint-wise position error. the corn-

puted torque command and the current signal. Consider the computed torque control

esperimental results s h o m in Figures 6.1. 6.4 and 6.7. The elbow joint-:3 resulted in

the highest position error compared to the base joint-1 and the shoulder joint-?. This

is due to the additional unmodelled flexibility effects of the timing belt used in the

elbow joint transmission.

It is observed that the computed torque controller without the inner torque loop.

performs much ber ter t han the PID-based independent-joint controller. The position

error in the case of a PID controller is quite high compared that of a computed

torque controller. For instance in the case of the elbow joint-3. as illustrated by

Figures 6.9 and 6.7. position error attained by the PID controller iras about 20

times the error that occured due to the computed torque controller. This can be

attributed to the fact that while the PID controller treats the dynamics of the robot

as disturbances. compensating only for kinematic aberrations. the computed torque

controller takes into account the complete dynamics of the system. Hence. better

compensation results in better performance. especially at high operating speeds and

higher payloads.

The results show that the effect of gravity compensation on the performance

of a PID controller was not significant as evident frorn Figures 6.5 and 6.6. for in-

stance? showing similar position-error profiles. This is due to the reason that at higher

acceleration. speed and payload. inert ia forces and ot her interaction forces are pre-

dominant owr gravit ational effects. Therefore, mere compensation of gravi tational

effects without regard to other dominating factors like inertial effects. as treated by

an independent-joint PID controller, does not improve performance.

Irrespect ive of the type of controller used. the position error profile tends to be

oscillatory. The computed torque command and hence the current signal. exhibit high

frequency components. The oscillations are higher at lower speeds because the inertial

Page 74: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

effects of the system which are predominant at higher speeds are iess pronounced

at lorver operating speeds. Hence at higher speeds. inertia of the system tends to

srnoothen the oscillations. resulting in a smoother profile of actual position. and

hence. a less oscillatory computed torque and current signals.

Generally. the oscillatory behavior of the system can be explained on the basis of

the flexibility effects erhibited by the flexspline of the harmonic drive. which were not

cornpensated for. due to the difliculty of rneasuring joint-cornpliance and its deriva-

t ives. in real-t ime. The optical shaft-eocoder is the only posi tion-sensing device which

gives a feedback of the controlled system. to the controller without an inner torque

loop. -4s the elliptical wave generator of the harrnonic drive rotates mith the motor.

the flesspline deforms cont inuously. When the systern attains higher accelerat ion and

higher speed under high payload. the high frequency component of the flexible-joint

system is excited. The sensitive optical encoder mounted on the motor shaft. picks

up t hese high frequency oscillations and hence relays the actual oscillatory position

feedback to the controller. Since the dynamics mode1 of the rigid-body controller

does not account for the flexibility effects of the harmonic drive. the closed loop con-

t roller at tempts to compensate for the oscillatory behaviour of the s>-stem. t reat ing

the oscillations as disturbances. Since the loop gain of the system is set high. small

disturbances excite the structural oscillations of the flexspline. Howevero the magni-

tude of the high frequency oscillations is small and hence the damping effect of the

derivat ive component of the controller protects the system against instability.

The efficacy of the derivative action of the controller is dependent on the fidelity

of the veloci ty feedback. This informat ion. however. is obt ained t hrough numerical

differentiation of the position feedback signal. with respect to time. For the experi-

mental set-up described in the previous chapter. the velocity feedback is derived at

every sampling interval. by taking the temporal diflerence of the present and the pre-

vious position samples. This is a first order numerical approximation of the velocity

feedback signal. Due to this approximation. the velocity feedback is not the actual ve-

locity of the system. but it tends to approach the actual velocity as the sampling rate

is increased. Higher the sampling rate, higher the accuracy of the velocity feedback.

Page 75: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Hence. the overall damping characterist ics of the cont roller and t hereby. i ts ability

to compensate for the oscillatory behaviour of the system. is affected by the simple

first-order numerical different iation of act ual veloci ty of the system. This could be

overcorne by using a higher order differentiat ion of the position feedback. taking more

samples of actual position before deriving the velocity information. Alternate means

for measuring veloci ty t hrough hardware like stroboscopes. tachomet ers. etc.. can be

used in the place of a software based velocity estimator.

The current demand is higher when the position error achieïed is lower. This

is because of the necessity to move the motor abruptly in either directions. t o corn-

pensate for faster changes in the commanded trajectory without losing fidelity of the

demanded torque signal.

It is found t hat payload variations has lit tle efiect on t he tracking accuracy of the

computed torque controller. This is ample proof for the robuctness of the controller

and hence. its disturbance rejecting capacity. On the other hand. performance of the

PID controller is affected at higher payloads: higher the payload. higher the position

error. This is not unexpected because the dynamics of the system are augmented by

higher payload and hence cannot be treated as mere disturbances.

It is interesting to note that the elimination of the inner torque loop results in

increased robustness of the computed torque controller as compared to the computed

torque method ivith the strain gauge based inner torque loop. used by [5]. Therefore.

it can be concluded that the computed torque controller is far superior in trajec-

tory t racking performance compared to the independent-joint P ID controller wit h or

without gravit- compensation. Moreover the computed torque controller ernploying

current-based torque sensing scheme. as against that with an inner torque loop, is

rugged' cos t-effect ive and reliable.

Page 76: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Chapter 7

Concluding Remarks

7.1 Summary

Flexibility in mechanical systems is inevitable. Structural compliance irnparts ad-

ditional degrees of freedom to the otherwise simpler rigid body dynamics: rvhich if

neglected. would result in the loss of accuracy or even instability. -4 flexible sp te rn

dynamics model can be partitioned into a slow subsystem and a fast subsystem. The

slow subsystem is due to the purely rigid body dynamics while the fast subsystem is

a result of compliance. The stability of a system with structural compliance can be

analyzed by the singular perturbation method.

Flexible transmission effects in robots is primarily due to joint compliance. timing

belts. cables. links and other transducers. Joint compliance is a result of the Aesspline

of harrnonic drives used in transmission. The flexible dynamics model of harrnonic

drives was derived from first principles. in this thesis. The concept of singular per-

turbat ion applied to flexible system dynamics ivas introduced and t hen applied to

the typical case of harrnonic drives. Further, a dynamics model of the CRS A460

robot. incorporating the flexibility of the harrnonic drives of the first three joints. was

presented as derived using the Lagrangian formulation. The technique of singular

perturbation was used to analyze the flexible dynamics model of the robot. It was

further proved that the application of a rigid control law to the Aesible-joint system.

does not destabilize the system.

Page 77: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

The need for computed torque control was ernphasized and its merit over the

independent-joint PID control method. discussed. Then the method of computed

torque control was described in detail. as applied to the CRS robot. From the practical

point of viem. the implementation of computed torque control without the inner

torque loop. was discussed. The advantages of eliminating the inner torque loop was

also illustrated.

Finally? the experimental set-up available in the Laboratory for Nonlinear Systems

Control, Cniversity of Toronto. consisting of the CRS A460 robot and the customised

trampter-based computed torque controller. was described. The following experi-

ments were conducted:

0 Computed Torque Control Without the Inner Torque Loop

r Independent-Joint PID Control as implemented by CRS Robotics Inc.

Independent-Joint PID control with Gravit- Compensation

The experiments were conducted at different speeds and with diRerent payloads.

with manoeuvres spanning the entire ivork envelope of the robot. keeping the maxi-

mum acceleration as per the design limit.

Page 78: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

1.2 Conclusion

It kvas proved that the application of a rigid control law to a flexible-joint system.

does not destabilize the system. Application of the rigid cornputed torque control Iaw

on the reduced order dynamics mode1 of the flexible-joint CRS A160 robot. verifies

the t heoretical explanation. Cnder the following condit ions.

0 maximum joint-acceleration = 100% design lirnit (12.56 rad/s2)

0 maximum joint-velocity = 100% design limit (3.14 rad/s)

0 maximum payload = 100% design limit (6 Lbf. 2-72 Kgf )

tests performed using a computed torque controller and an independent-joint PID

controller. sucessively under ident ical operat ing condit ions. reveals t hat . typically. the

ratio of peak position errors in joint space. due to the PID controller to that due to

the computed torque controller. as follorvs:

Joint I = 300%

a Joint '2 = '2000%

O Joint :3 = 2000%

Thus it can be concluded that the computed torque controller clearly outperforms

the independent-joint PID controller at high as me11 as slow speeds.

Elimination of t he inner torque loop. besides sirnplifying the controller hardware.

helps in the following ways:

a A significant reduction in the initial installation costs in new systems and a

reduction in maintenance and operat ing costs in existing systems. due to the

elimination of strain gauges and the associated hardware and software required

to sense th feedback torque.

r An increase in the reliability of the system due to the elimination of the problem

of bonding strain gauges to the flexspline of the harrnonic drive.

Page 79: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

a An overall irnprovernent in the performance and the robustness of the control

system due to the elimination of a possible noisy feedback in the inner torque

loop.

3Iodel inaccuracies have minimal effect on the performance of the computed torque

control scheme. The ability of the controller to servo a commanded trajectory with

accuracy. and hence its robustness to external disturbances, can be increased b -

incorporating higher loop gains. However, higher gains rvould cal1 for higher sampling

rates.

Page 80: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Contributions

There are trvo major contributions made by this thesis:

O Derivation of a flexible-joint dynamics mode1 for the CRS A460 robot:

The complete derivation of the flexible-joint dynamics of the A160 robot incor-

porating transmission flexibiiity due to the harmonic drives of the first three

joints. using Lagrangian rnechanics. gives a good understanding of r he actual

flexible dynamics of the robot.

a Elimination of the inner torque loop: Replacing the strain gauge based

torque feedback loop with a rugged and cost-effective current-based torque con-

trol scheme. has not only resulted in improved performance but has also reduced

maintenance costs and domntime. Xloreover, this method can be easily adopted

to nerv as well as esisting robots. with little investment towards additional

hardware and software requirernent S.

a Demonstration of the superiority of the computed torque control

method: It has been proved beyond doubt that the computed torque control

met hod out performs the independent-joint P ID cont rol method. t radi tionally

used in most of the industrial robots. The results reveal that the computed

torque method is robust to payload variations, even at very high speeds or very

slow speeds of operation. compared to the PID controller ivhose performance

deteriorates drastically at high speeds and high payload. It is noteworthy to

mention t hat in some instances, the PID controller resulted in twenty times the

error due to the computed torque controller.

Page 81: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

7.4 Recommendations For Future Work

7.4.1 Issues Related to Modelling

The afore-said flexible-joint model of the CRS robot can be extended to include

the last three joints as well. taking into account other fiesibility effects due to

links and timing belts. It has been further assumed that the mass distribution

of the links is uniform and that the stiffness of the flexspline is linear. .A

more accurate flesible dynamics model can be derived by reconsidering the

assumpt ions made.

0 The method used in this thesis. for deriving the dynamics model of the CRS

-4460 robot. is based on Lagrangian mechanics. It is reported in literature t hat

Iiane's method [13] of deriving dynamics models. results in compact and much

simpler models. compared to the models derived using the Lagrangian method.

.A sirnpler mode1 can be quite useful for real-time implementation. Therefore.

it is of interest to investigate the use of Iianeos method to derive a dynamics

model for the CRS -4460 robot.

O It is often difficult. if not impossible. to model the friction and backlash effects

quite accurately. due to its unpredictable nature over the entire operating range.

This difficulty can be overcome by developing numerical models based on neural

networks or fuzzy logic. to model friction and backlash. which a re difficult to

model analytically. This numerical model can be used in conjunction \vit h the

already derived analytical model for a more accurate computed torque control

scheme.

7.4.2 Issues Related to the Experimental Set-up

a From the implementation point of view. the velocity feedback can be made more

accurate by increasing the order of the numerical differentiation. Taking more

than two position samples to estimate velocity, would result in better reading

and hence. better performance.

Page 82: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Elimination of the inner-torque loop has made the associated analogue- to-digi t al

conversion hardware and software. irrelevent . Therefore. by eliminat ing the re-

dundant or unused inter-transputer communications. software overheads can

be minimized. resulting in a faster control system. This could pave way for

attaining higher sarnpling rates. resulting in a better control and superior per-

formance.

0 The transputer file server which runs on the host PC is a polling-type of server.

This '-locks-up" the host PC and hence, cannot be utilized escept to serve the

transputer requests. in a polling mode. The PC could be used to display real-

time data or other supervisory control tasks, if the transputer file server can be

made to operate in the interrupt-driven mode as outlined in [SI.

Page 83: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Bibliography

[l] An, C.H., .At keson. CG.. and Hollerbach. J . X : Model-based Control of -4 Robot

il.lanipulator, The MIT Press. Cambridge. hf assachusetts. 198s.

[2] Armstrong B., " Friction: Esperimental Determination' Modeling and Compen-

sation,'' IEEE Trans. on Robotics and Automation. pp. 14'22-14.27. 1988.

[3] Asada. H.. Kanade. T.. and Takeyama. 1.. "Control of a Direct-Drive .-\rrn."

Trans. of ASME. vol. 105. pp. 136-142, 1983.

[a] Asada, H.. Youcef-Toumi, K.. and Lim. SA. . "Joint Torque Measurement of a

Direct-Drive .hm." Proc. 3 r d IEEE Conference on Decision and Control. pp.

1332-1337. Las Vegas. Dec. 1984.

[5] Baines, P.J., .-ipphztion of a discontinuous force control /au. to an industrial

robot. MEng. t hesis in the depart ment of Mechanical Engineering. University of

Toronto. Toronto. 199.5

[6] Baines, P.J., ?.A Dynamics Mode1 for the CRS A460 Robot .' Laboratory for ?;on-

linear Systems Control Interna1 Memo, University of Toronto. Toronto. .August

1993.

[7] Bejczy, A.K., Ganguly. S.. Tarn. T.J., Marth, G.T.. Ramadorai. .-\.K.. " Exper-

irnental evaluation of the nonlinear feedback controller," IEEE Intl. Conf. on

Robotics and Automation. pp. 16%-1643: Sacramento, April 1991.

Page 84: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

[Y] Cheng. R.M.H.. Poon. S.C.L.. Rajagopalan. R.. Ynterrupt Driven Transputer

File Server .*O Proc. of the Fourth Conf. of the .\orth American Transputer C8ers

Group. pp. 119-130. Ithaca. 1990.

[9] Craig. J .J.. introduction to Robotics: :LIechanics and Control. -Addison LVesley

Publishing Co., Reading. !vIassachuset ts. 1939.

[IO] De Luca. -Dynamic Feedback Linearizat ion of Robots with 'ilised RigidIElastic

Joints." Proc. of the Third European Control Conference. vo1.3. pp. 1863-69.

Rome. Italy. September 199.5.

[ I l ] Hashirnoto 11.: "Robot Motion Control Based on Joint Torque SensinglY IEEE

Intl. Conf. on Robotics and -4 utornation. pp. %6-?6l. Tucson. Arizona. 1989.

[El Kabra. S.? The Derelopment and Analysis of an Integratêd Iliorkcell Controller

for .Ilultiple-Robot Synchronisation. 3I.A.Sc. Thesis in the department of Sle-

chanical Engr., Concordia University. Llontreal. April 199'1.

[13] 1iane.T.R.. Levinson. D.A.. Dynarnics. theory and applications. lIcGraw-Hill.

Xetv York. 1985.

1141 Iïazerooni. H.. '' Inst rumented Harmonic Drives For Robot ic Cornpliant Manoeu-

vres." Proc. of the lEEE Intl. Conf. on Robotics and Automation. pp. 2274-9.

Sacramento. 1991.

1 Iiokotovic. P.V. Iihalil. H.K., O'Reilly. J .. Singular Perturbation Methods in

Control: ..lnaiysis and Design. Academic Press Inc.. Florida. l9S6.

[16] Khosla. PA.. Kanade. T.. '*Real-time implernentat ion and evaluat ion of the

computed-torque scheme.' IEEE Trans. on Robotics and -4 utorna tion. pp. 245-

53, April, 1989.

[1ï] Khosla, PA.. Kanade, S.: Tanaka, N., "Real-Time Control of the CMG Direct

Drive Arm II Using Customized Inverse Dynamics,.' Proc. B r d IEEEE Conf. on

Decision and Control. pp. 13451353, Las Vegas. 1984.

Page 85: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

[18] Lin. Y.? Yu. A., ?Linear Robust Trajectory Control of Flexible Joint Manipula-

tors.? Robotica, vol.14. pp. 3'i5SO. July 1996.

(191 Luh. J.1-.S.. Fischer. LV.D. and Paul. R.P.. 'Joint Torque Control by a Di-

rect Feedback for Industrial Robots,- IEEE Transactions on Automatic Control.

vol..-\C-28. no.'. pp. 153-160, February 19S3.

[?O] SIills. J.K.. Baines. P.. Chew. S.. Chang. T., "Development of a Robot Control

Test Platform." IEEE Robotics and ilutorna tion .Clagazine. pp-l-2s. December

199.5.

[21] SIills. J.L.. Baines. P.J.' " Feedback Linearized Joint Torque Control of a Geared.

DC Motor Driven Industrial Robot." IEEE Int '1 Conf. on Robotics and Automa-

tion. pp.3129-36. Yagoya, Japan. 1995.

[El IIilIs. J.K.. Chang. T.. Chew. S.. "Operating Manual for Yext Generation -Au-

tonornous Robot Control System Test Bed.' L;ni~*e rsit y of Toronto. Toronto, July

199.5.

[23] Paul. R.P.. Robot Manipulators: .Ilathem atics. Programming a n d Control. The

MIT Press. Cambridge. 3lassachusetts. 1982.

[24] Pfeiffer. L.E.. Khatib. 0.. and Hake. -1.. .'.Joint Torque Sensory Feedback in the

Control of a Puma Manipulator." IEEE Trans. on Robotics and .A u tomat ion.

~01.5. no.4. pp.418-425. ..\ugus t 1989.

[%] Porter B.. Zadeh X N . . 'Genetic Rule Induction in the Design of Computed

Torque/Fuzzy Logic Cont rollers for Robot ic Manipulators..' IEEE Intl. Syrnpo-

siurn on Intelligent Control. pp.325-329. Dearborn. Sept.. 1996.

[26] Rajagopalan R.. Barakat, X.. "Speed Control of a DC Motor using a Cornputed

Torque Control Scheme." IEEE Int '1 Symposium on Intelligent Control. pp.432-

437. Dearbon, 1996.

pi ] Readman. M.C.. Flezible Joint Robots, CRC Press. Orlando. Florida, 1991.

Page 86: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

[%] Snyder, W.E.. Indust rial Robots: Comp uter Interfucing and Cont ml. Prent ice-

Hall, Englervood Cliffs. New Jersey. 1985.

[-91 Tahboub K..+.. "Motion Control of a Robot with Flexible Joints.' Control En-

gineering Practice. vo1.4. pp. 964-974, July 1996.

[30] Tuttle T.D. and Seering W.P.. ''-4 Nonlinear !dodel of a Harmonic Drive Gear

Transmission." IEEE Trans. on Robotics and .4utornation7 vol.12. no.3. pp.368-

374. June 1996.

[31] Tosunoglu S., y'rlodeling of Flexible Elements in Robotic Systems for Modu-

lar Environments,' lEEE I ls t Int '1 Conference on Industrial Electronics. ~01.1.

pp. 138- 143, Orlando, Xovember 1995.

[32] Wu C. and Paul R.P.. "Wanipulator Cornpliance Based on Joint Torque Con-

trol." Proc. of 19th lEEE Int ? Conf. on Decision and Control. vol.1. pp.84-dû.

.Albuquerque, New Mexico, 1980.

[33] Zeigler. J.G.. Nichols. 3.B.. "Optimum Settings for Automatic Controllers.'

Trans. of the AS-K i-01.64.. noS . pp. 759, 1912.

Page 87: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Appendix A

Optimal Loop-Gain Values

Proportional gain matrix for the computed torque control experiment for the CRS

A160 (alpha) robot.

1 O O sooo 1

Derivative gain matrix for the computed torque control experiment for the CRS A460

(alpha) robot.

Kv =

Torque-to-current conversion matrix. ivhich is equivalent to the inner torque-loop gain

matrix, for the CRS A160 (alpha) robot

Kt, =

Page 88: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Appendix B

Control Software Listing

B.1 Network Information File: ctorq.nif

This file defines the network topology and the corresponding transputer executable

software modules to be loaded:

B .2 Network Configuration File: ctorq.wir

This code configures the Inmos CO04 programmable link switch to connect the output

of the transputer mounted on the PC. to the RS232 port. It is executed through the

network configuration software:

Page 89: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

B.3 Network Load File: ctorq.bat

This is the windoms-based user interface for loading the transputer network. It is

executed through a "pif' file:

Id-net e:\exprment\curntorq\ctorq.nif cio

B.4 Make File:ctorq.mak

This is a generic makefile for use with Logical Systems Transputer Toolset . Change

only the Aags and specific construction rules and dependencies as required:

. SUFFIXES :

.SUFFIXES: .c .pp .ta1 .trl .tld

INC = -ie:\exprment\curntorq\include

PP-FLAGS = $ ( I N C ) -v -dT800 -dDOUBLE32 -dNEURAL

TCX-FLAGS = -f2 -v -c -p85 -ps - w 2

TASM-FLAGS = c: -v -c -t -q2

.c.trl:

pp $*. c $(PP-FLAGS)

~ C X $* $(TCX-FLAGS)

tasm $* $(TASM,FLAGS)

Qdel $* .pp

Qdel $*.ta1

PATH = E:\exptment\curntorq\include

HEADER1 = $ (PATH) \xputer . h $ (PATH) \lavvar . h $ (PATH) \crsc5OO. h

a l l : ctorq

ctorq: ctorq-tld

ctorq.tld: control.tr1 contreal-trl contnn-trl ctorq-trl

Page 90: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

atdb. trl contini . trl

t l n k ctorq. lnk

contini-trl :contini.c $(HEADERl) ctorq-mak

atdb. trl :atdb.c $(HEADERl) ctorq.mak

control.tr1 :control.c $(HEADER~) ctorq.mak

contreal. trl : contreal. c $ (HEADERL) ct orq . mak

contnn.trl :contnn.c $(HEADERI) ctorq.mak

ctorq. trl : ctorq. c $ (HEADER~) ctorq.mak

B.5 Link File: ctorq.lnk

The link file contains the directive commands for linkinp the .trl files wit h the trans-

puter iibrary files. to form the transputer executable .tld files. The ctorq-lnk file. used

for generating the ctorq-tld esecutable file. is iisted below:

FLAG c

INPUT atdb contini c o n t r e a l control contnn ctorq

ENTRY ,ns,main

LIBRARY t8321ib. tll

OUTPUT e:\exprment\curntorq\ctorq.tld

LOAD 0x80004000

STACK 0x80004000

Page 91: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

B.6 'C' Source Code

B.6.1 General Description

The Cs00 Test Bed uses five transputers to perform an euperiment. The programs

running in each transputer are listed below in the same order that the)- are booted

up. Therefore. communication can take place in the same sequence 1-2-:3-4-5 and not

from 1 to .5 directly.

4. FTI

5. SERVOES

Each of these programs will have a minimum of two or three modules (or files):

1. an initialisat ion niodule

2. a parameters passing module

3 . a real-timeesp module

In the init ialisat ion module. communication channels are set up( bot h hard and log-

ical). The main() program entry point tri11 be esecuted here. If the program contain

more than one processes. then al1 the processes are setup and executed here. The

parameters-passing module will haïe three common routines to pass various param-

eters off-line. Parameters files are open in RPXES. and pass to TR.4.J. COSTROL

and FTI as a string of knomn length to al1 transputers. This arrangement allows

each transputer prograrn to access information from Cser Interface Windows without

a direct link. If additional parameters are required. this scheme could be folloiv by

either using one of the existing routines or creating a new routine.

Page 92: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

i ) un-para() - passes run-time parameters. such as trajectroy period. data collection

rate. etc.

i i ) . J o i n t - ~ a t h ( ) - decides which joint will be used for the trajectory path selected. It

generates the joint angles set point from the Iiinematics functions for the trajectory

pat h.

iii) Control- law() - passes control lan- parameters

In the reai-time-axp module, al1 computations are done in real tirne under one

millisecond. This is rvhere the transputer network can hanged up. if one of the pro-

grarns is not fast enough to keep up with the rest. COSTROL transputer must

complete torque. force and trajectory set points data collections and report the com-

puted desired torque to the SERYO transputer under one milisecond. If this is not

the case. then the WatchDog Timer in the SERVO rvill be violated. causing a hang

"p.

B .6.2 Control program descript ion

It calculates motor torque for the first three joints from the strain gauge sensor signais

read bu .4/D TRASI. In addition. it reads position data from Servo transputer and

force data from Force transputer. Based on the set points. C'ontrol program can

computes the desired torque for the motors. The computation of desired motor torque

depends on t h e user control strateg.. and therefore could be changed.

Control program is made from these following modules:

1) c o n t i n i . c

2) c o n t r o l .c

3) c o n t r e a l . c

4) user-c

5) a t d b . c

along with a common standard header file xpu t e r . h . , crsc5ûO. h , lawvar . h , m a t h c r s . h.

cont ini . c - an initialisation module Functions Called: Run-para() Functions

Called: a t d b () Jo in t -pa th ( ) Functions Called: i n i t o r q o Con t ro l - l av ()

Page 93: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Functions Called: i n i t orq() Real-t ime-exp()

Contro1.c - parameter reading module

Chan In:

RunParaBuf

Traj Buf

DynamicBuf

Contrea1.c - In Contreal-c. al1 system variables are read in and motor output calcu-

lations are performed. It reads position data from Servoes and motor torque signals

calculated by A/D TRAhI every millisecond. At every two millisecond (5OOHz). it

reads the end-effector force signal from the Fti program. as discussed above. Once all

system variables are read, it calculates the torque required to rnove the motors based

on the control law supplied by the user. These two operations of reading s ~ ~ s t e r n

lariables and computation of motor torque must be completed in 1 millisecond to

sat isfy RAP L timing requirement for each motor.

Called By: ont i n i O Functions Called: user-cont O Chan In: Position

Torque Force Joint Set Points i.e. q. cld. qdd Chan Out: Motor Inputs

cser.c - The user module is named by user to execute its own control (e-p. Iner-

t ia.c)

-4tdb.c - Collections of functions from Sunnyside A/D manual For sampling A/D

signals.

Page 94: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

# i n c h d e < s t d i o . h >

# i n c h d e < s t d l i b . h >

# i n c h d e < c o n c h >

# i n d u d e <math . h>

t i n c l u d e "e:\exprment\curntorq\include\xputer.h~~

# i n c h d e "e:\exprment\curntorq\include\crsc500.h~

# i n c h d e "e:\exprment\curntorq\include\lawv~.h"

# i n c h d e "e:\exprment\curntorq\include\neural.h~

t d e f i n e SC(a, s , c ) ( s =s in f (a) , c=cosf (a ) )

#def ine SIGN (a) ( (a<O> ? -1 : 1 )

ext ern

ext e r n

ex t e r n

f l o a t

f l o a t

ex t e r n

ex t e r n

f l o a t

f ï o a t pC61, vC61, claw-opC31;

i n t qSet CG1 , posit ionC63 ;

f l o a t q Cs] , qd Cs] , qdd C63 ;

p d i f f [6] , vdi f f [6] ;

t v i s f r i c C 3 1 , t c o l f r i c [ 3 ] , torqdes[3] ;

f l o a t acc[3], e r ro rC3) ;

f l o a t u [3] , sout- f i n a l [3] ;

u-new C3I ;

i n t cyc le -counte r = 1;

int cont law-cal = 1 ;

i n t contlaw-exectime = 0 ;

f l o a t shidl [NDIM] , shid2 [NDIM] ;

f l o a t t - i n t e rva l=0 .0001 ;

f l o a t e,sum[3] ;

e x t e r n f l o a t Kp [31 , K i [3] , Kd [3] ;

void u s e r - c o n t r o l ( i n t traj)

Page 95: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

i n t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f loat

f l o a t

i , j ;

s l , s 2 , s 2 3 , s 3 ;

c l , c Z , c 2 3 , c 3 ;

c2c23, s 2 s 2 3 , c2s23 , c23s23, c2s2 ;

v l v 2 , v l v 3 , v2v3 , v l s q , v2sqJ v3sq;

D i l , D22, D23, D 3 2 , D 3 3 , G2, G3;

D211, D233, D311, D322, D1i2, D113, D223;

t l l , t 2 1 , t13, t 1 2 , t 2 3 , t 2 2 , t33, t 3 2 , t43, t 4 2 ;

/* S t a r t Computed Torque algorithm */

f o r ( j = O ; j<3; j++)

< p d i f f [j] = q[j] - pCjJ ; /* vork i n rad. */

vdiff [j] = qd[j] - v[ j ] ;

i f ( f a b s f ( v [ j ] ) C EPSILON)

t c o l f r i c [ j ] = 0 . 0 ;

else

t c o l f r i c [ j l = f c c j l * SIGN(vCj1) ;

/* v i s c o u s f r i c t i o n */ t v i s f r i c [ j l = fv[ j l * vCj] ;

1

SC(pCJl1 ,si ,cl);

SC(pCJ21 ,s2 ,c2) ;

SC(p CJ31 , s3, c3) ;

SC(p[J2]+p[~3: , s23 ,c23) ;

c2c23 = c 2 * c23;

s2s23 = s 2 * s23; c2s23 = c 2 * s23;

c23s23 = c 2 3 * s23;

Page 96: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

c2s2 = c2 * s 2 ;

v lv2 = ( v [ ~ l ] ) * ( v f J 2 1 ) ;

v l v 3 = (v[J1] ) * (v [J3] ) ;

v2v3 = (v[J2]) * (vCJ31);

v l s q = (vCJ11) * (vCJ11) ;

v2sq = (v[J2] ) * (vCJ21) ;

v3sq = (v [J3] ) * (v CJ31) ;

D l 1 = k12 + c2*c2*kl3 - 2*c2s23*kl + c23*c23*k3;

D22 = k14 - 2*s3*k1;

D23 = D32 = k4 - s3*kl ;

D33 = k2;

Dl12 = -c2s2*kl3 - (c2c23 - s2s23)*k l -c23s23*k3;

Dl13 = -c23s23*k3 - c2c23*ki;

D211 = -D112;

D223 = D233 = -c3*kl;

D311 = - D 1 1 3 ;

D322 = -D223;

G2 = -c2*gr21;

G3 = s23*gr31;

t i i = qdd[n ] + (vd i f f [ J l ] ) * k v l l ;

t 2 1 = (pd i f f [ J l ] )*kp l l ;

t13 = t 1 2 = qdd[J2] + (vdiff[J2])*kv22;

t 2 3 = t 2 2 = ( ~ d i f f [~2])*kp22;

t33 = t 3 2 = qdd[J3] + (vd i f f [J3] )*kv33;

t 4 3 = t 4 2 = ( ~ d i f f [J3] ) *kp33;

claw-op[J1] = D l l * ( t l l + t21) + 2*D112*vlv2 + 2*D113*viv3 +

t v i s f r i c C J l ] + t c o l f r i c ( ~ l ] ;

clau-op [J2] = D22*(t12 + t22) + D23*(t32 + t42) +

D211*vlsq + D233*v3sq + 2*D223*v2v3 + G2 +

G 3 + t v i s f r i cCJ21 + t c o l f r i c f J 2 1 ;

Page 97: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

claw_op[.J3] = D32*(t13 + t23) + D33*(t33 + t43) +

D31i*vlsq + D322*v2sq + G3 + tvisfric[J3] +

tcolfric CJ31 ; 3 /* end user-control() */

Page 98: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

/* Filename: contrea1.c (Alpha Robot Regular version)

* Created: Oct 15/93

* Rev.1: JAN 05/95

* Rev-2: Feb 09/95

* Rev.3: Feb 24/95

* * Purpose: Calculate desired torque depending on the control law

**************************************************************************** INNER TORQUE LOOP REMOVED FOR COMPUTED TORQUE CONTROL

BASED ON CURRENT SERVO

***+************************************************************************/ #include estdio. h>

#include <stdlib.h>

#indude <conc.h>

#indude <math . h>

Sinclude <string.h>

#indude "e:\exprment\curntorq\include\atd.h"

#include "e:\exprment\curntorq\include\xputer.h"

Itinclude "e:\exprment\curntorq\include\crsc500.htt

#include "e:\exprment\curntorq\include\lawvar.h'~

tinclude "e:\exprment\curntorq\include\alpha.h"

f loat acc [3] , error [3] , velkalC31 ;

f loat u [3] , sout -f inal [3] ;

/* Initialization of Kalman f ilter variables done in contnn. c */ float phiC73 [7] ;

float kal[7] ;

f loat xkal[7] ;

float xkal-dt C71 ;

Page 99: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

f l o a t gammal,gamma2,gamma3;

i n t start-t ime, mid-t ime, end-t ime;

e x t e r n i n t contlaw-exectime; /* u s e o f t e s t i n g t i m e t e m p o r a l y */ i n t

i n t

i n t

i n t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

i n t

Byte

f l o a t

f l o a t

e x t e r n

e x t ern

e x t e r n

e x t e r n

e x t e r n

ext e r n

e x t e r n

e x t ern

ucsub loop ; /* u s e r - c o n t r o l subloop flag */ c o n t a c t f lag, f i r s t c o n t a c t , o f f c o n t a c t ;

q S e t [6] , q456 [31 , qdSet C61, qddSet [61, p o s i t i o n [6] , o l d p o s i t i o n f61 ;

f t [6] , tes t ;

ydo tbuf f CPOINTS] , qbuff [POINTS] [33 , posbuff [POINTS] [6] , v b u f f [POINTS] [3:

tmeasbuf f [POINTS] [3] , claw-opbuff CPOINTS] [3] ;

x t r a l b u f f [POINTS] [3] , x t r a 2 b u f f [POINTS] [3] , x t r a 3 b u f f [POINTS] [3] , xtra4k

d e l - t ; /* used f o r c a l c u l a t i n g v e l o c i t i e s */ p C61 , qC61 , v C61 , qd C61 , qdd ;

yydydd C31, zzdzdd C3] , yydydd-0-last ;

T x l a s t [2] [3] , T x p r e l a s t C2J [3] ; /* used i n w f c t r l 2 . c o n l y */ xdActualC31;

load[6] , fdC31 ;

t orqmeas [3] , o l d t orqmeas [3] ;

t o r q a d j u s t [3] , t o r q u e [3] ;

f req-copy , t emp [93 , t o r q b u f f C91 ;

motinp C31 , claw-op C31, c law-op- las t C31;

s g c c [3] = {SGCCl , SGCC2, S G C C ~ > ;

i n t uc t ime ;

char userpid[3] ; /* f l a g t o r u n u s e r ' s p i d o r t o r q u e c o n t r o l +/

f l o a t TR-N[8], XR[8], l i n k _ l e n g t h [ 8 ] , ~oo l_Trans fo r rn [8 ] ;

f l o a t ktp[3] , ktvC31;

Channel +ToFt i , *FromFti;

Channel *ToGrip, *FrornGrip;

Channel *ToServo, *FromServo;

Channel *ADT,CHAN,IN, *ADT,CHAN,OUT;

Page 100: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

i n t i , j ;

i n t traj, t r a j o l d , th, xt ime, bdex;

c o n t a c t f lag = f i r s t c o n t a c t = o f f c o n t a c t = 0;

ucsubloop = 0 ;

t ra j = trajold = 0 ;

xt ime = 0 ;

bdex = 0 ;

fo r ( i=O; i < 2 ; i++)

f o r ( j = O ; j<3; j++)

1

Txia s t [il [j] = O . O,

Txp re l a s t Ci] [j] =O. 0 ;

> >

f o r ( i=O; i < 3 ; i++)

motinp [il = 0 ;

oldtorqmeas c i ] = 0 ;

torqmeas [il = 0 ;

f d [ i ] = ~ . O ;

>

ProcToHigh() ;

tim = Tirne();

ChanOutChar(ToServo , choice) ; /* start communication w i t h SERVO */

Page 101: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

~ h a n ~ u t ~ h a r ( T o ~ t i , cho i ce ) ; /* start communication with FTI */ ChanIn(FronServo , p o s i t i o n , 24) ; /* f i nd c u r r e n t p o s i t i o n */ bcopy((char*) ( p o s i t i o n ) , (char*) (o ldpos i t i on ) , 24) ;

/* i n i . t o c u r r e n t pos . */ /* I n i t i a l i z e ou tpu t t o hold a g a i n s t g r a v i t y . */ -

p [JI] = ( f l o a t ) (position[Jl])*TR-N[J~] ;

p[J2] = ( f l o a t ) (position[J2])*TR-N[J~] ;

p[J2] += PID2;

pCJ31 = ( f l o a t ) (positionCJ31 )*TR_N[J3] + p[J2] /IO0 .O;

p [ ~ 3 ] -= PID2;

c lau-op- las t [JI] = 0 .0 ;

claw-op-last [J21 = -cosf (p [J2] ) *gr21 + s i n f ( ( p [JZ] +p [J3] ) ) *gr31 ;

claw-op-last [J33 = s i n f ( ( p CJ23 +p [J3] ) ) *gr3i;

/* d e l - t i s i n second */ de l - t = uctime*0.001;

while ( t r a j < ( i n t ) ( t ra jper*1000))

< s t a r t - t i m e =Tirne() ; /* do it h e r e i n s t e a d of use r -con t ro l ( )* /

i f ( ! s t rcmp ( u s e r p i d , "of ") )

/* ( r e t u r n 1 i f f a l s e ) do not sample i f running user's p i d */

itpragma asm

I d 1 [ t i m ]

. l d c 25

s u

s t l [ t i m ]

#pragma endasrn

/* Measured Torque sampling */

f req-copy I= 0x01;

Page 102: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

c ~ ~ ~ O ~ ~ C ~ ~ ~ ( A D T - C H A N - O U T , RATE);

c ~ ~ ~ O U ~ C ~ ~ ~ ( A D T - C H A N - O U T , f req-copy) ;

chanIn (ADT-CHAN-IN, t o r q b u f f , 9) ;

freq-copy &= OxFE;

~han0utChar(ADT-CWN-oUT , RATE) ;

C ~ ~ ~ O U ~ C ~ ~ ~ ( A D T _ C H A N - O W T , f req-copy) ;

~han1nTimeFail(ADT_CHAN_1N, temp, 9 , t i m ) ;

C ~ ~ ~ O U ~ C ~ ~ ~ ( A D T _ C B A N - O U T , RESC);

C ~ ~ O U ~ C ~ ~ ( A D T - C H A N - O U T , O) ;

3

if(ucsubloop==O)

/* First sub-loop of t h e u s e r - c o n t r o l ( ) l o o p */

yydydd-0-last = yydydd[0] ;

i f ( ! s t r c r n p ( f b t o r 2 , "on")) /* run p o s i t i o n loop */ ChanIn (FromGrip , qSet , 24) ;

/* qSet i n abs. motor p u l s e s */ e l s e /* run torque l o o p */

< ChanIn(FromGrip, q , 12) ;

ChanIn (FromGrip, qd , 12) ;

~hanIn(FromGrip , qdd, 1 2 ) ;

ChanIn(FromGrip, q G 6 , 12) ;

chanIn(FromGrip, yydydd, 12);

ChanIn(FromGrip, zzdzdd, 12);

>

/* Get actual joint positions from s e n o * /

ChanIn(FromServo, p o s i t i o n , 24) ;

Page 103: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

f o r ( j = O ; j C 6 ; j++)

/+ convert from motor t o j o i n t space */

i f (j==J3)

p [J3] = (f l o a t ) ( p o s i t i o n [J3] ) *TR-N [J3] +

pfJ2]/100.0;

i f (strcmp ( fb to r2 , Iton")) /+ run to rque loop */ €

pCJ21 += PID2;

/* xform t o r e l . f o r t o r q u e loop o n l y */ p [J33 -= PID2;

3

ChanOut (ToGrip, p , 12) ;

ChanIn(FromFt i , f t , 24) ;

f o r ( j = O ; j <6 ; j++)

l o a d l j ] = (f l o a t ) ( f t [j])*FlJNIT;

f o r (j=O; j < 6 ; j++) /* I n pu l s e s / s */

< i f ( t ra j == 0)

v[j]=0.0;

e l s e

vCj1 = ( ( f l o a t ) ( p o s i t i o n [ j ] -

o ldpos i t ion [j] )) / d e l - t ;

oldpos i t ion[ j ] = pos i t ionCj ] ;

Page 104: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

3

/******** convert to rad /s *********/

for (j=O; j < 6 ; j++)

< if ( j==J3)

v [J3] = v [ ~ 3 3 *TR,N [J3

/* Kalman f i l t e r for f i l t e r i n g a c c e l e r a t i o n - used i n nnet */ for ( i = l ; i<=2; i++) (

xkal-dt C i ] = 0 . 0 ;

xkal-dt [i+2] = 0 .O;

xkal-dt [i+4] = 0 .O;

for ( 1 j<=2; j++) {

xkal-dt [il += phi [il [j] * xkal [j] ;

xkal-dt [i+2] += p h i [i+2] [j+2] * xkal [j+2] ;

xkal-dt [i+4] += p h i [i+4] [j+4] * xkal [j+4] ;

>

xkal-dt [il += ka1 [il * v [JI] ;

xkal-dt [i+2] += ka1 [i+2] * v [JZ] ;

xkal-dt [i+4] += ka1 [i+4] * v [J3] ;

>

Page 105: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

f o r ( i = 1 ; i < = 6 ; i + + )

xka l [il = x k a l - d t C i ] ;

a c c [J 11 = x k a l - d t [2] ;

/* e s t i m a t e d a c c e l e r a t i o n f o r j o i n t 1 */ acc [J2] = x k a l - d t [4] ;

/* e s t i m a t e d a c c e l e r a t i o n f o r j o i n t 2 */ a c c [ ~ 3 ] = x k a l - d t [6] ;

/* es t i rna ted a c c e l e r a t i o n f o r j o i n t 3 */

/* temp v e l k a l t o t u n e gamma */

v e l k a l CJ 11 = xka l -d t C l ] ;

v e l k a l [J2] = xka l -d t [3] ;

v e l k a l [J3] = xka l -d t [5] ;

/* end of Kalman f i l t e r i n g */ ) /**************** End of ucsubloop=O if********** */ i f ( s t r c m p ( f b t o r 2 , "on"))

/* cal1 u s e r - c o n t r o l l e r if not r u n n i n g CRS PID*/

u s e r - c o n t r o l (traj) ; /* c a l . claw-op */ /* Cal . i n l o a d t o r q u e . I n n e r t o r q u e l o o p is updated a t every m s */

motinpCJl] = k t p [ J l ] *(clau-op[J1])/100 . O ;

mot i n p [J2] = ktp [J2] * (claw-op [J2] /100. O + c law_op[~3] /10000. O ) ;

motinp [J3] = - k t p [J3] *(clau_op[J3] )/IO0 .O;

f o r ( i=O; i<3; i++)

t o r q u e c i ] = ( i n t ) ( ( ( i n t ) ( to rqbuf f [3*i+2! ) ((4) 1

( ( i n t ) ( t o r q b u f f [3*i+l] ) >>4) ) ;

torqmeas [il = ( ( f l o a t ) ( t o r q u e [il -2048- torqadjus t [il ) )

* (VOLT-NM* (sgcc Ci] /CVALUE-VOLT) ) ; /* B u t t e r u o r t h f i l t e r */

Page 106: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

torqmeas Ci] = O . O 1 * t o rqmeas C i ] + 0.99 * oldtorqmeas C i ] ;

oldtorqmeas C i ] = torqmeas C i ] ;

> f o r (i=O; i<3; i++) /* c h e c k m a . motor torque l i m i t */ < i f (mot i n p C i ] > m a x m t [il )

motinp C i ] = m a K r n t [il ;

i f (mot i n p [il < -maxmt [il )

mot i n p [il = -maxmt Ci] ;

/* motor t o r q u e = O i f p o s i t i o n exceed limits

i f ( p o s i t ion C i ] >maxj as Ci] I I p o s i t i o n [il cmaxjae C i ] )

motinp [il = 0 ; */

>

/******* do it h e r e i n s t e a d o f user,control()*++****/

mid-t ime = Time () ;

/* Update se rvo e v e r y m s */ i f ( ! s t r c m p ( f b t o r 2 , "ont ' ) )

ChanOut (ToServo , qSet , 24) ;

else

ChanOut (ToServo , mot i n p , 12) ;

ChanOut (ToServo, q456, 12) ;

1

/* run CRS p o s i t i o n l o o p */

Page 107: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

i f ( x t i m e == ( in t ) ( iOOO/recra te))

< ydotbuff [bdex] = xdActual [JI] ;

bcopy((char*) (pl , (char*) (posbuff Cbdexl , 24) ;

bcopy((char*) (v) , (char*) (vbuff Cbdexl) , 12) ;

bcopy( (char*) ( torqmeas) , (char*) (tmeasbuf f [bdex] ) , 12) ;

bcopy( (char*) (clau-op) , (char*) (claw-opbuf f Cbdexj ) , 12) ;

bcopy((char*) (acc) , (char*) ( x t r a lbu f f [bdexl) ,121 ;

bcopy((char*) (u) , (char*) (xtra2buff Cbdexl ) , 12) ;

bcopy( (char*) (sout-f i n a l ) , (char*) (x t ra3buf f [bdex] ) , 12) ;

bcopy ( (char*) ( e r r o r ) , (char*) (xtra4buf f [bdex] ) , 12) ;

bdex++ ;

xtime = 0 ;

>

i f(ucsub1oop == (uctime-1)) /* r e s e t every UCTIME m s */ ucsubloop = 0 ;

e l s e

ucsubloop ++ ;

x t ime++ ;

t r a j + + ;

end-time = Tirne0 ; /*do it here i n s t e ad of u se r - con t ro l ( ) */ ) /* end of 1 m s loop */

fo r ( i=O; i<(int)(recper*1000)/(int)(1000/recrate); i++) /* Recording */

ChanOut (ToGrip , âydotbuf f Cil , 4) ;

ChanOut (ToGrip , posbuf f [il , 24) ;

Page 108: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

ChanOut (ToGrip , vbuf f [il , 12) ;

ChanOut (ToGrip , tmeasbuf f C i ] , 12) ;

chanout (ToGrip, claw-opbuff C i ] , 12) ;

chanout ( T o ~ r i p , xtraibuf f [il , 12) ;

chantlut (ToGrip , x t ra2buf f [il , 12) ;

ChanOut (ToGrip , x t r a 3 b u f f C i ] , 12) ;

ChanOut ( ~ o ~ r i p xtra4buf f Li] , 12) ;

) /* End of r e c o r d i n g f o r */

/* temporay */ ChanOut (ToGrip, & s t a r t - t i m e , 4) ;

ChanOut (ToGrip , h i d - t ime, 4) ;

ChanOut ( T o ~ r i p , &end-t ime , 4) ;

ChanOutChar(ToGrip, '1'); /* end of exp. */

) /* End of real-tirne-exp loop */

/ * Ind ices f o r j o i n t s : j o i n t l= index 0 ; j o i n t 2=index 1; j o i n t 3=index 2

J o i n t 3 p o s i t i o n and motor t o r q u e s i g n a r e r e v e r s e d

Also j o i n t 2&3 p o s i t i o n need t o be conver ted t o D-H c o n v e n t i o n

j o i n t s 1 and 2 do n o t need c o r r e c t i o n */

v o i d i n i t o r q o

register i n t t i m , i;

~ r o c T o H i g h 0 ;

t i m = T i m e o ;

Page 109: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

for ( i=O; i < l O ; i + + )

ttpragma asm

ldl [ t i m ]

. l d c 30

sum

s t l C t i m ]

#pragma endasm

f r eq -copy I= 0x01;

c ~ ~ ~ O ~ ~ C ~ ~ ~ ( A D T - C H A N , O U T , RATE) ;

ChanoutChar (ADT-CHAN-OUT, f req-copy) ;

ChanIn (ADT-CHAN- I N , t o rqbuf f , 9) ;

f r eq -copy &= OxFE;

ChanOut Char (ADT-CHAN-OUT, RATE) ;

ChanoutChar (ADT-CHAN-OUT, f req-copy) ;

ProcToHighO ;

ChanInTimeFail (ADT-CHAN-IN, temp , 9, t i m ) ;

ProcToLow () ;

torqadjust [O] += ( i n t ) ( ((int) ( torqbuff [2] ) <<4) 1

( ( i n t ) (torqbuff Cl] ) >>4) ;

Page 110: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

t o r q a d j u s t C l ] += ( i n t ) ( ( ( i n t ) ( to rqbuf f [5] ) <<4)

( ( i n t ) ( t o r q b u f f f4] ) >>4) ;

t o r q a d j u s t [2] += ( i n t ) ( ( (int) ( t orqbuf f [a] ) <<4) 1

( ( i n t ) ( to rqbuf f [7] ) >>4) ) ;

1

t o r q a d j u s t [O] = ( t o r q a d j u s t [O] /IO) - 2048 ;

t o r q a d j u s t Cl] = ( t o r q a d j u s t Cl] /IO) - 2048 ;

t o r q a d j u s t [2] = ( t o r q a d j u s t [2] /IO) - 2048 ;

3 /* End of i n i t o r q */

Filename: CONTR0L.C

Creat ed : Dec ' 93

Robot: ALPHA

Desc.: Communicate t o Root t r a n s p u t e r V I A T r a j f o r run p a r a m e t e r s

Run dif f e r n e t f unct ions c a l l e d f rom c o n t i n i . c

Rev.1: MAY 11/90

G e n e r a l r e v i s i o n s

Rev. 2: May 30/95

Added User's PID On/Off f l a g

Page 111: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

char

i n t

f l o a t

i n t

cha r

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

f l o a t

cha r

char

f l o a t

f l o a t

cho i ce , f o r c e [3] ;

uc t ime , eef , e e t , eev , maxmt [3] , max j as [3] , max j ae [3] ;

t r a j p e r , r e c r a t e , r e c p e r , jtdrnax, j tddmax;

f l o c , t l o c , NumMove, v i a p [4] ;

pa th [6] , j o i n t [3] [3] , f b t o r 2 C31 , userpidC31 ;

pAmp Dl , pomega , p s t Amp [JI ;

fv[3], f c [3 ] , gr21, gr31, k l , k2 , k3, k4, k12, k13, k14;

J d 5 l , B a C53 ;

kv11, kv12, kv13, kv21, kv22, kv23, kv31, kv32, kv33;

k p l l , kp12, kp13, kp21, kp22, kp23, kp31, kp32, kp33;

k g i , kg2, kg3, alpha22, a lpha23 , alpha32, a lpha33;

sineamp C31, omegaC31, phase C31 , stepamp C31, rampamp C31 , ktp C31 , k t v C31

Puy, t h r e s h o l d , f s p e c , fstr t , t r i s e , f f i n i ;

Gv l l , Gv22, Gv33, G p l l , Gp22, Gp33, Gt i ldev l , G t i l d e f l ;

disconbuf [85] , dynamicbuf Cl643 , comptorqbuf [78] ;

t r a j b u f [53] , runparabuf Cl381 , torqloopbuf Cl291 ;

TR-N ;

X R [ ~ ] = {100/PIX2, 100/PIX2, -100/PIX2, -16 .O7465, -100/PIX2,

-1OO/PIX2,0, O);

i n t ~o ta ryResC81 = {1000, 1000, 1000, 500, 500, 500, 0 , 0) ;

f l o a t linkJengthC81 = C13.0, A2, D 4 , 3 .O, 0 - 0 , 0 - 0 , 0 .O, 1 .O);

f l o a t ~ o o l - ~ r a n s f o r m C 8 1 = {TOOLLEN, 0 . 0 , 0 . O , 0 . 0 , PI/2.0, 0 . 0 , 0 .O, 0 .O)

/* Kalman f i l t e r e igenvalues */ ex t e rn f l o a t gammal, gamma2, gamma3;

ex t e rn i n t p o s i t i o n [6] ;

e x t e r n Channel *ToFt i , *FromFt i ;

e x t e r n Channel *ToGrip, *FromGrip;

e x t e r n Channel *ToServo, *FrornServo;

Page 112: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

void j o i n t - p a t h ( )

int i , j ;

ChanIn(FromGrip, t r a j b u f , 53) ;

/*cornm. w i t h SERVO f o r pos . on ly f o r c p a t h */ /* i f ( ! s t r c m p ( p a t h , "Cpath"))

~ h a n ~ u t C h a r ( T o ~ e r v o , c h o i c e ) ;

ChanIn (FromServo , p o s i t i o n , 24) ;

ChanOut (ToGrip, p o s i t i o n , 24) ;

f /

1

void run-paramet e r s ()

i n t i;

ChanIn (FromGrip, runparabuf , 138) ;

sscanf ( runparabuf , "%f %f %f %d %d %d %d %d %d %d %d %d %d %d %d %d %f

krecper , âtra j per , k r e c r a t e , &uct ime ,

Page 113: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

&max j ae [O] , &max j ae Cil , kmax j ae CZ] ,

â k t p [O] , â k t p CI] , & k t p C21, â k t v CO] , & k t v Cl1 , k k t v C23 ,

Bjtdmax, Bjtddmax, Bgammal, agamma2, &gammaJ);

ChanOutChar(ToServo, c h o i c e ) ; /* START comm. w i t h SERVO after sscanf*/

ChanOut ( ~ o ~ e r v o , &traj p e r , 4) ;

ChanOut (ToServo , &uct ime , 4) ;

ChanOutChar(ToFti, c h o i c e ) ; /* START comm. with F t i a f t e r sscanf */ ChanOut (ToFt i , & t r a j p e r , 4) ;

ChanOut (ToFt i , âuct ime , 4) ;

/* INITIALIZATION */ for(i=O; i < 8 ; i++)

TR-N[i] = 1.O/(XR~il*(float)(RotaryRes[i]));

maxmt [O] = m a x m t [O] *AMPSCALE ;

/* s e t 1800dec. of D/A as max. t o r q u e , which i s 60Nm r /

m a x m t Cl] = maxmt C l ] *AMPSCALE;

/* 1100 dec. i s e q u i v a l e n t t o 7 . 2 A , max. c u r r e n t */ maxmt [2] = maxmt C2] *AMPSCALE ;

rnax j as [O] = max j as [O] *DEG-PULSES ;

max j as Cl] = rnax j as Cl] *DEG-PULSES ;

rnax j as [2 ] = max j as [2 ] *DEG-PULSES ;

max j ae [O] = rnax j ae [O] *DEG-PULSES ;

rnax j ae Cl] = rnax j ae [l] *DEG-PULSES ;

max j ae (21 = max j ae (23 *DEG-PULSES ;

>

v o i d c o n t r o l - l a w - p a r a ( )

< c h a r c l a w ;

Page 114: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

int i. j ;

claw = ~han~n~har(~rom~rip) ;

switch(c1aw)

case PD-TORQUE-LOOP: /* torque loop - estirnate inertia para */ ChanIn(FromGrip, torqloopbuf, 129);

sscanf(torqloopbuf, "%s %s %s %f xf %f %f %f %f %f %f

%f %f %f %f %f %f %f %f %f %f %f %f1l,

joint [O] , joint Cl] ,joint C23 . âsineamp CO] , &omega[Ol , &phase CO1 , Bstepamp COI ,

ârampamp [O] , âsineamp Cl] . Bomega Cl1 , &phase Cl1 . Bstepamp CI] , &rampamp Cl1 ,&sineamp C21 .Bomega C21,

&phase [Z] , Bstepamp Cl1 , Qrampamp C21,

&gr21, Bgr31, &fcCO], &fcC11, %fd2]);

strcpy (f btor2, "of Ir) ;

break ;

case COMPUTED-TORQUE: /* computed torque */ case FBL: /* feedback linearized */

case FORCE-CONTROL: /* force control */ ~hanIn(FromGrip, disconbuf, 85);

ChanIn(FromGrip, dynamicbuf, 164);

ChanIn(FromGrip. comptorqbuf, 78);

sscanf(disconbuf, "%s %f %f %f %f %f %f %f %f %f %f %f

%f %f %fU3force, âthreshold, Bfspec, &fstrt,

&trise, Bffini, &Puy. &Gpl13 BGp22, QGp33,

&Gvl 1 , kGv22, &Gv33, &Gt ildef 1, &Gt ildevl) ;

sscanf(dynamicbuf, "%f %f %f %f %f %f %f %f %f %f %f %f

%f %f %f %f %f %f %f %f %f %f %f %f %fl1,&kl,

âk2, Bk3. &k4, âk12. âk13, &kM, Qgr21, âgr31,

âfc Col . âf c Cil , âf c C21 , &fv Col , af v Cil , &f v C21 ,

Page 115: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

& ~ a [O] , & Ja Cl] , &Ja [21 , â Ja (33 , & Ja [41 , &Ba [O] ,

& ~ a [II , &Ba [2] , &Ba [JI , & B a [4] ) ;

sscanf(comptorqbuf , "%f %f '/.f %f %f %f %f %f %f %f %f %f

% f H , & k p 1 l , &kp22, &kp33 ,&kvl lY akv22, âkv33,

&kg1 , Bkg2, Bkg3, Balpha22, a a l p h a 2 3 , 8a lpha32,

&alpha331 ;

s t r c p y ( f b t o r 2 , " o f " ) ;

break ;

c a s e NN-CTORQ :

# i fde f NEURAL /* def ined i n c o n t . mak */

n e u r a l n e t () ; /* i n c o n t n n - c +/

#endif

s t r c p y ( f b t o r 2 , "of t t ) ;

/* f lag t o t u r n u s e r ' s c o n t r o l on /o f f */ break ;

c a s e POSITION-CONTROL: /* p o s i t i o n c o n t r o l */

s t r c p y ( f b t o r 2 , 'on" j ;

break ;

) /* end of claw switch */

ChanOut(ToGrip, f b t o r 2 , 3 ) ;

ChanOutChar(ToServo, choice); /* start comm. wi th SERVO */

f o r ( i = O ; i < 3 ; i++) /* r u n u s e r s e l e c t e d j o i n t */

ChanOut (ToServo , j o i n t [il , 3) ;

ChanOut (ToServo , f b t o r 2 , 3) ;

>

Page 116: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

#indude <conc.h>

# i n c h d e "e:\exprment\curntorq\include\xputer.h"

Channel *ToFti, *FromFti;

Channel *ToGrip, *FromGrip;

Channel *ToServo, *FromServo;

Channel *ADT,CHAN,IN, *ADT,CHAN-OUT;

extern char choice;

int ini-atd = 1;

int main(void)

ToFti = LINKIOUT;

FromFti = LINKlIN;

ToServo = LINKOOUT;

FromServo = LINKO IN ;

ToGrip = LINK20UT;

FromGrip = LINK2IN;

ADT-CHAN-OUT = LINK30UT;

ADT-CHAN-IN = LINK3IN;

atdb() ;

ini-atd = 0;

while(1)

< choice=ChanIn~har (FromCrip) ;

switch(choice)

case JOINT-PATH: /* select joint and path; ini. a/d */ initorqo ;

Page 117: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

j o i n t - p a t h ( ) ;

break ;

case RUN-PARAMETERS: /* i n i t . run p a r a . */ run-paramet ers () ;

b r e a k ;

case CONTROL-LAW-PARA:

i n i t o r q o ;

con t ro l - l aw-pa ra ( ) ;

b r e a k ;

case REAL-TIME-EXP: /* s t a r t exp . . . read p o s i t i o n */ real-t ime-exp () ;

break ;

case STOP-EXP: /* e x i t exp. */ e x i t (1) ;

break;

def ault :

break;

Page 118: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Appendix C

Graphical Results of Real-time

Experiments on the CRS A460

Robot

Page 119: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 raUs

Joint #1: Desired & Adual Position Trajedory Joint #1: Position Error -

5 10 15 J -0.02 20 O 5 1 O 15 20

Time (sec.) Time (sec.)

Joint #1: Computed Torque Command Joint #1: Computed Current Command

-20 ' 1 O 5 10 15 20

Time (sec.)

-1 1 O 5 10 15 20

Time (sec.)

Figure C.1: Position history of joint-1 under computed t o q u e control. for motion aided by gravit y

Page 120: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. VeIocity = 0.1 rads

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

U

O 5 10 15 20 Time (sec.)

Joint #1: Computed Torque Cornmand

O 5 10 15 20 Time (sec.)

-0.05 0 O 5 10 15 20

Time (sec.)

Joint #1: Cornputed Current Cornrnand

6.2' O 5 10 15 20

Time (sec.)

Figure C.2: Position history of joint- 1 under PD cont rol. for mot ion aided by gravity

Page 121: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. V e l ~ i t y = 0.1 rad/s

Joint #1: Desired & Actual Position Trajectory

O 5 10 15 20 Time (sec.)

Joint #1: Computed Torque Command 1

-5 ' l O 5 10 15 20

Time (sec.)

Joint #1: Position Error

Time (sec.)

Joint #1: Computed Cuvent Command

I l

-0.5 1 O 5 1 O 15 20

Time (sec.)

Figure C.3: Position history of joint4 under PD control with gravity compensation. for motion aided by gravity

Page 122: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

PayIoad = 5.5 Lbf Max. Velocity = 0.1 rads

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

O 5 IO 15 20 Time (sec.)

Joint #1: Computed Torque Command

* O 0

-20 l I I

O 5 10 15 20 Time (sec.)

-0.04 ' 1 I O 5 10 15 20

Time (sec.)

Joint #l : Computed Curent Command

'1

O 5 1 O 15 20 Time (sec.)

Figure C.4: Position history of joint-l under compiited torque control, for motion against gravit-

Page 123: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 rad/s

Joint #1: Desired 8 Actual Position Trajectory Joint #1: Position Error

O O 5 10 15 20

Time (sec.)

Joint #1: Computed Torque Command

-101 1 O 5 10 15 20

Time (sec.)

Time (sec.)

Joint #1: Cornputed Cunent Cornmand

Time (sec.)

Figure C.5: Position history of joint-i under PD control. for motion against gravity

Page 124: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Vdoci ty = 0.1 radk

Joint #l : Desired & Actual Position Trajectory Joint #1: Position Error

5 10 15 Time (sec.)

Joint #1: Computed Torque Command

Time (sec.)

-0.1 5 O 5 10 15 20

Time (sec.)

Joint #1: Computed Current Command

Time (sec.)

Figure C.6: Position history of joint-1 under PD control with gravit!. compensation. for motion against gravity

Page 125: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint # l : Desired 8 Actual Position Traiectory

-0 5 10 15 20 Time (sec.)

Joint #t Cornputed Torque Command 20 1

Joint #I : Position Error

Time (sec.)

Joint #1: Computed Current Command

1

-20 l O 5 1 O 15 20

Time (sec.)

-1 ' I O 5 10 15 20

Time (sec.)

Figure (2.7: Position history of joint-1 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of O.5Lb

Page 126: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired 8 Actual Position Trajectory Joint #1: Position Error

"O 0.5 1 1.5 2 Tirne (sec.)

Joint #1: Computed Toque Command

-40 I O 0.5 1 1.5 2

Time (sec.)

-0.02 1 O O. 5 1 1.5 2

Time (sec.)

Joint #1: Computed Current Command

Time (sec.)

Figure CS: Position history of joint-1 under cornputed torque control. at a peak joint-speed of 1 rad/s and a payload of O.5Lb

Page 127: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

O. 5 1 1.5 2 Time (sec.)

Joint #1: Computed Torque Command

Time (sec.)

4.1 O O. 5 1 1.5 2

Time (sec.)

Joint #1: Computed Current Command

' O O. 5 1 1.5 2 Time (sec.)

Figure C.9: Position history of joint-l under computed torque control? at a peak joint-speed of 3 rad/s and a payload of O.Xb

Page 128: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Enor

-0 5 10 15 20 Time (sec.)

Joint #1: Computed Torque Command

20 0

Time (sec.)

4.02 l I O 5 10 15 20

Time (sec.)

Joint #1: Computed Current Cornmand

J ' O 5 10 15 20

Time (sec.)

Figure C.10: Position history of joint4 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of l.5Lb

Page 129: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #l : Desired 8 Actual Position Trajectory Joint #1: Position Error

O. 5 1 1.5 Time (sec.)

O O. 5 1 1.5 2 Time (sec.)

Joint #I : Cornputed Torque Command

301

-20 O 0.5 1 1.5 2

Time (sec.)

Joint #1: Computed Current Comrnand 2 (

-2 O O. 5 1 1.5 2

Time (sec.)

Figure C.11: Position history of joint-1 under computed torque control. at a peak joint-speed of 1 rad/s and a payload of l.5Lb

Page 130: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

Time (sec.)

Joint #1: Computed Torque Command

Tirne (sec.)

Time (sec.)

Joint #A: Computed Current Command

O O. 5 1 1.5 2 Time (sec.)

Figure C.12: Position history of joint-1 under computed torque control. at a peak joint-speed of 3 radis and a payload of l..jLb

Page 131: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Oesired & Actual Position Trajectory Joint #1: Position Error

Time (sec.)

Joint #1: Computed Torque Command 20 r 1

Tirne (sec.)

Time (sec.)

Joint #1: Computed Current Comrnand 1.5 1

-1 1 O 5 10 15 20

Time (sec.)

Figure C.13: Position history of joint-1 under computed torque control, at a peak joint-speed of 0.1 rad/s and a payload of 2.5Lb

Page 132: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired 8 Actual Position Trajectory Joint #1: Position Error 80 O. 04

h

-60 Cn 0.03 al

& al Y

& 0.02 L

C

w' c 0.01 O *- œ .- V)

O 0 e

4.01 O O. 5 1 1.5 2

Time (sec.) Tirne (sec.)

Joint #1: Computed Torque Command Joint #l : Computed Current Command

-20 -2 I O 0.5 1 1.5 2 O 0.5 1 1.5 2

Time (sec.) Time (sec.)

Figure Cl?: Position history of joint-1 under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 2.5Lb

Page 133: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #l : Position Enor

O 0.5 1 1.5 2 Time (sec.)

Joint #1: Computed Torque Command 1

-50 t O 0.5 1 1.5 2

Time (sec.)

Time (sec.)

Joint #f : Computed Current Command 4 1

I O 0.5 1 1.5 2

Time (sec.)

Figure C.15: Position history of joint-l under computed torque control. at a peak joint-speed of 3 rad/s and a payload of 2.5Lb

Page 134: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

-0 5 10 15 20 Time (sec.)

Joint #1: Computed Torque Command 20 I

-20 I O 5 1 O 15 20

Tirne (sec.)

- 0 . 0 2 0 O 5 10 15 20

Time (sec.)

Joint #1: Computed Current Command

' O 5 10 15 J 20

Time (sec.)

Figure C.16: Position history of joint4 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 3.5Lb

Page 135: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error 80. O. 06

h

-60 - 0.04 0 L

L 0.02

c rn O .-

C .- - O O e

-0.02 O 0.5 1 1.5 2

Time (sec.) Time (sec.)

Joint #1: Computed Torque Comrnand Joint #1: Computed Current Command

Time (sec.) Time (sec.)

Figure C.17: Position historj- of joint-l under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 3.5Lb

Page 136: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired 8 Actual Position Trajectory Joint #l: Position Error

Time (sec.) Time (sec.)

Joint #l : Computed Torque Command Joint #1: Computed Current Command

0.5 1 1.5 Time (sec.)

O. 5 1 1.5 Time (sec.)

Figure C.18: Position history of joint-1 under computed torque control. at a peak joint-speed of 3 rad/s and a payload of 3.JLb

Page 137: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

Time (sec.)

Joint #1: Computed Torque Comrnand

Time (sec.)

Time (sec.)

Joint #1: Computed Current Command

O 5 10 15 20 Time (sec.)

Figure C.19: Position history of joint-1 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 4 . X b

Page 138: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error 80 0.03

h

-60- oi $ 0.02 al 2- u L V 2 .- 5 0.01 CI .- cn

C O .- u .- 8 O e

O 0.5 1 1.5 2 O O. 5 ? 1.5 2 4.01

Time (sec.) Time (sec.)

Joint #1: Computed Torque Command Joint #1: Computed Curent Command 40 3

20 h 2

E 5 E' a, O

0 l 3

Ci

C F O

2 O 5

+ -20 U - 1

-40 O

-2 0.5 1 1.5 2 O O. 5 1 1.5 2

Time (sec.) Time (sec.)

Figure C.20: Position history of joint-1 under computed torque control. a t a peak joint-speed of 1 rad/s and a payload of 4.5Lb

Page 139: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Traiectory Joint 171: Position Error

-0 0.5 1 1.5 2 Time (sec.)

Joint #1: Computed Torque Command

O O. 5 1 1.5 2 Time (sec.)

Time (sec.)

Joint # A : Computed Current Comrnand

0.5 1 1.5 Time (sec.)

Figure C.21: Position history of joint-1 under computed torque control. at a peak joint-speed of 3 rad/s and a payload of 4..5Lb

Page 140: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired 8 Actual Position Trajectory Joint #1: Position Enor

10 15 Time (sec,)

Joint #1: Computed Torque Command 20 I

-0.02 i O 5 10 15 20

Time (sec,)

-20 ' 1 O 5 10 15 20

Time (sec.)

Joint #1: Computed Current Command

O 5 10 15 20 Time (sec.)

Figure C.2: Position history of joint-l under computed torque control. at a peak joint-speed of 0.1 radis and a payload of 5.5Lb

Page 141: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #t : Desired & Actual Position Trajectary Joint #1: Position Error

-0 0.5 1 1.5 2 Time (sec.)

Joint #1: Computed Torque Command 40 r i

J O O. 5 1 1.5 2

Time (sec.)

Time (sec.)

Joint #1: Computed Current Command 1

O 0.5 1 1.5 2 Time (sec.)

Figure C.23: Position history of joint-1 under computed torque control. ai a peak joint-speed of 1 rad/s and a payload of 5.5Lb

Page 142: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #1: Desired & Actual Position Trajectory Joint #1: Position Error

"O 0.5 1 1.5 2 Time (sec.)

Joint #1: Computed Torque Command

O. 5 1 1.5 Time (sec.)

-0.05' O 0.5 1 1.5 2

Time (sec.)

Joint #1: Computed Curent Command

O 0.5 1 1.5 2 Time (sec.)

Figure C.24: Position history of joint-1 under computed torque control. at a peak joint-speed of 3 rad/s and a payload of 3.5Lb

Page 143: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. V e l d t . = 0.1 rad/s

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

8oL I O 5 10 15 20

Time (sec.)

Joint #2: Computed Torque Command

5 10 15 Tirne (sec.)

1 O 5 10 15 20

Tirne (sec.)

Joint #2: Cornputed Current Command

l O 5 10 15 20

Time (sec.)

Figure C.25: Position history of joint-? under computed torque control for motion

Page 144: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory 160 11,

80 I O 5 10 15 20

Time (sec.)

Joint #2: Cornputed Torque Cornmand

-80 O 5 1 O 15 20

Time (sec.)

Payload = 5.5 Lbf Max. V e l d ty = 0.1 radis

Joint #2: Position Error

O 0

Time (sec.)

Joint #2: Computed Current Command

-0 5 10 15 20 Tirne (sec.)

Figure C.26: Position history of joint-? under independent-joint PD control for motion against gravity

Page 145: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. V e l d ty = 0.1 rad/s

Joint #2: Desired & Actual Position Trajedory

O 5 10 15 20 Tirne (sec.)

Joint #2: Computed Torque Command O 1

-80 O 5 10 15 20

Time (sec.)

Joint #2: Position Error

5 10 15 20 Time (sec.)

Joint #2: Computed Current Command O , I

-5 I O 5 1 O 15 20

Time (sec.)

Figure C.27: Position history of joint-? under PD control rvit h gravity compensation for motion against gravity

Page 146: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velodty = 0.1 raWs

Joint ü2: Oesired & Actual Position Trajectory Joint #2: Position Error

80 O 5 10 15 20

Time (sec.)

Joint #2: Computed Torque Cornrnand 20 r I

-60 ' I I

O 5 10 15 20 Time (sec.)

Time (sec.)

Joint #2: Computed Current Command

-0 5 10 15 20 Time (sec.)

Figure C.28: Position history of joint-? under computed torque control for motion aided by gravity

Page 147: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 rads

Joint #2: Desired & ActuaI Position Trajectory 1 60

80 O 5 10 15 20

Time (sec.)

Joint #2: Cornputed Torque Command

-60 1 O 5 10 15 20

Time (sec.)

Joint #2: Position Enor

Time (sec.)

Joint #2: Computed Current Cornmand 1 1

O 5 10 15 20 Time (sec.)

Figure C.29: Position history of joint-? under independent-joint PD cont rol for mot ion aided by gravit-

Page 148: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 rad/s

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

l 6 O 0 O-O5 5

80 ' I 1 O 5 10 15 20 O 5 10 15 20

Tirne (sec.) Time (sec.)

Joint #2: Cornputed Torque Command Joint #2: Computed Current Comrnand

I

O 10 15 20 O 1 O 15 20 Time (sec.) Time (sec.)

Figure C.30: Position history of joint-? under PD control wit h gravity compensation for motion aided by gravity

Page 149: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Traiectory Joint #2: Position Enor

80 O 5 10 15 20

Time (sec.)

Joint #2: Computed Torque Command 20 r 1

-60 ' l O 5 1 O 15 20

Time (sec.)

1 O 5 10 15 20

Time (sec.)

Joint #2: Cornputed Current Command

O 5 10 15 20 T ime (sec.)

Figure C.31: Position history of joint-? under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of O.5Lb

Page 150: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory

80 O O. 5 1 1.5 2

Time (sec.)

Joint #2: Computed Torque Command

401

-60 1 O O. 5 1 1.5 2

Time (sec.)

Joint #2: Position Error

4.04 L O O. 5 1 1.5

J 2

Time (sec.)

Joint #2: Computed Current Command 2

-4 l O O. 5 1 1.5 2

Time (sec.)

Figure C.32: Position history of joint-2 under computed torque control. at a peak joint-speed of 1 rad/s and a payload of O.5Lb

Page 151: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

1

0.5 1 1.5 2 Time (sec.)

Joint #2: Computed Torque Command

Time (sec.)

Time (sec.)

Joint #2: Computed Current Command

6c

Time (sec.)

Figure C.33: Position history of joint-? under cornputed torque control. at a peak joint-speed of 3 rad/s and a payload of O.5Lb

Page 152: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

Time (sec.)

Joint #2: Computed Torque Command 20 1

-60 I O 5 10 15 20

Time (sec.)

4.04 I O 5 10 15 20

Time (sec.)

Joint #2: Computed Current Command

J O 5 10 15 20

Time (sec.)

Figure C.34: Position history of joint-? under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 1.5Lb

Page 153: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Enor

I O 0.5 1 1.5 2

Time (sec.)

Joint #2: Cornputed Torque Command

40 0

-60 I O 0.5 1 1.5 2

Time (sec.)

-0.04' I O O. 5 1 1.5 2

Time (sec.)

Joint #2: Cornputed Current Command

'O O. 5 1 1.5 2 Time (sec.)

Figure C.3.5: Position history of joint-? under computed torque control. at a peak joint-speed of 1 rad/s and a payload of l.5Lb

Page 154: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

1 O. 5 1 1.5 2

Time (sec.)

Joint #2: Computed Torque Command 1 O0 [[l

-1 00 1 O 0.5 1 1.5 2

Time (sec.)

-0.1 ' J O 0.5 1 1.5 2

Time (sec.)

Joint #2: Computed Cuvent Command

-0 0.5 1 1.5 2 Time (sec.)

Figure C.36: Position historp of joint-:! under computed torque control. at a peak joint-speed of 3 rad/s and a payload of l . X b

Page 155: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired 8 Actual Position Trajedory Joint #2: Position Error

80 O 5 10 15 20

Tirne (sec.)

Joint #2: Computed Torque Command t

-60 ' I O 5 10 15 20

Time (sec.)

-0.03 O 5 10 15 20

Time (sec.)

Joint #2: Computed Current Cornmand

O 5 10 15 20 Time (sec.)

Figure C.37: Position history of joint-? under cornputed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 2.5Lb

Page 156: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory

Time (sec.)

Joint #2: Computed Torque Comrnand

40 0

-60 I O 0.5 1 1.5 2

Time (sec.)

Joint #2: Position Error 1

o. 5 1 1.5 Time (sec.)

Joint #2: Computed Current Comrnand 1

-4 O 0.5 1 1.5 2

Tirne (sec.)

Figure C.3S: Position history of joint-? under computed torque control, at a peak joint-speed of 1 rad/s and a payload of X L b

Page 157: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory

l 6 O O Joint #2: Position Error

1

1 0.5 1 1.5 2

Time (sec.)

-0.1 ' l O O. 5 1 1.5 2

Time (sec.)

Joint #2: Computed Torque Command

' 0 ° 1

-1 00 I O 0.5 1 1.5 2

Time (sec.)

Joint #2: Computed Curent Command 1

-101 J O 0.5 1 1.5 2

Time (sec.)

Figure C.39: Position history of joint-? under computed torque control. at a peak joint-speed of 3 rad/s and a payload of M L b

Page 158: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Oesired & Actual Position Trajectory Joint #2: Position Error

60 0 O-** 0

Joint #2: Computed Torque Command Joint #2: Computed Current Comrnand

80

-60 ' I O 5 10 15 20

Time (sec.)

n

ci 0.01 a u w

O 2 L

W 0 -0.01 .- Y -- 8 4.02 e

-4 ' 1 O 5 10 15 20

Time (sec.)

O -0.03

5 10 15 20 O 5 10 15 20 Time (sec.) Time (sec.)

Figure C.10: Position history of joint-2 under computed torque control, at a peak joint-speed of 0.1 rad/s and a payload of 3.5Lb

Page 159: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired 8 Actual Position Trajectory Joint #2: Position Error 160 - O. 04

h

-140- & $ 0.02 Q) E

L

.- CI

g O .- in

C O .- œ .- g -0.02 CL

I

80 1 O O. 5 1 1.5 2 -0.04l O O. 5 1 1.5 2

Time (sec.) Time (sec.)

Joint #2: Computed Torque Command Joint #2: Computed Current Command 40 2

h

20 - 0

E 5 0

E Q)

s 7 - -2 t F -20 e ro 3

-40 0 -4

-60 -6 O 0.5 1 1.5 2 O 0.5 1 1.5 2

Time (sec.) Time (sec.)

Figure C.41: Position history of joint-? under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 3.5Lb

Page 160: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

80 ' I O 0.5 1 1.5 2

Time (sec.)

-0.1 ' O 0.5 1 1.5 2

Time (sec.)

Joint #2: Computed Torque Command

l o 0 o

-1 001 O O, 5 1 1.5 2

Tirne (sec.)

Joint #2: Computed Current Command

-0 0.5 1 1.5 1 2

Time (sec.)

Figure C.42: Position history of joint-2 under computed torque control. at a peak joint-speed of 3 rad/s and a payload of 3.5Lb

Page 161: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory

I

O 5 10 15 20 Time (sec.)

Joint #2: Computed Torque Cornmand

20 0

-60 ' 1

O 5 10 15 20 Time (sec.)

Joint #2: Position Enor

4.03 O 5 10 15 20

Time (sec.)

Joint #2: Computed Current Cornmand 1 r i

I 1

O 5 10 15 20 Time (sec.)

Figure C.43: Position history of joint2 under cornputed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 4 . X b

Page 162: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory Joint #2: Position Error

*O":, I

o. 5 1 1.5 2 Time (sec.)

-0.04 J O 0.5 1 1.5 2

Time (sec.)

Joint #2: Cornputed Torque Command

40 O

. . O O. 5 1 1.5 2

Time (sec.)

Joint #2: Computed Cunent Command 2 r t

'0 O. 5 1 1.5 2 Tirne (sec.)

Figure C.44: Position history of joint-? under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 4.5Lb

Page 163: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #2: Desired & Actual Position Trajectory

l 6 O o o. 1

Joint #2: Position Error

r

Time (sec.) Time (sec.)

Joint #2: Computed Torque Command Joint #2: Computed Current Cornmand

1

O O. 5 1 1.5 2 O O. 5 1 1.5 2 Time (sec.) Time (sec.)

Figure C.4.j: Position history of joint-? under computed torque control. at a peak joint-speed of 3 rad/s and a payload of 4.3Lb

Page 164: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 1 rads

Joint #2: Desired 8 Actual Position Trajectory Joint #2: Position Error

801 1

O 0.5 1 1.5 2 Tirne (sec.)

Joint #2: Computed Torque Command

50 0

-1 O0 O O. 5 1 1.5 2

Time (sec.)

4.04 O O. 5 1 1.5 2

Time (sec.)

Joint #2: Computed Curent Command 2 r . 1

-6 O O. 5 1 1.5 2

Time (sec.)

Figure C.46: Position history of joint-? under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 5.5Lb

Page 165: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. joint v e l d ty = 3 racüs

Joint #2: Desired & Adual Position Trajectory

I6O 0

80 O 0.5 1 1.5 2

Time (sec.)

Joint #2: Position Error 0.05 r I

-0.1 O O. 5 1 1.5 2

Time (sec.)

Figure C.47: Position history of joint-? under computed torque control. at a peak joint-speed of 3 rad/s and a papload of 5.5Lb

Joint #2: Computed Torque Command Joint #2: Computed Current Cornmand lot

- 5 . E 0 - 0 - C

3 0 -5-

I

O 0.5 1 1.5 2 O O. 5 1 1.5 2 -1 0

Time (sec.) Time (sec.)

Page 166: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 rads

Joint #3: Desired & Actual Position Trajectory Joint #3: Position Error

-100' I O 5 10 15 20

Time (sec.)

Joint #3: Computed Torque Command

400

4 0 O 5 10 15 20

Time (sec.)

Time (sec.)

Joint #3: Computed Current Command

*a

-L

O 5 10 15 20 Time (sec.)

Figure C.4S: Position history of joint-:] under computed torque control for motion aided by gravit-

Page 167: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 rads

Joint #3: Desired 8 Actual Position Trajectory -20 1.1

-1 00 I O 5 1 O 15 20

Time (sec.)

Joint #3: Cornputed Torque Command

2o 0

-20 ' I : 1 O 5 10 45 20

Time (sec.)

Joint #3: Position Error

' O 5 10 15 20 Time (sec.)

Joint #3: Computed Current Command

5 10 15 20 Tirne (sec.)

Figure C.49: Position his tory of joint-3 under independent-joint PD cont rol for mot ion aided by gravity

Page 168: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velocity = 0.1 radk

Joint #3: Desired & Actual Position Trajectory Joint #3: Position Error -20 0.6

n - -40 ch a ei, QI E0 .4 L

c -60. 2

O .- Y

h .- C

-0 Ci 0.2 .- V) O a

-1 00; 1 5 10 15 20

Time (sec.) O 5 1 O 15 20

Time (sec.)

Joint #3: Computed Torque Cornmand Joint #3: Computed Current Command 20 2

- 10 - 1 E 5 E'

O S.

3 - O C u S F F 5

-1 O 0 -1

-20 -2 O 5 10 15 20 O 5 10 15 20

Tirne (sec.) Time (sec.)

Figure C.50: Position history of joint-3 under PD cont rol wit h gravit- cornpensat ion for motion aided by gravity

Page 169: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Veloci ty = 0.1 rad/s

Joint #3: Desired 8 Actual Position Trajectory Joint #3: Position Error

-1 00; I 5 10 15 20

Time (sec.)

Joint #3: Computed Torque Command

2o O

-60 ' I O 5 10 15 20

Time (sec.)

Time (sec.)

Joint #3: Cornputed Current Command

Time (sec.)

Figure C.51: Position history of joint-3 under computed torque control for motion against gravity

Page 170: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. Velodty = 0.1 ra#s

Joint #3: Desired & Actual Position Trajectory -20 i l ,

-1 00 ' I O 5 10 15 20

Time (sec.)

Joint #3: Computed Torque Command 0 1

-50 ' 1 O 5 10 15 20

Time (sec.)

Joint #3: Position Error

Tirne (sec.)

Joint #3: Computed Cuvent Command

O 5 10 15 20 Time (sec.)

Figure C.52: Position history of joint-3 under independent-joint cont ro1 for mot ion against gravity

Page 171: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max. V e l d ty = 0.1 rads

Joint #3: Desired & Actuaf Position Trajectory

-20 O

-1 O0 1 I O 5 10 15 20

Time (sec.)

Joint #3: Computed Torque Command

Joint #3: Position Error 0.5 (

O 5 10 15 C

L

Time (sec.)

Joint #3: Computed Current Command A

Time (sec.)

. . -3 1 I

O 5 1 O 15 20 Time (sec.)

Figure C.53: Position history of joint-3 under PD control rvit h gravity compensation for mot ion against gravi t y

Page 172: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory

-1001 1 O 5 10 15 20

Time (sec.)

Joint #3: Computed Torque Command

-20 I O 5 10 15 20

Time (sec.)

Joint #3: Position Error

5 10 15 Time (sec.)

Joint #3: Computed Current Command

2o

- 'O 5 10 15 20 Time (sec.)

Figure C.54: Position history of joint-3 under compoted torque control. at a peak joint-speed of 0.1 rad/s and a payload of O.5Lb

Page 173: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory -20 r 1

Joint #3: Position Error 0.08 1 1

-1 00; 0.5 1 1.5 2

Time (sec.)

-0.02 I O 0.5 1 1.5 2

Tirne (sec.)

Joint #3: Computed Torque Command

300

-20 I

O 0.5 1 1.5 2 Time (sec.)

Joint #3: Computed Current Command 2

- 'O 0.5 1 1.5 2 Time (sec.)

Figure C.5.j: Position history of joint-3 under computed toque control. at a peak joint-speed of 1 rad/s and a payload of O.5Lb

Page 174: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory Joint #3: Position Error

Tirne (sec.)

Joint #3: Computed Torque Command 60 1

1 O. 5 1 1.5 2

Time (sec.)

Time (sec.)

Joint #3: Computed Current Command 4 1 1

Time (sec.)

Figure C.56: Position history of joint-3 under cornputed torque control. at a peak joint-speed of 3 rad/s and a payload of O.5Lb

Page 175: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired 8 Adual Position Trajedory Joint #3: Position Error

-1ooL I O 5 10 15 20

Time (sec.)

Joint fM: Computed Torque Comrnand

300

-20 I O 5 10 15 20

Tirne (sec.)

O 5 10 15 20 Time (sec.)

Joint #3: Cornputed Current Comrnand

2m

-2 I O 5 10 15 20

Time (sec.)

Figure C.5;: Position history of joint-3 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 1.5Lb

Page 176: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired 8 Actual Position Trajectory Joint #3: Position Error -20 O. 08

h

-40 - $ 0.06 0, a 0 u Y 5 0.04 .- w'

0.02 O .- Y .- V> O 0 Q.

-1 O0 O 0.5 1 1.5 2 O 0.5 1 1.5 2

-0.02

Time (sec.) Tirne (sec.)

Joint #3: Computed Torque Command Joint #3: Computed Current Cornmand i 2 r 1

-20 t O O. 5 1 1.5 2

Time (sec.) Time (sec.)

Figure C.3: Position history of joint-3 under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 1.5Lb

Page 177: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position irajectory

-1001 I O 0.5 1 1.5 2

Time (sec.)

Joint #3: Computed Torque Command 60 I

1 O 0.5 1 1.5 2

Time (sec.)

Joint #3: Position Enor

Time (sec.)

Joint #3: Computed Current Command

7

O O. 5 1 1.5 2 Time (sec.)

Figure C.59: Position history of joint-3 under computed torque control. at a peak joint-speed of 3 rad/s and a payload of l . X b

Page 178: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired 8 Actual Position Trajectory

-20 0

-1 00 O 5 10 15 20

Time (sec.)

Joint #3: Computed Torque Command

30 0

Time (sec.)

Joint #3: Position Error 0.08 1 I

O' I O 5 1 O 15 20

Time (sec.)

Joint #3: Computed Current Command

-2 O 5 10 15 20

Time (sec.)

Figure C.60: Position history of joint-3 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of Z.5Lb

Page 179: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory Joint #3: Position Error

-1 00 1 O 0.5 1 1.5 2

Time (sec.) Tirne (sec.)

Joint #3: Computed Torque Command

40 0

I O 0.5 1 1.5 2

Time (sec.)

Joint #3: Computed Cuvent Command 1

-2 1 O 0.5 1 1.5 2

' Tirne (sec.)

Figure C.61: Position history of joint-3 under computed torque control. at a peak joint-speed of 1 rad/s and a payload of '2.5Lb

Page 180: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the
Page 181: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory

-20 0 Joint #3: Position Error

*-O8 0

-1001 I O 5 10 15 20

Time (sec.)

o1 I O 5 10 15 20

Time (sec.)

Joint #3: Cornputed Torque Command

400

40 1 J O 5 10 15 20

Time (sec.)

Joint #3: Computed Current Comrnand

-c

O 5 10 15 20 l i m e (sec.)

Figure C.63: Position history of joint-3 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 3 . X b

Page 182: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory Joint #3: Position Error

-1 00; J O. 5 1 1.5 2

Time (sec.)

Joint #3: Computed Torque Command

40 0

4 o L O 0.5 1 1.5 2

Time (sec.)

-0.02 ' 1 O 0.5 1 1.5 2

Time (sec.)

Joint #3: Computed Current Cornrnand 2 1

I O O. 5 1 1.5 2

Time (sec.)

Figure C.64: Position history of joint-;3 under computed torque control. a t a peak joint-speed of 1 rad/s and a payload of 3.5Lb

Page 183: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Traiectory Joint #3: Position Error

-1 O0 O O. 5 1 1.5 2

Tirne (sec.)

Joint #3: Computed Torque Command

l o 0 o

-

-0.02 O O. 5 1 1.5 2

Tirne (sec.)

Joint #3: Computed Current Comrnand

-50 ' I O 0.5 1 1.5 2

Tirne (sec.)

-4 ' I O 0.5 1 1.5 2

Time (sec.)

Figure (2.65: Position history of joint-3 under computed torque control, at a peak joint-speed of 3 rad/s and a payload of 3.5Lb

Page 184: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory

-20 0

-1 00 ' J O 5 I O 15 20

Time (sec.)

Joint #3: Computed Torque Command

40 0

I O 5 10 15 20

Time (sec.)

Joint #3: Position Error

h

O' O 5 10 15 20

Time (sec.)

Joint #3: Computed Cuvent Command

Tirne (sec.)

Figure C.66: Position history of joint-3 under computed torque control. at a peak joint-speed of 0.1 rad/s and a payload of 4.5Lb

Page 185: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired 8 Actual Position Trajectory

Tirne (sec.)

Joint #3: Computed Torque Comrnand

40 1

0.5 1 1.5 2 Time (sec.)

Joint #3: Position Error

Time (sec.)

Joint #3: Computed Curent Command 2 ( i

-2 1 O O. 5 1 1.5 2

Time (sec.)

Figure C.67: Position history of joint-3 under computed torque control. at a peak joint-speed of 1 rad/s and a payload of 4.5Lb

Page 186: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Joint #3: Desired & Actual Position Trajectory

Time (sec.)

Joint #3: Computed Torque Command

' O 0 1

Time (sec.)

Joint #3: Position Error

r

Time (sec.)

Joint #3: Computed Current Command

6m

4 1 I O 0.5 1 1.5 2

Time (sec.)

Figure C.68: Position history of joint-3 under computed torque control. at a peak joint-speed of 3 rad/s and a payload of G L b

Page 187: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payload = 5.5 Lbf Max- Velocity = 1 rads

Joint #3: Desired 8 Actual Position Trajectory

-1 00 O O. 5 1 1.5 2

Time (sec.)

Joint #3: Cornputed Torque Comrnand

40 0

l O 0.5 1 1.5 2

Time (sec.)

Joint #3: Position Error 0.06

1

-

-0 0.5 1 1.5 2 Time (sec.)

Joint #3: Computed Current Command A

-2 ' O 0.5 1 1.5 2

Time (sec.)

Figure C.69: Position history of joint-3 under computed torque control at a peak joint-speed of 1 rad/s and a payload of 5.5 Lb

Page 188: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Payioad = 5.5 Lbf Max. joint velocity = 3 md/s

Joint #3: Desired & Actual Position Trajectory Joint #3: Position Error

-1ooL I O 0.5 1 1.5 2

Time (sec.)

Joint #3: Computed Torque Command

l o 0 0

Time (sec.)

Tirne (sec.)

Joint #3: Computed Current Command

'O O. 5 1 1.5 2 Time (sec.)

Figure C.70: Position history of joint-3 under computed torque control at a peak joint-speed of Sradfs and a payload of 5.5 Lb

Page 189: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Table C.?: Joint-? peak position-error in degrees Max. Accelerat ion = 12.56 rad/s2

Table C. 1 : Joint- l peak posi tion-error in degrees Mas. Acceleration = 12.56 rad/s2

Payload = 2.191ig (5.3Lb)

Payload = 2.49Kg (j . . jLb)

Cont roller

Comp. torque control PID cont rol

PID + gravity comp.

/Cornp. torquecontrol 1 O.OS

Max. Joint-L'elocity

1

Con t roller

3.0 rad/s 0.10 0.53 O. 5.5

Max. Joint-Léloci ty 3.0 rad/s 1 0.1 rad/s

Table C.3: Joint-3 peak position-error in degrees Slas. Acceleration = 12.56 rad!s2

P-load = 2.49Iig (5.5Lb)

0.1 rad/s O .O32 O. 140 O. 140

PID control PID + gravit- comp.

Cont roller Mas. Joint-i'elocity

PID control '2.0 O .5 1 1

PID + gravit- comp. ( 2.0 0.5 1

2.0 1.6

1 -4.5 O ..56

Page 190: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

Table C.1: Joint- 1 peak position-error in degrees, under computed torque-cont rol llax. Acceleration = 1-56 rad/s2

1 Max. velocity [ Payload

Table C.5: Joint-2 peak position-error in degrees. under computed torque-control Max. Acceleration = 12-56 rad/s2

Table C.6: Joint4 peak position-error in degrees. under computed torque-control

Max. veloci t y

3 rad/s 1 radis

0.1 rad/s

Max. Acceleration = 12.56 rad/s2

1 Max. velocity 1 Payload

Payload 2.19 Kg

0.0s 0.0:35 0.048

2.03 Kg 0.075 0.035 0.03

1.59 Kg 0.0'7.5 0.03 0.03

1.13 K g O.OS 0.03

O. 025

0.68 Kg 0.083 O. 0.33 0.03

0.23 Kg O. 1 0.04 0.03

Page 191: Real-Time Computed Torque Control of...Real-Time Computed Torque Control of Flexible-Joint Robots by Jayavel Sankaran h thesis submitted in conformity with the requirements for the

l MAGE EVALUATI ON TEST TARGET (QA-3)

L e IIuIg LI L , I

LL.. IlIII A lllll2L

APPLIED IMAGE. lnc - = 1653 East Main Street - -. - Rochester. NY 14609 USA -- -- - - Phone: 716/482-0300 -- -- - - FU: 71 6/288-5989

O 1993. A p p t i Image. Inc.. AJl Rtghb R e s a W