P1.ChampoVazquez
-
Upload
abimael-champo -
Category
Documents
-
view
9 -
download
0
Transcript of P1.ChampoVazquez
Instituto Politécnico Nacional
Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas
Práctica 1
Alumnos:
- Champo Vázquez Abimael - Sandoval Chileño Marco A.
Materia: Control Clásico
Profesor: Adolfo Rojas Pacheco
Grupo: 3MM3
Práctica 1.
Algebra de bloques y MatLab
Ejemplos de sistemas de control de lazo cerrado
OBJETIVO:
El alumno identificará los subsistemas y las señales que componen un sistema de
control.
El alumno reducirá, con álgebra de bloques, diagramas correspondientes a sistemas
de control, usando comandos de MatLab.
PRE-ACTIVIDADES:
Investigar y reportar tres ejemplos de sistemas de control. Identificar dentro del
diagrama básico de control los correspondientes subsistemas como bloques y sus
variables como señales.
Investigar la sintaxis de las funciones de MatLab para realizar el algebra de
bloques de configuraciones serie, paralelo y retroalimentación.
DESARROLLO:
1. Reduzca los diagramas de bloques que se muestran en las figuras para obtener sus
respectivas funciones de transferencia 𝑇(𝑠) = 𝐶(𝑠) 𝑅(𝑠)⁄ . Utilice los siguientes
métodos: a) Reglas del álgebra de bloques, b) Comandos /Instrucciones de MatLab
2. Usando Simulink de MatLab, obtenga las respuestas al escalón tanto de los sistemas
originales como de los sistemas reducidos para comprobar que el procedimiento fue
correcto.
NOTA: Para el segundo sistema considere las siguientes funciones de transferencia
dentro de cada bloque correspondiente: 𝐺1 = 1 (𝑠 + 7)⁄ , 𝐺2 = 1 (𝑠2 + 2𝑠 + 3)⁄ , 𝐺3 =
1 (𝑠 + 4)⁄ , 𝐺4 = 1 𝑠⁄ , 𝐺5 = 5 (𝑠 + 7)⁄ , 𝐺6 = 1 (𝑠2 + 5𝑠 + 10)⁄ , 𝐺7 =
3 (𝑠 + 2)⁄ , 𝐺8 = 1 (𝑠 + 6)⁄ . Se sugiere utilizar lo relacionado con el comando
connect-Arbitrary interconnection of LTI models de MatLab.
Pre actividades
Ejemplos:
1.-Regulación de Nivel de Agua
Sistema de lazo cerrado para regular el nivel de agua de un tanque, el actuador sería la válvula, el
dispositivo de medición seria el flotador el cual incluye la referencia y la señal de entrada sería el
flujo de agua.
2.-Un Calentador o Calefactor
Un sistema de lazo cerrado, donde el usuario regula la temperatura promedio de su recinto por
medio de un termostato (referencia). Como resultado la temperatura del recinto cambia ya que el
sistema prende o apaga el calentador. La entrada es el combustible o electricidad para que el
calentador funcione. Supongamos para este caso un calentador eléctrico.
Válvula Tanque
Nivel de Agua
Flotador
Regulador
Nivel de Agua
deseado
Switch o
relevador
Calentador
Temperatura
del recinto
Sensor de
Temperatura
Controlador
(circuitos)
Señal
eléctrica
deseada
3.- Una Fuente conmutada
Otro sistema de lazo cerrado es la fuente conmutada. Las fuentes conmutadas representan una
reducción de costo y tamaño debido a que emplean un sistema de lazo cerrado para el control del
potencial de salida. El potencial deseado es escogido de una referencia, el potencial de salida es
tomado para generar una señal que conmute (corte y saturación) transistores, convirtiendo el
potencial promedio en un reflejo del potencial de referencia.
Sintaxis de las Funciones de Matlab
1.- Función feedback
Realiza una conexión de retroalimentación (lazo cerrado) entre dos elementos. El programa
automáticamente lo toma como una retroalimentación negativa.
M = feedback(M1,M2)
Para la retroalimentación positiva se utiliza:
M = feedback(M1,M2,+1)
Transistor Fuente de
Alimentación
Potencial
Regulado
Retro. de la
señal
Controlador
(circuitos)
Señal
eléctrica
deseada
2.- La Función Parallel
Conecta las entradas y salidas de dos modelos en forma paralela.
M = parallel(M1,M2,IN1,IN2,OUT1,OUT2)
Las entradas especificadas como IN1 e IN2 son unidas mientras que las salidas son sumadas, en
caso de que estos valores (IN1, IN2, OUT1, OUT2) sean omitidos el programa automáticamente
entrega la forma estándar de conexión paralela M=M1+M2.
3.- La Función Series
Conecta las entradas y salidas de dos modelos en serie.
M = series(M1,M2,OUTPUTS1,INPUTS2)
El vector OUTPUTS1 es conectado en serie con INPUTS2 pues se especifica con cual ira conetado
En caso de omitir estos parámetros el programa automáticamente conectará en cascada ambos
modelos además de que la salida será de la forma M=M1*M2.
Para las funciones anteriores en caso de que M1 y M2 sean arreglos de modelos entonces el
programa entrega en M otro arreglo de modelos del mismo tamaño Por ejemplo:
M(:,:,k) = series(M1(:,:,k),M2(:,:,k),OUTPUTS1,INPUTS2)
Reducción por códigos de Matlab
Sistema 1
Código empleado en Matlab donde se definen las funciones de transferencia junto con los puntos
de suma, resta o retroalimentación y posteriormente con conectadas, Matlab devuelve como
resultado la función de transferencia equivalente en un formato entendible para diferencias los
polos y ceros.
%Definición de Funciones de Transferencia
a= tf(1,[1 0 0]); b=tf(50,[1 1]); c=tf(2, [1 0]); d=tf([1 0],[1]); e=tf(2,1);
%Definición de entradas y salidas a.InputName='al'; a.OutputName='bl'; b.InputName='cl'; b.OutputName='dl'; c.InputName='dl'; c.OutputName='fl'; d.InputName='dl'; d.OutputName='el'; e.InputName='dl'; e.OutputName='hl';
%Definición de puntos de suma puntosuma1=sumblk('al','re','rs','+-'); puntosuma2=sumblk('rs','el','hl','+-'); puntosuma3=sumblk('cl','bl','fl','+-');
%Conexión Final T=connect(puntosuma2,e,d,b,c,puntosuma3,a,puntosuma1,'re','rs')
Resultado:
Sistema 2
Análogamente se realiza el código para el segundo sistema
g1=tf(1,[1 7]); g2=tf(1, [1 2 3]); g3=tf(1,[1 4]); %Definición de Funciones de Transferencia g4=tf(1,[1 0]); g5=tf(5, [1 7]); g6=tf(1,[1 5 10]); g7=tf(3,[1 2]); g8=tf(1,[1 6]); g1.InputName='a'; g1.OutputName='b'; g2.InputName='c'; g2.OutputName='d'; g3.InputName='c'; g3.OutputName='k'; %Definición de entradas y salidas g4.InputName='c'; g4.OutputName='l'; g5.InputName='g'; g5.OutputName='f'; g6.InputName='h'; g6.OutputName='i'; g7.InputName='g'; g7.OutputName='h'; g8.InputName='h'; g8.OutputName='m'; puntosuma1=sumblk('a','rs','e','+-'); puntosuma2=sumblk('e','d','f','++'); puntosuma3=sumblk('c','m','b','++'); %Definición de puntos de suma puntosuma4=sumblk('j','k','l','++'); puntosuma5=sumblk('g','j','i','+-'); T=connect(puntosuma2,g1,g2,g3,g4,g5,g6,g7,g8,puntosuma3,puntosuma4,puntos
uma5,puntosuma1,'rs','h')
Resultado:
Ejercicio 2 Comparación en Simulink l
Sistema 1
En el sistema 1 aparecía una función de transferencia S, sin embargo Simulink no permite que el
numerador sea de un orden mayor al denominador por lo que la función de transferencia 3
(“Transfer Fcn3) se le realizo una aproximación haciendo pequeño el cociente que acompaña a la
S. El sistema fue armado de dos formas, la primera utilizando los bloques del sistema completo y la
segunda ingresando la reducción en un solo bloque equivalente del sistema.
Resultado
Como se puede ver en la siguiente imagen las respuestas fueron aproximadas debido a que
Simulink impedía ingresar correctamente el sistema, sin embargo la respuesta es bastante
aproximada para el tiempo de simulación.
Sistema 2
De forma análoga se construyó el sistema 2 en Simulink, en este sistema, no hubo problemas al
ingresarlo.
Las salidas tal como en el anterior son conectadas a un multiplexor para poder apreciarlas en un
mismo SCOPE
Resultado
En este caso las salidas son totalmente iguales por lo que una se sobre escribe en la otra
dejándonos ver sólo una de las señales.
Separando en dos SCOPE tenemos:
Conclusión La práctica nos permitió aprender y practicar formas de simplificar los sistemas de lazo cerrado
conformados por funciones de transferencia, el más rudimentario es el método por álgebra de
bloques, pero, este método nos permite pre simplificar los sistemas antes de colocarlos en un
ambiente de simulación, por ejemplo en el caso del sistema 1 de esta práctica, Simulink no
permitía colocar una función de transferencia tal como estaba definida, sin embargo si se realizaba
una pre simplificación con álgebra de bloques y se une ese bloque con otro en serie entonces el
ambiente de Simulación lo tomará como válido y la simulación será más acertada.
El ambiente Simulink es el método que resultó más sencillo, sin embargo, este ambiente es sólo de
simulación, la respuesta entregada por Simulink es el resultado de introducir una perturbación, si
queremos obtener de forma simbólica la función de transferencia equivalente es mejor recurrir a
código de Matlab o reducción por álgebra de bloques