viernes, 14 de diciembre de 2007

Stepper Motor - Motor Paso - paso

MOTOR DE PASOS

En numerosas ocasiones es necesario convertir la energía eléctrica en energía mecánica, esto se puede lograr, por ejemplo, usando los motores de corriente continua. Pero cuando lo deseado es posicionamiento con un elevado grado de exactitud y/o una muy buena regulación de la velocidad, se puede contar con una gran solución: utilizar un motor paso a paso.
El desarrollo de la presente investigación tiene por objeto dar a conocer los principios básicos de funcionamiento de este tipo de motores, sus características constructivas y las formas básicas de hacer funcionar los motores por medio de dispositivos microcontroladores.
Sus principales aplicaciones se pueden encontrar en robótica, tecnología aeroespacial, control de discos duros, flexibles, unidades de CD-ROM o de DVD e impresoras, en sistemas informáticos, manipulación y posicionamiento de herramientas y piezas en general.

Los motores paso a paso son ideales para la construcción de mecanismos en donde se requieren movimientos muy precisos.
La característica principal de estos motores es el hecho de poder moverlos un paso a la vez por cada pulso que se le aplique. Este paso puede variar desde 90° hasta pequeños movimientos de tan solo 1.8°, es decir, que se necesitarán 4 pasos en el primer caso (90°) y 200 para el segundo caso (1.8°), para completar un giro completo de 360°.
Estos motores poseen la habilidad de poder quedar enclavados en una posición o bien totalmente libres. Si una o más de sus bobinas están energizadas, el motor estará enclavado en la posición correspondiente y por el contrario quedará completamente libre si no circula corriente por ninguna de sus bobinas.
El motor paso a paso está constituido esencialmente por dos partes: a) Una fija llamada "estator", construida a base de cavidades en las que van depositadas las bobinas que excitadas convenientemente formarán los polos norte-sur de forma que se cree un campo magnético giratorio. b) Una móvil, llamada "rotor" construida mediante un imán permanente, con el mismo número de pares de polos, que el contenido en una sección de la bobina del estator; este conjunto va montado sobre un eje soportado por dos cojinetes que le permiten girar libremente.
Imagen del Rotor

Imagen de un estator de 4 bobinas

Si por el medio que sea, conseguimos excitar el estator creando los polos N-S, y hacemos variar dicha excitación de modo que el campo magnético formado efectúe un movimiento giratorio, la respuesta del rotor será seguir el movimiento de dicho campo, produciéndose de este modo el giro del motor.
Puede decirse por tanto que un motor paso a paso es un elemento que transforma impulsos eléctricos en movimientos de giro controlados, ya que podremos hacer girar al motor en el sentido que deseemos y el número de vueltas y grados que necesitemos.

PRINCIPIO DE FUNCIONAMIENTO
Los motores eléctricos, en general, basan su funcionamiento en las fuerzas ejercidas por un campo electromagnético y creadas al hacer circular una corriente eléctrica a través de una o varias bobinas. Si dicha bobina, generalmente circular y denominada estator, se mantiene en una posición mecánica fija y en su interior, bajo la influencia del campo electromagnético, se coloca otra bobina, llamada rotor, recorrida por una corriente y capaz de girar sobre su eje, esta última tenderá a buscas la posición de equilibrio magnético, es decir, orientará sus polos NORTE-SUR hacia los polos SUR-NORTE del estator, respectivamente. Cuando el rotor alcanza esta posición de equilibrio, el estator cambia la orientación de sus polos, aquel tratará de buscar la nueva posición de equilibrio; manteniendo dicha situación de manera continuada, se conseguirá un movimiento giratorio y continuo del rotor y a la vez la transformación de una energía eléctrica en otra mecánica en forma de movimiento circular.
Aún basado en el mismo fenómeno, el principio de funcionamiento de los motores de corriente continua, los motores paso a paso son más sencillos si cabe, que cualquier otro tipo de motor eléctrico.
La figura 1 intenta ilustrar el modo de funcionamiento de un motor paso a paso, suponemos que las bobinas L1 como L2 poseen un núcleo de hierro dulce capaz de imantarse cuando dichas bobinas sean recorridas por una corriente eléctrica. Por otra parte el imán M puede girar libremente sobre el eje de sujeción central.
Figura 1. Principio de funcionamiento de un motor paso a paso

