You are on page 1of 34

39

3. CONTROL ADAPTATIVO

3.1. ESQUEMAS DEL CONTROL ADAPTATIVO

Los sistemas de Control Adaptativos tienen grandes capacidades de uso e


interesantes propiedades que varían de acuerdo al método de diseño. Los
esquemas básicos más utilizados se presentan a continuación: [22]

1) Programación de ganancias. En algunos sistemas existen variables


auxiliares que describen bien las características de la dinámica del
proceso. Si estas variables pueden ser medidas, estas variables pueden
ser usadas para cambiar los parámetros del regulador, es decir se utilizan
para acomodar los cambios en la ganancia del proceso. Este método de
programar ganancias se presenta en el esquema 3.1:

Figura 3.1 Sistema con programación de ganancias

El ajuste de ganancia es una compensación en lazo abierto y puede ser visto


como un sistema con control de realimentación en el cual el lazo de
realimentación es ajustado en compensación directa. Esto reduce los efectos de
la variación de parámetros.

2) Control Adaptativo con referencia a modelo (MRAC) Las especificaciones


del diseño del controlador son dadas en términos de un modelo de
referencia donde la salida deberá seguir a la referencia. El esquema que
representa el control MRAC se presenta en la figura 3.2:
40

Figura 3.2 Esquema del MRAC.

En este caso el modelo está en paralelo con el sistema. El regulador está


formado por dos lazos: un lazo interno de realimentación ordinaria compuesta por
la planta y el regulador y un lazo externo que ajusta los parámetros del regulador
de tal forma que el error entre la salida de la planta y, y la referencia ym sea
pequeño, convirtiendo al lazo externo en un lazo regulador.

El problema clave es determinar un mecanismo de ajuste tal que el sistema sea


estable y lleve el error a cero.

3) Regulador Auto-sintonisable. Este regulador está compuesto por dos lazos:


un lazo interno de realimentación ordinaria y un lazo externo que actualiza
los parámetros del proceso o del regulador por medio de identificación de
sistemas. El diagrama de bloques se muestra en la figura 3.3:

Figura 3.3 Esquema de un STR


41

La actualización de parámetros a través del lazo externo divide a este tipo de


regulador en dos métodos:

- Método Indirecto: el bloque de identificación de parámetros del lazo


externo sirve para actualizar los parámetros del proceso y los parámetros
del regulador se obtienen de la solución de la ley de control. Para que este
método sea adaptativo el algoritmo de identificación de sistemas debe
actualizar las medidas por medio de ponderación.

- Método directo: en este esquema la identificación sirve para actualizar los


parámetros del regulador y para el caso adaptativo se pondera
nuevamente el algoritmo de identificación.

Este regulador puede ser considerado como la automatización de la modelación y


del diseño del controlador, ya que el bloque de diseño es una solución on-line
para la actualización de los parámetros de la ley de control.

Para sistemas estocásticos existen dos métodos de diseño del controlador:


ubicación de polos y mínimo error de predicción.

En los controladores de mínimo error de predicción la ley de control resultante del


seguimiento y = y*(valor deseado acotado dentro de la zona de mínima varianza)
se obtiene igualando los ceros del modelo que representa al sistema (modelo
ARMAX) en lazo abierto a los polos en lazo cerrado que contiene planta y
controlador. Su ley de control es la siguiente: [23]
Lu k   Py k  My *k  d (3.1)

Donde L, P y M son vectores que dependen de las características del modelo del
sistema.

En el caso estocástico esta ley de control se puede obtener de minimizar la


varianza del error y - y*, y se la denomina control de mínima varianza.
42

Por otra parte, es posible asignar los polos del lazo cerrado a otra posición
diferente a la posición de los ceros en lazo abierto. La solución de esta igualdad
es el método de diseño de controladores por ubicación de polos.[24]

CONTROL ADAPTATIVO DE MÍNIMA VARIANZA

El control de mínima varianza minimiza el error y - y* basado en que reduciendo la


varianza de una variable dada, la señal de referencia y*, puede ser puesta a un
valor menos conservativo mientras se asegura que una porción dada de la salida
alcance un criterio de aceptación dado. [25]

Esta variable contiene información del proceso y para el método indirecto a


usarse los coeficientes de la ley de control son calculados de los parámetros de la
planta identificada, por lo tanto, se requiere de un algoritmo de identificación junto
con la ley de control.

3.2. ALGORITMO DE IDENTIFICACIÓN

EL método de Identificación de mínimos cuadrados extendido utiliza el error de


predicción sobre un modelo ARMAX donde la salida se expresa en forma de
regresiones
Yk  X k  d kº (3.2)
43

 a1 
 
 
a 
 n
 y1    y k 1   y k n u k d  u k d m  k   k n   b0 
     
Yk     X k d          ko    
y  y   y n u d  0    n   bm 
 n  1 u d m
 
 c1 
 
 
 cn 

De donde el superíndice o indica parámetros verdaderos

Yk  X k  d  kº  0

