• No se han encontrado resultados

Estudio de controladores de doble lazo para robots manipuladores.On two-loop controllers for robot manipulators

N/A
N/A
Protected

Academic year: 2020

Share "Estudio de controladores de doble lazo para robots manipuladores.On two-loop controllers for robot manipulators"

Copied!
222
0
0

Texto completo

(1)

_'-~ìf:~* S*

`.“_^_1\,_š›`:-~--' *_V ^",.`,;;'_ _'-_V V' _-_ V ._ ___,_ V _ _ _ _ V. " _, _ V ~ '

ff- -W' ;'I'|- `

z:›_ - V_ _

._;;_-:¢V_V-,=. _; _.

_ _

_: *-_”_-' _

-'1-r" __w1'_' ______ 'W “_§__ ,V _ _ ._ ,__ ___.: ._-__. É .Va_ _

,em al

______.__ .V _ _, V __ __ _ ,___ ..._ _¦____ _ __ _ ¿___ __ V ___¬_

V1-«__

3,,

______., ___" __ _ _ _ _,._. VV

Í* -V@ _ _ __ __ _ _ _ __ _ ¡_ É ,›_. _ __ _ _

«J __f V _, ,_ V,_

-uy. ¡_-; V - __

3-__. * _ '_ _ _' “ - ~

W..

.Í-'_*`

,`_ fa~V_V±;:«:

¢on,_S er

_ _, I _;_ :__ _

eEnse

,_ V_ ,_`_ _, _ __ "Í",_ _ _

_2:_

___ H

-›r :Q I:

_;1¿';_____._<

