UNIVERSIDAD NACIONAL DE INGENIER´IA
FACULTAD DE INGENIER´IA EL´ECTRICA Y ELECTR ´ONICA
DISE ˜
NO E IMPLEMENTACI ´
ON DE
CONTROLADORES PID INDUSTRIALES
TESIS
PARA OPTAR EL GRADO DE MAESTRO EN CIENCIAS
MENCI ´
ON: AUTOM ´
ATICA E INSTRUMENTACI ´
ON
PRESENTADA POR:
AN´IBAL ARTURO PARRA QUISPE
LIMA - PERU
A mis Padres An´ıbal y Fausta, mi Esposa Yaqueline,
AGRADECIMIENTO
Quisiera expresar mi agradecimiento al Dr. Arturo Rojas Moreno, mi anterior asesor y profesor, por su apoyo y por sentar las bases de una formaci´on acad´emica s´olida. Igualmente mi agradecimiento a mi actual asesor, el M.S. Ra´ul Benites Saravia, por su aliento constante y asesor´ıa en los ´ultimos tramos del presente trabajo de tesis.
A la Secci´on de Post Grado de la FIEE-UNI, por brindarme las facilidades del caso para poder desarrollar este trabajo de investigaci´on.
UNIVERSIDAD NACIONAL DE INGENIERIA
Facultad de Ingenier´ıa El´ectrica y Electr´onica
Dise˜no e Implementaci´on de Controladores PID Industriales
TESIS
Para optar el grado de Maestro en Ciencias Menci´on: Autom´atica e Instrumentaci´on
PRESENTADA POR:
An´ıbal Arturo Parra Quispe
LIMA – PER ´U
RESUMEN
Este trabajo de tesis trata principalmente sobre el dise˜no e implementaci´on de controladores PID, los cuales se emplean masivamente en la industria para controlar una gran variedad de procesos que trabajan en un rango de operaci´on peque˜no. Es decir, procesos cuyas salidas controladas siguen a una se˜nal de referencia (o “set point”) constante. Para tal punto de operaci´on, la din´amica del proceso se puede considerar lineal. De hecho el algoritmo de control PID es b´asicamente lineal.
Por su aplicaci´on masiva, los controladores PID han recibido y siguen recibiendo especial atenci´on por parte de los investigadores, ingenieros y t´ecnicos de operaci´on de procesos. En este trabajo, el algoritmo de control b´asico se modifica para lograr un mejor rendimiento del sistema de control a lazo cerrado.
de “Multiple-Input Multiple-Output”(m´ultiples entradas y m´ultiples salidas).
Los controladores PID mencionados pierden eficiencia y/o capacidad de control cuando se aplican a procesos tremendamente no lineales. Afortunadamente, procesos de este tipo son los menos, mientras que aquellos apropiados para ser controlados con controladores PID son m´as del 90 % del total [3]. Sin embargo, para prop´ositos de comparaci´on, esta tesis tambi´en implementa un algoritmo de control adaptativo, el cual agrega al sistema de control realimentado la capacidad de adaptarse autom´aticamente y en l´ınea a situaciones cambiantes en el entorno del sistema de control.
Este trabajo de tesis tambi´en presenta la introducci´on de inteligencia artificial en el sistema de control. Espec´ıficamente se implementa un sistema de control de posici´on difuso.
Para validar y compararlos experimentalmente los algoritmo de control descri-tos arriba, operando en tiempo real, en este trabajo se implementan y discuten las aplicaciones siguientes:
Control PID de un brazo rob´otico de 1GDL (1 Grado de Libertad).
Control PID multilazo del sistema tanque de agua.
Control MIMO PID del sistema tanque de agua.
Control no lineal adaptativo de un brazo rob´otico de 1GDL.
Control difuso de un brazo rob´otico de 1GDL.
UNIVERSIDAD NACIONAL DE INGENIERIA
Facultad de Ingenier´ıa El´ectrica y Electr´onica
Design and Implementation of Industrial PID–Controllers
THESIS
To obtain the Degree of Master of Science Mention: Automatic and Instrumentation
BY:
An´ıbal Arturo Parra Quispe
LIMA – PER ´U
ABSTRACT
This thesis work deals basically with the design and implementation of PID con-trollers, which are used extensively in the industry to control a great amount of pro-cesses working in small operation ranges. That is, propro-cesses whose controlled outputs track to a constant set point. For such ranges, the process dynamics can be assumed to be linear. In fact, the PID algorithm is linear.
Because of its extensive use, PID controllers have been received special con-sideration from researchers, engineers and process operators. In this work, the basic PID control algorithm is modified in order to achieve a better performance of the corresponding feedback control system.
bility when they are applied to nonlinear processes. Fortunately, processes of this kind are not numerous compared with processes presenting a linear behavior. In fact, about 90 % of the controllers operating in plants are PID. However, for comparison purposes, this work also implement an adaptive control algorithm which possesses the on-line adaptation capability of its parameters in the presence of disturbing signals, industrial noise or changing situations of the control system.
This thesis also presents the introduction of artificial intelligence in the control system. Specifically, a position fuzzy control system is also implemented.
In order to validate through experimentation the control algorithms described above, the following applications are implemented and discussed:
PID control of a robotic arm of 1DOF (1 Degree of Freedom).
PID multiloop control of a tank water system.
PID MIMO control of a tank water system.
Non linear adaptive control of a robotic arm of 1DOF.
Fuzzy control of a robotic arm of 1DOF.
TABLA DE CONTENIDO
LISTA DE FIGURAS . . . 1
LISTA DE TABLAS . . . 5
CAP´ITULO 1. INTRODUCCI ´ON 6 1.1. Generalidades . . . 6
1.2. Antecedentes . . . 7
1.3. Objetivos . . . 7
1.4. Organizaci´on de la Tesis . . . 8
CAP´ITULO 2. EL ALGORITMO PID MEJORADO 10 2.1. Estructuras PID . . . 10
2.2. El Algoritmo PID Mejorado . . . 11
2.3. El Algoritmo PID Discreto . . . 13
2.4. Respuesta Transitoria de los Procesos . . . 15
2.4.1. Respuesta Transitoria en el Tiempo . . . 15
2.4.2. Respuesta Transitoria en Frecuencia . . . 19
2.5.2. M´etodo de Kessler . . . 22
2.5.3. M´etodo de la Respuesta Cr´ıtica de ZN . . . 23
CAP´ITULO 3. MODELADO DE PROCESOS 25 3.1. Proceso: Brazo Rob´otico de 1 GDL . . . 25
3.2. Proceso: Tanque de Agua . . . 32
CAP´ITULO 4. IMPLEMENTACI ´ON EN TIEMPO REAL 39 4.1. Estructura en Tiempo Real . . . 39
4.2. El Sistema de Control del Brazo Rob´otico de 1GDL . . . 40
4.2.1. Generaci´on de la se˜nal PWM . . . 41
4.2.2. El Amplificador de Potencia . . . 41
4.3. El Sistema de Control del Tanque . . . 45
CAP´ITULO 5. CONTROL PID 48 5.1. Control PID del Tanque . . . 48
5.2. Control PID del Brazo Rob´otico de 1GDL . . . 51
CAP´ITULO 6. CONTROL PID MULTIVARIABLE 57 6.1. Dise˜no de un Controlador MIMO PID . . . 57
6.2. Control MIMO PID del Tanque . . . 60
7.2. Dise˜no del Controlador Adaptativo . . . 66
7.2.1. La Ley de Adaptaci´on . . . 67
7.2.2. La Zona–Muerta evita el Desplazamiento de Par´ametros . . . . 68
7.3. Controlador Adaptativo Para el Brazo Rob´otico . . . 70
CAP´ITULO 8. CONTROL DIFUSO 75 8.1. El Controlador “Fuzzy” . . . 75
8.2. Control Difuso del Brazo Rob´otico de 1GDL . . . 76
8.2.1. Proceso de Fuzzyfication . . . 77
CAP´ITULO 9. CONCLUSIONES Y RECOMENDACIONES 83 AP´ENDICE A. LISTADO DE PROGRAMAS 86 A.1. Programas del Cap´ıtulo 3 . . . 86
A.2. Programas del Cap´ıtulo 4 . . . 87
A.3. Programas del Cap´ıtulo 5 . . . 88
A.4. Programas del Cap´ıtulo 6 . . . 93
A.5. Programas del Cap´ıtulo 7 . . . 94
A.6. Programas del Cap´ıtulo 8 . . . 96
BIBLIOGRAF´IA.
LISTA DE FIGURAS
2.1. Sistema de control realimentado. . . 11
2.2. Respuesta al escal´on de un proceso autoregulado. . . 15
2.3. Determinaci´on de K, L y τ en un proceso autoregulado. . . 16
2.4. Respuesta al escal´on de un proceso no autoregulado. . . 17
2.5. Determinaci´on de K, L y R en un proceso no autoregulado. . . 17
2.6. Respuesta al escal´on de un proceso oscilatorio. . . 18
2.7. Determinaci´on de d y Tp en un proceso oscilatorio. . . 18
2.8. Gr´afico de Nyquist deG(iω) donde se observa ωcr y Kcr. . . 20
2.9. Sistema realimentado para el experimento de estabilidad de Ziegler y Nichols. 20 2.10. Sistema con rel´e realimentado. . . 21
3.1. Sistema brazo rob´otico de 1 GDL. . . 27
3.2. El brazo rob´otico. . . 29
3.3. Respuestas de los modelos no lineal, lineal continuo y lineal discreto del brazo rob´otico a una entrada u escal´on de magnitud 1.4 voltios. . . 32
3.4. Proceso tanque de agua. . . 34
4.2. Sistema de control en tiempo real para el brazo rob´otico de 1 GDL. . . 40
4.3. Diagrama de flujo para la generaci´on de los pulsos PWM. . . 42
4.4. Rangos de trabajo en el PIC 16f877. . . 42
4.5. Dise˜no ORCAD para implementar la placa del generador de pulsos PWM. 43
4.6. Esquema del circuito amplificador con su circuito de control. . . 44
4.7. Circuitos de control del amplificador de potencia. . . 46
4.8. Sistema de control en tiempo real para el tanque. . . 47
5.1. Resultado de la simulaci´on del sistema de control PID del nivel del tanque: nivel controlado y su respectiva se˜nal de control. . . 49
5.2. Nivel controlado en el sistema de control PID en tiempo real del nivel del tanque. . . 49
5.3. Se˜nal de control del nivel en el sistema de control PID en tiempo real del nivel del tanque. . . 50
5.4. Resultado de la simulaci´on para el control de temperatura del tanque con su respectiva se˜nal de control. . . 51
5.5. Nivel controlado en el sistema de control PID multilazo en tiempo real. . . 51
5.6. Se˜nal de control del nivel en el sistema de control PID multilazo en tiempo real. . . 52
5.7. Temperatura controlada en el sistema de control PID multilazo en tiempo real. . . 52
5.9. Posici´on angular controlada en la simulaci´on del sistema de control PID del brazo rob´otico de 1GDL, para una se˜nal de referencia fija. . . 53
5.10. Posici´on angular controlada en el sistema de control PID en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia fija. . . 54
5.11. Se˜nal de control de la posici´on angular en el sistema de control PID en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia fija. . 54
5.12. Posici´on angular controlada en la simulaci´on del sistema de control PID del brazo rob´otico de 1GDL, para una se˜nal de referencia variable. . . 55
5.13. Posici´on angular controlada en el sistema de control PID en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia variable. . . 55
5.14. Se˜nal de control de la posici´on angular en el sistema de control PID en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia variable. 56
6.1. Diagrama de bloques de un sistema de control PID MIMO. . . 58
6.2. Diagrama de bloques en detalle del sistema de control PID MIMO imple-mentado. . . 61
6.3. Nivel controlado en el sistema de control PID MIMO en tiempo real. . . . 62
6.4. Se˜nal de control del nivel en el sistema de control PID MIMO en tiempo real. 62
6.5. Temperatura controlada en el sistema de control PID MIMO en tiempo real. 62
6.6. Se˜nal de control de la temperatura en el sistema de control PID MIMO en tiempo real. . . 63
7.1. Configuraci´on de un SCAMR. . . 65
7.3. Posici´on angular controlada en el sistema de control adaptativo en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia variable. . . 73
7.4. Se˜nal de control de la posici´on angular en el sistema de control PID en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia variable. 74
8.1. Sistema de control a lazo cerrado, donde el controlador convencional se reemplaza por un controlador fuzzy. . . 76
8.2. Funciones de membresia para las entradas (error e(t) y de(t)/dt) y para la salida u(t). . . 78
8.3. Posici´on angular controlada en la simulaci´on del sistema de control fuzzy del brazo rob´otico de 1GDL, para una se˜nal de referencia fija. . . 81
8.4. Posici´on angular controlada en el sistema de control fuzzy en tiempo real del brazo rob´otico de 1GDL, para una se˜nal de referencia fija. . . 82
LISTA DE TABLAS
2.1. Reglas de sinton´ıa PID seg´un Ziegler-Nichols y Cohen-Coon. . . 22
2.2. Reglas de sinton´ıa PID atendiendo a la respuesta cr´ıtica a lazo cerrado seg´un Ziegler y Nichols. . . 24
3.1. Par´ametros y variables del brazo rob´otico de 1 GDL. . . 26
3.2. Par´ametros y variables del proceso tanque de agua. . . 33
4.1. Conmutaci´on de los MOSFET’s. . . 45
8.1. Conjunto de reglas del controlador fuzzy mostradas en la forma de una matriz de memoria asociativa fuzzy (“FAM-matrix”). . . 77
8.2. Rango de las funciones de membresia para el error e(t). . . 79
8.3. Rango de las funciones de membresia para la derivada del error de(t)/dt. . 79
CAP´
ITULO 1
INTRODUCCI ´
ON
1.1.
Generalidades
Este trabajo de tesis se ocupa del dise˜no e implementaci´on de controladores PID, los cuales, como todos sabemos, se emplean masivamente en la industria para controlar una gran variedad de se˜nales tales como presi´on, nivel, flujo, temperatura, ph, redox, velocidad, posici´on, voltaje, corriente, entre otras. En la mayor´ıa de los casos, el proceso controlado por un controlador PID, trabaja en un rango de operaci´on peque˜no. Para tal situaci´on la din´amica del proceso se puede considerar lineal. De hecho el algoritmo de control PID es b´asicamente lineal.
Nosotros entenderemos como sistema de control a lazo cerrado, cuando el con-trolador del sistema genera una se˜nal de control (la se˜nal de entrada al proceso), proce-sando mediante un algoritmo de control, la diferencia entre la se˜nal de salida del proceso y una se˜nal de referencia o “set-point”. Evidentemente, la se˜nal de realimentaci´on es la salida controlada del proceso. En contraposici´on, un sistema de lazo abierto est´a cons-tituido por el controlador en cascada con el proceso, sin presencia de realimentaci´on.
Los controladores PID lineales mencionados en el primer p´arrafo, pierden efi-ciencia y/o capacidad de control cuando se aplican a procesos tremendamente no linea-les. Afortunadamente, procesos de este tipo son los menos, mientras que los procesos apropiados para ser controlados empleando controladores PID son m´as del 90 % del total [3].
empleando la t´ecnica del control adaptativo con modelo referencial. En este trabajo de tesis se dedica un cap´ıtulo para el dise˜no e implementaci´on de un sistema de control de posici´on adaptativo de un brazo rob´otico de 1GDL (un Grado de Libertad). El objetivo principal es comparar el rendimiento del sistema de control adaptativo con respecto al sistema de control convencional empleando un controladores PID.
Por su aplicaci´on masiva, los controladores PID han recibido y siguen recibiendo especial atenci´on por parte de los investigadores, ingenieros y t´ecnicos de operaci´on de procesos. El algoritmo de control b´asico ha sufrido modificaciones para lograr un mejor rendimiento del sistema de control a lazo cerrado, tal como describe en detalle en el Cap´ıtulo 2 de este trabajo.
En estos ´ultimos tiempos ya se presentan muchas aplicaciones basadas en con-troladores con inteligencia artificial. Este trabajo de tesis tambi´en incluye la imple-mentaci´on de un sistema de control de posici´on difuso. Adem´as, se compara el rendimien-to del controlador difuso con el del controlador PID convencional y con el del contro-lador adaptativo.
1.2.
Antecedentes
Es evidente que controladores PID con las caracter´ısticas mencionadas en la secci´on anterior se ofrecen actualmente en el mercado. Dichos controladores tambi´en ofrecen alternativas de control difuso y adaptativo. Sin embargo, el know-how de dise˜no e implementaci´on le pertenece a cada una de las firmas fabricantes. En la industria na-cional, en un gran porcentaje, s´olo se emplean controladores PID comerciales. En nues-tro medio nacional no existen antecedentes relacionados con el dise˜no e implementaci´on de controladores PID que posean, adem´as de las caracter´ısticas convencionales, las op-ciones de control difuso y control adaptativo.
1.3.
Objetivos
1) Dise˜nar e implementar en tiempo real controladores PID que posean capacidades de adaptabilidad y de control inteligente. Tales controladores van a ser apropiados para controlar una gran variedad de procesos industriales.
2) Contribuir en cerrar la brecha que existe entre la teor´ıa y la aplicaci´on pr´actica en el campo de los controladores.
3) Dar un aporte a la industria nacional en el campo de la automatizaci´on de pro-cesos, mediante la introducci´on de este tipo de controladores que emplean al-goritmos de control PID mejorado y tambi´en algoritmo de control adaptativo y difuso.
1.4.
Organizaci´
on de la Tesis
Esta tesis est´a organizada en 5 cap´ıtulos. El Cap´ıtulo 2 se ocupa de las genera-lidades de los controladores PID convencionales y de algunos t´opicos relacionados con su implementaci´on, como son, entre otros, las acciones proporcional, integral y deriva-tiva, el modo de evitar el “windup”de la acci´on integral (es decir, cuando la salida del integrador del controlador no puede limitarse), y la forma de pasar de operaci´on manual a autom´atico sin que el proceso de conmutaci´on provoque anomal´ıas en el fun-cionamiento del sistema. En este cap´ıtulo tambi´en se analizan las reglas de sinton´ıa de los par´ametros del controlador PID.
El cap´ıtulo 3 se ocupa de la descripci´on y el modelado de los los procesos a ser controlados en tiempo real: un brazo rob´otico de 1GDL y el sistema tanque de agua. En este ´ultimo proceso, las variables a controlar simult´aneamente son el nivel del agua y su temperatura.
apropiados. El lenguaje empleado para la implementaci´on en tiempo real es LabView, mientras que los estudios de simulaci´on se realizan con Matlab.
El Cap´ıtulo 5 trata sobre el dise˜no e implementaci´on en tiempo real de varios sistemas de control PID para el tanque de agua y para el brazo rob´otico de 1GDL. Espec´ıficamente los sistemas de control implementados son los siguientes:
(a) Control PID del nivel de agua del tanque.
(b) Control PID multilazo del nivel y de la temperatura en el tanque.
(c) Control PID multivariable del tanque de agua.
(d) Control PID de la posici´on angular del brazo rob´otico de 1GDL para una referencia fija.
(e) Control PID de la posici´on angular del brazo rob´otico de 1GDL para una referencia variable.
El cap´ıtulo 6 se ocupa del dise˜no de sistemas de control difuso y su aplicaci´on en el caso siguiente: control difuso de la posici´on angular de un brazo rob´otico de 1GDL.
El cap´ıtulo 7 trata sobre el dise˜no e implementaci´on de un sistema de control adaptativo para el brazo rob´otico de 1GDL. La t´ecnica a emplear es bastante poderosa y del tipo robusto. En su dise˜no emplea un mecanismo de adaptaci´on de par´ametros del sistema.
CAP´
ITULO 2
EL ALGORITMO PID MEJORADO
2.1.
Estructuras PID
El controlador PID es el algoritmo de control m´as usado en la actualidad por la industria. Se estima que tal algoritmo se aplica en m´as del 90 % de las aplicaciones [3]. Sin embargo, no existe un est´andar industrial del algoritmo PID. La versi´on “texto universitario” del algoritmo de control PID posee la forma:
u(t) = Kp
e(t) + 1
Ti
t
0
e(t)dτ+Td
de(t)
dt
e(t) = r(t)−y(t) (2.1)
donde u(t) es la se˜nal o fuerza de control, y(t) es la salida controlada del proceso y sujeta a medici´on, e(t) es la se˜nal de error, r(t) es la se˜nal de referencia deseada o “set-point”, Kp es la ganancia proporcional, Ti es la constante de tiempo integral o
simplemente tiempo integral, yTd es la constante de tiempo derivativo, o simplemente
tiempo derivativo. El algoritmo PID dado en (2.1) se denomina tambi´en algoritmo ISA (Instrument Society of America) o algoritmo PID no interactuante.
En el dominio de Laplace, (2.1) toma la forma:
u(s) = Kp
1 + 1
Tis
+Tds
e(s)
e(s) = r(s)−y(s) (2.2)
Otros algoritmos de control PID empleados comercialmente son:
1) Controlador PID interactuante.
u(t) = K
e(t) + 1
Ti t
0
e(t)dτ 1 +Tdde(t) dt
(2.3)
2) Controlador PID ideal paralelo.
Foxboro y Fisher emplean el algoritmo PID no interactuante, mientras que Honeywell y Texas usan el algoritmo interactuante [6].
Notar que (2.4) es equivalente a (2.1); esto es, (2.4) puede ser siempre reemplaza-do por (2.1). Por otro lareemplaza-do, se puede demostrar que (2.1) tiene una correspondencia directa con (2.3) siempre queTd< 14Ti [3].
Los algoritmos PID descritos operan con una se˜nal de error e(t) la cual es generada en l´ınea (“on-line”), es decir, con el controlador en plena operaci´on, tal como se ilustra en la figura 2.1, en donde tambi´en se muestran las nuevas se˜nales externas al lazo de control: l y n. Tales se˜nales son el disturbio en la carga y el ruido de medici´on respectivamente. El sistema de control de la figura 2.1 se denomina sistema de control con error realimentado y debe satisfacer varios requerimientos tales como estabilidad a lazo cerrado, buena respuesta transitoria en presencia de cambios de r(t), rechazo a los disturbios de carga y rechazo al ruido.
El objetivo de control consiste en dise˜nar una se˜nal de control u(t) que sea capaz de estabilizar la salida y(t) con respecto a r(t), cumpliendo ciertas especifica-ciones de dise˜no como son: error en estado estable prefijado, determinado porcentaje de sobreimpulso, tiempo de establecimiento, ancho de banda, m´argenes de fase y de ganancia definidos, entre otros criterios.
r y
n
u
Controlador Proceso
e
l
Figura 2.1: Sistema de control realimentado.
2.2.
El Algoritmo PID Mejorado
sustancialmente. Por ejemplo, no podemos evitar la ocurrencia fortuita de cambios bruscos del errore(t), los cuales pueden incrementar el t´ermino derivativo:
de(t)
dt = d
dt(r(t)−y(t))
Este fen´omeno es conocido en ingl´es como “derivative kick” y su efecto se puede apaciguar si es que utilizamos como se˜nal de entrada ´unicamente la se˜nal realimen-tada y(t) en lugar dee(t). De esta forma, (2.1) se convierte en:
u1(t) =Kp
e(t) + 1
Ti
t
0
e(t)dτ −Td
dy(t)
dt
(2.5)
mientras que (2.2) toma la forma:
u1(s) = Kp
1 + 1
Tis
e(s)−KpTds y(s) (2.6)
Otra modificaci´on importante es filtrar la acci´on derivativa del controlador PID original mediante un filtro de primer (o segundo) orden para disminuir el ruido deriva-tivo. Esta caracter´ıstica limita la amplificaci´on del ruido de medici´on de alta frecuencia en la salida del controlador. La se˜nal de control ser´a as´ı menos ruidosa y la ganancia en alta frecuencia permanecer´a dentro de cotas apropiadas. Un t´ermino derivativo pr´ acti-co, ya que un derivador puro no puede realizarse exactamente, puede aproximarse por un sistema de primer orden con una constante de tiempoTf que a menudo se normaliza
con respecto al tiempo derivativo Td. Por consiguiente, el derivador del algoritmo PID
(2.6) se modifica como:
Tds
1 +Tfs
Tf =
Td
N
dondeN es una constante que var´ıa de 3 a 10 y es conocida como la cota de la ganancia derivativa. Luego, el algoritmo (2.6) se convierte en:
u1(s) =Kp
1 + 1
Tis
e(s)− KpTds 1 +Tfs
y(s) = P(s) +I(s) +D(s) (2.7)
donde:
P(s) =Kpe(s); I(s) =
Kp
Tis
e(s); D(s) = − KpTds 1 +Tfs
y(s); Tf =
Td
N (2.8)
rango permitido por el sistema de adquisici´on de datos, y la segunda raz´on es que su valor no debe de exceder el rango permitido por el actuador. Por estas razones es que debemos de introducir un limitador a la salida del controlador. Lamentablemente este limitador, el cual es un elemento no lineal, es el causante del efecto denominado en ingl´es “windup”. Cuando la magnitud de la se˜nal de control u(t) sobrepasa los l´ımites del limitador, tal efecto se manifiesta como un incremento del t´ermino integral del controlador, lo que a su vez provoca un aumento del sobreimpulso y del tiempo de establecimiento en la se˜nal controladay(t).
Por consiguiente, para evitar el efecto “windup”, no debemos de usar el t´ermino integral en los casos en que la se˜nal de control u1(t) sobrepase los l´ımites de operaci´on
umin yumax, con el fin de evitar la saturaci´on del limitador. Una forma de implementar
esta acci´on ”anti windup” se da en el siguiente segmento de programa:
u1(t) = P(t) +D(t) +I(t)
u(t) = P(t) +D(t) si u1(t)≤umin
u(t) =u1(t) si umin ≤u1(t)≤umax
u(t) = P(t) +D(t) si u1(t)≥umax
En las implementaciones realizadas en este trabajo seguiremos empleando el limitador a la salida de la se˜nal de control.
Por otra parte, cuando el controlador conmuta de manual a autom´atico, el valor de la se˜nal de control u(t) puede cambiar de un valor a otro, no importando que la se˜nal de error e(t) sea cero. Este salto debe de evitarse y en este caso se dice que la conmutaci´on de manual a autom´atico debe de ser sin saltos (“bumpless” en ingl´es). Para lograr conmutaci´on sin saltos, el algoritmo de control debe de ejecutarse siempre, aunque la operaci´on del sistema de control se encuentre en modo manual. Esta correcci´on se realiza en el programa en tiempo real.
2.3.
El Algoritmo PID Discreto
Sea k el tiempo discreto, el cual est´a relacionado con el tiempo continuo t
parte proporcionalP =Kpe(s) de (2.8) se discretiza directamente, obteni´endose:
P =KPe(k) (2.9)
Para la parte integral I(s) = Kp
Tis e(s), o lo que es lo mismo:
I(t) = Kp
Ti
t
0
e(t)dt
empleamos la aproximaci´on trapezoidal:
I(k) = Kp
Ti k
i=1
T[e(i) +e(i−1)]
2
I(k) = Kp
Ti
k−1
i=1
T[e(i) +e(i−1)]
2 +
Kp
Ti
T[e(k) +e(k−1)]
2 donde, para el tiempo discreto (k−1) se cumple que:
Kp
Ti
k−1
i=1
T[e(i) +e(i−1)]
2 =I(k−1) RestandoI(k−1) de I(k) se obtiene:
I(k) = I(k−1) + KpT 2Ti
[e(k) +e(k−1)] (2.10)
La parte derivativa D(s) =−KpTds
1+Tfsy(s) se puede escribir como:
(1 +Tfs)D(s) = −KpTds y(s)
D(t) +TfD˙(t) = −KpTdy˙(t)
y aproximando las derivadas ˙D(t) e ˙y(t) por atraso (desplazamiento dek hacia (k−1)), se obtiene:
D(k) +Tf
D(k)−D(k−1)
T
=−KpTd
y(k)−y(k−1)
T
DespejandoD(k), la parte derivativa discreta queda entonces como:
D(k) = Td
N T +Td{
D(k−1)−KpN[y(k)−y(k−1)]} Tf =
Td
N (2.11)
Por consiguiente, el algoritmo PID discreto usado en las implementaciones en tiempo real tiene la siguiente forma:
2.4.
Respuesta Transitoria de los Procesos
2.4.1. Respuesta Transitoria en el Tiempo
La repuesta transitoria de un proceso, se refiere a la respuesta transitoria de la misma sin control (respuesta a lazo abierto) a una se˜nal excitadora. La se˜nal de excitaci´on m´as usada es el escal´on.
Los procesos autoregulados son aquellos que poseen una respuesta estable al escal´on, es decir, despu´es que el proceso es excitado con un salto de escal´on, su respuesta transitoria alcanza un nuevo nivel, tal como se muestra en la figura 2.2. Este es el caso t´ıpico de los procesos de temperatura y presi´on.
Figura 2.2: Respuesta al escal´on de un proceso autoregulado.
Muchos procesos industriales autoregulados se pueden modelar mediante el si-guiente modelo de primer orden con tiempo muerto [4], [5]:
G(s) = K 1 +τ se
−sL m =K L
τ (2.13)
aproximaci´on de las constantes de tiempo de alto orden del proceso. Tener en cuenta queKes la relaci´on entre la salida en estado estacionario del proceso con respecto a una entrada tipo escal´on de magnitud arbitraria. La figura 2.3 muestra la determinaci´on gr´afica de los par´ametrosK, Ly τ de un proceso autoregulado mediante el trazado de una tangente a la respuesta al escal´on .
Figura 2.3: Determinaci´on de K, L y τ en un proceso autoregulado.
Procesos no autoregulados, como es el caso de la posici´on angular de un motor o el nivel, poseen una respuesta al escal´on como el de la figura 2.4. La din´amica de tales procesos se puede modelar como [4], [5]:
G(s) = K
s e
−sL R =K L (2.14)
donde L es el tiempo muerto aparente, el cual aproxima las constantes de tiempo del proceso, R es la raz´on de reacci´on unitaria y K es la ganancia. Estos dos par´ametros se pueden obtener gr´aficamente, tal como se ilustra en la figura 2.5.
Figura 2.4: Respuesta al escal´on de un proceso no autoregulado.
Figura 2.5: Determinaci´on de K, Ly R en un proceso no autoregulado.
empleando la figura 2.7 y las siguientes relaciones:
ζ = 1 + (2π/ln d)2−1
ω = 2π
Tp
1−ζ2 (2.16)
donded es el amortiguamiento y Tp es el per´ıodo de oscilaci´on.
Figura 2.6: Respuesta al escal´on de un proceso oscilatorio.
Una forma alternativa de (2.15) incluyendo un tiempo muerto aparente L es:
G(s) = K ω 2
s2+ 2ζωs+ω2 e
−sL (2.17)
dondeL se puede determinar en la misma forma que para el modelo dado en (2.13)
2.4.2. Respuesta Transitoria en Frecuencia
Asumamos que el proceso G(s) del sistema realimentado de la figura 2.9 posee una respuesta en frecuencia G(iω) y que el controlador es proporcional con ganancia
K. La funci´on de transferencia del sistema es:
y(iω)
r(iω) =
K G(iω) 1 +K G(iω)
La idea b´asica en la mayor´ıa de los m´etodos de respuesta en frecuencia, es llevar al proceso G(iω) a un estado de autooscilaci´on (ciclo l´ımite) usando realimentaci´on en una frecuencia apropiada. La figura 2.8 muestra el gr´afico de Nyquist de la funci´on de transferencia a lazo abierto K G(iω). Para determinar d´onde ocurre la frecuencia l´ımiteωcr, igualamos a cero la ecuaci´on caracter´ıstica:
1 +K G(iω) = 0
de donde, despejando se obtiene:
G(iωcr) =−1/Kcr M ag[G(iωcr)] = 1/Kcr arg[KcrG(iωcr)] = π
La frecuencia de este ciclo l´ımite se denomina la frecuencia de cruceωcr y es la frecuencia
donde la curva de Nyquist intercepta el eje real negativo a un ´angulo (argumento) de
π radianes. El per´ıodo Tcr = 2π/ωcr se denomina el per´ıodo cr´ıtico, mientras que
la ganancia a la cual ocurre ωcr se denomina la ganancia cr´ıtica Kcr. Esta ganancia
conduce al sistema realimentado al l´ımite de la estabilidad bajo un control puramente proporcional.
Basado en la t´ecnica del ciclo l´ımite descrita en el p´arrafo anterior, Ziegler y Nichols [4], [5] han sugerido una t´ecnica experimental para determinar los par´ametros de un controlador PID en funci´on de Kcr y Tcr (ver subsecci´on 2.5.3) basado en la
Figura 2.8: Gr´afico de Nyquist de G(iω) donde se observa ωcr y Kcr.
estabilidad empleando un control puramente proporcional y seleccionando una ganancia
K suficientemente grande (ver figura 2.9). En este l´ımite, la entradau y la salidaydel proceso son sinusoides con una diferencia de fase de 180o. La frecuencia de oscilaci´on es
la frecuencia de cruceωcr, y la gananciaK que lleva al sistema al l´ımite de la estabilidad
es la ganancia cr´ıtica Kcr. Este m´etodo experimental s´olo es aplicable para procesos
autoregulados.
Hagglum y Astrom [7] han sugerido un m´etodo para determinar el punto cr´ıtico de la curva de Nyquist, el cual se basa en el experimento del rel´e realimentado. Como se muestra en la figura 2.10, una oscilaci´on tipo ciclo l´ımite es forzada en el proceso empleando un rel´e descrito por:
u = δ si e >0
u = −δ si e <0 (2.18)
donde δ es la amplitud del rel´e. La condici´on de oscilaci´on en la figura 2.10 es que el proceso lineal G(s) posea una curva de Nyquist que intersecte el eje real negativo. El tiempo cr´ıticoTcr es el mismo que el per´ıodo de oscilaci´on del ciclo l´ımite, y la ganancia
cr´ıticaKcr es la ganancia del rel´e dada por:
Kcr =
4δ
πd (2.19)
donded es la amplitud de la oscilaci´on en la se˜nal de error e(t) [3].
Figura 2.10: Sistema con rel´e realimentado.
2.5.
Sintonizaci´
on de Controladores PID
Los m´etodos de sintonizaci´on de controladores PID est´an referidos generalmente a la estructura dada en La tabla (2.1). En este trabajo se describen tres m´etodos cl´asicos: el m´etodo de la curva de reacci´on del proceso, el m´etodo de Kessler y el m´etodo de la respuesta cr´ıtica de Ziegler y Nichols. S´olo el m´etodo de la curva de reacci´on se usa en este trabajo para determinar los par´ametros iniciales Kp,Ti y Tddel
2.5.1. M´etodo de la Curva de Reacci´on del Proceso
El m´etodo de la curva de reacci´on del proceso atribuido a Ziegler-Nichols y Cohen-Coon [1] se puede aplicar tanto a procesos autoregulados como no autoregu-lados. Los par´ametros PID del controlador se determinan empleando la tabla 2.1, en donde S es la pendiente promedio normalizada del proceso. Para el caso de procesos autoregulados, tal pendiente toma la forma S = K/τ, mientras que para el caso de procesos no autoregulado la pendiente es S=R/L. Ya sabemos que K es la ganancia a lazo abierto del proceso y se determina mediante la relaci´on entre la respuesta en estado estable del proceso a una excitaci´on escal´on de magnitud arbitraria.
Tabla 2.1: Reglas de sinton´ıa PID seg´un Ziegler-Nichols y Cohen-Coon.
Controlador Kc Ti Td
P LS1
PI 0LS,9 3,33L
PID 1LS,2 2L 0,5L
2.5.2. M´etodo de Kessler
El m´etodo atribu´ıdo a C. Kessler [9], para sintonizar los par´ametros PID en procesos no autoregulados y autoregulados, establece que para procesos que poseen las siguientes funciones de transferencia:
Gp(s) =
Kp
(1 +T1s)µ(1 +tµs)
T1 >4Tσ Tσ =
µ
tµ (2.20)
Gp(s) =
KI
sµ(1 +tµs)
Tσ =
µ
se recomienda emplear un controlador PI de la forma (conXp siendo la banda
propor-cional):
Gc(s) =Kc 1 +
1
TIs
Xp =
100
Kc
(2.22)
Para el proceso descrito en (2.20), los par´ametros del controlador PI se sintonizan como sigue:
Kc =
T1
2KpTσ
TI = 4Tσ (2.23)
mientras que para el proceso descrito en (2.21), los par´ametros del controlador PI se sintonizan as´ı:
Kc =
1 2KITσ
TI = 4Tσ (2.24)
Tambi´en, para procesos que poseen las siguientes funciones de transferencia:
Gp(s) =
Kp
(1 +T1s)(1 +T2s)µ(1 +tµs)
(2.25)
T1 >4Tσ Tσ =
µ
tµ T1 > T2 > Tσ
Gp(s) =
KI
s(1 +T2s)µ(1 +tµs)
(2.26)
Tσ =
µ
tµ T2 > Tσ
Se recomienda emplear un controlador PID de la forma:
Gc(s) =Kc 1 +
1
TIs
(1 +TDs) (2.27)
Para el proceso descrito en (2.25), los par´ametros del controlador PID se sintonizan como sigue:
Kc =
T1
2KpTσ
TI = 4Tσ TD =T2 (2.28)
mientras que para el proceso descrito en (2.26), los par´ametros del controlador PI se sintonizan as´ı:
Kc =
1 2KITσ
TI = 4Tσ TD =T2 (2.29)
2.5.3. M´etodo de la Respuesta Cr´ıtica de ZN
y [8]). Estos m´etodos se basan en muchos experimentos realizados en t´ıpicos procesos industriales autoregulados, es decir, procesos que presentan una respuesta estacionaria cuando son excitados con una se˜nal de entrada tipo escal´on.
El m´etodo de la respuesta cr´ıtica a lazo cerrado de Ziegler y Nichols tiene dos formas. En la primera, se determina primero un simple modelo del proceso autoregula-do, empleando la t´ecnica descrita en la secci´on 2.4.1. Luego, se computan directamente los mejores par´ametros PID usando (2.30) y la tabla 2.2, como sigue:
Tcr = 4L Kcr =
2
m L (2.30)
Tabla 2.2: Reglas de sinton´ıa PID atendiendo a la respuesta cr´ıtica a lazo cerrado seg´un Ziegler y Nichols.
Controlador Kp Ti Td Tp
P 0.5Kcr Tcr
PI 0.45Kcr 0.83Tcr 1.4Tcr
PID 0.6Kcr 0.5Tcr 0.125Tcr 0.85Tcr
Tener en cuenta que los par´ametros PID en la tabla 2.2 (Kc,Ti y Td) se refieren
al algoritmo PID mostrado en (2.1). Adem´as recordar que los par´ametros m y L del modelo se obtienen gr´aficamente empleando la respuesta a lazo abierto del proceso a una excitaci´on escal´on (ver subsecci´on 2.4.1 para mayores detalles). En la tabla 2.2,Tp
es aproximadamente el per´ıodo de la din´amica dominante del sistema a lazo cerrado.
En la segunda forma, denominada el m´etodo de respuesta en frecuencia de ZN, primero se determinan los par´ametros Kcr y Tcr a partir del experimento de
estabi-lidad descrito en la subsecci´on 2.4.2. Entonces, a partir de la tabla 2.2, se calculan los par´ametros del controlador PID, a saber, Kp, Ti y Td. Dado que en muchas
CAP´
ITULO 3
MODELADO DE PROCESOS
3.1.
Proceso: Brazo Rob´
otico de 1 GDL
El brazo rob´otico de 1 GDL (Grado De Libertad) mostrado en la figura 3.1, es uno de los procesos a ser utilizado en este trabajo de tesis para validar mediante experimentaci´on los algoritmos de control empleados. Este proceso se compone de un subsistema el´ectrico y un subsistema mec´anico. El subsistema el´ectrico comprende un servomotor D.C. (“Direct Current”) con codificador (“encoder”) de posici´on incorpo-rado, el cual se emplea para medir la posici´on angular del brazo en cada instante de tiempo. El servomotor posee una caja de engranajes para reducir la velocidad en su eje de salida, y de esta manera, facilitar el control de posici´on del brazo rob´otico.
El subsistema mec´anico consiste de un brazo accionado por el torque rotacional generado en el actuador, en este caso el servomotor. En el extremo del brazo rob´otico se acopla el efector final, el cual puede ser una pinza para asir objetos, una herramienta para soldar, una herramienta para pintar, etc. En nuestro caso, con prop´ositos de mo-delado, vamos a suponer que el efector final y su carga se pueden reemplazar mediante una masa mh que puede variar. La tabla 3.1 describe las variables y los valores de los
par´ametros del brazo rob´otico mostrados en la figura 3.1.
El proceso descrito previamente es del tipo SISO (“Single Input Single Output”) ya que s´olo posee una entrada: el voltaje de control aplicado a la armadura u del servomotor, y una salida: la posici´on angular θ del brazo.
Modelo del Subsistema Mec´anico
Tabla 3.1: Par´ametros y variables del brazo rob´otico de 1 GDL.
S´ımbolo Descripci´on Valor Unidades
u Voltaje de entrada al sistema V
KA Ganancia del amplificador 14.9
Va Voltaje de armadura V
Ra Resistencia de armadura 7.38 Ω
La Inductancia de armadura 4.64×10−2 H
ia Corriente de armadura A
Km Constante del torque motor 31.071×10−3 N-m/A
Tm Torque motor N-m
TL Torque de carga N-m
τL Torque causado por pesos de la carga N-m
Tg1 Torque de entrada a los engranajes N-m
Tg2 Torque de salida de los engranajes N-m
Jm Inercia del motor 1.9062×10−6 kg-m2
Jg Inercia de los engranajes 3.5×10−7 kg-m2
JL Inercia de la carga kg-m2
Bm Constante de fricci´on del motor 1.8338×10−6 N-m/rad/s
Bg Constante de fricci´on en engranajes 10−5 N-m/rad/s
BL Constante de fricci´on en la carga N-m/rad/s
mh Masa del efector final 0.045 kg
mb Masa del brazo 0.06377 kg
L Longitud del brazo 0.776 m
rh Distancia al centro de masa del efector 0.02 m
Vb Voltaje contraelectromotriz V
Kb Constante contraelectromotriz 31.0352×10−3 V/rad/s
g Aceleraci´on de la gravedad 9.81 m/s2
N1, N2 No de dientes de los engranajes N
2 > N1
n Relaci´on de engranajes (n =N2/N1) 19.741
θm Posici´on angular del motor rad
θ Posici´on angular de la carga rad
ω Velocidad angular de la carga rad/s
Figura 3.1: Sistema brazo rob´otico de 1 GDL.
mec´anico en el eje del servomotor articulado al primer engranaje se formula como:
Tm =Jmθ¨m+Bmθ˙m+Tg1 θ˙=
dθ dt
¨
θm =
d2θm
dt2 (3.1)
donde Jm y Bm representan el momento de inercia y la constante de fricci´on viscosa
del rotor,Tm es el torque del servomotor yTg1 es el torque de reacci´on debido al primer
engranaje. Para los engranajes de reducci´on del servomotor podemos formular:
n= N2
N1 = θm
θ θm =nθ n >1 (3.2)
La ecuaci´on (3.2) es cierta debido a que el espacio angular recorrido por el engranaje de menor radio debe de ser n veces mayor que el espacio recorrido por el el engranaje de radio mayor. Por otra parte, el principio de la conservaci´on de la energ´ıa establece que el trabajo realizado por el engranaje de la izquierda debe ser igual al trabajo realizado por el engranaje de la derecha, es decir:
Tg2θ =Tg1θm =Tg1nθ; Tg2 =nTg1 (3.3)
donde Tg2 es el torque de reacci´on debido al segundo engranaje. El balance mec´anico
en el eje articulado al brazo produce:
Tg2 =Jgθ¨+Bgθ˙+TL (3.4)
donde Jg y Bg representan el momento de inercia y la constante de fricci´on viscosa
figura 3.2):
TL = JLθ¨+BLθ˙+τL (3.5)
τL = mbg
L
2senθ+mhg(L+rh)senθ =Qsenθ (3.6)
Q = mbg
L
2 +mhg(L+rh)
dondeJL yBLrepresentan el momento de inercia y la constante de fricci´on viscosa de
la carga no lineal (brazo m´as efector final), g es la constante gravitacional, mb y mh
denotan las masas del brazo y del efector final (esta masa tambi´en incluye la masa de la carga en el efector) respectivamente, y rh denota la distancia desde el extremo del
brazo al centro de masa demh. Para fines pr´acticos asumiremos que rh ≈0. Notar en
(3.5) que el torque τL se debe a las fuerzas ejercidas por los pesos del brazo y de la
esfera. As´ı, el torque mbg L senθ2 se debe al peso mbg del brazo, mientras que el torque
mhg(L+rh)senθ ≈mhg Lsenθ es causado por el peso mhg del efector, Las distancias L senθ
2 y (L+rh)senθ ≈Lsenθ son los correspondientes brazos de palanca del brazo y
del efector respectivamente.
El momento de inercia JL de la carga es la suma del momento de inercia del
brazoJbm´as el momento de inercia del efectorJh. Asumiendo que la masamh est´a
con-centrada en su C.M. (centro de masa), entonces:
Jh =mh(L+rh)2 ≈mhL2 (3.7)
Del mismo modo, asumiendo que la masa mb del brazo se concentra en su C.M.,
en-tonces:
Jb =mb
L
2
2
(3.8)
Sin embargo, si se considera que la masa del brazo est´a distribuida a lo largo de su longitud, entonces debemos aplicar el teorema de los ejes paralelos, el cual establece que el momento de inercia de una masa m alrededor de un eje que no pasa por su centro de masa est´a dado por:
J =Jo+ma2 (3.9)
respecto al punto de articulaci´on se formula como:
Jb =
1 12mbL
2+m b
L
2
2 = 1
3mbL
2 (3.10)
Por simplicidad, sin embargo, emplearemos las f´ormulas dadas en (3.7) y (3.8). Empleando
Figura 3.2: El brazo rob´otico.
(3.5), (3.6), (3.4), (3.3) y (3.2) en (3.1) y operando se obtiene:
nTm =Jeqθ¨+Beqθ˙+τL=Jeqω˙ +Beqω+Q senθ (3.11)
donde:
Jeq =n2Jm+Jg+JL Beq =n2Bm+Bg+BL
Las expresiones deQ, Jh yJb (tener en cuenta queJL =Jh+Jb) se dan en (3.6), (3.7)
y (3.8) respectivamente.
Modelo del Subsistema El´ectrico
El voltaje de armadura Va viene expresado por (ver la descripci´on de las
varia-bles y par´ametros en la Tabla 3.1):
Va =iaRa+La
dia
donde ia, Ra y La son la corriente, la resistencia y la inductancia en la armadura del
servomotor respectivamente, yVb es el voltaje de fuerza contraelectromotriz gobernado
por la relaci´on:
Vb =Kbωm =Kbnω =Kbnθ˙ (3.13)
donde Kb es la constante de fuerza contra-electromotriz y est´a relacionado con la
ve-locidad angularωm del motor. El voltaje de armadura Va es:
Va =uKA (3.14)
dondeKA es la ganancia del amplificador.
Conversi´on de Energ´ıa El´ectrica en Mec´anica
La ecuaci´on de conversi´on en energ´ıa el´ectrica en mec´anica es:
Tm =Kmia (3.15)
dondeKm es la constante del motor. Igualando (3.12) con (3.14) obtenemos:
dia
dt = KA
La
u−Kbn La
ω− Ra La
ia (3.16)
Empleando (3.15) en (3.11) y despejando ˙ω =dω/dtobtenemos:
dω dt =−
Q Jeq
senθ−Beq Jeq
ω+nKm
Jeq
ia (3.17)
Ecuaci´on de Estado del Proceso
Las ecuaciones (3.16) y (3.17) describen el modelo no lineal del proceso. Eligien-do como variables de estaEligien-do:x1 =θ (posici´on angular), x2 =ω (velocidad angular) y
x3 =ia (corriente de armadura), se obtiene:
˙
x1 = x2
˙
x2 = − Q
Jeq
senx1− Beq Jeq
x2+ nKm
Jeq
x3
˙
x3 = −nKb
L x2− Ra
L x3+ KA
En la Tabla 3.1 podemos observar que la inductancia de armadura La del
ser-vomotor es bastante peque˜na, de modo tal que puede despreciarse sin que se pierda exactitud en los resultados. Considerando el producto ˙x3La = 0 en la tercera ecuaci´on
de (3.18) y despejando la corriente de armadurax3 obtenemos:
x3 = KA
Ra
u− nKb Ra
x2 (3.19)
Reemplazando (3.19) en la segunda ecuaci´on de (3.18), se obtiene entonces la ecuaci´on de estado no lineal de orden dos del brazo rob´otico:
˙
x1 = x2
˙
x2 = − P
Jeq
senx1− BeqRa+n
2K
mKb
JeqRa
x2+ nKmKA
JeqRa
u (3.20)
Linealizaci´on del Modelo no Lineal
Despreciando la inductancia La del servomotor, entonces, para desviaciones
peque˜nas de la posici´onθ =x1 se cumple quesenx1 ≈x1. Aplicando tal aproximaci´on en la ecuaci´on (3.20) obtenemos una ecuaci´on de estado lineal de la forma:
˙
x=Ax+Bu (3.21)
⎡ ⎣ x˙1
˙
x2 ⎤ ⎦=
⎡
⎣ 0 1
− Q
Jeq −
BeqRa+n2KmKb
JeqRa
⎤ ⎦
⎡ ⎣ x1
x2 ⎤ ⎦+
⎡ ⎣ 0
nKmKA
JeqRa
⎤ ⎦u
y la correspondiente ecuaci´on de salida:
y=Cx+Du=
1 0
⎡ ⎣ x1
x2 ⎤
⎦+ [0]u (3.22)
A tal resultado tambi´en se puede llegar si aplic´aramos la t´ecnica del jacobiano.
El programa C3rpta.m determina la respuesta (la posici´on angularθ) del modelo no lineal de segundo orden y de los modelos lineales continuo y discreto derivados de este modelo. Para fines de an´alisis se asume que la se˜nal de entradaues de 1.4 voltios, que BL = Bg y que el efector final es una esfera de masa mh y de radio rh. En esta
situaci´on:
Jh =
2 5mhr
2
h+mh(L+rh)2
0 50 100 150 0
0.2 0.4 0.6 0.8
y(t) NO LINEAL [rad]
0 50 100 150
0 2 4 6
y(t) LINEAL [rad]
0 50 100 150
0 2 4 6
y(k) LINEAL [rad]
Tiempo en segundos
Figura 3.3: Respuestas de los modelos no lineal, lineal continuo y lineal discreto del brazo rob´otico a una entradau escal´on de magnitud 1.4 voltios.
3.2.
Proceso: Tanque de Agua
Tabla 3.2: Par´ametros y variables del proceso tanque de agua.
S´ımbolo Descripci´on Valor Unid.
dS Di´ametro del tanque 0.25 m
S Secci´on circular del tanque 0.041 m2
H Nivel del agua en estado estable 0.2 m
H Nivel del agua m
V Volumen nominal del tanque (V =SH) 0.0082 m3
h Nivel perturbacional del agua: h=H−H m
Q Flujo de agua en estado estable 0.16 m3/h
Qi Flujo de agua de entrada al tanque m3/s
Qi Flujo de entrada en estado estable 0.16 m3/h
qi Flujo perturbacional del agua: qi =Qi−Qi m3/s
Qo Flujo de agua de salida del tanque m3/s
qo Flujo perturbacional a la salida: qo =Qo−Qo m3/s
Rh Resistencia hidr´aulica del tanque: Rh =H/Q¯ 2700 s/m2
g Aceleraci´on de la gravedad 9.81 m/s2
ρ Densidad del agua 1000 kg/m3
do Di´ametro del orificio de salida 0.0127 m
Ao Secci´on del orificio de salida 0.000126 m2
Av Secci´on de la vena contracta m2
Cc Coeficiente de correcci´on entre Ao y Av 0.6 a 1
Cv Coeficiente de correcci´on por p´erdidas 0.8 a 0.99
Cd Coeficiente de descarga:Cd=CvCc 0.5
a Factor de flujo turbulento: a=CdAO
√
2g 0.00028 m2.5/s
Cp Calor espec´ıfico del agua 4186.8 kg KJ
Ct Capacitancia t´ermica del tanque: Ct=ρSHCp 27633 K/W
Rt Resistencia t´ermica del tanque: Rt = C1
pρQ 0.0054 K/W
Θa Temperatura del ambiente 27.0 oC
Θo Temperatura en el tanque en estado estable 28.5 oC
Θo Temperatura del agua de salida oC
θo Temperatura perturbacional: θo = Θo−Θo oC
Φi Calor entregado por la resistencia el´ectrica W
Φi Calor entregado en estado estable 1540 W
ΦT Calor del agua en el tanque W
Φo Calor que toma el flujo de salida W
Φs Calor que se libera al exterior: Φs = ΘoR−tΘa W
Figura 3.4: Proceso tanque de agua.
Modelo Lineal del Proceso Nivel
El volumen de agua acumulado en el tanque se modela como:
Sdh dt =S
˙
h=qi−qo (3.23)
Considerando un flujo laminar de salida:
qo =
h Rh
(3.24)
donde la resistencia hidr´aulica Rh se calcula de la relaci´on:
Rh =
H
Q (3.25)
Entonces, la ecuaci´on de estado del proceso nivel toma la forma:
˙
h=− 1
SRh
h+ 1
S qi (3.26)
y su funci´on de transferencia resulta:
h(s)
qi(s)
= Rh
SRhs+ 1
(3.27)
Determinaci´on Experimental de Rh
La v´alvula de control empleada para regular la entrada de agua al tanque es del tipo VXN015F250, con di´ametro nominal DN15, conexi´on G1B y actuador mot´orico. La abertura m´axima se obtiene alimentando con 10 V al actuador, la cual corresponde a un flujo de 0.4 m3/h, de acuerdo al manual del fabricante. La m´ınima abertura, con 0 V, corresponde a un flujo de 0 m3/h. Esto significa que para una abertura de 1 V el flujo que pasa por la v´alvula es de 1/90000 m3/s.
Asumiendo una variaci´on lineal entre el flujo Qi que pasa por la v´alvula y la
alturaH del tanque, se realiz´o el siguiente experimento. Con una abertura de v´alvula para 4 V (0.16 m3/h), se abri´o convenientemente la v´alvula de descarga hasta lograr una altura estable de 0.12 m. Luego, con una abertura de v´alvula para 6 V (0.24 m3/h), se sigui´o abriendo la v´alvula de descarga hasta lograr una altura de 0.18 m. Empleando la relaci´on (3.25), la resistencia hidr´aulica para cada punto result´o aproximadamente
Rt = 2700 s/m2. Se asume tambi´en que los valores estables de H y Qi son H = 0.12
m yQ = 0.16 m3/h.
Modelo Lineal del Proceso Temperatura
El calor en el interior del tanque se modela aproximadamente como:
Ct
dθo
dt = Φi−Φo (3.28)
donde:
Φo =Cpρ Q θo (3.29)
Por consiguiente, la ecuaci´on de estado del proceso temperatura resulta: ˙
θo =−
1
RtCt
θo+
1
Ct
Φi (3.30)
donde la capacitancia t´ermica Ct y la resistencia t´ermica Rt se calculan de:
Ct =ρSHCp Rt =
1
CpρQ
(3.31)
La funci´on de transferencia del proceso temperatura toma la forma:
θo(s)
Φi(s)
= Rt
CtRts+ 1
(3.32)
Modelo No Lineal del Proceso Tanque de Agua
El volumen de agua acumulado en el tanque se modela como:
SdH dt =S
˙
H=Qi−Qo (3.33)
donde, para orificios circulares peque˜nos, se puede formular [11]:
Qo =CdAo
2gh =a√h; a =CdAo
2g (3.34)
Se sabe adem´as que [11]:
Cd=CvCc; 0.8 ≤Cv ≤0.99; 0.6≤Cc ≤1 (3.35)
Para nuestro estudio tomaremos Cd =0.5. De (3.33) se obtiene la primera ecuaci´on de
estado:
˙
H =−a
S √
H+ 1
SQi (3.36)
Por otro lado, el balance de energ´ıa t´ermica dentro del tanque se formula:
ΦT =−Φo−Φs+ Φc+ Φi (3.37)
donde:
ΦT = SρCp
Q2o a2
dΘo
dt =SρCpH dΘo
dt (3.38)
Φo = CpρΘoQo=CpρaΘo
√
H (3.39)
Φs =
Θo−Θa
Rt
(3.40)
Φc = CpρΘiQi (3.41)
La segunda ecuaci´on de estado se obtiene despejando dΘo
dt = ˙Θo de (3.37):
˙ Θo=−
a S Θo √ H − 1
SρCpRt
Θo
H +
Θa
SρCpRt
1 H + Θi A Qi h + 1 SρCp Φi H (3.42)
Para linealizar el proceso tanque emplearemos la t´ecnica del Jacobiano. Para ello se definen los siguientes vectores de estado y de control:
X=
⎡ ⎣ X1
⎤ ⎦=
⎡ ⎣ H
⎤
⎦; X˙ =
⎡ ⎣ X˙1
˙
⎤ ⎦=
⎡ ⎣ f1
⎤
⎦; U=
⎡ ⎣ U1
⎤ ⎦=
⎡ ⎣ Qi
⎤
de modo tal que (3.36) y (3.42) toman la forma:
˙
X1 =−a
S
X1+ 1
SX1 =f1 (3.44)
˙
X2 =−a
S X2 √
X1 −
1
SρCpRt
X2 X1 +
θa
SρCpRt
1
X1 + θi
S U1 X1 +
1
SρCp
U2
X1 =f2 (3.45)
Tomando derivadas parciales y haciendo notar que una barra sobre una variable indica el valor estacionario de dicha variable, se obtiene:
∂f1
∂X1 = − a
2SX
1/2
1 =−
a
2SX1 ∂f1
∂X2 = 0 ∂f1
∂U1 =
1
S ∂f1
∂U2 = 0 ∂f2
∂X1 = a
2SX2X
−3/2
1 +
1
SρCpRt
X2X1−2− θa SρCpRt
X1−2− θi SU1X
−2
1 −
1
SρCp
U2X1−2
= a
2S X2
X31
+ 1
SρCpRt
X2 X21 −
θa
SρCpRt
1
X21 − θi
S U1 X21 −
1
SρCp
U2 X21 ∂f2
∂X2 = − a S
1
X1 −
1
SρCpRt
1
X1 ∂f2
∂U1 = θi
S
1
X1 ∂f2
∂U2 =
1
SρCp
1
X1 (3.46)
Luego el proceso tanque de agua linealizado queda como:
˙x=Ax+Bu (3.47)
donde:
A=
⎡ ⎣ ∂X∂f11
∂f1 ∂X2 ∂f2 ∂X1 ∂f2 ∂X2 ⎤
⎦ B=
⎡ ⎣ ∂U∂f11
∂f1 ∂U2 ∂f2 ∂U1 ∂f2 ∂U2 ⎤ ⎦
Determinaci´on de las Se˜nales de Control en Estado Estable
entre el voltaje que ingresa al actuador y el flujo de calor entregado, entonces para subir 1 V en dicho actuador (de 1 a 2 V o de 4 a 5 V por ejemplo), se debe de proporcionar 7700/4 = 1925 W.
El c´alculo de las matrices A y B requiere conocer los valores de Qi = U1 y Φi =U2. Para ello, experimentalmente se mantuvo en el tanque una altura deH= 0.11
m a una temperatura de 27.5oC. Luego, se subi´o en 1 V al actuador (se increment´o el
CAP´
ITULO 4
IMPLEMENTACI ´
ON EN TIEMPO REAL
4.1.
Estructura en Tiempo Real
La estructura en tiempo real mostrada en la figura 4.1 se emplea para la imple-mentaci´on del sistema de control de posici´on de un brazo rob´otico de 1GDL y para el control del tanque de agua (control de temperatura m´as control de nivel).
Figura 4.1: Estructura del sistema de control en tiempo real empleado.
4.2.
El Sistema de Control del Brazo Rob´
otico de 1GDL
La figura 4.2 muestra La estructura en tiempo real para controlar la posici´on angular del proceso brazo rob´otico de 1GDL. El sistema de control requiere la medici´on de la posici´on angular, la cual se logra gracias al sensor de posici´on en cuadratura (“encoder”) que posee el servomotor D.C. en su eje. La se˜nal medida ingresa por uno de los dos contadores que posee la tarjeta PCI 6229, ubicado en sus terminales PFI (Programmable Function I/O). La se˜nal medida se procesa en la PC empleando LabVIEW. El detalle de la programaci´on del contador se puede ver en los programas en tiempo real para controlar la posici´on del brazo rob´otico. Tales programas se encuentran en el CD adjunto a este trabajo.
Figura 4.2: Sistema de control en tiempo real para el brazo rob´otico de 1 GDL.
4.2.1. Generaci´on de la se˜nal PWM
La se˜nal PWM se genera por software. Para ello se emplea el microcontrolador PIC 16f877 de Microchip. La sigla PIC (Peripheral Interface Controller) significa que tal dispositivo es un controlador de la interfaz perif´erica. El generador de PWM, cuyo diagrama de flujo se muestra en la figura 4.3, genera pulsos de ancho diverso, en con-cordancia con la se˜nal generada por el algoritmo de control. Tal se˜nal de control puede variar en el rango de - 2.5 a 0 V para giro antihorario del servomotor, y de 0 a 2.5 V para giro horario. Esto significa que la posici´on (por ende la velocidad) del servomotor var´ıa de acuerdo a la magnitud del ancho del pulso generado.
Para que el PIC 16f877 trabaje con rangos positivos, mediante LabVIEW, el rango de - 2.5 a 0 V se convierte en uno de 0 a 2.5 V, mientras que el rango de 0 a 2.5 V se convierte en otro de 2.5 a 5 V (ver figura 4.4). De este modo, las se˜nales de control en el rango de 0 a 5 V ingresan al PIC 16f877 por el pin RAO, tal como se muestra en la figura 4.5. Estas se˜nales se convierten en pulsos PWM que operan a una frecuencia aproximada de 7.8 kHz, que luego de pasar por el amplificador en H, obtienen el nivel adecuado de potencia para conmutar el giro del motor tal como se explica en la siguiente secci´on. La subsecci´on A.2 muestra el c´odigo en lenguaje ensamblador del programa para generar las se˜nales PWM, mientras que la figura 4.5 muestra el diagrama circuital para realizar la placa del generador de pulsos PWM empleando ORCAD.
4.2.2. El Amplificador de Potencia
El Circuito Amplificador
Figura 4.3: Diagrama de flujo para la generaci´on de los pulsos PWM.
Figura 4.4: Rangos de trabajo en el PIC 16f877.