Вы находитесь на странице: 1из 19

Instituto Politécnico Nacional

Unidad Profesional Interdisciplinaria en


Ingenierı́a y Tecnologı́as Avanzadas

Control clásico
Práctica 1: Álgebra de bloques y MATLAB.
Ejemplos de sistemas de control de lazo cerrado

3MM3
Bibo Pérez César Javier
Cruz Rumbo César Jair
Sánchez Cid Lucio Emmanuel

Profesor: Adolfo Rojas Pacheco

5 de febrero del 2019


Índice
1. Objetivo 2

2. Introducción 2
2.1. Ejemplos de sistemas de control de lazo cerrado . . . . . . . . . . . . . . . . . . . . 2
2.1.1. Sistema de control de nivel de agua . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.2. Sistema de control para la velocidad angular de un eje de motor . . . . . . . 3
2.1.3. Sistema de control de posición de un brazo mecánico . . . . . . . . . . . . . 4
2.2. Funciones Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.1. Series Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.2. Parallel Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.3. Feedback Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3. Función Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3. Desarrollo 8
3.1. Sistema de control de lazo cerrado 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2. Sistema de control de lazo cerrado 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4. Análisis de resultados 18

5. Conclusiones 18

6. Referencias bibliográficas 18

1
1. Objetivo
Identificar los subsistemas y las señales que componen un sistema de control y aprender a reducir,
con álgebra de bloques, diagramas correspondientes a sistemas de control, usando comandos de
MATLAB.

2. Introducción
2.1. Ejemplos de sistemas de control de lazo cerrado
2.1.1. Sistema de control de nivel de agua
El valor de referencia es el ajuste inicial del brazo de la palanca, de manera que interrumpa el
suministro de agua justo en el nivel deseado. Al salir el agua del tanque, el flotador se desplaza
hacia abajo, junto con el nivel del agua. Esto provoca el giro de la palanca, y permite la entrada
de agua. El flujo continúa hasta que el flotador sube al punto en que la palanca impide la entrada
de más agua.

Figura 1: Diagrama – Sistema de control de nivel del agua.

• Referencia: ajuste inicial del flotador y posición de la palanca


• Variable controlada: nivel del agua en el tanque
• Variable manipulada: flujo del agua
• Comparador: la palanca
• Señal de error: diferencia entre las posiciones real e inicial de la palanca
• Controlador: palanca con pivote
• Actuador: tapadera con la que abre o cierra el paso del agua
• Proceso: tanque de agua
• Medidor: flotador y palanca

2
2.1.2. Sistema de control para la velocidad angular de un eje de motor
Mediante un potenciómetro se fija el valor de referencia, es decir, el voltaje que se alimenta al
amplificador diferencial y que sirve como valor de referencia de la velocidad angular deseada. El
amplificador diferencial se usa para comparar y amplificar los valores de referencia y de retroali-
mentación, es decir, amplifica la señal de error. Esta señal amplificada se envı́a a un motor, que a
su vez ajusta la velocidad angular del eje. La velocidad del eje se mide utilizando un tacogenerador,
conectado al eje mediante un par de engranes cónicos. La señal del tacogenerador se retroalimenta
al amplificador diferencial.

Figura 2: Diagrama – Sistema de control de velocidad angular de un eje de motor.

• Referencia: ajuste inicial del potenciómetro


• Variable controlada: velocidad angular del eje
• Variable manipulada: tensión de alimentación del motor
• Comparador: amplificador diferencial
• Señal de error: diferencia entre la salida desde el potenciómetro y el tacogenerador
• Controlador: el amplificador diferencial
• Actuador: motor
• Proceso: máquina
• Transductor: tacogenerador

3
2.1.3. Sistema de control de posición de un brazo mecánico
El dispositivo de memoria sirve como referencia para el sistema, pues a partir de este se determina
la posición a la que se debe mover el brazo mecánico. El amplificador operacional resta la señal de
posición real (medida con un sensor de posición) y la señal de posición deseada, después envı́a la
señal resultante a una servo válvula que se encarga de controlar el caudal de aceite que acciona el
cilindro hidráulico, cuyo vástago esta conectado al brazo mecánico.

Figura 3: Diagrama – Sistema de control de posición de un brazo mecánico.

• Referencia: dispositivo de memoria


• Variable controlada: posición del brazo mecánico
• Variable manipulada: flujo de aceite
• Comparador: amplificador operacional
• Señal de error: diferencia entre la posición real y la posición deseada
• Controlador: dispositivo de memoria y amplificador operacional
• Actuador: cilindro hidráulico
• Proceso: brazo mecánico
• Transductor: sensor de posición

4
2.2. Funciones Connection
2.2.1. Series Connection
Para conectar modelos LTI en serie, se utiliza el operador * o la función series, por ejemplo:
H= H1 * H2;
lo cual equivale a,
H = series(H1,H2);