La igualdad se cumple debido a que el vector de parámetros está formado por los
parámetros verdaderos del sistema, pero en la estimación se tiene:
Yk  X k  d ˆk  E k (3.3)

Donde el vector de parámetros es un vector de parámetros estimados y aparece


un error en la ecuación conocido como Error de estimación Ek.

Las condiciones para una buena estimación son:


Ek  0
ˆk   ko

Es decir, el vector de parámetros estimado tiende al vector de parámetros


verdadero si el error de estimación tiende a cero.

Una forma de resolver este problema es minimizando el error mediante una


función de minimización o desempeño llamada función de costo que minimiza el
error cuadrático.

J  E kT  E k

Esta función pondera las medidas de la planta para estimar el vector de


parámetros. Sin embargo la manera de ponderar las medidas anteriores y las
actuales es igual, por lo que se modifica la función de costo a fin de ponderar de
44

manera exponencial las distintas muestras según el instante en que hayan sido
tomadas: [26]
J  E kT  Q  E k (3.4)

Donde:
1 0  0 
0   0 
Qk 
  
 k n 
0 0   

La matriz Q pondera las muestras dándole importancia a la historia con respecto


al último valor según el parámetro α llamado factor de olvido.

La solución de la ecuación 3.4 es el Método de Mínimos Cuadrados Extendido


para sistemas estocásticos.

El algoritmo de identificación se obtiene de la siguiente manera:

- Se reemplaza la ecuación 3.3 en la ecuación 3.4


J  Yk  X k  d ˆk   Q  Y
T
 X k  d ˆk
k 
J  YkT QYk  YkT QX k  d ˆk  X kT d ˆkT QYk  X kT d ˆkT QX k  d ˆk

- Se minimiza la función de costo, derivándola con respecto al vector de


información e igualando a cero.

dJ
 0  X kT d QYk  X kT d QYk  X kT d QX k  d ˆk  X kT d QX k  d ˆk  0
dˆ
 2 X kT d QYk  2 X kT d QX k  d ˆk  0
X T QY  X T QX ˆ
k d k k d k d k
45


ˆk  X kT d QX k  d 
1
 X kT d QYk (3.5)

La solución de esta ecuación es el algoritmo de mínimos cuadrados, en el


cual la información es ponderada en lotes. Para hacer al algoritmo recursivo
se realizan algunas modificaciones:

- Se añade una medición adicional:

 k   k 1  corrección
- entonces


ˆk 1  X kT d 1QX k  d 1 
1
X kT d 1QYk 1

ˆk  X kT d QX k  d 
1
X kT d QYk

1
  X k  d 1   Yk 1 
   
ˆ 
 T T

 k   X k  d 1 X k  d Q   X T
k  d 1 X T
k d 
Q  
  X  Y 
 k  d   k 

- Se plantea una matriz llamada matriz de covarianza:

sea 
Pk1  X kT d QX k  d 
y bk  X T
k d QYk

Entonces:
ˆk  Pk bk (3.6)

 Las matrices definidas como P y b pueden expresarse como:

Pk1  Pk11  X k  d  X kT d


bk  bk 1  X k  d  Yk

 Se realiza los siguientes reemplazos::


46

Pk1  Pk11  X k  d  X kT d


Pk Pk1  Pk Pk11  Pk X k  d X kT d
Pk Pk1  I
I  Pk Pk11  Pk X k  d X kT d
IPk 1  Pk Pk11 Pk 1  Pk X k  d X kT d Pk 1

Pk 1  Pk  Pk X k  d X kT d Pk 1 (3.6)


Pk 1  Pk  Pk X k  d X kT d Pk 1 (3.7)

 se multiplica la ecuación 3.6 por la matriz Xk-d:


Pk 1 X k d  Pk X k d  Pk X k d X kTd Pk 1 X k d
Pk 1 X k d  Pk X k d (  X kTd Pk 1 X k d )

Pk 1 X k  d (3.8)
Pk X k  d 
X T
k d Pk 1 X k  d

- se reemplaza la ecuación 3.8 en la ecuación 3.7:


Pk 1 X k  d X kT d Pk 1
Pk 1  Pk 
  X kT d Pk 1 X k  d

1 Pk 1 X k  d X kT d Pk 1  (3.9)
Pk   Pk 1  
   X kT d Pk 1 X k  d 

La ecuación 3.9 es la solución de la matriz de covarianza donde:


k=1,2,…

0<α<1, el valor a usarse esta entre 0.9 y1, mientras mas cercano a uno es el valor
de α, menor riesgo existe que el algoritmo no detecte las variaciones de la planta.

P(0): cualquier matriz positiva, se usa la matriz Identidad I acompañada de un


factor β>1 para aumentar la posibilidad de convergencia, mientras mayor es el
valor, mayor es la incertidumbre, β=10000
47

 se reemplaza la ecuación 3.9 en la ecuación 3.5


1 P X XT P 
ˆk   Pk 1  k 1 kTd k d k 1 bk 1  X k d Yk 
   X k d Pk 1 X k d 