Inicialmente, sin aplicar ninguna corriente a las bobinas (que también reciben el nombre de fases) y con M en una posición cualquiera, el imán permanecerá en reposo si no se somete a una fuerza externa.
Si se hace circula corriente por ambas fases como se muestra en la Figura 1(a), se crearán dos polos magnéticos NORTE en la parte interna, bajo cuya influencia M se desplazará hasta la posición indicada en dicha figura.
Si invertimos la polaridad de la corriente que circula por L1 se obtendrá la situación magnética indicada en la Figura 1(b) y M se verá desplazado hasta la nueva posición de equilibrio, es decir, ha girado 90 grados en sentido contrario a las agujas del reloj.
Invirtiendo ahora la polaridad de la corriente en L2, se llega a la situación de la Figura 1 (c) habiendo girado M otros 90 grados. Si, por fin, invertimos de nuevo el sentido de la corriente en L1, M girará otros 90 grados y se habrá obtenido una revolución completa de dicho imán en cuatro pasos de 90 grados.
Por tanto, si se mantiene la secuencia de excitación expuesta para L1 y L2 y dichas corrientes son aplicadas en forma de pulsos, el rotor avanzará pasos de 90 grados por cada pulso aplicado.
Por lo tanto se puede decir que un motor paso a paso es un dispositivo electromecánico que convierte impulsos eléctricos en un movimiento rotacional constante y finito dependiendo de las características propias del motor.
El modelo de motor paso a paso que hemos analizado, recibe el nombre de bipolar ya que, para obtener la secuencia completa, se requiere disponer de corrientes de dos polaridades, presentando tal circunstancia un inconveniente importante a la hora de diseñar el circuito que controle el motor. Una forma de paliar este inconveniente es la representada en la Figura 2, obteniéndose un motor unipolar de cuatro fases, puesto que la corriente circula por las bobinas en un único sentido.
Si inicialmente se aplica la corriente a L1 y L2 cerrando los interruptores S1 y S2, se generarán dos polos NORTE que atraerán al polo SUR de M hasta encontrar la posición de equilibrio entre ambos como puede verse en la Figura 2(a). Si se abre posteriormente S1 y se cierra S3, por la nueva distribución de polos magnéticos, M evoluciona hasta la situación representada en la Figura 2(b).
Figura 2.- Principio básico de un motor unipolar de cuatro fases

Siguiendo la secuencia representada en la Figuras 2 (c) y (d), de la misma forma se obtienen avances del rotor de 90 grados habiendo conseguido, como en el motor bipolar de dos fases, hacer que el rotor avance pasos de 90 grados por la acción de impulsos eléctricos de excitación de cada una de las bobinas. En uno y otro caso, el movimiento obtenido ha sido en sentido contrario al de las agujas del reloj; ahora bien, si las secuencias de excitación se generan en orden inverso, el rotor girará en sentido contrario, por lo que fácilmente podemos deducir que el sentido de giro en los motores paso a paso es reversible en función de la secuencia de excitación y, por tanto, se puede hacer avanzar o retroceder al motor un número determinado de pasos según las necesidades.
El modelo de motor paso a paso estudiado, salvo su valor didáctico, no ofrece mayor atractivo desde el punto de vista práctico, precisamente por la amplitud de sus avances angulares.
Una forma de conseguir motores Paso a Paso de paso mas reducido, es la de aumentar el número de bobinas del estator, pero ello llevaría a un aumento del coste y del volumen y a pérdidas muy considerable en el rendimiento del motor, por lo que esta situación no es viable. Hasta ahora y para conseguir la solución más idónea, se recurre a la mecanización de los núcleos de las bobinas y el rotor en forma de hendiduras o dientes, creándose así micropolos magnéticos, tantos como dientes y estableciendo las situaciones de equilibrio magnéticos con avances angulares mucho menores, siendo posible conseguir motores de hasta de 500 pasos.

Bobinado de un motor paso a paso de una disquetera, en el que pueden apreciarse bobinados, el imán permanente se ha desmontado para poder ver el interior del motor que está montado sobre la propia placa de circuito impreso

RESULTADOS:

*Fallidos


