Você está na página 1de 8

INSTITUTO TECNOLGICO DE COSTA RICA

I SEMESTRE 2014
ESCUELA DE INGENIERIA EN ELECTRNICA
CURSO: EL-5409 LABORATORIO DE CONTROL AUTOMTICO
MEDIO: Proyecto corto 1
FECHA: 26 de febrero de 2014
PROF: Ing. Eduardo Interiano

PROYECTO CORTO 1
Tema: Obtencin del modelo emprico del sistema servo hps5131.

Figura 1: Esquema del sistema de posicin angular hps5131

Recursos: Planta hps5131 con motor CD de imn permanente. Computador con Matlab e ident
instalado. Osciloscopio Agilent InfiniiVision 2000X y un generador de seal capaz de
proporcionar seales seudoaleatorias de hasta 5 V de amplitud.

Descripcin del trabajo:

Debe utilizar el osciloscopio para capturar los datos de un experimento para obtener las
respuestas de posicin de un servomotor de CD ante estmulos seudoaleatorios de tensin de
armadura. Posteriormente debe utilizar la herramienta ident de Matlab para identificar y estimar
modelos adecuados para el motor y finalmente debe verificar los modelos as obtenidos.
Parte I: El experimento

Usando como referencia la figura 1:

Paso 1) Se sugiere ajustar las propiedades del osciloscopio como se muestra en la tabla 1. Ud.
puede modificar estos ajustes para adecuarlos a su experimento si es necesario.

Paso 2) Conecte un cable o puente entre el punto 1 y el punto 2, entrada del amplificador de
tensin de armadura y asegrese de que la perilla del amplificador se encuentra ajustada al valor
mximo de ganancia de 1.2 (totalmente girada hacia la derecha).

Paso 3) Conecte un generador de seales psudoaleatorias al punto 3. Note que el amplificador


acepta una entrada mxima de +/- 10V, aunque se utilizar una seal de solo +5V.

Paso 4) Conecte el canal 2 del osciloscopio, el cual se usar para medir la seal de entrada al
amplificador del servomotor, tambin al punto 3. Asegrese de ajustar el umbral de disparo a
unos +2V, flanco positivo del canal 2.

Paso 5) Asegrese de que el interruptor que controla la inercia, punto 4, est hacia la derecha (0).

Paso 6) Conecte una tensin de referencia, Uref, de 5 voltios al sensor de posicin angular
(potencimetro) en el punto 5.

Paso 7) Conecte el canal 1 del osciloscopio, con el que se medir la posicin, a la salida del
amplificador inversor de ganancia unitaria, punto 6. La ganancia del sensor de posicin angular
es K = -Uref/2 [V/rad].

Paso 8) Conecte las tierras del generador de seales, de Uref y del osciloscopio a un punto de
tierra del hps5131, punto 7.

Paso 9) Antes de iniciar cada medicin ajuste la posicin angular del servo a 45.

Paso 10) Con el generador pseudoaleatorio produzca una seal de excitacin de entrada, con
amplitud constante (5V) y duraciones en alto y en bajo variables, tal como se muestra en la figura
2 y mida con el osciloscopio. Repita el experimento tantas veces como crea conveniente hasta
obtener un oscilograma parecido al de la figura 2. Note que el canal 1 (POSICIN) est invertido
para compensar el signo negativo del amplificador del sensor de posicin.

Paso 11) Guarde los datos de su experimento en formato .CSV en una memoria flash USB y dele
un nombre descriptivo al archivo. NOTA: Si almacena varias mediciones puede utilizar la opcin
de auto-incremento del osciloscopio, que incrementar el dgito ndice para cada nuevo archivo
almacenado.

Laboratorio de Control Automtico Pg. 2


Proyecto corto 1
Tabla 1: Ajustes del osciloscopio
Funcin Propiedades Comentario
Ajustes
2 voltios por divisin. La seal de entrada (punto 3) puede
del canal
Punta de prueba 10:1 variar entre +/- 10V.
1
Ajustes La seal de salida tiene una ganancia
2 voltios por divisin.
del canal K = -Uref/2 [V/rad] y puede alcanzar
Punta de prueba 10:1
2 el valor de -Uref [V].
Barrido Para una duracin mxima de unos 2.5
0.25 segundo por divisin
horizontal segundos de experimento.
Retardo
Para lograr que el disparo se produzca al
del 1 segundo
inicio de la pantalla.
disparo
Disparo Modo nico, canal 2, flanco La excitacin del servo es un evento
de subida. nico.

Parte II: Estimacin y verificacin del modelo del servomotor

Objetivo: Estimar, a partir de los resultados experimentales de entrada-salida de la planta, el


modelo numrico de posicin de un servomotor de CD.

Figura 2: Captura de la entrada [V] y la posicin angular [rad] del sistema servomotor hps5131.
Note que el canal 1 est escalado por la ganancia K [V/rad] e invertido para contrarrestar el signo
negativo del amplificador del sensor de posicin angular (potencimetro).

Laboratorio de Control Automtico Pg. 3


Proyecto corto 1
Procedimiento:

NOTA 1: Antes de iniciar, opcionalmente puede ejecutar iddemo en Matlab, seleccione el tipo de
demostracin 1 y luego seleccione la demostracin de la interfaz grfica de usuario para
estimacin (opcin 1) o consulte [3], [4].

Identifique y estime, con ayuda de ident de Matlab, varios modelos de funcin de transferencia
para el servomotor CD (Servo(s)), seleccione el modelo con el mejor ajuste a los datos y valide
ese modelo seleccionado contra los datos experimentales.

NOTA 2: En el ejemplo aqu mostrado en las figuras 3 a 8 se utilizan y procesan datos


experimentales contenidos en el archivo llamado Servo10ms_lim_.1_pos.csv, que se encuentra
en la carpeta de la clase de laboratorio, www.ie.itcr.ac.cr/einteriano/control, adems all se
encuentra el video llamado EstimacionServo10ms_720P.mp4, el cual ejemplifica el
procedimiento seguido. Ud. debe utilizar los datos de su experimento.

NOTA 3: Antes de iniciar el procesamiento de los datos limpie el encabezado del archivo .CSV,
eliminando la fila de las unidades y renombrando las columnas con identificadores simblicos
adecuados tales como tiempo, para la primera columna; posicin, para la segunda columna y
entrada, para la tercera columna, si usa los canales como se indica en la tabla 1. En el ejemplo
mostrado se usaron unos nombres bastante crpticos, donde "sat0" es la entrada y "wgpr1" es la
salida de posicin angular del servo. De preferencia use un editor de texto simple para esta
labor, (el Notepad por ejemplo).

Tambin verifique la consistencia del separador decimal de sus datos con las herramientas a usar;
esto es, si las herramientas estn en ingls, el separador decimal debe ser punto (.); si estn en
espaol, el separador decimal debe ser coma (,).

Importe a Matlab los datos contenidos en el archivo .CSV guardado en la parte I; para ello, inicie
Matlab y en vaya al men File\Import Data, y luego oprima Open y luego Next, en la
siguiente ventana seleccione Create vectors , como se muestra en la figura 3 y luego oprima
Finish. Los datos estn ahora disponibles como vectores en el workspace de Matlab.

Figura 3: Importar datos en forma de vectores al workspace de Matlab.


Laboratorio de Control Automtico Pg. 4
Proyecto corto 1
Luego en el workspace de Matlab ejecute la orden ident; espere unos segundos y se abrir la
ventana del ident, en la cual debe seleccionar Import data\Time domain data , llene los
campos de la ventana con los datos correspondientes a su experimento: nombres de las variables
de entrada y salida , tiempo de inicio (0), tiempo de muestreo y otros como se muestra en la
figura 4 y oprima Import. Una vez hecho lo anterior puede cerrar esa ventana. NOTA: En su
caso, debe determinar el periodo de muestreo del vector de tiempo de su experimento, por
ejemplo: deltaT = tiempo(2) - tiempo(1). Asegrese que este periodo de muestreo sea constante,
y en Matlab use la orden format shortg para poder ver los datos en formato sin redondeos.

Figura 4: Ventana para importar datos al ident. Ponga los datos de su experimento.

Figura 5: Seleccin de dos rangos del total de datos del experimento ejemplo.

Laboratorio de Control Automtico Pg. 5


Proyecto corto 1
En este ejemplo, en la ventana del ident, figura 6, debe tener ahora un objeto, llamado
Servo10ms. Este objeto contiene todos los datos del experimento, el cual seccionaremos en dos
partes, una para estimar el modelo y otra para validar los datos. Usaremos para ello la operacin
Preprocess\Select range, que abrir una ventana en la cual con el ratn podemos crear un
rectngulo alrededor de los datos a seleccionar y luego oprimimos Insert; repitiendo para cada
rango a crear, como se muestra en la figura 5; al terminar de insertar los segmentos seleccionados
podemos cerrar esta ventana. Al finalizar debemos tener tres objetos en la ventana del ident, el
objeto original Servo10ms y dos ms que llamaremos Servo10mse y Servo10msv. Figura 6.

Arrastraremos y colocaremos el segundo objeto (Servo10mse, color verde) en la posicin


llamada Working Data y el tercer objeto (Servo10msv, color rojo) en la posicin llamada
Validation Data. Finalmente en la ventana del ident seleccionamos Estimate \Process
models y en esta ventana, ya que nuestro modelo presenta un comportamiento subamortiguado,
seleccionaremos la opcin de 2 polos subamortiguados y dejaremos la seleccin de retardo
(Delay) activada. Una vez hecho lo anterior oprimimos el botn Estimate, el cual har que se
calcule un modelo de segundo orden llamado P2DU que aparecer en la ventana del ident como
se muestra en la figura 6.

NOTA 4: En su caso, como puede observarse en la figura 2, el servomotor se comporta como un