1 P X XT P 1 Pk 1 X k d X kTd Pk 1
ˆk  Pk 1bk 1  Pk 1 X k d Yk  k 1 kTd k d k 1 bk 1  X k d Yk
   X k d Pk 1 X k d    X kTd Pk 1 X k d

- se reemplaza la ecuación 3.7 en la ecuación anterior:

1 P X XT P 
ˆk   Pk 1  k 1 kT d k  d k 1 bk 1  X k  d Yk 
   X k  d Pk 1 X k  d 
1 P X XT P 1 Pk 1 X k  d X kT d Pk 1
ˆk  Pk 1bk 1  Pk 1 X k  d Yk  k 1 kT d k  d k 1 bk 1  X k  d Yk
   X k  d Pk 1 X k  d    X kT d Pk 1 X k  d
1 1
ˆk  ˆk 1  Pk 1 X k  d Yk  Pk X k  d X kT d Pk 1bk 1  Pk X k  d X kT d Pk 1 X k  d Yk
 
1
 
ˆk  ˆk 1  X k  d Yk Pk 1  Pk X k  d X k  d Pk 1  Pk X k  d X kT d ˆk 1

T

ˆk  ˆk 1  Pk X k  d Yk  Pk X k  d X kT d ˆk 1


ˆk  ˆk 1  Pk X k  d Yk  X kT d ˆk 1  (3.10)

- Se define el error de predicción como:

 k  Yk  X kTdˆk 1 (3.11)

- Se reemplaza la ecuación 3.11 en la 3.10 y se obtiene:

ˆk  ˆk 1  Pk X k d  k (3.12)

Las ecuaciones 3.9 y 3.12 representan el algoritmo de Mínimos Cuadrados


Extendido recursivo que se usa en la estimación del proceso junto con el
algoritmo de control adaptivo.

En resumen el algoritmo de mínimos cuadrados extendido es:

ˆk  ˆk 1  Pk X k d  k
48

Donde la matriz de covarianza P es igual:

1  Pk 1 X k  d X kT d Pk 1 
Pk   Pk 1  
    X kT d Pk 1 X k  d 

El error de predicción se define como:

 k  Yk  X kTdˆk 1

3.3. ALGORITMO DE MÍNIMA VARIANZA

La idea básica detrás de un controlador de Mínima Varianza es formar una


predicción adaptativa de la salida del sistema y entonces determinar la entrada
igualando la salida predecida a la salida deseada.
Esta predicción se puede alcanzar usando el predictor estocástico óptimo “d-paso
adelante” [27]

3.3.1. PREDICTOR ESTOCÁSTICO ÓPTIMO

Para un modelo ARMAX de la forma:


A yk  Z  d Bu k  C k

Donde d es el máximo retardo propio del sistema y considerando que C es


asintóticamente estable, es decir tiene todas las raíces dentro del círculo unitario
para evitar la ausencia de controlabilidad; los polinomios A, B y C son:
A  1  a1 Z 1  a 2 Z 2  ...  a N Z  n
B  b0  b1 Z 1  b2 Z  2  ...  bn Z  m
C  1  c1 Z 1  c 2 Z  2  ...  c N Z  n

El ruido ω es de media cero y varianza σ²

E ( k )  0
E ( k2 )   2
49

El modelo se muestra en la figura 3.4:

Figura 3.4 Modelo ARMAX

Existe una predicción óptima d-paso adelante que satisface:


Cy ko d / k  Gy k  FB `u k (3.13)

C  1  c1 Z 1  c 2 Z 2  ...  c N Z  n
F  1  f 1 Z 1  f 2 Z  2  ...  f d 1 Z  d 1
G  g 0  g 1 Z 1  g 2 Z  2  ...  g n 1 Z  n 1

Donde G y F son los únicos polinomios que satisfacen la igualdad:


C  FA  Z  d G (3.14)

Esta igualdad asegura que los polos del sistema en lazo cerrado sean iguales a
los ceros del sistema en lazo abierto.[28]

La demostración del predictor es la siguiente:


 Se plantea la ecuación resultante de la ley de control para controladores de
mínimo error de predicción:
Lu k   Py k  My *k  d

Donde:
uk: señal de control al instante k
yk: señal de salida al instante k
y*k: valor deseado acotado dentro de la zona de mínima varianza.

 Se supone que el modelo que representa la planta es un modelo ARMAX


50

 Se multiplica la ecuación del modelo ARMAX con retardos por un polinomio


F:
FAy k  Z  d FBu k  FC k

 Se reemplaza FA de la ecuación 3.14


(C  Z  d G ) y k  Z  d FBu k  FC k

 Se multiplica por Z d
Cy k  d  Gy k  FBu k  FC k  d
C ( y k  d  F k  d )  FBu k  Gy k

 La salida óptima del sistema se define como

y k  d  F k  d  y kO d

Donde la media de la salida es:


 
E y kO d  E y k  d  F k  d 
E y  E y  E F 
O
k d k d k d

E F k  d  0
 
E y kO d  E y k  d 

Esto establece que la salida es óptima

Su varianza es:

   Ey  F 
E y kO d
2
k d k d
2

E y   E y   2 E y F  E F 
O 2 2
k d k d k d k d k d

E y   E y    f 
d 1
O 2 2 2
k d k d j
j 0

 La predicción óptima del modelo es:


Cy ko d / k  Gy k  FBu k
51

3.3.2. ALGORITMO DE MÍNIMA VARIANZA

En el caso estocástico la salida no puede ser predecida con exactitud. Sin


embargo tiene sentido escoger la entrada para minimizar la función de costo entre
la salida y, y el valor deseado acotado dentro de la zona de mínima varianza y*.

La función de costo es:


J k  d  E y k  d  y k*  d  2

Entonces se escoje u(k) como una función de y(k), y(k-1),…,u(k-1), u(k-2),… para
minimizar J(k+d).
Usando la propiedad de suavidad de espectativas condicionales que
establece:[29]

Si x es una variable ramdómica y f1 es una subfunción de f, la espereanza


condicional de x con respecto a f1 es una función que:
1. E{x│f1} es medible

Sus propiedades son:


1. si A =E{ x│f1}, B =E{ x│f1}, entonces A = B.
2. si x es medible con respecto a f1, entonces
E{ x│f1} = x
3. si fn-1, fn son subfunciones de f con fn-1 contenido en fn, entonces
E{E{ x│fn-1}│fn} = E{ x│fn-1}

La función de costo se escribre como:


J k  d  E E y k  d  y k*  d  u
2

Consecuentemente la minimización óptima es:

 
J k  d  E min E y k  d  y k*  d
U
 u
2

La minimización se obtiene así:


52

 se trabaja con el error:


1
 
2
J k  d  E  E y k  d  y kO d  y kO d  y k*  d 
 2 
 1
 2
 1
  1
  
2
J k  d  E  E y k  d  y kO d  E y k  d  y kO d y kO d  y k*  d  E y kO d  y k*  d 
2 2 2 

 como se mencionó antes:


 
E y kO d  E y k  d 

E y  y   E F    f 
d 1
O 2 2 2
k d k d k d j
j 0

Entonces:

 d 1 1

J k  d  E  f j  2  E y kO d  y k*  d  
2

 j 0 2 

 se reemplaza la salida óptima por la ecuación 3.13


 d 1 1  Gy k  FBu k  
2

J k d  E  f j   E 
2
 y k d  
*

 j  0 2  C  

 Se deriva con respecto a Uk:


d ( J k  d ) FB  Gy k  FBu k 
  y k*  d 
d (u ) C  C 

 Se minimiza el resultado igualando a cero:


FB  Gy k  FBu k 
  y k*  d   0
C  C 
Gy k  FBu k
 y k*  d  0
C

 se despeja uk:

uk 
1
FB

Cy k*  d  Gy k  (3.15)

La ecuación 3.15 representa la ley de control del algoritmo de mínima varianza, y


como se mencionó, para utilizarlo en un control adaptativo este debe trabajar
conjunto con el algoritmo de mínimos cuadrados extendido.
53

El sistema en lazo cerrado se obtiene reemplazando la ley de control en la


ecuación del modelo ARMAX
Z d B C
yk  uk  k
A A
Z d B  1 d
yk 
A  FB
Cy *

k d  Gy k  
 Z B
k
 A
 G  Z  d B  C  Z d B  * Z d B
1    y k    y k  d  k
 FB  A  FB  A  A

El diagrama de bloques de la función de transferencia en lazo cerrado se presenta


en la figura 3.5:

Figura 3.5 Sistema en lazo cerrado

Donde
 
rk  d  E Yk* d (3.16)

3.3.3. CONTROL DE SISTEMAS ESTOCÁSTICOS MULTIVARIABLES

El control de sistemas multivariables con controladores de mínimo error de


predicción es posible si se cumple lo siguiente:
Se describe el sistema como un modelo ARMAX de la forma:
A yk  Bu k  C k

Donde yk es n x 1, uk es m x 1 y ωk es n x 1.
54

Se consideran las siguientes suposiciones: [30]


1) por simplicidad el número de entradas m es igual al número de salidas n
para cumplir que:

2) la función de transferencia del sistema es linealmente independiente y


satisface:
det T(z)≠ 0 para todo z
3) además se asume que C tiene raíces dentro del círculo unitario.

Tomando en cuenta estas suposiciones se establece que asociado con la función


de transferencia T(z) existe una estructura general de retardos llamada matriz de
interacción ξ(z) tal que:
1)


 ( z )  H ( z ) diag Z  d 1...Z  dn 
1 
h ( z ) 
H ( z)   
21

 
 
hn1 ( z ) hn 2 ( z )  1

Donde hij(z) es divisible para z o es cero.

2)

lim
 ( z )T ( z )  K T no sin gular
z 

ξ(z) es un operador estable y es la generalización apropiada del retardo d del


caso escalar.

Entonces, se puede definir una variable para la salida como:

Y k   ( z )Yk

Por lo que la predicción óptima de esta variable de salida está dada por:

CY(ok / k )  GYk  FBU k


55

Donde:
C  I  c1Z 1  ...  cr1Z  r1
G  g 0  g1Z 1  ...  g r 2 Z r 2
FB  b0  fb1Z 1  ...  fbr 3 Z r 3

Si C(0)=I, entonces se asegura que b0 =KT.

La ley de control en este caso queda definida como:


U 1k  1  * Y 1k  U 1k 1  U 1k  n  
U 2   CYk  G    fb1    ... fbr 3  
 k  b0  Y 2 k  U 2 k 1  U 2 k  n   (3.17)

Para:

Yk   ( z )Yk
Yk*   ( z ) Yk*

Este resultado es la ley de control a implementarse considerando que las matrices


C, G y FB son diagonales para cumplir que b0 es siempre no singular.

3.4. IMPLEMENTACION EN TIEMPO REAL

Control en tiempo real es utilizar el computador como un controlador y conectarlo


a una planta física a través de dispositivos especiales de entrada y salida, donde
el proceso de cambiar parámetros y reconfigurar variaciones dinámicas se
realizan mientras una aplicación de tiempo real está corriendo.

Un sistema típico de control en tiempo real permite interactuar al usuario con el


mundo exterior a través de los siguientes componentes:
56

3.4.1. HARDWARE Y SOFTWARE DE ADQUISICIÓN DE DATOS Y


CONTROL

Es la interfase física de comunicación entre la planta y el computador, su principal


función es manejar señales de entrada y salida. El hardware de adquisición
puede ser interno y estar conectado a una ranura de expansión del mainboard o
estar conectado externamente a través de un cable.

El hardware de adquisición esta caracterizado por los subsistemas que posee,


donde un subsistema es un componente del hardware caracterizado por la tarea
que realiza. Subsistemas comunes incluyen:
 Entradas analógicas
 Salidas analógicas
 Entradas/salidas digitales
 Contador/ temporizador

Dispositivos que contienen al menos estos subsistemas se los denomina: “tarjetas


multifunción”.

Figura 3.6. Hardware de adquisición de datos

Subsistemas de entrada analógica.


Convierten señales analógicas a bits, típicamente son dispositivos multicanal con
una resolución entre 12 a 16 bits. La función de este subsistema es muestrear y
cuantizar una señal analógica usando uno o más canales. Una señal analógica
es continua en tiempo y amplitud dentro de sus límites predefinidos.

1) Señal: Un subsistema analógico presenta especificaciones para la señal,


puede convertir señales unipolares y bipolares y debe cumplir con un rango
57

de señal de entrada apropiado para que la conversión sea válida. La


configuración de la ganancia afecta a la precisión de la medición. Mientras
más alta es la ganancia, menor es la precisión y viceversa. Los rangos de
señal permitidos se muestran en la figura 3.7:

Figura 3.7. Rango de entrada de voltaje.

2) Muestreo: El muestreo toma una foto de la señal en tiempos discretos. Para


la mayoría de los conversores digitales, el muestreo es realizado por un
circuito S/H, que consiste en un buffer de señal seguido por un switch
electrónico conectado a un capacitor. El hardware de adquisición está
dividido en dos categorías basadas en como la señal es muestreada:

 Hardware de barrido (Scanning hardware), que muestrea las señales de


entrada secuencialmente, repitiendo el proceso para cada canal de
entrada usado. La mayoría de dispositivos, se incluye en este tipo las
tarjetas Nacional Instruments, utiliza un solo conversor A/D multiplexado
a las múltiples entradas, por lo que todos los canales usados no pueden
ser muestreados simultáneamente, existiendo un intervalo entre
muestras, razón por la cual la máxima tasa de muestreo de la tarjeta
solo se logra bajo condiciones ideales de muestreo de un solo canal. En
general, cuando se usa varios canales el máximo periodo de muestreo
está dado por la fórmula: [31]

máxima _ tasa _ de _ la _ tarjeta


máximo _ periodo _ de _ muestreo _ por _ canal 
numero _ de _ canales _ barridos
58

La relación entre el periodo de muestreo y el tiempo de separación entre


muestras se observa en la figura 3.8:

Figura 3.8. Periodo de muestreo vs. Intervalo de barrido

 Hardware simultaneo de S/H (SS/H hardware), muestrea todas las


señales al mismo tiempo y mantiene el valor hasta que el conversor A/D
las digitalice.

3) Cuantización: La cuantización es la conversión de una amplitud de precisión


infinita a un número binario. La cuantización divide el valor de la amplitud
en amplitudes Discretas.

4) Configuración de canales: Los canales de una tarjeta de adquisición pueden


estar configurados de dos maneras:

 Diferencial: existen dos cables asociados a la señal de entrada, uno


para la entrada de la señal y otro para el retorno de la misma, la
medición es la diferencia de voltaje entre los dos terminales, esta
configuración ayuda a eliminar el ruido

 Unipolar: un cable es asociado a cada entrada de señal. Este tipo de


entradas son más susceptibles al ruido que las entradas diferenciales.

5) Transferencia de datos: para transferir datos adquiridos desde el hardware


hacia la memoria se siguen los siguientes pasos:
59

 Los datos son almacenados en el buffer FIFO del hardware.


 Los datos almacenados en el buffer FIFO son transferidos a la memoria
usando interrupciones o DMA.

Subsistemas de salida analógica.


Convierten datos almacenados en el computador en señales analógicas con una
resolución de 12bits. Por lo general una tarjeta de adquisición presenta solo dos
canales de salida analógica, pero con la incorporación de hardware especial
puede convertirse en una salida multicanal.

Subsistemas digitales.
Son diseñados para manejar valores digitales de entrada y salida desde y hacia el
hardware. Estos valores son manejados como bits individuales, como líneas de
datos o como puertos de ocho líneas.

Subsistema de temporizadores/contadores C/T.


El subsistema C/T es usado para conteo de eventos, mediciones de frecuencia y
periodo y generación de tren de pulsos.

3.4.1.1. Transductores

Dispositivos que convierten un tipo de energía en otro, estos pueden ser usados
como sensores y/o actuadotes.

3.4.1.2. Hardware de acondicionamiento de señal

En la mayoría de los casos la señal debe ser manipulada (amplificada o filtrada)


para que sea compatible con los niveles permitidos por el hardware de adquisición
y control. Las características de un buen acondicionador de señal son:
 Amplificación
 Filtrado de señal
 Aislamiento eléctrico
 Multiplexado
60

 Fuentes de excitación.

3.4.1.3. El computador

Es el dispositivo que controlará a la planta conectada en línea. El computador


provee el procesador, un sistema de reloj, un bus de transferencia de datos,
memoria y espacio en disco para almacenamiento de datos.

3.4.1.4. Software

Es el interfase entre el proceso a controlar y el usuario pues permite intercambiar


información entre el computador y el hardware.

De acuerdo al tipo de hardware que se usa se puede enviar y recibir información,


pero además se envía información sobre configuración, como tasa de muestreo y
recibir información como mensajes de status y de error, desde el hardware. Este
intercambio de información es logrado mediante el uso de dos tipos de software:

 Software de los drivers


 Software de aplicación.

La relación entre los dos tipos de software, el hardware y el usuario se detalla en


la figura 3.9.

Software de los drivers


Este software permite acceder y controlar las capacidades del hardware, además
permite:
 Enviar y recibir datos a la tarjeta de adquisición.
 Controlar la tasa a la cual los datos son adquiridos.
 Integrar el hardware de adquisición a los recursos del computador como
interrupciones del procesador y memoria.
 Integrar el hardware de adquisición con el hardware de acondicionamiento
de señal.
61

 Acceder a múltiples subsistemas de una misma tarjeta de adquisición.


 Acceder a múltiples tarjetas de adquisición.

Figura 3.9. Flujo de información

Software de aplicación
Este tipo de software provee un manejo conveniente del software de los drivers,
además permite:
 Reportar información relevante de la adquisición.
 Generar eventos.
 Manejar datos almacenados en la memoria
 Acondicionar una señal
 Mostrar los datos adquiridos.

La unión de todos estos componentes forma un sistema de control en tiempo real


cuya arquitectura para el experimento de control adaptivo de un sistema de
tanques interconectados se observa en la figura 3.10:
62

Figura 3.10 Estructura de Control Adaptativo aplicada

Cada bloque corresponde a:

- PLANTA: modelo implementado en el computador analógico del prototipo.

- DAQ: tarjeta de adquisición National Instruments NI6025E. Se usará


canales analógicos de entrada y de salida y se trabajará con valores entre
0 y 10V.

- MCE IDENTIFICACIÓN: donde el algoritmo a utilizar para la modelación


es mínimos cuadrados extendido.

- LEY DE CONTROL: donde el algoritmo a utilizar es el controlador de


mínima varianza adaptativo basado en el predictor estocástico óptimo d-
63

paso Adelante. En este bloque se obtiene las señales de control de los


caudales de entrada.

La compatibilidad y manejo tanto del software como del hardware son


fundamentales para el control del proceso en el cual sus tareas básicas serán:
 Lectura y escritura de puertos,
 Cálculo de leyes de control.

El software base para la aplicación de control será MATLAB y se usará las


librerías matemáticas para los cálculos y el toolbox de adquisición de datos para
manejo de las tarjetas de adquisición.

Por otra parte, el hardware de adquisición será las tarjetas de adquisición National
Instruments, y se usará tanto canales analógicos como canales digitales.

3.4.2. TOOLBOX DE ADQUISICIÓN DE DATOS DE MATLAB [32]

El toolbox de adquisición de datos de MATLAB es un conjunto de funciones tipo


M-file y librerías de enlace dinámico (DLL) tipo MEX-file desarrolladas en el
ambiente computacional de MATLAB para la adquisición y tratamiento de datos
usando hardware de adquisición de datos.

Dentro de las principales características de la herramienta se encuentran:

 Una estructura para importar datos medidos a MATLAB usando un


computador compatible y hardware de adquisición.

 Soporte para subsistemas de entrada analógica (AI), salida analógica (AO)


y entradas y salidas digitales I/O (DIO).

 Soporte para estos tipos de dispositivos de hardware:


- Advantech boards con el uso de the Advantech Device Manager
64

- Modulos Agilent Technologies E1432A/33A/34A VXI


- Keithley boards con el uso de DriverLINX drivers
- Measurement Computing Corporation (ComputerBoards) boards
- * National Instruments boards con el uso de NI-DAQ software (excepto
SCXI)
- Puerto paralelo LPT1–LPT3
- Windows sound cards

 Adquisiciones de datos en línea, lo que permite control en tiempo real.

Adicionalmente MATLAB permite el uso del Data Adquisition toolbox Adaptor Kit
para desarrollar interfaces en casos donde el toolbox no tiene soporte para
determinado hardware.

Todo proyecto de adquisición de datos es considerado como un experiemento, en


el cual se deben cumplir ciertas tareas:

- Configuración del sistema: el primer paso en todo experimento consiste


en instalar el hardware de adquisición, el software de aplicación y los
drivers del hardware, y por último conectar sensores apropiados

- Calibración: una vez que hardware y software están instalados y los


sensores conectados se puede calibrar el hardware. Su calibración
consiste en introducir una señal conocida al sistema y grabar su salida, la
calibración puede ser realizada por el software del vendedor para la
mayoría de hardware.

- Varias versiones de prueba: debido al ruido que pueden introducir los


sensores, es aconsejable realizar varios experimentos con diferentes
configuraciones e incluso se puede incluir filtros anti-aliasing para evitar
ciertas componentes de frecuencia.
65

3.4.2.1. Componentes del toolbox

La información sobre el toolbox de adquisición de datos a emplear es:

ToolboxName: 'Data Acquisition Toolbox'


ToolboxVersion: '2.2 (R13)'
MATLABVersion: '6.5 (R13)'
InstalledAdaptors: {3x1 cell}

Tabla 3.1. Información de toolbox

El toolbox de adquisición de datos comprende tres componentes: las funciones M-


file, adquisición de datos y los drivers de comunicación del hardware. El flujo de
información a través de estos componentes se muestra en la figura 3.13:

Figura 3.13. Componentes del toolbox de adquisición de datos


66

La información consiste en:


 Property values: se puede controlar una aplicación de adquisición de datos
configurando property values. Esta es una característica del driver del
hardware para ser manipulado.

 Datos: se puede adquirir o enviar datos de un subsistema analógico así como


también transferir valores (1 o 0) entre MATLAB y un subsistema digital.

 Eventos: un evento puede ocurrir a cualquier momento o ser el resultado de


una llamada específica, siempre que se haya generado la configuración de las
propiedades.

3.4.2.1.1. Funciones M-file.

Para realizar cualquier tarea de aplicación de adquisición de datos, se utiliza


Funciones M-file desde MATLAB, las cuales permiten:
 crear objetos de la tarjeta que provee un enlace entre las capacidades del
hardware y el control de la aplicación.
 Adquirir o sacar datos.
 Configurar propiedades del driver.
 Evaluar el estado de la adquisición de datos y los recursos del hardware.

La información de un objeto específico utilizado en la aplicación de tiempo real


contiene lo siguiente:

AdaptorName: 'nidaq'
Bits: 12
Coupling: {'DC’}
DeviceName: 'PCI -6025E'
Differential IDs: [0 1 2 3 4 5 6 7]
Gains: [ 0.5 1 10 100]
ID: '1'
InputRanges: [4x2 double]
MaxSampleRate: 200000
67

MinSampleRate: 0.0060
NativeDataType: 'int16'
Polarity: {'Bipolar'}
SampleType: 'Scanning'
SingleEndedIDs: [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]
SubsystemType: 'AnalogInput'
TotalChannels: 16
VendorDriverDescription: 'National Instruments Data Adquisition Driver'
VendorDriverVersion: '6.9.2'

Tabla 3.2. Información de un objeto

El control de información a través de la creación de los objetos de la tarjeta es el


siguiente:

Adquisición de datos. Salida de datos


Crear un objeto AO = analogoutput('nidaq',1);

Añadir canales Addchannel (ai, 2:3); addchannel(ao,0:1);


AI.InputType='SingleEnded'
Configurar S ) set(AO,'SampleRate',100000);
propiedades Set (a ) Set(AO,'triggerType','manual');
Set(AI,'triggertype','manual');
Adquisición y start(AI) putdata(AO,[u1(i) u2(i)]);
salida de datos trigger(AI) start(AO)
data = getdata(AI); trigger(AO)
Limpiar Stop(AI) Stop(AO)

Tabla 3.3. Control de información

3.4.2.1.2 Dispositivo de transferencia de adquisición de datos

El dispositivo de transferencia de adquisición de datos es una librería de enlace


dinámico tipo MEX-file que:
68

 Almacena los objetos de la tarjeta y propiedades asociadas a determinada


aplicación de adquisición de datos.
 Controla la sincronización de los eventos.
 Controla el almacenamiento de los datos adquiridos o datos enviados en
cola.

La característica más importante del dispositivo de transferencia de adquisición es


que permite realizar otras tareas en MATLAB durante la adquisición, debido a que
el software y el dispositivo de transferencia de adquisición son asincrónicos.

3.4.2.1.3 Adaptor “Ni-daq”

Este tipo de Adaptor es utilizado para comunicación con dispositivos National


Instruments. Este Adaptor usa el driver NI-DAQ y almacena la información
usando memoria circular con llamadas directas.

La información del archivo de comunicación o adaptor para las tarjetas National


Instruments es:

AdaptorDllName: 'C:\MATLAB6p5\toolbox\daq\daq\private\mwnidaq.dll'
AdaptorDllVersion: 'Version 2.2 (R13) 28-Jun-2002'
AdaptorName: 'nidaq'
BoardNames: {'PCI-6025E'}
InstalledBoardIds: }
{'analoginput('nidaq',1)' 'analogoutput('nidaq',1)' 'digitalio('nidaq',1)'}
ObjectConstructorName:

Tabla 3.4. Información sobre adaptor NIDAQ


69

3.4.3 TARJETAS DE ADQUISICIÓN DE DATOS NATIONAL INSTRUMENTS.

Dentro de las características más importantes de las tarjetas National Instruments


para el experimento de adquisición de datos están:
 Rango de entrada ajustable, incluye un amplificador de ganancia
programable por software.
 Tipo de entrada puede ser: diferencial, unipolar y unipolar no referido
 Configuración de canales:
- Diferencial: National Instruments recomienda usar entradas
diferenciales en cualquiera de estas condiciones.
o señal de entrada de bajo nivel (menos de 1V)
o la longitud de los terminales de entrada es mayor a 10pies
o la señal de entrada requiere referencia a tierra separada o señal
de retorno.
o Los terminales de la señal cruzan un ambiente ruidoso.

- Unipolar: National Instruments recomienda usar entradas mono-modo


en cualquiera de estas condiciones.
o señal de entrada de alto nivel (mayor de 1V)
o la longitud de los terminales de entrada es menor a 10pies
o la señal de entrada comparte la referencia a tierra con otras
señales.
o Los terminales de la señal cruzan no un ambiente ruidoso

 Driver de comunicación de hardware. Toda tarjeta National Instruments


utiliza el driver NI-DAQ, con una versión apropiada para cada tipo de
tarjeta.

 Presenta hardware de barrido, por lo que la tasa de muestreo por canal esta
dada por la tasa máxima de la tarjeta dividida por el número de canales
utilizados.
70

 Soporta tipos y condiciones adicionales de disparo. Estas propiedades


están divididas en dos categorías: hardware de disparo digital y hardware
de disparo analógico. Estas propiedades están detalladas en la tabla 3.8.

 Tanto para tarjetas Nacional Instruments como para las tarjetas


Measurement Computing, el identificador de canal comienza en cero.
addchannel(ai,0:2)

Tabla 3.8. Hardware de disparo de las tarjetas National Instruments.

3.4.3.1 Serie E (6025E)

Los dispositivos National Instruments multifunción serie E son ideales para un


rango de aplicaciones que va desde registro continuo de datos de alta velocidad
hasta aplicaciones de control de señales de alto voltaje.
Dentro de las especificaciones más importantes están:
 Bus PCI o PXI modo maestro, esclavo
 16 entradas analógicas unipolares u 8 entradas diferenciales. Selección de
canales por software.
 resolución de entrada de 12 bits
71

 tasa máxima de muestreo de 200 kS/s


 rango de señal de entrada 1V seleccionado por software, de acuerdo a la
configuración de la entrada. Rango bipolar de entrada de ±500mV
 acoplamiento de entrada de DC.
 Tamaño de memoria FIFO de 512 muestras para NI 6025E.
 2 salidas analógicas de voltaje de ±10V y acoplamiento DC.
 resolución de salida de 12 bits.
 Tasa de salida de generación de ondas 1 kS/s cuando se usa un canal con
DMA (acceso directo a memoria).
 Rango de salida de ±10V.
 32 entradas/salidas digitales I/O con tecnología 5V/TTL para P0<0…7>,
P1<0…7>, P2<0…7> y P3<0…7>.
 2 contadores/temporizadores de 24 bits.
 Disparo digital compatible con 5V/TTL y respuesta mínima de 10nseg.
 Requerimientos de potencia de 0.7A
 Uso de cable SH68-68-EP
 Driver de comunicación NI-DAQ 7
 Funciona para sistemas operativos como: Windows 2000/NT/XP, Real-time
performance con LabVIEW y otros como Linux y Mac OS X.
Recomendada para software de aplicación LabVIEW, LabWindows/CVI,
Measurements Studio, VI logger. Además es compatible con Visual Basic,
C/C++ y C#

El programa usado para implementar el control de mínima varianza adaptativo en


tiempo real se muestra en el siguiente diagrama de flujo:

El archivo .m del programa de tiempo real se la se muestra en el anexo A.


72

Figura 3.14 Diagrama de flujo de


aplicación de tiempo real

You might also like