Identificación Paramétrica de Una Planta de Primer Orden Por Mínimos Cuadrados
Identificación Paramétrica de Una Planta de Primer Orden Por Mínimos Cuadrados
Identificación Paramétrica de Una Planta de Primer Orden Por Mínimos Cuadrados
Control Automatico
Instituto Tecnológico y de Estudios
Superiores de Monterrey
Campus Tampico
Identificación paramétrica de
sistemas usando Mínimos
Cuadrados
Metodología/Diseño ..........................................................................................................................4
Simulaciones ......................................................................................................................................7
Conclusiones ......................................................................................................................................9
Página 2
Objetivos
Implementar un código de interfaz capaz de recolectar los datos de la evolución de un
proceso de 1er orden ante una entrada escalón.
Registrar la respuesta en velocidad de un motor de corriente directa ante una entrada
escalón.
Utilizar el algoritmo de mínimos cuadrados para llevar a cabo la identificación de la
función de transferencia de la velocidad de un motor de corriente directa.
La teoría de control es clara sobre la forma en la que los polos de un sistema en lazo cerrado se
pueden colocar para obtener una respuesta transitoria adecuada. Esto será siempre y cuando el
modelo matemático del proceso sea confiable. Nuestro controlador entonces será tan acertado
como acertada sea la identificación del proceso que se quiere controlar.
Marco Teórico
El método de mínimos cuadrados es una aproximación estadística para encontrar una función que
describa satisfactoriamente un conjunto de datos experimentales. La intención de este método
estadístico es que se disminuya la función de pérdida, es decir, la varianza. Por eso se le conoce
como mínimos cuadrados, se busca la mínima diferencia cuadrada.
Tomando en cuenta que el método de los mínimos cuadrados consiste en ajustar una recta a
valores dispersos, necesitamos conocer las características de la recta, la pendiente y su ordenada
al origen, de la cual necesitamos estimar los valores de la siguiente ecuación:
(1)
(2)
Esto se logra aplicando el siguiente teorema, que puede ser leído con más detalle en la bibliografía
(3)
(4)
Despejando, se obtiene la ecuación de la curva que se va a aproximar como:
Página 3
(5)
Para aplicar esto, primero se debe decidir el orden del sistema a modelar para definir y con ello
darle forma a las ecuaciones (4) y (5) para la aplicación específica definida. Una vez hecho este
paso, se definen los valores máximos m,n y d.
Posteriormente, con los datos obtenidos acomodados como (6), se define la matriz Φ como se
muestra en (7) y se aplica el teorema (3) para obtener un resultado como el mostrado en (8).
(6)
(7)
(8)
Metodología/Diseño
Utilizando el VI de la práctica pasada para generar un PWM y el driver construido con un
optoacoplador y un transistor, se tomaron datos en un archivo txt con una alimentación de 5v a un
escalón de 50% con 10ms de tiempo de muestreo. Estos datos graficados en MATLAB se aprecian
en la siguiente figura.
Página 4
Luego se definió que la planta a controlar, la velocidad de un motor DC, es un sistema de primer
orden. Además, considerando el retenedor de orden cero, la función de transferencia para una
planta de primer orden queda definida como:
(9)
De manera que solo habrá un coeficiente a y uno b en (5) y la matriz Φ definida en (7) tendrá
solamente 2 columnas.
El procesamiento de los datos se llevó en MATLAB, mismo que está anexo al final de este trabajo.
Primeramente, los datos del txt se introdujeron a como una matriz y Luego, se modificó aplico el
terema (8) para obtener la función de transferencia de nuestra planta. Obteniendo a=0.9246 y
b=1.052.La función de transferencia queda definida como:
(10)
Página 5
Código comentado & Diagrama a bloques
Entrada
PWM en Salida Analógica
Driver Motor DC Tacogenerador Analógica de la
Labview de la DAQ
DAQ
1 Este conjunto de VI’s abre un nuevo archivo txt y le da nombre, el cable verde que conecta con
11 y 12 da el path del archivo creado en este paso.
2 Este DAQ asisitant configurado como entrada analógica de voltaje RSE del tacogenerador que
representa la velocidad.
3 En este VI se convierte el arreglo de datos a string. La constante %.3f es el formato de datos,
esto es float con 3 decimales.
4 Espera de 10 ms que representa el tiempo de muestro.
5 Este control manipula el Ciclo de Trabajo desde el Panel Frontal.
6 El switch controla el encendido/apagado del PWM.
7 Se compara el estado del switch (6), si la condición es verdadera la salida es la del control (5) y
Página 6
si es falsa la salida es 0.
8 Convertidor de número double escalar a string.
9 <Espacio en blanco intencional>
10 Se concatenan los datos separados por un TAB, en primer lugar la magnitud de la salida del
PWM y luego la entrada de la DAQ (2).
11 Se escribe la información en el archivo definido en el (1).
12 Se cierra el archivo abierto una vez que se detiene el VI.
13 Se genera una señal cuadrada con amplitud y offset constante 2.5 , para que varíe de 0 a 5.
14 Gráfica de la salida del PWM.
15 Salida de voltaje por el canal de salida analógica de voltaje de la DAQ.
Nótese que el VI 1 donde se define la ruta del archivo donde se va a grabar y el VI 12 donde se
cierra el archivo, están afuera del while loop. Lo que esté dentro de éste se ejecutará cada 10 ms,
tomando datos de la entrada y escribiendo datos a la salida. Los VI’s 1 y 12 están acomodados así
para que se ejecuten una sola vez estas instrucciones y se guarde todo en un solo archivo.
Simulaciones
La función de transferencia se graficó en MATLAB y comparó con la gráfica generada de los datos
experimentales, el resultado se puede observar en la siguiente gráfica:
Componente Modelo
R1 10 Ω
R2 3k9 Ω
Página 7
R3 270k Ω
Q1 4N28
Q2 TIP 122
Resultados comentados
Con el PWM de LabView se generó un voltaje promedio de alimentación del motor DC para variar
su velocidad. Es importante en este paso de caracterización tener el PWM como referencia del
sistema en lazo abierto para que sea considerado el ciclo de trabajo en la caracterización.
En los datos obtenidos, una vez graficados, se puede observar mucho ruido. Este fenómeno es
inherente al sistema porque hay mucha vibración mecánica que afecta la señal. Se debe de tener
mucho cuidado de que esta señal no exceda los 10 V para evitar dañar la DAQ.
El resultado fue satisfactorio, pues se obtuvieron datos experimentales en los que claramente se
puede apreciar el momento en que se inicia la entrada escalón y cuando finaliza. Esto es
importante para solamente tomar la parte de los datos que contiene la información de los
parámetros de la planta. En base a esta observación se decidió posteriormente truncar las 300
muestras a 140, que es el momento en que el sistema ya se ha estabilizado, con el fin de saber si
se podía disminuir la diferencia apreciable gráficamente entre datos experimentales y modelo
matemático. Los resultados se muestran más abajo como la función de transferencia (10) y 2
Página 8
gráficos. En ellos se observa que el comportamiento en estado transitorio es más cercano a los
datos experimentales, aunque el comportamiento en estado estable difiere.
(11)
Conclusiones
La caracterización paramétrica por mínimos cuadrados nos da una mejor aproximación que los
métodos gráficos siempre y cuando se seleccione correctamente el subconjunto de datos
adecuado del total de datos muestreados. Además, es importante hacer correctamente la
consideración del orden de la planta y su discretización para que el modelo obtenido sea útil.
Trabajos citados
Lopez Hurtado, I. (2010). Control Engineering Lab Notes.
Página 9
ANEXO: Script de MATLAB
%% Entrada
%Consideramos los datos de entrada y salida de un sistema ante una
entrada escalon de la siguiente forma.
Nota, los datos fueron truncados para no desperdiciar espacio, la matriz
original contiene 300 muestras
e=[
50 0.000
50 0.307
50 0.711
50 1.03
50 1.048
50 1.724
50 1.43
50 2.099
50 2.464
50 2.36
50 2.693
50 2.878
50 3.02
50 3.45
50 3.455
50 3.691
50 3.776
50 3.897
50 4.24
50 4.151
50 4.45
50 4.61
50 4.613
50 4.694
50 4.943
50 4.953
50 5.341
50 5.227
50 5.279
50 5.412
50 5.648
50 5.271
50 5.566
50 5.777
50 5.858
50 5.773
50 6.121
50 5.961
50 6.151
50 6.28
50 6.45
50 6.374
50 6.533
50 6.204
50 6.512
50 6.158
50 6.137
Página 10
50 6.295
50 6.435
50 6.2
50 6.643
50 6.775
50 6.4
50 6.49
50 6.585
50 6.742
50 6.627
50 6.307
50 6.457
50 6.564
50 6.612
50 6.784
50 6.654
50 6.957
50 6.478
50 6.764
50 6.897
50 7.245
50 6.901
50 6.981
50 7.176
];
e(:,1)=.5;
theta=((phi'*phi)^(-1))*(phi'*y);
%% Graficando
t=0:.01:2.99; %Vector que define el tiempo que
duró la prueba con intervalos de tiempo TS
plot(t,e(1:300,2),'R');figure(gcf) %Gráfica de datos experimentales
Página 11
hold on %Para esperar la siguiente
instrucción y que las dos gráficas estén en la misma figura
step(0.5*disc_sys,t) %Entrada escalón de magnitud 0.5
al sistema definido en el bloque anterior
Página 12