El primer inconveniente fue con el diagrama del circuito ya que los pines que debian alimentar no concordaban con los mencionados en otros controladores de motor paso a paso asi mismo usan los mismos Ckts. integrados. (Luego nos fuimos dando cuenta a medida que simulamos el circuito en PROTEUS)

Esto podemos entender como La inexperiencia que tenemos en trabajar con motores paso a paso nos llevo a utilizar un motor inadecuado(el diagrama fue para un bipolar y usamos unipolares) para observar mejor el rendimiento del controlador .

Usamos un controlador El L297 o el integrado que cumple la función de regulación corriente a suministrar al motor no se encontraba en óptimas condiciones ya que compramos "de segunda" por lo cual, el motor paso a paso ofrece menor paso y velocidad.

Cabe destacar que, el controlador funciono en un inicio en tiempo de pruebas, mas no en la presentacion del proyecto, lo cual hace dudar netamente de los componentes ya que la logica que usamos en un inicio estuvo bien aplicada y simulada respectivamente.

Recomendaciones:

* A los siguientes grupos de trabajos de esta índole, se les recomienda no usar componentes usados, pues no garantizan la continuidad de su trabajo, y fijarse bien al jugar con los nivles de tension.

Simulación en Proteus:

*He aquí el diagrama del circuito simulado exitosamente en PROTEUS:

Debido a que no se pudo adjuntar el archivo del circuito en PROTEUS, adjunto un video que muestra la simulación del mismo.


Diseño de un Compensador de Adelanto-Atraso en Matlab

Diseño de un Compensador de Adelanto Atraso


Programación en Matlab – Script:


%---------------------------------------------
%Diseño de un Compensador de Atraso - Adelanto
%Ogata K, Ingeniería de Control Moderna
%Tercera Edicion
%Ejemplo 9.3, pag. 632
%---------------------------------------------

close all;clear all;clc;

fprintf('-------------------------------------------\n')
fprintf('Diseño de un Compensador de Atraso-Adelanto\n')
fprintf('Ogata K, Ingeniería de Control Moderna\n')
fprintf('Tercera Edicion\n')
fprintf('Ejemplo 9.3, pag. 632\n')
fprintf('-------------------------------------------\n')

%Requerimientos del sistemas
kv=10; MFD=50;MGD=50;

%Planta
den1=[1 0];
den2=[1 1];
den3=[1 2];
den4=conv(den1,den2);
den=conv(den4,den3);
kva=1/polyval(deconv(den,[1 0]),0);
k=kv/kva;
num=[k];
fprintf('\n**Planta del Sistema**\n')
planta=tf(num,den)

%Diseño del COMPENSADOR DE ATRASO DE FASE

%Diagrama de bode de la planta
w0=logspace(-1,2,500);
[Gan0,Fase0]=bode(planta,w0);
GandB0=20*log10(Gan0);

%Hallamos el margen de fase y ganancia
w1=logspace(-1,2,500);
[Gan1,Fase1]=bode(planta,w1);
Gandb1=20*log10(Gan1);

%Margende fase
indice1=find(Gandb1<=0);
wcg1=w1(indice1(1));
MF=Fase1(indice1(1))+180;

%Margende ganancia
indice2=find(Fase1<=-180);
wcf1=w1(indice2(1));
MG=-Gandb1(indice2(1));

%Margen deseado del compensador
Fadic1=-180+MFD+12;

%Frecuencia del compensador
indice3=find(Fase1<=Fadic1);
wgcomp=w1(indice3(1));

%Hallamos la ganancia de fase a esa frecuencia
Ganf=Gandb1(indice3(1));

%el compensador agrega
beta=10^(Ganf/20);

%Para asegurar una frecuencia alta del compensador se hace
T=5/wgcomp;

z1comp=1/T;
p1comp=1/(beta*T);
k1comp=k/beta;
numcomp=k1comp*[1 z1comp];
dencomp=[1 p1comp];
Comp1=tf(numcomp,dencomp);

Scomp1=series(planta,Comp1);

%COMPENSADOR DE ADELANTO DE FASE

%Planta + Compensador de Atraso
w=logspace(-4,1,500);
[Gan2,Fase2]=bode(Scomp1,w);
Gandb2=20*log10(Gan2);

%Margen de fase
VecIndice1=find(Gandb2<=0);
Indice1=VecIndice1(1);
Wogan=w(Indice1);
MF2=Fase2(Indice1)+180;