(V:-_' †;.;:'_ _ _

;¡_:_;,_|.,'¬V' - _

_

_ __, “" _ ' _ __ -¬í

:Q:-_ _ ___ _ V _ _ __, _ ,__ V- - V_.,, ___ _ _ "___, _~______ V. V _ _ « ___ _

` ' **“ ` , V _V_«¬_ V _ _ ¢¬ _ _

†”:'__:::f_ï'1;_;`:-M ,F_

¿___-¿__ _;¿«_.,_,¿____ __.;u.“_, ' V _ `_-4-':*`__'*

_ _ __ __ _ _ _ V _,_ ,_

,Y

_.V_, `1lJ__

1Í¿VVV-_ _. __, _ _ ,_ ._ ¿V ¡__ _ _ ___ __. _¬V ¿¢;¬.¬: f_.›__ _ _ _ _ .__ ____»_.,-_ ._ ¿if Í

_.. ›V ' - 3' __ V -_›__ V_ V V_ ' _ «_ __,.

__'-aͱ~'†V`V~.Vi*'Éf-A; V _V, ' _ _

1;:

2-'If :Va

LELAZ

_. ~;››u. «___-V ."'_ _ V, ___.,¬~"__. _ns. _ " '\- _. __.

.ab_

V V V »__† V J Vf _

=V._V-¿Vw-_ ___ __ V` _ _VV _

B

LA

D _

V

9

RI

~ wm@

. _ _.. __ _

TS_“M;flMl`

_ f .

ru_

.M __ _ _

Víë

_ __ - _ 'V' -_ _ _ V __, _ _ __,

_ V V_ V ___ __

*fl_V~_Vt;_VV:V.-;f_±V_;__¬¿4¬,:;†=_V..;=-VV`V-1±;_› V2.

__\_«1 _

ÍVr,_VV _ »_ VV 3

vr.

_¶_

_ V V~,___ _ 1 _V -__V V'-faq *_ *VVC-__' ___ _: 1"' V " ,___ _ »_ -- ___ V__,. f"

*_ VV __ _V V _ __ V_ .~ _, ___ V_ _- V_ _- _ _ -___ __ _.-___ _ V _ ______ _____ _ _¬.,____ _ _

- M, , V V _ ,_ V __ ,_ _ . _. - - _ _

V _' _ :V “ V ¡_ V_ «_ _~-- _ V _ ' _ _ _ V' _ _' V *V _V MV _'__. *- V

_ ,_ V _ __ 1 V _ _ -- _ __ ¬_, __ _ _ , __ V _ -- _ ,_ ,___ _ _ V _ _ ¡_ _ V _

_ ____V _ ___”. :¬; _ ›(____,; ,:V ",”__ ___, __, V... '__ __«, __ ','“"__ Í`f'_`Ã`

_ ';_ _. _~ ;_V_-J _, '_

___ “___ _ ____ VV¬ _ ~;¡¡ __ ___ _ _V ,_ _- V_V, ,f _' '

-_ _ . VV _, - V, _______, V_ _1_¡VlI

*í-` _ _. _

._;.«;,-V

_ __. __._ _ _ - __ _V-_

4 VV__; _' V-V'

*-_V___V_f _. __ -V V , _,«_ _ « _ -_ >~_ _,, »_-_ _ _›V_ V

`¿_ì;__',,;n

__@

: ___ _ ___ ,_V ___. ____,_V _

_ f. _ _

¬_< __.__ VV _

[_ V - V V H - V› _ __

*¬É?ï_>"§9f N? V7;

cg¿_ V __ V_ _ _ V,,___ ___ 'V

Ag-V_. _ - V V ._ V- _ ___ _--›,__ __ _ “”' ._ __,; ___ Q. __ ~;_V_ _ V _ _. V _ _ ___ _ VV _

I!¡`___ - _¡_____ V _~\› _ _ V _ ._.__ _ , _, ___« _. ___”. .___ "__ _ .___

_. VV " V__"' HW' 'V . _;

-LV. « 'VV« V, V' ___ ._ - V›« _

Zn

'__ ~

›<"` ` Vs __. ._,___, _ 1 _.,___.-I . _,_ _ V _ _____,_'VV_ -.__ «

V V , V

Lp _ __,, _ _ _,,___~_V _ _ ¬ ._ _ _

«__

ST ÉA

~_ V __V V

«_ r- __:^' ___». ' '

r_ __

"Í"Í'1_*s' '_ __¡Í ._ _ _ »V __ _ V _ - _ ,_ _ __« '___

-\1_._. __,

__!

_.. V V _›V «__ ___ V -_ _ _ __. -, _ _, _.,__ __ .V ,__ V››._«_ - '«" , _m______ _ __. _,______ V _ __ :_ ,___ _ _,_,. __--_ _ _

1:

0 «_ _ ¡__ __ ,___ ,-V «_

_ __ › “ _ _ _ V 1 __ _ V» ›__›_«. - _ _ _ - '__ V _.

__=¬_V»VV;›.«,.V¿¢¿_›«_: f

^' " V Í, _ V _ - ' ' ___'._ '__ _^W"V

___ _ _, _,,-___- ___. , 11 V VV› - _. V ›" _ '*H V_ _ .' ._ ~_"_ V- V V - ___ 7 V V _ 'V _ _ ___, ,___ _ _ _ __' _

_ _ __«_ __ _ -__,_.__ V ___ V ›-- - _ _ _

,_ V__ V _. 'V _- 1' _ _ V 1 *V _

_ _ _ ,___ __

__

¿___ _ .___._ ... _ V _ __ .

__

_ _,___ _ V VV 11 <*.V« _ _» __ _;___¡__V

_?

V _ _ , 'Vw ,___, _ ~› ._V V ._ _,,«, ,

V_ ›_I,_ V _,«Í" V ' _; V

5?: \ _ _ __' .. _ _ _ _

__, _- -V_.^_- _ -_ .V-f

` ""'_V_,._ `,___ _ V, V. _ '

'Vi

_ .___ -_/__, ,_ - _ ___ _._,_

V*- ^ V V UV' -V _V V ._

\ _ __-___ _ ,_ _, -__-. Q A _ nf-^_›¡5›_“V'* 7' V V 7'" ( '

_,_ __._ _ _ _ V, _ ._ _V-- _ _ 1 -_V 1r_

V-¢V<†.-;¡;:_ .'____ VV V_,_, V _ - “V

__”-_- ' _ _ V Vf_. V

_-__

-V _ _ V V__-_ V V_,__. _ ~_¿ _-_V._ ._

-V _ __ ,__ ,_ ___ __ _ ;__ ,___ __ _

_V;__¬_;

V ' _ ›V_ _ , _ V _ _ ,__ _ ___ _

__ _ ›_'-V _ V

_ _ , ___ - _- _, _ _

_ _ __ _ _ __, ›_ __.«_ ___ ,__.____..,_ ._ ___ _ ._ __ __,_›

_ V :_,-- , _- _,:4 « __.,-__ V_ __ V

.___

_ _ _ _ _ ;_,___V.._ _ . __ V ___ ,_ __f_V _ -_ _ _

__"¢_. - -__ ____ _V _ '_ .__V`V V” _, _V-_ -_ ¿____

V V__-__~.V, ,'

.V __ ,__ -1 _ _ _. _. 1 V ' _. *__ ___ V _ _ "__--__ __ ,,V _ _ _ _<¬_V _,__ .,,_ _.,__ ff ___.. -V _

.___. _.__,_,. ~ _ - _- V- _ __

___;

._ __ -V V ._ ,.›, ,_ V _ - ._ __-_~ V VV , _ __ _ V, - ___- _ _ ^¬fV. '_ _" _ .V«›_.,.__. _

__'›__-Vw _ _ __ __ _ _V,_ ,_ V _*," ___ - f '_ V .V _-_V ,;»

`J._ '

. ,______ _ __ , _ _ ,__ _ _,_ V___ _ V_ _¿_

_ _-,___ _ _ _ ___V ._ _, ~'_. ¿V _ _ «_ .. V _ VV` ,_

(2)

Y APROBADA POR EL SIGUIENTE COMITÉ

422»

Dr. Rafael Kelly Martinez Director de/ Comité

4

/

1/(AM ,

7 I Dr. César Cruz Herlzandez

Miembro del Comité

Dr. Luis Munguía Orozco

Miembro del Comité

/

D-M.C. Marco Arturo Moreno Corral Miembro del Comité

Z

Dr./José Luis Medina Monroy Jefe del Departamento de Electrónica y Telecomunicaciones

Dr. Federioofiraef Ziehl Director de Estudios de Posgrado

(3)

EDUCACION SUPERIOR DE ENSENADA

› '

^ =E;1;i;š;5;1¿ï;5;3;±__,. f;"1f-'&;I1¿E;5=1` ' '

` I _ _.-¿fš;1fš;5l¦1E=ì55;ì§É1š. ^;

DIVISION DE FISICA APLICADA

DEPARTAMENTO DE ELECTRONICA Y

TELECOMUNICACIONES

ESTUDIO DE CONTROLADORES DE DOBLE LAZO

PARA ROBOTS I\/IANIPULADORES

TESIS

que para cubrir parcialmente los requisitos necesarios para obtener el

grado de MAESTRO EN CIENCIAS presenta:

Fermín Pérez Vargas

(4)

TELECOMUNICACIONES. Ensenada, Baja California, México. Julio del 2000.

ESTUDIO DE CONTROLADORES DE DOBLE LAZO PARA

ROBOTS MANIPULADORES

Resumen aprobado por:

/

Dr. Rafael Kelly Martínez Director de tesis

La presente tesis tiene como objetivo principal el estudio y análisis de estabilidad del controlador de doble lazo para robots manipuladores. Este controlador se compone de un lazo interno de velocidad y un lazo externo que permite controlar una variable de interés. Esta variable de interés puede ser especificada en coordenadas operacionales o articulares. El objetivo de control puede ser extendido no sólo a control de movimiento sino a control de velocidad en espacio operacional y control por campo de velocidad, entre otros.

Se ha contemplado el estudio del controlador de doble lazo para un motor de co-rriente continua y se ha generalizado este resultado a robots manipuladores cuya salida depende sólo de la posición articular. Asimismo, se ha desarrollado un análisis de estabilidad de este controlador, concluyéndose estabilidad asintótica global.

También se ha llevado a cabo un análisis del controlador de doble lazo para robots manipuladores cuya salida depende no sólo de las posiciones articulares, sino también de las velocidades articulares. El análisis de estabilidad en este caso supone control

ideal de la velocidad.

Como un aporte adicional, esta tesis comprende el diseño y construcción de una

muneca esférica de transmisión directa, así como la obtención de sus modelos cinematico y dinamico.

(5)

ON TWO-LOOP CONTROLLERS FOR ROBOT MANIPULATORS

ABSTRACT

The objective of this thesis is the study and analysis of two-loop controllers for robot rnanipulators. This controller is made up of a joint Velocity inner loop and an outer loop that allows control of a wide class of output Variables. These variables can be specified in Operational or joint spaces. The control objetive can be extended to Velocity control in operational space and control Via Velocity fields, among others.

The study of the two-loop controller for a DC motor has been carried out and this result has been generalized to robots whose output depend only of the joint positions. Also, it has been developed a stability analysis of this controller, concluding global asyrnptotic stability.

An analysis of the two-loop controller has been conducted for robot manipulators whose output depend not only on joint positions, but also of the joint velocities. The stability analysis in this case supposes ideal joint Velocity control.

As an additional contribution, this thesis includes the design and construction of a direct-drive spherical wrist, as well as its kinematics and dynamics.

(6)

A Dios.

A mis Padres, Fermín y Elvia, por enseñarme a dar siempre el mayor esfuerzo, pero sobre todo por su inmenso amor.

A mis hermanos, Luis Enrique y Alejandro, quienes siempre creen en mi y me han apoyado cada día, a pesar de la distancia.

A Elvia y a Víctor Hugo, porque gracias a ello tengo un motivo muy fuerte para ser mejor cada día y darlo todo, mi sobrino Victor

Hugo, “El Vengador”.

A mi familia, en Tehuacán, en Puebla, en Oaxaca, no importa donde estén, gracias por su apoyo.

A Isa, porque juntos hemos vivido esta aventura.

(7)

Al Dr. Rafael Kelly, por su amistad y confianza, así como por compartir sus conocimientos y su metodología a lo largo de este

trabajo.

A los miembros de mi comité de tesis, el Dr. Luis Munguía, el Dr. César Cruz y en especial al M.C. Marco A. Moreno, por sus

correcciones y sugerencias.

A Javier Moreno, por su amistad y su valiosa colaboración en el estudio del controlador de doble lazo.

A Ricardo Campa, con quien siempre tuve un gran apoyo y un punto de vista interesante.

A Jesús Llamas, quien nos apoyó y auxilió en diferentes aspectos.

A Eduardo Gonzalez y Carlos Gómez, mis compañeros de area, por su amistad y ayuda.

A todos mis compañeros de generación, quienes hicieron muy agradable mi estancia en CICESE, y en especial a Moi, un amigo

incondicional.

(8)

I Introducción

I_1 Antecedentes . _ _ _ . . . _ . _ _ . _ _

I_2 Objetivos de la tesis . _ _ _ . . _ . _ _ _ _

I_3 Organización del documento . _ . _ _ . _ _

II Modelado de robots manipuladores

II.1 Modelo Cinemático _ _ _ . . . _ _ . . _ _ _

II.2 Dinamica articular de robots . _ _ . _ . _ _

II_3 Objetivos de Control . _ _ _ . _ _ _ _ . _ _

III Control por doble lazo de un motor de c.c.

III.1 Modelo dinámico para un motor de c.c. _ _ _ _

III_2 Objetivo de control _ _ _ _ . . . _ _ _ . _ _

III.3 Control de velocidad de un motor de c.c. _

III.3_l Analisis de estabilidad _ _ . _ _ _ _

III.4 Control de doble lazo para un motor de c.c.

III_4_1 Analisis de estabilidad _ _ . . . _ _

Página

1

. . _ _ _ . _ _ . . _ _ _ _ ._ 1

. . _ _ _ _ _ _ _ . _ . _ _ __ 4

. _ . . _ _ _ _ _ . . _ _ _ ._ 5

8

. . . _ _ _ _ . . . _ _ . . ._ 9

_ . . _ _ _ . . _ _ _ _ . . ._1l

_ _ _ _ . _ _ _ _ _ _ _ _ _ __ 16

20

_ . . . _ __ 21

_ _ _ _ . _ _ . _ _ _ _ _ _ __ 21

. _ _ . _ _ _ _ . . _ . . . __ 22

. . . _ . _ _ _ _ _ _ _ . _ _. 23

__ 24

(9)

Página

III_5 Resultados experimentales . _ _ _ . . _ _ _ _ _ . _ . _ _ _ _ _ _ _ _ _ _ _ 28

III_5_1 Consideraciones prácticas . _ . _ . _ _ . _ _ _ _ _ _ _ _ _ . _ _ _ 29

IlI.5_2 Control de Velocidad _ _ _ _ . _ . _ . _ _ _ _ _ . _ _ _ . _ _ . _ _ 31

III_5.3 Controlador de doble lazo . _ _ _ _ _ . _ _ . _ _ _ _ _ . . _ _ _ _ 33

IV Control de doble lazo de robots manipuladores considerando como

salida y = h,(q): Teoría 36

lV_l Estructura del controlador _ _ _ _ . . _ _ . _ . . . _ _ . _ _ _ _ . _ _ 36

IV_2 Controlador de doble lazo con lazo interno de Velocidad tipo PD+ _ _ _ 41

IV_2.1 Condiciones de positividad para Q1 y para Q2 . _ . _ _ _ . . _ _ 45

IV_3 Controlador de doble lazo con lazo interno de Velocidad tipo par calculado 46

IV.3_1 Condiciones de positividad para Q1 y Q2 . . _ _ _ . _ . . . _ _ _ 49

V Control de doble lazo' de robots manipuladores considerando como

salida y = h(q): Experimentos 50

V.1 Consideraciones prácticas . . _ _ . _ _ _ . _ _ _ . _ _ _ _ _ _ _ _ _ _ _ _ 52

V_1_1 Estimación de la velocidad articular _ _ . _ _ _ _ _ _ _ _ _ _ _ _ _ 52

V_l.2 Fricción . . _ _ _ . _ . _ _ . _ _ _ _ _ _ _ _ . _ _ _ . _ . _ . _ _ _ 53

(10)

Página

V.2 Experimentos realizados en la muñeca esférica de 2 g.d_l. _ _ _ _ _ _ _ _ 55

V_2_1 Control de doble lazo con lazo interno tipo PD-4-_ _ _ . . _ _ _ _ 55

V_2.2 Control de doble lazo con lazo interno tipo par calculado. _ _ _ _ 58

V.3 Experimentos realizados en el robot planar de 2 g.d.l _ . _ _ _ _ _ _ . _ _ 59

V_3_1 Experimentos en espacio articular _ _ _ _ _ _ . _ _ _ _ _ _ _ . _ _ 60

V_3_2 Experimentos en espacio operacional _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 65

VI Control de doble lazo de robots manipuladores considerando como

salida y = h(q,¿1) 72

VI.1 Estructura del controlador _ _ _ . . _ _ . _ _ _ . _ _ _ _ . _ . . _ . . _ _ 72

VI_2 Ejemplos de escenarios para el controlador de doble lazo generalizado _ 76

VI.2.1 Control de movimiento en coordenadas operacionales _ _ _ . _ _ 77

VI_2.2 Control de velocidad en coordenadas articulares _ . _ . _ _ _ _ _ 77

VI_2_3 Control de velocidad en coordenadas operacionales _ . . _ _ _ _ 78

Vl_2_4 Control por campo de velocidad en coordenadas operacionales _ 78

VI_3 Simulaciones _ _ _ _ _ . _ _ _ _ _ _ _ _ _ . . _ _ _ _ _ _ . _ _ _ _ _ _ . _ _ 80

VI_3_1 Control de Velocidad en coordenadas operacionales _ _ . _ _ _ _ 81

(11)

VII Conclusiones generales

VII_1 Conclusiones y comentarios _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _

VII_2 Trabajo futuro _ _ _ _ _ _ . . _ _ _ . . _ _ . _ _ _ _ _ . _ _ _ _

LITERATURA CITADA

Anexo A Revisión sobre cinemática de robots manipuladores

A.1 Cinemática directa de robots manipuladores _ _ . _ _ _ _ _ _ _

A_l_l Matrices de Rotación _ _ _ _ _ _ . . _ _ _ _ _ _ _ _ _ _ _

A_l_2 Representación mínima _ _ _ _ _ _ . _ . _ _ _ _ _ _ _ _ _

A.l.3 Matrices de transformación homogénea _ _ _ _ _ _ _ _ _

A.l_4 Convención Denavit-Hartenberg . _ . _ . . _ _ _ _ _ _ _

Anexo B Diseño mecánico de la muñeca esférica

B_1 Configuración deseada y diseño final _ . _ _ _ _ _ _ _ _ _ _ _ _

B_2 Diseño de los eslabones _ _ _ _ . . _ _ _ _ _ _ _ _ _ _ _ . _ . _ _

B_2_l Primer eslabón _ . . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

B_2_2 Segundo eslabón . _ _ _ _ . _ _ _ _ . _ _ _ _ . _ . _ _ _

B_2_3 Tercer eslabón . _ _ . . _ . _ _ _ _ . _ . _ _ _ _ . _ . _ _

Página

89

89

91

92

96

96

98

__.__l00

__.._10l

_..__lO4

112

_____113

.____l16

.____ll8

_. 121

(12)

Página

B_2_4 Fusibles de seguridad _ . _ _ _ _ _ . _ _ _ _ _ _ _ _ _ . _ _ _ . _ _ 125

B_3 Armado de la muñeca esférica _ _ . _ _ _ _ _ _ . _ _ _ _ . _ _ . _ _ _ _ _ 126

Anexo C Modelo cinemático de la muñeca esférica 129

Anexo D J acobiano de la muñeca esférica 134

D_1 Jacobiano analítico _ _ _ _ _ _ . _ . _ _ . _ _ _ _ _ _ _ _ _ _ _ . _ _ _ _ _ 135

D_2 Jacobiano geométrico . _ _ _ _ _ . . _ _ . . _ . _ . _ . _ _ . _ . _ _ _ _ _ 136

D_3 Analisis de singularidades _ . . . . _ _ _ _ _ _ _ . . . _ _ _ _ _ _ _ _ 137

Anexo E Modelo dinámico de la muñeca esférica 139

Anexo F Modelado de la muñeca esférica con 2 g.d_l. 149

Anexo G Programas para SPAC y SEAC 158

G_l Programas del Capítulo III _ _ . . . _ _ _ _ _ _ . _ _ _ _ _ _ . _ _ _ _ _ _ 158

G.1.1 Controlador PI para control de Velocidad de un motor de c.c. _ _ 158

G.1_2 Controlador de Doble Lazo para control de movimiento de un

motor de c.c. _ _ _ . . _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ . . _ _ _ 160

G_2 Programas del Capítulo V . _ _ . _ _ _ _ _ _ . _ _ . _ _ _ _ . . _ _ . _ _ 161

(13)

Página

G_2_2 Control de movimiento en espacio de tarea _ _ _ _ . _ _ _ _ _ _ _ 175

Anexo H Programas en SIMNON 184

H.1 Controlador de doble lazo generalizado para control de velocidad en el

espacio de tarea . . _ _ _ _ _ _ _ _ . _ _ _ _ . _ . _ _ _ _ _ _ _ _ . _ _ _ _ 184

H_2 Controlador alternativo para control de Velocidad en el espacio de tarea 185

H_3 Controlador de doble lazo para control por campo de velocidad en el

espacio de tarea _ . _ _ . . _ _ _ _ _ _ . . _ _ . _ _ _ _ . _ . _ _ . _ _ _ _ 186

H_4 Controlador de doble lazo alternativo para control por campo de

veloci-dad en el espacio de tarea _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ 188

(14)

Figura Página

1 Descripción de un robot manipulador de n g.d_l. _ _ . _ _ _ _ . _ _ _ _ 8

2 Esquemas generales de control. a) Coordenadas articulares. b)Co0rdenadas

operacionles _ _ . _ . _ _ _ . . _ _ _ _ _ _ _ _ _ _ . _ . _ _ _ _ _ _ _ _ _ _ _ 17

3 Diagrama de bloques del control de velocidad Pl para im motor de c.c. 23

4 Esquema general del controlador de doble lazo para motores de c.c. _ _ 25

5 Diagrama de bloques del control de movimiento con dos lazos de

retro-alimentación para un motor de c.c. . _ _ _ _ _ _ . . _ _ _ _ _ _ _ _ _ _ _ 27

6 Diagrama de bloques del controlador PID equivalente al controlador de

movimiento con dos lazos de retroalimentación para motores de c.c. _ _ 29

7 Controlador PI de velocidad. a)Error de velocidad. b)Par aplicado. _ _ 32

8 Controlador de doble lazo. a)Error de Posición. b)Par aplicado. _ _ _ _ 35

9 Diagrama de bloques del esquema general del controlador de doble lazo. 37

10 Robots prototipo: a)Robot planar vertical. b)Muñeca esférica_ . _ _ _ _ 50

11 Error de posición articular para el controlador de doble lazo tipo PD-i-_ 56

12 Pares aplicados, controlador de doble lazo tipo PD+ en coordenadas

(15)

Figura Página

13

14

15

16

17

18

19

20

21

22

Error de posición articular para el controlador de doble lazo tipo par

calculado. . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ . . _ _ _ _ _ _ _ _ _ . _ _ _ 59

Pares aplicados, controlador de doble lazo tipo par calculado en

coor-denadas articulares _ _ . _ _ _ _ _ _ _ _ _ _ _ . _ _ _ _ . _ _ _ _ _ _ _ _ _ _ 60

Error de posición articular para el controlador de doble lazo tipo PD-I-_ 62

Pares aplicados, controlador de doble lazo tipo PD+ en coordenadas

articulares _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ . _ _ _ _ _ 63

Error de posición articular para el controlador de doble lazo tipo par

calculado. _ _ . _ . . _ _ _ _ _ _ _ _ _ _ _ _ _ . _ _ _ _ _ . . _ _ _ _ _ _ _ 64

Pares aplicados, controlador de doble lazo tipo par calculado en

coor-denadas articulares . _ _ . _ _ _ _ . _ _ _ _ _ _ _ _ _ _ _ . _ _ _ _ _ . _ _ _ 65

Trayectoria trazada por el extremo del robot utilizando el controlador

de doble lazo tipo PD+_ _ . _ _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ . . . _ _ _ _ 67

Error de posición cartesiana para el controlador de doble lazo tipo PD-I-_ 68

Pares aplicados, controlador de doble lazo tipo PD-|- _ _ _ _ _ _ _ _ _ _ _ 68

Trayectoria trazada por el extremo del robot utilizando el controlador

(16)

Figura Página

23 Error de posición cartesiana para el controlador de doble lazo tipo par

calculado. . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ . . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ 70

24 Pares aplicados, controlador de doble lazo tipo par calculado. _ _ _ _ _ 71

25 Esquema general del controlador de doble lazo para una salida y = h,(q, ¿1)_ 73

26 Trayectoria trazada por el extremo del manipulador. Control de

veloci-dad en coordenadas operacionales por doble lazo. _ _ _ _ . _ _ _ . _ _ _ _ 82

27 Error de velocidad. Control de velocidad en coordenadas operacionales

por doble lazo. _ . _ _ _ _ _ _ _ _ . . . _ _ _ _ _ _ . _ _ _ _ _ _ _ _ _ _ _ 83

28 Campo de velocidad 1›(a:) que dibuja un círculo. _ _ _ _ _ . _ _ _ _ _ _ 85

29 Trayectoria trazada por el extremo del manipulador. Control por campo

de Velocidad en coordenadas operacionales utilizando el controlador de

doble lazo _ _ _ _ . _ _ _ _ _ . _ _ . _ _ . _ . _ _ _ _ _ __ . _ _ _ _ _ _ _ _ _ 87

30 Error de velocidad. Control por campo de velocidad en coordenadas

operacionales utilizando el controlador de doble lazo. _ _ _ _ . _ . _ _ _ 88

31 Sistema de referencia OXYZ y un sistema de coordenadas ligado al

cuerpo OUVI/V _ _ _ _ _ _ _ . _ . _ _ _ _ _ _ _ _ _ _ _ . _ _ _ _ . _ _ _ _ _ 99

32 Sistema de coordenadas y sus parámetros_ _ . _ _ _ _ _ . _ _ _ _ _ _ _ _ 106

(17)

Figura

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

Página

Configuración utilizada que cumple los requisitos preestablecidos. _ _ _ 114

Dimensiones del motor 1: Modelo DM1015B_ . _ . _ _ _ _ _ . _ _ _ _ _ 115

Dimensiones del motor 2: Modelo DM1004C_ _ _ _ _ . _ _ _ _ _ _ _ _ _ 115

Dimensiones del motor 3: Modelo 1004B_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 116

Diseno final. _ _ . _ _ _ . _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ _ _ 117

Espacio de trabajo de la Muñeca Esférica _ _ _ _ _ _ _ _ . _ . _ _ _ _ _ _ 117

Motor 1 y piezas 1 a 4. _ _ _ . _ _ . _ _ _ _ . _ _ _ _ _ _ _ _ _ _ _ _ _ _ 118

Pieza 1: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 119

Piezas 2 y 3: a)Principales dimensiones. b)Representación en sólido. _ 120

Pieza 4: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 120

Motores 2y3ypìezas5,6,7y8_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ._ 121

Pieza 5: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 122

Pieza 6: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 123

Pieza 7: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 123

Pieza 8: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 124

Principales cotas para la muñeca esférica, ésta se encuentra contenida

(18)

Figura Página

50 a) Ubicación de los fusibles para la pieza 6. b)Ubicación de los fusibles

para la pieza 7. _ _ _ _ _ _ . . . _ . _ _ _ _ _ _ _ . _ _ _ _ _ . . _ _ _ _ _ 126

51 Ilustración del procedimimiento de armado. Se crean dos módulos y

posteriormente se unen estos. La estructura se cierra con la pieza 3. _ _ 127

52 a)Vista desde arriba de la muñeca totalmente extendida. b)Vista lateral

de la misma posición. _ _ _ _ . _ _ . _ _ _ _ _ . _ _ _ _ . _ _ _ _ _ _ _ _ 128

53 Ubicación de los sistemas coordenados correspondientes. _ . _ _ . . _ _ 129

54 Detalle del modelado de la muñeca y ubicación de marcos coordenados. 142

55 Asignación del marco de referencia. _ _ _ _ _ _ . _ . _ _ _ _ _ _ _ _ _ _ _ 142

56 Modelado del primer eslabón y su marco de referencia _ . _ _ _ _ . _ _ _ 143

57 Modelado del segundo eslabón y su marco de referencia. _ _ . _ . _ _ _ 144

58 Modelado del tercer eslabón y su marco de referencia. . _ _ _ _ _ _ _ _ 145

59 Datos de entrada para “Robotica” _ . . _ _ _ . . _ _ _ _ _ _ _ _ _ _ _ _ _ 147

60 Pieza 9: a)Principales dimensiones. b)Representación en sólido. _ _ _ _ 149

61 Asignación del marco de referencia. _ _ _ _ _ _ _ _ . _ . _ _ _ _ _ . _ _ _ 151

62 Modelado del primer eslabón y su marco de referencia _ _ _ _ _ _ _ _ _ _ 152

63 Modelado del segundo eslabón y su marco de referencia. _ _ _ _ _ . _ _ 153

(19)

Figura Página

65 Datos de entrada para “Robotica” _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ . _ _ _ 155

66 Muñeca esférica experimental. a)Vista superior con ql = 0 y qg = rr.

(20)

Tabla

I

II

III

IV

V

VI

Página

Tres tipos de representación de los ángulos de Euler_ _ _ _ _ _ _ _ _ _ _ 101

Características de los 3 motores. _ _ . _ . _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 114

Parámetros de Denavit-Hartenberg para la muñeca esférica. _ _ _ _ _ _ 130

Parámetros de Denavit-Hartenberg para la muñeca esférica de 3 g.d_l. _ 141

Densidades del aluminio y del acero. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 143

(21)

DOBLE LAZO PARA ROBOTS

MANIPULADORES

FERMIN PEREZ VARGAS

(22)

I.1

Antecedentes

Robot, es una palabra que inmediatamente nos hace imaginar a R2D2, el “Arturito” de

la guerra de las galaxias o sin más, a un ser animado capaz de tener un comportamiento

similar al humano y realizar las mismas tareas, pero a mayor velocidad y precisión. Es

muy común que la gente llame “robot” a cualquier cosa que opera con un cierto grado

de autonomía y que es controlado por una computadora. Sin embargo, en sus orígenes

la palabra robot no involucraba tanta inteligencia. La primera vez que se introdujo esta

palabra fue en 1920, por el escritor de origen checo Karel Capek en su obra Rossum's

Universal Robots [Sciavicco y Siciliano, 1996]. La palabra robot en checo significa

trabajo. Los robots hoy en día son capaces de realizar una gran cantidad de tareas que

van desde el pegado de etiquetas en una botella hasta la exploración espacial, pasando

por muy diversas áreas, como la medicina, la industria automotriz, la química, etc.

Esta nueva ciencia que se dedica al estudio de robots es llamada robótica, y este

término fue introducido por el ruso Isaac Asimovl [Sciavicco y Siciliano, 1996], escritor

de ciencia ficción que concibiera a los robots como autómatas de apariencia humana

carentes de sentimientos. De acuerdo a Asimov la robótica se basa en las siguientes tres

leyes fundamentales [Asimov y Silverberg, 1996]:

(23)

1. Ningún robot puede lesionar a un ser humano o, a través de su inactividad,

permitir que un ser humano sufra daños.

2. Todo robot debe acatar las órdenes que los seres humanos le dan, salvo si éstas

entran en conflicto con la Primera Ley.

3. Todo robot debe proteger su existencia siempre y cuando dicha protección no

entre en conflicto con la Primera o la Segunda Ley.

La robótica es una ciencia interdisciplinaria que combina aspectos de la ingeniería

eléctrica, mecánica e industrial, con ciencias computacionales, matemáticas y economía.

Y es precisamente esta combinación de elementos la que ha determinado el crecimiento

y desarrollo de la robótica. La robótica se puede dividir en robótica avanzada y robótica

industrial ]Bugarín, 1998]. Dentro de esta última gama de tipos de robots se

encuen-tran los llamados robots manipuladores. De acuerdo a la Federación Internacional de

Robótica bajo la norma ISO /TR 8373, un robot manipulador se define de la siguiente

manera ]Kelly, 1995]:

“Un robot manipulador industrial es una máquina manipuladora con varios grados de

libertad controlada automáticamente, reprogramable y de múltiples usos, pudiendo

estar en un lugar fijo 0 móvil, para su empleo en aplicaciones industriales”.

En la definición anterior se mencionan dos características que determinan la

(24)

capacidad de realizar diversas tareas, estas dos características son las que hacen de los

robots máquinas de gran utilidad y adaptabilidad.

La cantidad de ventajas que ha representado el uso de los robots en la industria es

muy grande, ha permitido la reducción de costos de producción de una manera muy

importante, ha incrementado la precisión y productividad, dos factores que propician

calidad, además los robots poseen una gran flexibilidad comparados con las máquinas

especializadas y ejecutan tareas pesadas, repetitivas y riesgosas para el hombre.

Un robot manipulador se puede considerar como un brazo mecánico articulado

for-mado por eslabones conectados a través de uniones o articulaciones. De manera general,

el número de articulaciones determina el número de grados de libertad (g.d_l.) del

ro-bot manipulador. Las articulaciones generalmente pueden ser rotatorias (rotacionales)

o lineales (prismáticas)_ Una articulación rotacional es como una bisagra o gozne, la cual

permite una rotación relativa entre dos eslabones. Una articulación prismática permite

un movimiento lineal relativo entre dos eslabones. La manera en que la articulación

provoca el movimiento del eslabón respectivo puede ser de naturaleza electromecánica,

neumática o hidráulica. Los dispositivos que provocan el movimiento en las

articula-ciones son denominados actuadores. Recientemente un nuevo tipo de actuadores han

sido incorporados al mercado debido a los avances tecnológicos en la construcción de

motores de alto par: los motores de transmisión directa, los cuales han hecho posible

incorporar una nueva generación de robots llamados de transmisión directa. En

(25)

correpondientes [Asada et al., 1981], eliminando el uso de las transmisiones como son

engranajes, bandas, poleas, etc. El uso de los motores de transmisión directa permite

eliminar los llamados juegos mecánicos, reducir la fricción por contacto, proporcionar

una mayor precisión y disminuir el tiempo de respuesta [Reyes, 1997].

El problema de control de movimiento de robots manipuladores consiste en encontrar

una función vectorial de pares aplicados a sus articulaciones, de tal forma que las

posiciones asociadas a las coordenadas articulares del robot sigan con precisión una

posición deseada en función del tiempo ]Kelly, 1995]. Como caso particular del objetivo

de control de movimiento se tiene el objetivo de control de posición para o simplemente

control de posición, el cual consiste en encontrar un Vector de pares aplicados de tal

forma que el Vector de posiciones articulares se aproxime lo mejor posible a un vector

constante de posicion articular deseada.

I.2

Objetivos de la tesis

El presente trabajo de investigación se enfoca al estudio y al análisis de estabilidad

de un controlador denominado de doble lazo. Este controlador se compone de un lazo

interno de control de velocidad a nivel articular y un lazo externo que permite controlar

una variable de interés. Esta variable de interés puede ser especificada en coordenadas

operacionales (posición cartesiana por ejemplo) y coordenadas articulares. Asimismo,

el objetivo de control se puede extender no sólo a control de movimiento sino a control

(26)

Como un objetivo adicional, este trabajo también comprende el diseño y

cons-trucción de una muñeca esférica de transmisión directa, asi como la obtención de sus

modelos dinámico y cinemático_

I.3

Organización del documento

La distribución de este documento de tesis es la siguiente: en el capítulo I se

presen-tan conceptos básicos sobre robótica, enfocados a robots manipuladores, los cuales son

nuestro objeto de estudio. En el capítulo II se presentan los antecedentes necesarios

para la mejor comprensión del mismo, como son, la ilustración de las partes que forman

un robot manipulador, la cinemática y dinámica de los manipuladores y los objetivos

de control más comunes. El capítulo III versa sobre el estudio del control de

veloci-dad de un motor de c.c. utilizando un controlador PI y a partir de éste, se genera

una estructura de doble lazo para el control de posición; conjuntamente se presenta

un análisis de estabilidad de ambos controladores y la estructura del controlador de

doble lazo es comparada con la estructura de un controlador tipo PID. Resultados de

experimentación también son presentados en este capítulo (III). En el capitulo IV se

presenta la estructura del controlador de doble lazo para robots manipuladores

con-siderando un salida dependiente sólo del vector de posición articular y un estudio de

la estabilidad de este controlador tomando a los controladores par calculado y PD+

como controladores de velocidad articular para el lazo de interno. Con la finalidad de

(27)

IV, en el capitulo V se presentan experimentos realizados en dos robots prototipo con

que cuenta el Laboratorio de Robótica y Servomecanismos del CICESE, el primero es

un robot planar vertical de 2 g.d_l. y el segundo una muñeca esférica de 2 g.d_l. cuyo

diseño y contrucción son presentados en el anexo. En el capitulo VI se ha generalizado

el resultado del capítulo IV a robots con salidas dependientes de la posición y de la

ve-locidad articular considerando un control ideal de veve-locidad para el lazo interno, al final

de este capítulo, se presentan simulaciones realizadas para verificar el comportamiento

cualitativo del controlador de doble lazo generalizado.

La información correspondiente al diseño y a la construcción de la muñeca esférica

se presenta en una serie de anexos. El anexo A es una revisión sobre la cinemática de

robots manipuladores, enfocada a la obtención del modelo cinemático directo utilizando

la convención de Denavit-Hartenberg y la representación mínima mediante los ángulos

de Euler_ El anexo B presenta los detalles del diseño mecanico de la muñeca y el

armado de la misma. En el anexo C se obtiene el modelo cinemático directo de acuerdo

al estudio realizado en el anexo A. El Jacobiano anaitico y el Jacobiano geométrico son

obtenidos en el anexo D, así como la determinación de las singularidades cinemáticas

de la muñeca esférica. La obtención del modelo dinámico mediante el empleo de las

herramientas computacionales “Autocad” y “Robotica” es descrito en el anexo E. En el

anexo F se describe la obtención del modelo dinámico de la muñeca de 2 g.d_l. utilizada

en los experimentos realizados en el capítulo V. El listado de los programas elaborados

(28)

en los anexos G y H respectivamente. Finalmente, los planos de cada una de las piezas

(29)

Un robot manipulador se puede considerar como un brazo mecánico articulado formado

por eslabones conectados a través de uniones 0 articulaciones (figura 1). De manera

general, el número de articulaciones determina el número de grados de libertad (g.d_l.)

del robot manipulador. Las articulaciones generalmente pueden ser rotatorias

(rota-cionales) o lineales (prismáticas)_ Una articulación rotacional es como una bisagra

ki)

y'

Vectm' de

xv 9 z'

1' ¦

_ ,__ qz__.C1fl]

Posicivflfes q [qf _ qa za

articulares Q ' 'U3 _

E ¿atan 2

\

S

§

Articulación 2 __ 'ye

`\` __

`\\ xfi

Mar@ df?

,ref-'e7'Q'ƒLC'l«a› Extre'm° final

del robot

'S

\ É*

1"

-5*

s

I/

ii l ã

Ú

Figura 1: Descripción de un robot manipulador de n g.d_l.

o gozne, la cual permite una rotación relativa entre dos eslabones. Una articulación

(30)

representa la interconexión entre dos eslabones.

Para propósitos analíticos, las posiciones articulares son agrupadas en el vector de

posiciones articulares q = [q1, qg, ___, q,,]T (donde n es el número de grados de libertad).

Para poder denotar la posición angular o lineal de cada eslabón es necesario asignarle

un marco de referencia adecuado. En ocasiones, interesa determinar la posición y

orientación del extremo final del robot, expresadas en términos del marco de

refe-rencia cartesiano colocado en la base del robot y una representación mínima. Estos

son agrupados en el vector de posición y orientación del extremo final del robot az =

[:t1, mg, ___, :1:m]T, donde m S n. Para que un manipulador pueda ubicar un objeto en el

espacio con el extremo del último eslabón son necesarios 6 g.d_l., de los cuales 3 son para

la ubicación del extremo del último eslabón en el espacio y 3 más que especifican su

orientación. Sin embargo, dependiendo de la aplicación se pueden tener más o menos

g.d_l. El vector rr: está definido en el espacio en el cual la tarea del manipulador es

especificada y recibe el nombre de espacio de trabajo [Sciavicco y Siciliano, 1996]. Por

otro lado, el espacio articular denota el espacio donde q está definido.

II_1

Modelo Cinemático

La cinemática del brazo robot trata del estudio analítico de la geometría del movimiento

de un robot con respecto a un sistema de coordenadas de referencia fijo como una

función del tiempo y de las variables articulares, sin considerar las fuerzas 0 fenómenos

(31)

una descripción del desplazamiento y orientación del efector final como una función del

tiempo y, en particular, de la relación que pueda existir entre las Variables articulares

del robot. El problema de la cinemática directag de un robot es el estudio del significado

geométrico de los eslabones y/u objetos relacionados a las tareas de manipulación en

términos de posición, velocidad y aceleración. El problema de la cinemática directa

puede ser planteado de la siguiente manera: dadas las variables articulares del robot q,

se desea determinar la posición y orientación :I: del extremo final respecto a un marco de

referencia dado. Las variables articulares representan los ángulos entre los eslabones en

el caso de las articulaciones rotacionales o de revolución, y a la extensión del eslabón en

el caso de las articulaciones prismáticas o de deslizamiento. De esta manera, es posible

relacionar el marco de referencia de un eslabón con el marco de referencia de algún

otro eslabón del mismo manipulador, e incluso un marco externo a él. El movimiento

relativo de cada una de las articulaciones resulta en el movimiento de los elementos que

posicionan al extremo del manipulador en una posición deseada.

0 El modelo cinemático directo resuelve el problema de obtener la posición del

extremo final del robot en el espacio de trabajo (az = [:1:1, $2, ___, s:,_,,]T) a partir

del vector de posiciones articulares (q = ]q1, qz, ___, q,,])T_ En la literatura se hace

referencia a la cinemática directa como:

w = ƒ(q)-

(1)

(32)

0 El modelo cinemático inverso resuelve el problema de obtener el vector de

posiciones articulares q a partir del vector de la posición y orientación :1: del

extremo final del manipulador en el espacio de trabajo. En la literatura se hace

referencia a la cinemática inversa como:

q-fra»

(a

En general, la cinemática directa definida como :1: = ƒ (q) donde ƒ : ÉR" -› ålìm es una

función no lineal. Sin embargo, existe un mapeado lineal entre el espacio de movimiento

articular y el espacio de movimiento del extremo final del robot, denominado jacobiano

analítico del robot, y su función es describir el mapeo desde el espacio de velocidades

articulares q al espacio de la velocidad zi: en el espacio de trabajo. El jacobiano se

presenta al derivar con respecto al tiempo el modelo cinemático directo (1):

fi: = %S,q) = %f)Íl% = JA(<1)f`1-

(3)

En la literatura se hace referencia a él como:

tcr=§§Q

(e

II.2

Dinámica articular de robots

La dinámica del robot trata con las formulaciones matemáticas de las ecuaciones de

movimiento del brazo. Tales ecuaciones son útiles para la simulación en computadora

del movimiento del robot, el diseño de ecuaciones de control apropiadas para el robot

(33)

Un robot manipulador es básicamente un dispositivo de posicionamiento. Para

controlar la posición debemos conocer las propiedades dinámicas del manipulador para

saber como es que las fuerzas ejercidas causan el movimiento. Muy poca fuerza y

el manipulador será lento en su reacción, demasiada fuerza y el brazo puede chocar,

romperse u oscilar alrededor de la posición deseada. En general el rendimieno dinámico

de un manipulador depende directamente de la eficacia de su modelo dinámico y de los

algoritmos de control. El problema de control consiste en obtener modelos dinámicos

del brazo robot físico y a continuación especificar leyes 0 estrategias de control

corres-pondientes para conseguir la respuesta y rendimiento del sistema deseado.

Derivar las ecuaciones de movimiento para robots no es tarea fácil debido al gran

número de g.d_l. y a las no linealidades presentes en el sistema. Las ecuaciones

dinámicas de un robot manipulador pueden ser obtenidas a partir de las ecuaciones

de movimiento de Newton. Sin embargo, este método presenta la desventaja de que se

complica demasiado cuando aumenta el número de articulaciones del robot. En estos

casos es más conveniente emplear las ecuaciones de movimiento de Lagrange_

Considérese un robot manipulador que se compone de n eslabones. La energía total

E de un robot de n g.d_l. es la suma de sus energías cinética /C y potencial Li:

«f<q<±>_ «mi - /<<q<±>_ ac» + uiqfim. A

(34)

energía cinética IC y su energía potencial Z/{:

5(q(†f)›¿1(1f)) = ¡C(¢1(f)_¿1(t)) r

U(q(t))-Aquí se considera que la energía potencial Z/{ es debida a las fuerzas conservativas

como la fuerza de gravedad y fuerzas debidas a resortes.

Las ecuaciones de movimiento de Lagrange para un manipulador de n g.d_l. están

dadas por:

d ama) _@fi<q_q>=,

dt äq ôq '

o en forma equivalente:

_ _ :'T¿, 'L=l.,...,'I"¿

d 5501, fi)

5501, ¿Il

-donde T, son las fuerzas y pares ejercidos externamente (por actuadores) en cada

arti-culación así como fuerzas no conservativas. Como fuerzas no conservativas se incluyen

las de fricción, las de movimiento de un objeto dentro de un fluido, y en general las que

dependen del tiempo o de la velocidad.

Nótese que se tendrán tantas ecuaciones escalares dinámicas como g.d_l. tenga el

robot manipulador.

La energía cinética lC(q, q) asociada a tal dispositivo mecánico articulado puede

expresarse siempre como:

(35)

donde M (q) es una matriz simétrica definida positiva de n >< n denominada la matriz

de inercia. La energía potencial Z/1 (q) no tiene una forma específica como en el caso de

la energía cinética, pero se sabe que depende del vector de posiciones articulares q.

El lagrangiano .C(q, q) se puede expresar de la siguiente manera:

_ 1 .T _

C(q_ q) = iq M(q)q

-U(q)-Con esta forma para el lagrangiano, la ecuación de movimiento de Lagrange para

robots manipuladores puede expresarse como:

dí,

(§a“`M<«1>a)] - â (-šqTM(q>q) + 3%? = †

tomado de esta manera la siguiente forma:

M(q)¿i+0(q_f'1)à+9(q) = 1'-

(5)

Esta ecuación es la ecuación dinámica para robots de n g.d_l. Esta ecuación es una

ecuación diferencial vectorial no lineal en el estado [qT qT]T_ C(q, q)q es un vector

de n >< 1 llamado el vector de fuerzas centrifugas y de Coriolis, g(q) es un vector de

n >< 1 llamado el vector de fuerzas 0 pares gravitacionales y 1' es un vector de n >< 1

llamado vector de fuerzas externas, siendo generalmente los pares y fuerzas aplicadas

por los actuadores en las articulaciones.

A pesar de la complejidad de la ecuación dinámica (5) que gobierna el

compor-tamiento de los robots manipuladores, esta ecuación y sus términos formantes, poseen

(36)

son una herramienta muy valiosa en el estudio de sistemas de control para robots

ma-nipuladores. Tres de estas propiedades serán utilizadas ampliamente en el estudio del

controlador de doble lazo.

Propiedad 1. Para el caso de robots provistos únicamente de articulaciones rotacionales,

existe una constante ,B > 0 tal que:

iM,_,{M(q)} 5 s v q e an.

(6)

Propiedad 2. Para el caso de robots provistos únicamente de articulaciones rotacionales,

existe una constante km > 0 tal que:

||C(q, ¿1)|| S kcillwllllvll

(7)

para todo q, rc, y E 3%".

Propiedad 5'. Si la matriz de Coriolis C (q, q) se obtiene de una manera apropiada, ésta

puede ser relacionada con la matriz de inercia M(q) por la expresión:

wf [%M<q> - 0<q_«'1)l fc = 0 va am e ir

(8)

y de hecho, (q)- C(q,¿1) es una matriz antisimétrica_ Equivalentemente la

matriz M(q) - 2C(q, q) es antisimétrica, y también resulta cierto que:

Mía) = C'(¢1,¿1)+ C(f1› ¿1)T-

(9)

Independientemente de la manera en que C (q, ¿1) sea obtenida, ésta siempre

sa-tisface:

(37)

II.3

Objetivos de Control

Los robots industriales son diseñados para realizar tareas en las cuales éste se desplace

dentro de un espacio de trabajo, pudiendo o no interaccionar con su medio ambiente.

El control de movimiento se refiere al problema de controlar el manipulador sin

in-teraccionar con el medio; por ejemplo, tareas de pintado o traslado. Aquí se define

una trayectoria parametrizada en el tiempo por donde se desea que pase el extremo

del robot. Un caso particular del control de movimiento, es cuando la trayectoria

deseada es un punto, a éste se le denomina control de posición pura. Las

especifica-ciones donde el robot si debe tener interacción con su medio ambiente, por ejemplo el

pulido y el ensamble, caen dentro de las categorías de control de fuerza o control híbrido

movimiento-fuerza ]Craig, 1989]. El objetivo de control para robots depende de la tarea

