Professional Documents
Culture Documents
Gua 6 1
Facultad: Ingeniera.
Escuela: Electrnica.
Asignatura: Control Digital.
Lugar de ejecucin: Instrumentacin y Control (Edificio
3, 2da planta)
Objetivos especficos
Materiales y equipos
1 Computadora con los siguientes software instalados: MATLAB R2008a con Control
system toolbox, MPLAB X IDE v1.85, XC8 y LibreOffice Calc o Microsoft Excel.
1 Fuente de alimentacin de +/- 15 VCD [SO3538-8D]
1 Referencia de voltaje [SO3536-5A].
1 Elemento PT1 (Delay Line) [SO3536-6C]
1 Amplificador de potencia [SO3536-7Q]
1 Sistema controlado de temperatura [SO3536-8T]
2 Controladores proporcionales [SO3536-5T].
1 Graficador X-Y Y-t (PLOTTER).
1 Pluma para el graficador
2 Hojas de papel milimetrado (El estudiante debe traerlas).
1 Multmetro
1 Microcontrolador PIC 18F4550
1 Programador USB PICkit 2
19 Puentes
1 Switch
4 Cables de Conexin
9 Alambres de telefona
1 Pinza
1 Cortadora
2 Control Digital. Gua 6
Introduccin terica
z z c
G z = K d Ec 1
z z p
El polo zp debe ser un valor real dentro del crculo unitario. Para un adelanto de fase, el cero es
mayor que el polo (zc > zp) y Kd es mayor que 1.
Generalmente para el diseo del adelanto de fase , el cero (zo) del compensador se ubica cerca
de la ubicacin de uno de los polos de la planta para la cancelacin polo-cero. El polo (zp) del
compensador se ubicar a la izquierda del cero de modo que el lugar de races se mueva a la
izquierda.
La ubicacin de ambos depender de los requerimientos de diseo que se requieran como
tiempo de subida, tiempo de asentamiento y sobreimpulso.
a) Declarar variables
b) Configurar los perifricos del PIC: ADC y PWM
c) Tomar muestra de la salida
d) Escalar la muestra
e) Clcular el error (e)
f) Calcular el dato de salida del controlador: y = K*e - K*zc*e0 + zp*y0
g) Escalar el dato de salida del controlador
Control Digital. Gua 6 3
Este Toolbox con el que cuenta MATLAB y que esta dentro de Control system toolbox construye
modelos matemticos de sistemas dinmicos basndose en los datos medidos de la entrada y
salida, provee funciones, aplicaciones de identificacin del sistema y bloques de Simulink para
poder trabajar con el modelo.
Se pueden usar tanto datos de entrada y salida en el dominio del tiempo como en el dominio
de la frecuencia para identificar las funciones de transferencia, los modelos del proceso o el
espacio de estados tanto en tiempo continuo como tiempo discreto.
Procedimiento
//Programa principal
void main()
{
// Declaracin de variables locales
int valor;
int controlsignal;
float zc=0.9737; //cero del controlador
float zp=0.40;//polo del controlador
float k=230; //Ganancia del controlador
float SETPOINT=750.0;
float et; //seal de error
float eta=0.0; //seal de error anterior
float yta=0.0; //salida anterior
float yt; //salida actual
float xt;//valor del ADC escalado
float max=1000.0;
float min=0.0;
// Modificacin de la preescala del clock principal a 1Mhz
IRCF2=1;
IRCF1=0;
IRCF0=0;
//Configurar el puerto C Bit 2 como salida del PWM
TRISC2 = 0;
// Configurar el ADC AN0 con el ADCON
ADCON1=0x0E;
ADCON0=0X01;
ADCON2=0x80;
//Configurar los parmetros del PWM
//_,T2OUTPS3,T2OUTPS2,T2OUTPS1,T2OUTPS0,TMR2ON,T2CKPS1,T2CKPS0
//0 0 0 0 0 1 0 1
PR2=0x7C;//Configurar periodo para 500Hz de PWM
TMR2=0; //Limpiar el Timer2
T2CON=0x05; //Preescala de 4 y activacin del T2
//Configurar el registro CCP1CON, seleccion de modo PWM
//_,_,DCxB1,DCxB0,CCPxM3,CCPxM2,CCPxM1,CCPxM0
//0 0 0 0 1 1 0 0
CCP1CON=0x0C;//Bits 4 y 5 de CCP1CON en 0
Control Digital. Gua 6 5
while (1){
ConvertADC();
while (BusyADC()){}
valor = ReadADC();//leer el Canal analgico AN0
//Escala para obtener la entrada de 0 a 1000
xt = 1000.0*valor/1024.0;
et = SETPOINT-xt; //clculo del error
//clculo de la seal de respuesta del controlador
yt = (k*et)-(k*zc*eta)+(zp*yta);
if(yt>=max){
yt = max; //Estableciendo lmite superior de la respuesta
}
else {
if(yt<=min){
yt = min; //Si est la respuesta abajo de cero se ubica al mnimo
}
}
controlsignal=yt;
SetDCPWM1(controlsignal);
eta=et;
yta=yt;
_delay(100); //Retardo de 100ms para tomar siguiente muestra
}
}
Listado 1. Programa para controlador de adelanto de fase.
14. De la grfica obtenida, tome datos cada 5s de los valores de entrada y salida y genere
una tabla en LibreOffice Calc o Microsoft Excel como se muestra a continuacin:
15. Guarde el documento como .xls (si est en LibreOffice, en la opcin Guardar como
elija como tipo Microsoft Excel 97/2000/xp/2003(.xls))
16. Abra el programa MATLAB y del men File seleccione la opcin Import Data , le
pedir que indique el archivo de datos que quiere importar, seleccione el archivo .xls
que cre en el paso 14, luego se abrir la ventana que se muestra en la Figura 5, de esa
ventana seleccione la opcin Create Vectors from each column using column names y
presione el botn Finish
17. Con los vectores llamados como los nombres de las columnas de la hoja de clculo ya
almacenados en MATLAB, entre a la herramienta de identificacin del sistema digitando
el comando ident, se abrir una ventana como la que se muestra en la Figura 6.
8 Control Digital. Gua 6
18. En el men de Import Data seleccione la opcin Time domain data, se abrir la
ventana que se muestra en la Figura 7, ingrese el nombre del vector de los datos de
entrada y salida en Input y Output respectivamente, luego coloque un nombre para esos
datos en Data Name, coloque como Starting time el valor de 1 y en Sampling
interval el valor de 5 y luego presione el botn Import.
Control Digital. Gua 6 9
19. Como puede ver en la ventana de System Identification Tool (Figura 6) Los datos se han
importado, seleccione la opcin Time Plot, se desplegar una ventana con las grficas
de entrada y salida segn los datos ingresados .
20. En la ventana de System Identification Tool, seleccione del men Estimate la opcin
Process Model, se abre la ventana que se muestra en la Figura 8, ah se muestra la
funcin de transferencia de uno de los modelo propuestos, en esa ventana haga clic en
el botn Estimate para que el programa estime los valores de K, Tp1 y Td del modelo,
muestre estos valores e importe el modelo a la ventana de System Identification Tool.
21. En la ventana de System Identification Tool seleccione la opcin Model Plot para ver
como es la respuesta de este modelo y si es parecida a la respuesta de la planta, la
grfica del modelo estar en color azul y la de la planta en negro.
22. Regrese a la ventana Process Models (Figura 6), pruebe un segundo modelo, quite la
opcin Delay y coloque dos polos, de clic de nuevo en el botn Estimate para
obtener los datos del modelo. Se mostrarn los valores de K, Tp1 y Tp2 y la grfica del
modelo, observe que junto a la grfica en Best Fits, el programa ordena las grficas
poniendo primero la que ms se acerca al modelo.
23. Pruebe al menos tres modelos ms, para ver de nuevo las funciones de transferencia de
cada modelo, en la ventana de Process Model de doble clic en el nombre del modelo
para que se despliegue la informacin, anote las funciones de transferencia de los 5
modelos obtenidos.
24. Cierre todas las ventanas del System Identification Tool e ingrese a MATLAB la funcin
de transferencia del primer modelo que obtuvo, ya que su respuesta es la que mas se
parece a la de la planta real.
25. Debido a que esta versin de SISO tool no puede trabajar directamente con delay (exp -xs
), se debe hacer una aproximacin con una funcin pade de segundo orden como se
10 Control Digital. Gua 6
PARTE III. Diseo del Controlador por el mtodo del lugar de las races .
26. Abra la herramienta SISO tool Design de Matlab, digitando el comando sisotool, se
abrirn las ventanas que se muestra en la Figura 9 y 10.
27. En la ventana de Control and Estimation Tools Manager (Figura 9), se muestra como
ser la arquitectura del sistema de control a implementar, no se cambiar nada de esa
ventana, vuelva a la ventana SISO Design for SISO Design Task (Figura 10) y del men
File seleccione la opcin Import, se abrir una ventana para que importe los
modelos de cada bloque del sistema.
28. Seleccione G que es la planta y de clic en el botn Browse, se abrir otra ventana, ah
deje la opcin workspace, abajo le mostrar las variables en las que ha definido
funciones de transferencia en MATLAB, seleccione la que ingres del modelo de la
planta ya discretizada, presione el botn Import y luego el botn close para cerrar
esa ventana, de clic en ok en la otra ventana.
Control Digital. Gua 6 11
29. En la ventana de la Figura 10, se mostrar entre otras grficas la del lugar de las races,
que se muestra en color azul y los puntos rosados representan la posicin actual de los
polos del sistema a lazo cerrado, haga un zoom para ver mejor sus posiciones, luego
seleccione del men Analysis la opcin Response to step Command para ver la
respuesta de la planta a lazo cerrado, esta se muestra en azul y tambin se muestra una
grfica en verde que es la seal de control (Ver Figura 9).
30. De clic derecho sobre la grfica y en Systems, seleccione la opcin Plant G, para ver
la respuesta transitoria de la planta, esta aparece en una lnea discontinua azul y nos
servir para determinar si la respuesta del sistema a lazo cerrado ha mejorado o no esta
respuesta .
33. Ubique el cero mas a la derecha, de tal manera que el LGR del sistema pase por la lnea
de restriccin de diseo y la respuesta del sistema no se aleje de la respuesta transitoria
de la planta (Ver Figura 13).
34. Ahora mueva los polos de lazo cerrado para que se ubiquen sobre la lnea de restriccin
del diseo, como se muestra en la Figura 14, observe como esto afecta la respuesta del
sistema.
Figura 14. Ubicacin de polos del sistema a lazo cerrado en la linea de restriccin de diseo.
14 Control Digital. Gua 6
35. Ahora vamos a ubicar el polo a la izquierda del cero, aproximadamente 0.996, puede
moverlo hacia la izquierda o derecha y ver como afecta el LGR y la seal de control,
dejelo en la posicin inicial, donde afectaba poco al LGR y donde la seal de control no
era tan grande (Ver Figura 15.)
36. Para saber los valores exactos de la ganancia, polo y cero, ubiquese en la ventana
Control and Estimation Tools Manager, en la pestaa Compensator Editor, ver Figura
16, anote estos valores:
Figura 16. Valores de Ganancia, polo y cero del compensador por adelanto de fase.
37. Modifique el programa del controlador con estos nuevos valores y verifique si la
respuesta del sistema es similar a la que se obtuvo con las herramientas de MATLAB.
Control Digital. Gua 6 15
38. Es la respuesta parecida a la mostrada por la herramienta SISO Design Tool?, si hay
diferencia a que cree que pueda deberse?
39. Apague la fuente de alimentacin, cierre el MPLAB IDE, desconecte el cable USB de la
computadora y desarme el sistema.
Anlisis de Resultados
Presente los datos y las respuestas a las preguntas realizadas a lo largo del
procedimiento.
Investigacin Complementaria
Disee un controlador por retraso de fase para el sistem trmico utilizando el mtodo del
lugar de las races.
Bibliografa
Hoja de cotejo: 6
EVALUACION
APLICACIN DEL 70 Necesit mucha ayuda Necesit poca ayuda Realiz correctamente
CONOCIMIENTO para realizar el para realizar el el modelado de la
modelado de la planta. modelado de la planta. planta(15%)
(20%) (10%)
Realiz correctamente
Necesito mucha ayuda Necesito poca ayuda el diseo del
para realizar el diseo para realizar el diseo controlador(15%)
del controlador (20%) del controlador (10%)
realizo correctamente
Presentaba varios realizo correctamente las conexiones y el
errores en las las conexiones y tenia programa (15%)
conexiones o en el errores en el programa o
programa (20%) viceversa (25%) Sus conclusiones tienen
relacin coherente y
No concluy de forma Sus conclusiones tienen completa respecto a los
coherente a los relacin coherente a los resultados registrados
resultados registrados. resultados registrados (25%)
(10%) pero incompletas. (25%)
ACTITUD 2.5 Es un observador Participa ocasionalmente Participa propositiva e
pasivo. o lo hace integralmente en toda
constantemente pero sin la prctica.
coordinarse con su
compaero.
2.5 Es ordenado; pero no Hace un uso adecuado Hace un manejo
hace un uso adecuado de los recursos, respeta responsable y adecuado
de los recursos las pautas de seguridad; de los recursos
pero es desordenado. conforme a pautas de
seguridad e higiene.
TOTAL 100
%