%Fase adicional
Fadic2=MFD-MF2;

%Se calcula el factor de atenuacion Alfa
alfa=(1-sin(Fadic2*pi/180))/(1+sin(Fadic2*pi/180));

%Nuevo cruce de ganancia

%Ganancia adicionada por el compensador

r=20*log10(1/sqrt(alfa));
VecIndice2=find(Gandb2<=-r);
Indice2=VecIndice2(1);
Wm=w(Indice2);

T2=1/[sqrt(alfa)*Wm ];

%parametros del compensador

Z2comp=1/T2;
P2comp=1/(alfa*T2);
k2comp=1/alfa;
numcomp2=k2comp*[1 Z2comp];
dencomp2=[1 P2comp];
Comp2=tf(numcomp2,dencomp2);

%Planta Compensada
fprintf('\n**Planta Compensada**\n')
plantacompensada=series(Scomp1,Comp2)

%Respuesta en el Tiempo
figure(1);step(feedback(planta,1)),hold on, grid on
step(feedback(plantacompensada,1))
title('Respuesta en el Tiempo')
legend('Planta Sin Compensador','Planta Compensada')

%Respuesta en Frecuencia
figure(2);bode(planta),hold on, grid on
bode(plantacompensada)
title('Respuesta en Frecuencia')
legend('Planta Sin Compensador','Planta Compensada')

Resultados de la compilación del programa:


Gráficas resultantes


Grafica Nº 1
Grafica Nº 2

Diseño de un Compensador de Atraso- Matlab

Diseño de un Compensador de Atraso

Programación en Matlab – Script:

%---------------------------------------------
%Diseño de un Compensador de Atraso
%Ogata K, Ingeniería de Control Moderna
%Tercera Edicion
%Ejemplo 9.2, pag. 623
%---------------------------------------------

close all;clear all;clc;

fprintf('-------------------------------------------\n')
fprintf('Diseño de un Compensador de Atraso\n')
fprintf('Ogata K, Ingeniería de Control Moderna\n')
fprintf('Tercera Edicion\n')
fprintf('Ejemplo 9.2, pag. 623\n')
fprintf('-------------------------------------------\n')

%Requerimientos del sistemas
kv=5; MF1=40;MG1=10;

%Planta
den1=[1 0];
den2=[1 1];
den3=[.5 1];
den4=conv(den1,den2);
den=conv(den4,den3);
kva=1/polyval(deconv(den,[1 0]),0);
k=kv/kva
num=[k];
fprintf('\n**Planta del Sistema**\n')
planta=tf(num,den)

%Se halla los vectores de Ganancia y Fase (fase)
w0=logspace(-2,2,500);
[Gan,Fase]=bode(num,den,w0);
GandB=20*log10(Gan);

%Marge de fase
indice=find(GandB<=0);
wcgan=w0(indice(1));
MF=Fase(indice(1))+180;

%Margende ganancia
indice2=find(Fase<=-180);
wcfase=w0(indice2(1));
MG=-GandB(indice2(1));

%Angulo de fase
Fadic=-180+MF1+5;

%Buscamos la frecuencia de corte wgc que tenga esa fase
indice3=find(Fase<=Fadic);
wgc=w0(indice3(1));

%Ganancia de fase a esa frecuencia de corte
GanW=GandB(indice3(1));

%Atenuación del compensador
beta=10^(GanW/20);

%Para asegurar una frecuencia alta del compensador se hace
T=5/wgc;

%Parámetros del Compensador
zc=1/T;
pc=1/(beta*T);
kc=k/beta;
numc=kc*[1 zc];
denc=[1 pc];
fprintf('\n**Compensador Diseñado**\n')
Comp=tf(numc,denc)

%Planta Compensada
fprintf('\n**Planta Compensada**\n')
plantacompensada=series(planta,Comp)

%Gráfica de Bode del Compensador en atraso

%Respuesta en el Tiempo
figure(1);step(feedback(planta,1)),hold on, grid on
step(feedback(plantacompensada,1))
title('Respuesta en el Tiempo')
legend('Planta Sin Compensador','Planta Compensada')

%Respuesta en Frecuencia
figure(2);bode(planta),hold on, grid on
bode(plantacompensada)
title('Respuesta en Frecuencia')
legend('Planta Sin Compensador','Planta Compensada')