que se desea encomendar al manipulador. En este trabajo se tratará exclusivamente el

problema de control de movimiento y de no ser así se indicará adecuadamente.

Los robots son estructuras multivariables que tienen como entrada a los pares 1',

mientras que como salidas es posible elegir entre las posiciones y velocidades articulares,

ya sea en el espacio articular o en el espacio operacional. En la figura 2 se esquematiza

este concepto.

Para plantear el objetivo de control, es necesario definir una ecuación de salida:

v = h(¢1)

(11)

(38)

“id ' † fi

“id C'o Tit'rol.ciclor Rob ot _ (7

q¿__T I I

| I

CL)

fi¬_¬

W

~ïHHP~+I

i;¬_-I

c

1., i -- fe-] R b 1:

'

ïrí_ I O71 70 (LC O7 ]I`

]

]

]

Í

bi

Figura 2: Esquemas generales de control. a)Coordenadas articulares. b)Coordenadas operacionles_

directa, esto es:

M®=fl®-

(H)

Nótese que de esta manera la salida sólo depende de las posiciones articulares q del

robot. Sin embargo, algunas veces es necesario considerar una salida más general, la

cual depende no sólo de las posiciones q, sino también de las velocidades articulares q,

por lo que (11) se puede reescribir de la siguiente manera:

v=h@fll

U@

(39)

campo de velocidada, donde la salida para el caso de coordenadas articulares es definida

como y = q-v(q), donde 'v es el campo de velocidad definido en cordenadas articulares.

Otro caso particular de (13) es en el cual la salida depende únicamente de q, un ejemplo

es el control de velocidad en coordenadas articulares donde 'y = ¿1_

La clasìficación de los objetivos de control para robots manipuladores más común

es la siguiente [Kelly, 1995]:

0 Control de posición pura. El objetivo de control de posición pura o

simple-mente control de posición, consiste en encontrar un vector de pares aplicados de

tal forma que el vector de salida yft) se aproxime lo mejor posible a un vector de

salida constante deseada yd:

tljglo vii) = ya

o definiendo el error de salida como §r)(t) = yd - y(t):

: 0'

0 Control de movimiento. El objetivo de control de movimiento consiste en

encontrar un vector de pares aplicados de tal forma que el vector de salida y(t)

se aproxime lo mejor posible a un Vector variable deseado yd(t):

,1¿1;¿y<±› - y__<±>

(40)

lim §¡(t) = 0.

(41)

III

Control por doble lazo de un motor de c.c.

Existe una tendencia muy importante en el uso de motores eléctricos como actuadores

de robots manipuladores industriales con capacidades de carga pequeña y mediana,

siendo los más populares los motores de c_c.4 con imán permanente y los motores

sin escobilla ]Sciavicco y Siciliano, 1996], debido a la gran simplicidad de control que

presentan. Para este tipo de robots -que resultan ser la mayoría de los que existen

en el mercado- el proceso de diseño de sus controladores ha partido de la síntesis de

“buenos” controladores para motores, siendo predominantes los reguladores de

veloci-dad, debido a su vasta aplicación industrial.

Debido a ello, es común encontrar sistemas de control de robots que se basan en el

control de sus actuadores. De esta manera, estos sistemas de control contienen un lazo

interno de regulación de velocidad y otro lazo -externo- destinado a controlar otra

variable de interés, como puede ser la posición articular q o la posición y del extremo

del robot en un marco cartesiano dado.

Considerando que los principales actuadores de robots industriales son los motores

de c.c., en este capítulo se realiza un estudio del controlador PI que permite cumplir

con el objetivo de control de velocidad angular de un motor de c.c. Posteriormente, en

base a este controlador de velocidad angular se propone un controlador denominado de

doble lazo para el control de posición angular para motores de c.c.

(42)

III.1

l\/Iodelo dinámico para un motor de c.c.

El modelo dinámico de un motor de c.c. considerando la fricción es la siguiente:

%Ä+fid®=†

U9

donde cj y q representan la aceleración y velocidad angular del rotor respectivamente,

.Im representa la inercia del rotor, f,_,,(q) es el par debido a la fricción del motor y T es

el par aplicado al eje del motor.

El modelo dinámico del motor se puede representar en variables de estado de la

q

i

É

=

_

(15)

dt _ _, _

q *Im IT _ fmiqll

Un estudio más amplio de modelado de motores de c.c. puede encontrarse en [Kelly, siguiente manera:

1995]

III.2

Objetivo de control

El objetivo de control que se pretende lograr es el de control de movimiento, el cual

consiste en encontrar el par aplicado T de tal forma que la salida q(t) se aproxime lo

mejor posible una función de salida deseada wd(t)_

De manera particular, para el caso de control de velocidad angular el objetivo de

control se puede escribir de la siguiente manera:

(43)

o definiendo el error de velocidad angular como tÚ(t) = w,¿(t) - q(t):

Élim uÚ(t) = 0.

Asimismo, para el caso de control de posición angular el objetivo de control se puede

escribir de la siguiente manera:

lim qff) = qdbf)

(17)

t-oo

o definiendo el error de posición angular como (j(t) = q¿(t) - q(t):

= 0'

III.3

Control de velocidad de un motor de c.c.

La mayoría de controladores de velocidad para motores de c.c. sólo permiten cumplir

con el objetivo de regulación, por lo que a continuación se estudia el siguiente

contro-lador de velocidad basado en una estructura tipo PI para un motor de c.c. que permite

alcanzar el objetivo de control de velocidad:

T = Jmlwd `l` ¡fvw `I` kizl + (18)

Z=(.|J

donde rbd representa la aceleración angular deseada, k:,,, y lc, son las ganancias

propor-cional e integrativa del controlador.

Para ilustrar de mejor manera el concepto del controlador de velocidad, en la figura

(44)

Odd i i

_

m

J

T , ___ _

,

_ + _ _ __

01,, _ __ :+f%+†]/ldoior ¿Í

'

i

I _

4

»rial¬

cif

T

Figura 3: Diagrama de bloques del control de velocidad PI para un motor de c.c.

III.3.1 Análisis de estabilidad

El sistema en malla cerrada (es decir una vez que se sustituye la ecuación del controlador

(18) en el modelo dinámico del motor (14)) se puede representar de la siguiente manera:

uif___i;i

mmm;

A

la cual representa una ecuación diferencial lineal y autónoma, con un único equilibrio

en el origen [Z MT = [0 0]T _

Aprovechando las características del sistema en malla cerrada, es posible demostrar

estabilidad asintótica global del sistema mediante el uso del criterio de Routh-Hurwitz_

Este criterio es un método algebraico que proporciona información sobre la estabilidad

de un sistema lineal e invariante en el tiempo que tiene una ecuación característica

con coeficientes constantes. El criterio, prueba si cualquiera de las raíces de la ecuación

(45)

La ecuación característica de (19) dada por det[sI - A] = 0 toma la forma:

32 + kpâ + kt = 0. (20)

De acuerdo al criterio de Routh-Hurwitz [Kuo, 1996], las condiciones necesarias y

suficientes para que dicho sistema sea estable son las siguientes:

kp>0,

Por lo tanto, el proceso de sintonía para las ganancias de este controlador se limita

a que ambas ganancias sean positivas para garantizar estabilidad asintótica global del

sistema y cumplir con el objetivo de control:

= 0.

III.4

Control de doble lazo para un motor de c.c.

En base al controlador PI de velocidad anterior (18), se propone un controlador de

movimiento basado en una estructura de doble lazo que permite cumplir con el

obje-tivo de control de movimiento en posición angular, es decir que se cumpla de manera

asintótica el siguiente límite:

' lim q(t) = 0.

t-oo

En la figura 4 se presenta el esquema de este controlador. En este esquema se

observa que la estructura del controlador consiste en un lazo que permite controlar la

(46)

la posición q y velocidad angular q genera las referencias de velocidad wd para el lazo

interno.

Lazo ~] Control de T _ Í] -›

gd Errterno velocidad MOÉOT I

i

,

_

I

Figura 4: Esquema general del controlador de doble lazo para motores de c.c.

El lazo externo (en si es otro lazo de retroalimentación) se define de la siguiente

manera:

wa = (ia + ¡CCI (21)

donde cod a partir de este momento representa la velocidad angular deseada para el

lazo internos, qd es la velocidad articular deseada, tj = qd - q es el error de posición

articular y le es denominada la ganancia del lazo externo. El objetivo de agregar este

lazo externo, es que nos permita calcular o generar las referencias de velocidad deseadas

wd para el lazo de velocidad (18) que se estudió en la sección anterior.

Considerando el error de velocidad angular LD = wd - q', y sustituyendo cod en la

ecuación (21) obtenemos:

<_`ï+kq-o=o.