Figura 4: Representación de lo que realiza la función Series Connection.

2.2.2. Parallel Connection


Se utiliza el operador + o la función parallel para conectar modelos LTI en paralelo, por ejemplo:
H= H1 + H2;
o equivalentemente,
H = parallel(H1,H2);

Figura 5: Representación de lo que realiza la función Parallel Connection

5
2.2.3. Feedback Connections
La configuración de retroalimentación estándar se muestra a continuación:

Figura 6: Configuración de retroalimentación estándar.

Para construir un modelo de transferencia de bucle cerrado de u a y, se debe ingresar:

H = feedback(H1,H2);

Se debe tener en cuenta que la función feedback asume retroalimentación negativa de forma
predeterminada. Para aplicar retroalimentación positiva, se usa la siguiente sintaxis:

H = feedback(H1,H2,+1);

2.3. Función Connect


La función connect proporciona una forma sistemática y sencilla de conectar bloques entre sı́.

Para usar connect, se deben seguir los siguientes pasos:

• Definir todos los bloques en el diagrama, incluidos los bloques de suma.


• Nombrar todas las señales de entrada y salida de cada bloque.
• Seleccionar la entrada y la salida del sistema.
• Usar la función connect.

6
Figura 7: Ejemplo de diagrama de bloques para aplicar la función connect.

Para el diagrama de bloques anterior, los pasos anteriormente descritos equivalen a:

Figura 8: Ejemplo de código empleando la función connect.

7
3. Desarrollo
3.1. Sistema de control de lazo cerrado 1

Figura 9: Diagrama de bloques – Sistema de control de lazo cerrado 1.

Primero, se redujo el diagrama de bloques mostrado en la figura 9 empleando reglas de álgebra


de bloques y después, en MATLAB, con ayuda de las funciones series connection (*), parallel
connection (±) y feedback, se obtuvo la función de transferencia mostrada en la figura 10.

Figura 10: Función de transferencia obtenida usando funciones


connection – Sistema de control de lazo cerrado 1.

A continuación se muestra el código para realizar lo anteriormente descrito.

1 clear all
2 clc
3
4 A=tf([1],[1 0 0]);
5 B=tf([50],[1 1]);
6 C=tf([2],[1 0]);
7 D=tf([1 0],[1]);
8 E=tf([2],[1]);
9
10 T=feedback((A*feedback(B,C))*(D-E),1)

8
Posteriormente, se utilizó el comando connect para obtener la función de transferencia por otro
método (ver figura 11).

Figura 11: Función de transferencia obtenida empleando la función


connect – Sistema de control de lazo cerrado 1.

El código utilizado fue el siguiente:

1 clear all
2 clc
3
4 A=tf([1],[1 0 0]);
5 B=tf([50],[1 1]);
6 C=tf([2],[1 0]);
7 D=tf([1 0],[1]);
8 E=tf([2],[1]);
9
10 Sum1=sumblk('g=f-n');
11 Sum2=sumblk('i=h-j');
12 Sum3=sumblk('n=l-m');
13
14 A.u = 'g'; A.y ='h';
15 B.u = 'i'; B.y ='k';
16 C.u ='k'; C.y ='j';
17 D.u ='k'; D.y= 'l';
18 E.u ='k'; E.y= 'm';
19
20 T=connect(A,B,C,D,E,Sum1,Sum2,Sum3,'f','n');
21 tf(T)

9
Con el uso de Simulink de MATLAB se obtuvo la respuesta del sistema original y de los sistemas
reducidos ante una entrada de escalón unitario para comprobar que el procedimiento realizado fue
el correcto, quedando el diagrama de Simulink como se muestra en la figura 12.

Figura 12: Diagrama de Simulink – Sistema de lazo cerrado 1.

Enseguida se presentan las respuestas obtenidas por cada uno de los métodos, ası́ como una figura
en las que estas se superponen.

10
Figura 13: Respuesta al escalón – Sistema original 1.

Figura 14: Respuesta al escalón – Sistema 1 reducido con funciones connection.

11
Figura 15: Respuesta al escalón – Sistema 1 reducido empleando la función connect.

Figura 16: Superposición de respuestas al escalón del sistema original 1 y sus sistemas reducidos.

12
3.2. Sistema de control de lazo cerrado 2

Figura 17: Diagrama de bloques – Sistema de control de lazo cerrado 2.

Análogamente, se redujo el diagrama de bloques mostrado en la figura 17 empleando reglas de


álgebra de bloques y después, en MATLAB, con ayuda de las funciones series connection (*),
parallel connection (±) y feedback se obtuvo la función de transferencia mostrada en la figura
18.

Figura 18: Función de transferencia obtenida usando funciones


connection – Sistema de control de lazo cerrado 2.

A continuación, se muestra el código para realizar lo que se mencionó anteriormente.