sistema integrador, sin sobreimpulso y tal vez posee un pequeo retardo, lo que no es apreciable
a ojo en la imagen; as que es conveniente que pruebe modelos con y sin retardo; para ver cual
modelo se ajusta mejor. Note adems que la seal de posicin de la fig. 2 tiene un valor inicial,
adems est escalada y negada, (se ajust a 45 el sistema antes de iniciar el experimento y existe
una ganancia K = -Uref/2), por lo que es conveniente antes de procesar estos datos, eliminar el
valor inicial restando a todos los datos el promedio de varias muestras iniciales y al final tomar en
cuenta el factor de escala y el signo en la funcin de transferencia obtenida como modelo.

Figura 6: Ventana del ident con los objetos de experimento y los modelos obtenidos para el
ejemplo. Sus resultados sern diferentes!

Laboratorio de Control Automtico Pg. 6


Proyecto corto 1
Podemos tambin seleccionar otra forma de estimacin para nuestro modelo; por ejemplo
Estimate \Linear parametric models, en cuya ventana oprimimos Order selection, para que
calcule 10 modelos desde orden 1 a 10, y luego oprimimos Estimate. En la ventana de resultados
del estimador paramtrico ARX [1], [2] y [3], seleccionamos el segundo y tercer modelo, cuyas
varianzas de salida no explicada estn sumamente reducidas respecto al primer modelo y luego
oprimimos Insert, una vez para cada modelo. El resultado se muestra en la figura 6, donde estos
ltimos modelos, arx212 y arx221, aparecen al lado del modelo P2DU estimado antes.

Para validar nuestros modelos obtenidos, podemos comparar su salida ante el estmulo original
del experimento seleccionando la opcin Model output que nos presenta el porcentaje de
aproximacin entre nuestro modelo y la respuesta original como se muestra en la figura 7.

Como puede observarse en la figura 7, el modelo P2DU posee, para este caso, la mejor
aproximacin a los datos experimentales (97.53%), por lo que lo seleccionamos como nuestro
modelo. NOTA: En su experimento, para seleccionar su modelo final de entre los diferentes
modelos obtenidos, debe utilizar criterios de aproximacin y de complejidad, (la mejor
aproximacin en simulacin a los resultados experimentales; con la menor complejidad del
modelo y que ste llene las expectativas de la dinmica del modelo terico, si este existe).

Para exportar el modelo lo arrastramos hasta la posicin To workspace en la ventana del ident.
Luego en el workspace de Matlab, podemos extraer la funcin de transferencia de entrada-salida.
Para extraer la funcin de transferencia en versiones de Matlab anteriores a la v2008b, usamos la
sentencia modelo = zpk(P2DU,1); donde "modelo" es el nombre que le asignamos al resultado;
en versiones de Matlab ms recientes, usamos una variable intermedia, por ejemplo M, as: M =
zpk(P2DU); y luego extraemos el primer elemento del modelo con modelo = M(1).

Figura 7: Comparacin de modelos con Model output para el ejemplo.


Sus resultados sern diferentes!

Una verificacin del modelo obtenido se puede realizar tambin graficando, con la funcin plot
de Matlab, los resultados experimentales junto a resultados de simulacin producidos con la

Laboratorio de Control Automtico Pg. 7


Proyecto corto 1
funcin lsim. La figura 8 muestra esta comparacin realizada con las sentencias mostradas en el
recuadro a continuacin, que adems sirven para documentar la grfica:

y=lsim(modelo,sat0,tiempo)
plot(tiempo,sat0,tiempo,wgpr1,'r',tiempo,y,'g','LineWidth',2)
grid
title('Verificacindelarespuestadelmodelo')
xlabel('Tiempo[s]')
ylabel('ngulo')
legend('Entrada','Servo','P2DU')

Verificacin de la respuesta del modelo

Entrada
Servo
0.1 P2DU

0.08

0.06
ngulo

0.04

0.02

-0.02

-0.04
0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2
Tiempo [s]

Figura 8: Verificacin del modelo del servo de posicin angular utilizado en este ejemplo.
(Solo se muestran el primer segundo)

En otros casos, eventualmente, si el orden estimado para la planta es muy grande, ser necesario
reducirlo [4], cambiando polos y ceros no dominantes por sus ganancias estticas u otra forma
adecuada; por ejemplo con las funciones balreal y modred de Matlab.

Los resultados deben mostrarse al profesor durante la clase y la documentacin debe enviarse a
ms tardar el lunes 3 de marzo 2014, al correo electrnico einteriano@itcr.ac.cr, con todos los
documentos y archivos creados para resolver el problema.

Referencias

[1] http://www.ie.itcr.ac.cr/einteriano/control/Laboratorio/3.Models.pdf
[2] http://www.ie.itcr.ac.cr/einteriano/control/Laboratorio/3.6ModeladoEstocastico.pdf
[3] http://www.ie.itcr.ac.cr/einteriano/control/Laboratorio/Identificacion de sistemas.PDF
[4] http://www.ie.itcr.ac.cr/einteriano/control/Laboratorio/3.6.1EjemploModeladoEstocastico.pdf

EIS/eis
2014

Laboratorio de Control Automtico Pg. 8


Proyecto corto 1

Você também pode gostar