(22)

El uso de ¿ud para definir la referencia de velocidad del lazo interno es con la finalidad de establecer una clara identificación de las referencias de velocidad y aceleración generadas por el lazo externo.

(47)

En condiciones de control de velocidad ideal, es decir cuando idealmente se tuviese

wd E tj, entonces Q = 0 y el sistema (22) se reduce az

(Í-I-/<:cj=O.

La solución a esta ecuación diferencial tiende a cero de manera exponencial, cumpliéndose

de esta forma el objetivo de control lim¿_,O0 cÍ(t) = 0.

III.4.1 Análisis de estabilidad

El sistema completo en malla cerrada (una vez que se le ha agregado el lazo externo

(22) al controlador de velocidad de la sección anterior (18)) para control de movimiento

z (11 0

í ~ -

~

+

(23)

øj -kcj ¿D

el cual representa una ecuación diferencial lineal y autónoma, con un único equilibrio es el siguiente:

en el origen [Z U3 (HT = [0 0 0]T.

Al igual que con el control de velocidad de la sección anterior, se realizó un análisis

de estabilidad para este sistema mediante el criterio de Routh-Hurwitz. La ecuación

característica para el sistema completo descrito por (23) es:

(48)

las siguientes:

le + k,, > 0,

(25)

Ííllíìp + > 0,

kki > O. (27)

Para que las desigualdades anteriores sean satisfechas es suficiente que k, ki, ¡cp > 0.

¿Sii

_- /¬v

I¿ N

g ,¬ ¬ - q

¿Q

ï_____l QZ

+ +

__¬_i

ÉQ2_ 8

Pr

m

r

/+

+-±>,>›_¬

sus-`->

*I

Figura 5: Diagrama de bloques del control de movimiento con dos lazos de retroali-mentación para un motor de c.c.

En la figura 5 se representa el sistema completo en un diagrama de bloques. En él

se puede observar que éste esta formado por dos lazos de retroalimentación: el primero

de ellos (lazo interno) tiene una ganancia proporcional kp y otra integral ki, formando

parte del esquema de control de velocidad de movimiento para el motor, y el segundo

(lazo externo) retroalimenta la posición q del eje del motor definiendo asi el error de

posición zj, agregando una ganancia proporcional kz en el lazo directo.

(49)

figura 5 es un PID. Para demostrarlo obtendremos de forma explícita la ley de control

a partir del diagrama de bloques:

† = fm@ + Jm@ + ké) + Jmkpfiâd + ka) + Jma /(ãd + ka)

(28)

o de manera equivalente:

† = fm) + Jmfifid - /«,a<0)) + Jm ((/«ki + /fa@ + /fa / a+ <k + /mà]

(29)

La ecuación (29) es un tipo de controlador PID con compensación de fricción fm(<j)

y precompensación de aceleración Jmrjd, más un término constante dependiente de la

posición inicial del motor -Jmk,-å(0). Las ganancias proporcional ké, integral y

derivatitva /12:1 quedan definidas como:

kg = kkp 'l' ki, 2 = fi? “l” (Cp.

El diagrama de bloques del sistema equivalente aplicando el par de entrada al motor

de la manera en que se ha establecido en la ecuación (29) se muestra en la figura 6.

Debido a que los sistemas representados en las figuras 5 y 6 son equivalentes, las

condiciones de estabilidad para este último son las establecidas en (25)-(27).

III.5

Resultados experimentales

En esta sección se presentan dos experimentos realizados con la finalidad de verificar

(50)

Ej-1 Í C`^†

l]IYLl

¬ ,/

ÍÍ ie «l kk l» E Moíov'

Wai

Figura 6: Diagrama de bloques del controlador PID equivalente al controlador de movimiento con dos lazos de retroalimentación para motores de c.c.

1@

+1

___A_¬ 1 \,

1

11

+,__-gg) \^-¿_ ~|

de control de movimiento. El primero utilizando el controlador de velocidad (18) y el

segundo utilizando el controlador de movimiento (21) y (18) bajo un esquema de doble

lazo.

III.5.1 Consideraciones prácticas

Antes de presentar los resultados obtenidos es necesario mencionar las consideraciones

practicas para la realización de estos experimentos.

Ambos experimentos se realizaron en un motor de alto rendimiento fabricado por

la empresa Compumotor. Este motor, modelo DM1004C, posee 3 modos de operación

modo posición, modo velocidad y modo par o torque, asimismo posee un codificador

incremental de 655,360 pasos por vuelta y un torque maximo de 4 Nm. En el apéndice

(51)

La mayoría de los diseños de controladores suponen que las posiciones q y velocidades

q son medidas con exactitud, sin embargo es muy común que sólo se tengan disponibles

sensores para la determinación de la posición, y la velocidad asociada tenga que ser

determinada a partir de estas posiciones. Este es el caso del motor utilizado para estos

expermientos. Por esta razón, se utiliza un filtro para estimar la velocidad angular Q.

El filtro mas sencillo es la aproximación de Euler, el cual tiene la forma:

¿HI 2 Wihïfi (39)

donde lc es el tiempo discreto, q¡,+1 y q¡,+1 son la posición y velocidad angular en el

instante lc -I- 1, qk es la posición en el instante k y h es el período de muestreo.

Ex-perimentos anteriores han demostrado que un período de muestreo de 2.5 mseg es

suficientemente pequeño para lograr un buen desempeño del controlador. Debido a la

naturaleza discreta del cálculo numérico de la velocidad, los controladores

implementa-dos son de tiempo discreto, sin embargo, debido a la elección del período de muestreo

de 2.5 mseg es razonable considerar al sistema como de tiempo continuo.

Otro componente importante es la consideración de la fricción que posee el rotor del

motor. Aunque existen diferentes componentes de fricción y una diversidad de modelos,

por simplicidad sólo se ha modelado en las simulaciones la fricción de Coulomb y la

fricción viscosa. Este modelo tiene la siguiente forma:

: 'l' fcSígn(q) (31)

(52)

La fricción viscosa es una fuerza que se opone al movimiento entre dos superficies

en contacto, la cual es originada por la viscosidad de los lubricantes y en algunos casos

por pequenos contaminantes como polvo y óxido. Su comportamiento se describe como

una función proporcional a la velocidad.

La fricción de Coulomb se manifiesta como una fuerza que se opone al movimiento

cuando hay deslizamiento entre dos cuerpos y es originada por las asperezas que existen

en la superficie de contacto.

Para los experimentos sólo se ha compensado la fricción viscosa del motor, es decir,

se ha tomado ƒm(fj) = ƒvq.

III.5.2 Control de velocidad

La referencia para la velocidad angular deseada md es la siguiente:

wd = 3abt2e`”'t3sen(wt) -f- wb(1 - e`“t3) cos(wt) [rad/seg] (32)

donde a = 2.0 [seg_3], b = % y w = 3.5 [rad/seg]. Nótese que en esta referencia no

existen cambios abruptos de velocidad, y que al principio de la prueba -en el tiempo

t = 0- la velocidad, así como la aceleración son cero.

Para el controlador PI de velocidad descrito por (18):

T = J,.,,[od + kpo + az] + ƒm(q)

(33)

É = (D

(53)

basada en las simulaciones correspondientes, se determinaron las siguientes ganancias:

/cp = 200.0 [1/seg], (34)

l<;,- = 15000.0 [1/seg2].

En la figura 7 se muestra el error de velocidad (Í) y el par aplicado T usando el

controlador PI de velocidad (33). En ella se observa que el par aplicado 7' se

encuen-tra muy por debajo de los límites permitidos de 4 [Nm] y el error de velocidad en

estado estacionario tiene valores pico que oscilan entre ±40 [grad/seg] que representa

aproximadamente el 13% del máximo de la velocidad angular deseada que es de 315

[grad/seg]. Cabe hacer mención que este error puede disminuirse con un aumento en

¿Í fgrcrd. /seg]

l'lll"l)i"l“`ll“i`ll`l ii

É

Í

fs"

0 2 ›«/ s 5 fo 1 [Seg]

CL)