Resultados de la compilación del programa:



Gráficas resultantes

Grafica Nº 1


Grafica Nº 2

miércoles, 12 de diciembre de 2007

El Péndulo Invertido

El Péndulo Invertido







Los péndulos invertidos son una familia de artefactos que constituyen un banco de pruebas muy completo e interesante para la ingeniería de control No Lineal. El más estudiado de los miembros de esta familia es el denominado control invertido sobre el vehículo, al que corrientemente se denomina como carro.







Durante los años 60 la demostración consistía en un péndulo o varilla que gira libremente por uno de sus extremos mediante una articulación situada sobre un carro que se mueve sobre una grúa rectilínea horizontal bajo la acción de una fuerza F, que es la acción de control con la que se pretende actuar sobre la posición de la varilla. El funcionamiento de este sistema consiste en situar de forma manual el péndulo en la posición vertical invertida, soltarlo luego y que forma autónoma, realimentando su posición, el péndulo continuase en la posición invertida mediante la adecuada actuación sobre el carro.
El problema de control, así considerado, es local y su interés residía en que se trataba de estabilizar una posición inestable en bucle abierto lo que, como se sabe, constituye un problema de control muy notable. Este problema por su carácter local, puede resolverse con métodos lineales y así se ha hecho desde los años 60. Es importante destacar que en sistemas lineales, la estabilización en bucle cerrado de un punto inestable en bucle abierto, no ofrece particulares problemas; éstos aparecen cuando el sistema es no lineal. El inconveniente con esta versión del péndulo, a la hora de plantear globales, reside en que el recorrido del carro está acotado, por lo que si se alcanza uno de los extremos del soporte horizontal el sistema deja de funcionar.


Condiciones del problema y requerimientos de diseño
El carrito con un péndulo invertido, se muestra abajo, es "empujado" con una fuerza impulsiva, F. Determinemos las ecuaciones dinámicas de movimiento del sistema, y linealicemos cerca del ángulo del péndulo, theta = Pi (en otras palabras, asumamos que péndulo no se aparta más que unos pocos grados de la vertical, elegida en un ángulo de Pi). Encontremos un controlador para satisfacer todos los requerimientos de diseño dados arriba.
Para este ejemplo, asumamos que




Para las secciones de PID, root locus, y respuesta en frecuencia de este problema sólo estamos interesados en el control de la posición del péndulo; esto es porque las técnicas usadas en estos tutoriales solo pueden aplicarse a sistema una-entrada-una-salida (SISO). Por lo tanto, ninguno de los criterios de diseño lidian con la posición del carro. En estas secciones asumimos que el sistema comienza en el equilibrio, y experimenta una fuerza impulsiva de 1N. El péndulo debe volver a su posición vertical dentro de los 5 segundos, y nunca moverse más que 0.05 radianes fuera de la vertical.
Los requerimientos de diseño para este sistema son:




....Tiempo de establecimiento menor que 5 segundos.
....Ángulo del Péndulo nunca mayor que 0.05 radianes de la vertical.




Sin embargo, con el método de espacio de estado seremos más capaces de manejar un sistema multi-salida. Por lo tanto, para esta sección del ejemplo del Péndulo Invertido intentaremos controlar tanto el ángulo del péndulo cuanto la posición del carro. Para hacer más desafiante el diseño hemos de aplicar una entrada escalón al carrito. El carrito debe lograr estar en su posición deseada dentro de los 5 segundos y tener un tiempo de subida menor que 0.5 segundos. Además limitaremos el sobrepico del péndulo a 20 grados (0.35 radianes), y también deberá establecerse antes de los 5 segundos.



Los requerimientos de diseño para el ejemplo en espacio de estado del Péndulo Invertido son:
....Tiempo de establecimiento de x y theta menor que 5 segundos.
....Tiempo de Subida para x menor que 0.5 segundos.
....Sobrepico de theta menor que 20 grados (0.35 radianes).




Análisis de las fuerzas y sistema de ecuaciones
Abajo figuran los dos diagramas de cuerpo libre del sistema.



Sumando las fuerzas en el diagrama de cuerpo libre del carro en la dirección horizontal, se obtiene la siguiente ecuación del movimiento:




Note que también puede sumar las fuerzas en la dirección vertical, pero no se ganará ninguna información útil.
Sumando las fuerzas en el diagrama de cuerpo libre del péndulo en la dirección horizontal, puede obtener an ecuación para N:




Si sustituye esta ecuación en la primera ecuación, se obtiene la primera ecuación del movimiento de este sistema:para obtener la segunda ecuación de movimiento, sume las fuerzas perpendiculares al péndulo. Si resuelve el sistema a lo largo de este eje se ahorrará un montón de álgebra. Debería obtener la siguiente ecuación:
Para librarse de los términos P y N en la ecuación anterior, sume los momentos sobre el centroide del péndulo para obtener la siguiente ecuación:
Combinando estas dos últimas ecuaciones, se obtiene la segunda ecuación dinámica:
Como Matlab solo puede trabajar con funciones lineales, este conjunto de ecuaciones debería ser linealizado alrededor de theta = Pi. Asuma que theta = Pi + ø(ø representa un pequeño ángulo en la dirección vertical). Por lo tanto, cos(theta) = -1, sin(theta) = -ø, y (d(theta)/dt)^2 =0. Luego de la linealización las dos ecuaciones de movimiento serán :



(donde u representa la entrada)

1. Función de Transferencia
Para obtener analíticamente la función de transferencia de las ecuaciones del sistema linealizado , debemos tomar primero la transformada de Laplace de las ecuaciones del sistema. Las transformadas de Laplace son:



NOTE: Cuando se halla la función de transferencia se considera condiciones iniciales nulas.


Como como estamos mirando al ángulo Phi como la salida de interés, resuelva la primera ecuación para X(s), y entonces sustitúyala en la segunda ecuación:
Re-ordenando, la función de transferencia es:


donde,


De la función de transferencia de arriba puede verse que hay un polo y un cero en el origen. Estos puede ser cancelados y la función de transferencia será:
2. Espacio de Estado
Luego de un poco de álgebra, las linealizadas ecuaciones del sistema pueden también representarse en la forma espacio de estado:

La matriz C es de 2 por 4, porque la posición del carro y la posición del péndulo son parte de la salida. Para el problema de diseño en espacio de estado estaremos controlando un sistema de salida múltiple por lo que observaremos la posición del carro en el primer renglón de salida y la del péndulo en el segundo renglón.


Representación en Matlab y respuesta a lazo abierto
1. Función de Transferencia

La función de transferencia hallada a partir de las transformadas de Laplace puede ser establecidas con Matlab ingresando el numerador y el denominador como vectores. Cree un archivo-m y copie el siguiente texto para modelar la función de transferencia:

La salida debería ser:

num = 4.5455 0 den = 1.0000 0.1818 -31.1818 -4.4545

Para observar la respuesta del sistema de la velocidad a una fuerza impulsiva aplicada al carro agregue las siguientes líneas al final de su archivo-m:

t=0:0.01:5;

impulse(num,den,t)

axis([0 1 0 60])


Nota: Los comandos Matlab de la toolbox de control de sistema se destacan en rojo.
Debería obtenerse el siguiente gráfico de respuesta de la velocidad :





Como puede ver del gráfico, la respuesta es totalmente insatisfactoria. No es estable a lazo abierto. Puede cambiar los ejes para ver más de la respuesta si necesita convencerse que el sistema es inestable.
1. Espacio de Estado
Abajo, se muestra cómo se encara el problema usando Matlab para el modelo en espacio de estado. Si copia el siguiente texto a un archivo-m y lo ejecuta, Matlab le dará las matrices A, B, C, y D para el modelo en espacio de estado y un gráfico de la posición del carro y ángulo del péndulo como respuesta a un entrada escalón de 0.2 m aplicada al carro.

M = .5;
m = 0.2;
b = 0.1;
i = 0.006;
g = 9.8;l = 0.3;
p = i*(M+m)+M*m*l^2; %denominador para las matrices A y B
A = [0 1 0 0;
0 -(i+m*l^2)*b/p (m^2*g*l^2)/p 0;
0 0 0 1;
0 -(m*l*b)/p m*g*l*(M+m)/p 0]

B = [ 0;
(i+m*l^2)/p;
0;
m*l/p]