1 clear all
2 clc
3
4 G1=tf([1],[1 7]);
5 G2=tf([1],[1 2 3]);
6 G3=tf([1],[1 4]);
7 G4=tf([1],[1 0]);
8 G5=tf([5],[1 7]);
9 G6=tf([1],[1 5 10]);
10 G7=tf([3],[1 2]);
11 G8=tf([1],[1 6]);
12

13
13 T=feedback((G1*feedback(((G3+G4)*feedback(G7,G6)),G8,+1)),
14 (G5/G7+G2/((G3+G4)*feedback(G7,G6))))

Posteriormente, se utilizó el comando connect para obtener la función de transferencia por otro
método, mostrada en la figura 19).

Figura 19: Función de transferencia obtenida empleando la función


connect – Sistema de control de lazo cerrado 2.

El código utilizado fue el siguiente:

1 clear all
2 clc
3
4 G1=tf([1],[1 7]);
5 G2=tf([1],[1 2 3]);
6 G3=tf([1],[1 4]);
7 G4=tf([1],[1 0]);
8 G5=tf([5],[1 7]);
9 G6=tf([1],[1 5 10]);
10 G7=tf([3],[1 2]);
11 G8=tf([1],[1 6]);
12
13 Sum1=sumblk('c=a-b');
14 Sum2=sumblk('b=f+e');
15 Sum3=sumblk('i=g+h');
16 Sum4=sumblk('l=j+k');
17 Sum5=sumblk('n=l-m');
18
19 G1.u = 'c'; G1.y ='g';
20 G2.u = 'i'; G2.y ='f';
21 G3.u = 'i'; G3.y ='j';
22 G4.u = 'i'; G4.y ='k';
23 G5.u = 'n'; G5.y ='e';
24 G6.u = 'o'; G6.y ='m';
25 G7.u = 'n'; G7.y ='o';
26 G8.u = 'o'; G8.y ='h';
27
28 T=connect(G1,G2,G3,G4,G5,G6,G7,G8,Sum1,Sum2,Sum3,Sum4,Sum5,'a','o');
29 tf(T)

Con el uso de Simulink de MATLAB se obtuvo la respuesta del sistema original y de los sistemas
reducidos ante una entrada de escalón unitario para comprobar que el procedimiento realizado fue

14
el correcto, quedando el diagrama de Simulink como se muestra en la figura 20.

Figura 20: Diagrama de Simulink – Sistema de lazo cerrado 2.

Enseguida se presentan las respuestas obtenidas por cada uno de los métodos, ası́ como una figura
en las que estas se superponen.

15
Figura 21: Respuesta al escalón – Sistema original 2.

Figura 22: Respuesta al escalón – Sistema 2 reducido con funciones connection.

16
Figura 23: Respuesta al escalón – Sistema 2 reducido empleando la función connect.

Figura 24: Superposición de respuestas al escalón del sistema original 2 y sus sistemas reducidos.

17
4. Análisis de resultados
Los sistemas originales y sus reducciones resultaron tener el mismo comportamiento ante la entra-
da de un escalón unitario, por lo que se puede concluir que el proceso de reducción para ambos
métodos fue correcto, como se puede observar en las figuras 16 y 24, donde las señales son prácti-
camente idénticas, habiendo una mı́nima diferencia en el orden de diezmilésimas que pudo deberse
a los distintos métodos numéricos con los que opera MATLAB.

Al reducir los sistemas con los métodos utilizados, se notó la rapidez de usar la función connect, ya
que no requiere realizar un análisis previo para obtener la función de transferencia, en comparación
con el método que implica usar las funciones connection (series, parallel y feedback), donde
primero es necesario hacer la reducción del sistema con el álgebra de bloques, para después utilizar
dichas funciones con el propósito de que sea el software de MATLAB el que realice las operaciones
en cuestión.

5. Conclusiones
Se logró aprender a reducir diagramas correspondientes a sistemas de control empleando comandos
de MATLAB (series, parallel, feedback y connect).

Se concluyó que es más recomendable utilizar el comando connect para obtener la función de
transferencia de sistemas de lazo cerrado compuestos por muchos subsistemas, debido a que es un
método sistemático muy fácil de llevar a cabo.

Es importante conocer los métodos abordados en esta práctica porque el reducir los sistemas de
control permite que la cantidad de operaciones necesarias por una computadora disminuya de
manera significativa, lo cual es sumamente útil y necesario, ya que los sistemas deben de responder
lo más pronto posible cuando se trabaja en tiempo real.

6. Referencias bibliográficas
[1] W. Bolton, Mecatrónica. Sistemas de control electrónico en la ingenierı́a mecánica y eléctrica.
Un enfoque multidisciplinario, 5ta ed., México: Alfaomega, 2013.

[2] MathWorks. (2019) Connecting Models. Accedido 1 de febrero 2019. [En lı́nea]. Disponible
en: https://www.mathworks.com/help/control/examples/connecting-models.html

18

Вам также может понравиться