I _

__¡_ 'T /Nm]

2:

“j

¬2-J - ,

I'-U 2 4 6' 8 7Út[5@_q]

Ó)

(54)

el valor de ambas ganancias kp y Is,-, e incluso mediante un proceso de sintonía en base

a prueba y error. Sin embargo este error puede considerarse pequeño o grande

depen-diendo de la tarea especificada para el motor, por lo que se consideró que un error de

alrededor del 10% era un buen resultado. Otra observación importante es que los picos

en la grafica del error coinciden con el cambio de giro del motor, lo cual quiere decir

que la fricción de Coulomb afecta considerablemente en el movimiento del mismo. La

fricción de Coulomb no fue compensada debido a que el ruido presente en la estimación

de la velocidad ocasiona que la función signo genere conmutaciones indeseadas.

III.5.3 Controlador de doble lazo

Las consideraciones prácticas que se llevaron a cabo para este experimento son las

descritas en IIl.5.1. La trayectoria deseada para este experimento es la siguiente:

q, = tu _ 6-“*”)Sen(w±) [ma]

(ss)

donde a = 2.0 [seg`3], b = % y 'w = 3.5 [rad/seg]. Nótese que en esta referencia no

existen cambios abruptos de velocidad, y que al principio de la prueba ~ en el tiempo

t = 0 Ñ la velocidad así como la aceleración son cero, y que la referencia de velocidad

(55)

Para el sistema completo descrito por (23):

z CZ) 0

d

ã o

=

~k,,o - laz +

0

(36)

cj -kfj ol

las ganancias del controlador fueron elegidas de la manera siguiente. Para el lazo

interno (control de velocidad) se conservaron las ganancias (34) del experimento de

control de velocidad y la ganancia k para el lazo externo fue elegida después de un

proceso de sintonía basado primeramente en las simulaciones y posteriormente en los

experimentos. Finalmente las ganacias del controlador de doble lazo fueron:

kp = 200.0 [1/seg),

If, = 15000.0 [1/Seg2],

(37)

k = 35.0 [1/seg].

En la figura 8 se presenta el par aplicado T y el error de posición angular q' para

el controlador de doble lazo. En ella se observa que el par aplicado 'r se mantiene

muy por debajo del limite permitido de 4 (Nm), lo cual indica que no existe ninguna

saturación del par. Para el error de posición Q, en estado estacionario se observan

valores pico máximos de 0.83 grados y mínimos de -0.92 grados, esto es, el error de

posición máximo es de aproximadamente un 1% de la amplitud de la trayectoria deseada

(35). Estos valores pico coinciden con los cambios de giro del motor, por lo que se han

(56)

W~),~*¬,a))¬,)~

0 2 J 6' B 70 I. [seg]

ci) A T [N771]

_¡,.

2-“j EUQLQKRÍÂQ;

_2-_4 1 V | | i >

0 1. -Í G 8 ¡Oi [seg]

b )

(57)

IV

Control de doble lazo de robots manipuladores

considerando como salida y = h(q): Teoría

En base al control de doble lazo para motores de c.c. propuesto en (21) y (18), se

ha generalizado este resultado a robots manipuladores. A continuación se presenta la

estructura de este controlador denominado de doble lazo para robots manipuladores.

IV.1

Estructura del controlador

El controlador que se analiza en este trabajo de tesis, es un controlador que permite

resolver el problema de control de movimiento en el espacio de tarea, el cual puede

ser especificado en coordenadas articulares, operacionales o de algún otro tipo. Las

caracteristicas principales del controlador son las siguientes. Se compone de dos lazos,

denominados interno y externo respectivamente. El lazo externo permite, mediante la

medición de las variables actuales de posición del robot, así como del cálculo de las

posiciones y velocidades deseadas, generar la referencia de velocidad requeridas por el

lazo interno. El lazo interno recibe estas referencias generadas por el lazo externo, al

mismo tiempo que adquiere las variables articulares del robot (posición y velocidad),

implementado con ellos un lazo de control de velocidad a nivel articular en el robot. Para

ilustrar este concepto, en la figura 9 se muestra la estructura general del controlador

de doble lazo.

Referencias

Documento similar