C = [1 0 0 0;
0 0 1 0]
D = [0;
0]
T=0:0.05:10;
U=0.2*ones(size(T));
[Y,X]=lsim(A,B,C,D,U,T);
plot(T,Y)
axis([0 2 0 100])
Luego de correr este archivo-m, debería verse la siguiente salida:
A = 0 1.0000 0 0
0 -0.1818 2.6727 0
0 0 0 1.0000
0 -0.4545 31.1818 0
B = 0
1.8182
0
4.5455

C = 1 0 0 0
0 0 1 0


D = 0
0






La línea azul representa la posición del carro y la línea verde representa el ángulo del péndulo. De esta figura y de la anterior es obvio que para mejorar la dinámica del sistema alguna especie de control tendrá que ser diseñada. En estos tutoriales se incluyen cuatro tipos de controladores : PID, lugar de raíces, respuesta en frecuencia, y espacio de estado. Abajo puede seleccionar el que quisiera usar.
Nota: Las soluciones mostradas en los ejemplos PID, root locus y respuesta en frecuencia podrían no arrojar un controlador adecuado para el problema del péndulo invertido. Como se estableció previamente, cuando pusimos este problema en el marco de una entrada y una salida, ignoramos la posición x del carro. El péndulo podrá ser estabilizado en una posición invertida si la posición x es constante o si el carrito se mueve a velocidad constante (sin aceleración). Donde fuera posible en estos ejemplos, se mostrará qué sucede con la posición del carro cuando se implemente el controlador en el sistema. Enfatizamos que el propósito de estos ejemplos es demonstrar técnicas de diseño y análisis con Matlab; no controlar realmente un péndulo invertido.

Lugar Geometrico

DISEÑO DE CONTROL MEDIANTE EL MÉTODO DEL LUGAR GEOMÉTRICO DE LAS RAÍCES.

El objetivo de esta práctica es utilizar el entorno RLTOOL de matlab 5.3 para realizar el diseño de sistemas de control de una manera sencilla y rápida. Para ello se utiliza la técnica del lugar geométrico de las raíces.

Desarrollo:
Sea el sistema:
2
G(s) = ---------------------
s^2 + 3 s + 2
Se desea modelar un controlador de tal manera que el sistema controlado tenga una respuesta transitoria en el tiempo a una entrada escalón unitario con un máximo sobreimpulso Mp de un 5%, y con un tiempo Ts de asentamiento al 2% de 2 segundos.

Visualización del sistema en RLTOOL.

» s=tf('s')

Transfer function:
s

» Gs=2/(s+1)/(s+2)

Transfer function:
2
-------------------
s^2 + 3 s + 2
» rltool

En FILE /IMPORT MODEL.
Seleccionar y cargar Gs en el bloque P.
a) Visualizar las restricciones en el plano S.
Mp = 0.05
Factor de amortiguamiento = 0.69
Ts(2%)=2 s
Frecuencia natural = 2.9 r/s
Gc=Kp
b) Si adicionamos un polo.
Kp
Gc = -------------------
(S+p)

c) Si adicionamos un cero.
Gc=Kp(s+z)

d) Adición de un polo y un cero (en atraso)
Kp(s+z)
Gc = -------------------
(s+p)
Donde z es mayor que p

e) Adición de un polo y un cero (en adelanto).
Kp(s+z)
Gc = -------------------
(s+p)

Donde z es menor que p

f) Compensador de adelanto
Para obtener los parámetros del compensador en adelanto ubicamos el polo y el cero de tal manera que el lugar geométrico de las raíces se intercepte con las restricciones en el plano s. Luego ubicamos los polos de lazo cerrado sobre la intersección.

Finalmente tomamos los datos del compensador de adelanto que aparece en la ventana del RLTOOL.
2.9822 (s+2.41)
Gc =---------------------------
(s+3.58)

g) evaluando la respuesta al escalón.
Preguntas:

1.-Se puede efectuar el control del sistema mostrado en clase por medio de un compensador en atraso? Argumente.
No se puede por que para ello necesitaremos del compensador de atraso que tiene la siguiente forma y condición:

Donde z es mayor que p


Y guiándonos de esa forma y condición se busco efectuar el control del sistema por medio de un compensador en atraso y se observo que cada vez que tratábamos de establecer esta condición de z mayor a p, el lugar geométrico de las raíces se aleja de la intersección entre la frecuencia natural y el factor de amortiguamiento, sin lograrlo interceptar, esto al tratar de mover z y p.

2. Existe un rango definido sobre los cuales se pueden mover el polo y el cero de un compensador o las respuestas son múltiples?
No existe un rango definido por ello diremos que existen respuestas múltiples; respuestas múltiples pues el diseño no es único.

3. De que orden es el sistema controlado?
El sistema controlado es el resultado de planta y el controlador. El sistema controlado o compensado es de tercer orden.

4. Si el orden cambia, por que se siguen analizando los polos del sistema de compensador?
A pesar del cambio de orden se sigue analizando los polos del sistema sin compensar debido a que estos son la base del sistema para lo cual querremos un valor de factor de amortiguamiento y frecuencia natural.

5. Diseñar un compensador Gc para que se cumpla que el sistema Gs1 cumpla con tener un Mp del 20% y un Ts al 2% de 5 segundos.
(s+4)
Gs1 = -------------------
s(s2+3s+2)

» s=tf('s')

Transfer function:
s

» Gs1=(s+4)/s/(s^2+3*s+2)
Transfer function:
s + 4
-----------------
s^3 + 3 s^2 + 2 s

Hallando el factor de amortiguamiento y la frecuencia natural.
» z=-(log(0.2)/sqrt(pi^2+log(0.2)^2))
z =

0.4559
» wn=4/(5*z)

wn =

1.7546

2.5137 (s+1.03)
Gc =---------------------------
(s+2.91)

Mp=0.2 y Ts=4.8s

Taylor

Taylor – LINEALIZACIÓN DE MODELOS MATEMÁTICOS NO LINEALES

El proceso de linealizar sistemas no lineales es importante, porque linealizar ecuaciones no lineales permite aplicar numerosos métodos de análisis lineal que proporcionen información acerca del comportamiento de los sistemas no lineales. El procedimiento de linealización que se presenta aquí se basa en la expansión de la función no lineal en series de Taylor alrededor del punto de operación y la retención solo del término lineal. Debido a que no consideramos los términos de orden superior de la expansión en series de Taylor, estos términos no considerados deben ser suficientemente pequeños; es decir, las variables sólo se desvían ligeramente de la condición de operación.
A continuación presentaremos primero los aspectos matemáticos de la técnica de linealización y después aplicaremos la técnica a un sistema hidráulico de seguimiento a fin de obtener un modelo lineal para el sistema

Aproximación lineal de modelos matemáticos no lineales.

A fin de obtener un modelo matemático lineal para un sistema no lineal, suponemos que las variables solo se desvían ligeramente de alguna condición de operación. Considere un sistema cuya entrada es x(t) y cuya salida es y(t). La relación entre y(t) y x(t) se obtiene mediante:
Si la condición de operación normal corresponde a la ecuación (3-75) se expande en series de Taylor alrededor de este punto, del modo siguiente:


en donde las derivadas df/dx, d2f/dx2, . . . se evalúan en . Si la variación es pequeña, es posible no considerar los términos de orden superior en . A continuación, la ecuación (3-76) se escribe como:

La ecuación (3-77) puede reescribirse como:



lo cual indica que es proporcional a . La ecuación (3-78) da un modelo matemático lineal para el sistema no lineal obtenido mediante la ecuación (3-75) cerca del punto de operación , .
A continuación, considere un sistema no lineal cuya salida y es una función de dos entradas x1 y x2, de modo que

A fin de obtener una aproximación lineal para este sistema no lineal, es posible expandir
la ecuación (3-79) en series de Taylor alrededor del punto de operación normal . Después, la ecuación (3-79) se convierte en



en donde las derivadas parciales se evalúan para , . Cerca del punto de operación normal, es posible no considerar los términos de orden superior. A continuación, el modelo matemático lineal de este sistema no lineal alrededor de la condición de operación normal se obtiene mediante:




La técnica de linealización presentada aquí es válida alrededor de la condición de operación. Sin embargo, si las condiciones de operación varían ampliamente, tales ecuaciones linealizadas no son adecuadas y deben manejarse ecuaciones no lineales. Es importante recordar que un modelo matemático determinado, que se use en el análisis y el diseño, puede representar con precisión la dinámica de un sistema real para ciertas condiciones de operación, pero puede no ser preciso para otras.