Читать книгу: «Modelamiento y simulación de sistemas con Simulink», страница 12

Шрифт:

6.2 FUERZAS COMPRENDIDAS EN UN PÓRTICO BIDIMENSIONAL DE 1 PISO

Se considera el modelo simplificado de corte de un pórtico para representar el comportamiento del sistema. En la Figura 6.1 se muestra un esquema gráfico de la equivalencia del sistema sometido a una fuerza lateral p(t) como una combinación de tres componentes puras en función de las fuerzas de inerciales, amortiguadoras y restauradoras.

Figura 6.1. Equivalencia de fuerzas aplicadas al sistema

De dicho esquema se observa que las fuerzas restauradoras fK se relacionan con la rigidez y el desplazamiento u, las fuerzas amortiguadoras fC se relacionan con el amortiguamiento y la velocidad y las fuerzas inerciales fI se relacionan con la masa y la aceleración ü del sistema. Por lo tanto, de la figura 6.1 se establece la ecuación 6.1.


6.3 FUNCIÓN DE TRANSFERENCIA

Esta es conocida como el cociente entre la transformada de Laplace de una señal de salida U(S). y la transformada de Laplace de una señal de entrada P(S). Esta función es un modelo matemático que representa la reacción de un sistema sometido a una excitación y sirve para representar sistemas lineales a través de cocientes de polinomios de variables S; dicha variable se interpreta en términos de frecuencia: S = jω

La ecuación de equilibrio dinámico de un sistema en vibración forzada es:


expresada la ecuación 6.2 en términos de la transformada de Laplace considerando condiciones iniciales de desplazamiento y velocidad nulas, se tiene:


reordenando la ecuación 6.3 en términos de la función de transferencia, se tiene:


Como se podrá apreciar en ejercicios posteriores, se hace uso del bloque función de transferencia (Transfer Fcn) para la generación de algunos diagramas de bloques.

6.4 FUNCIÓN DE ESPACIOS DE ESTADOS

Es un modelo matemático constituido por datos de entrada, salida y variables de estado; dichas variables de estado se representan en vectores. Este modelo matemático tiene por finalidad convertir ecuaciones diferenciales de orden n en un conjunto de ecuaciones diferenciales de primer orden, en otras palabras, desacopla una ecuación generando una reducción del orden. Propicio para el desarrollo práctico de cualquier ecuación diferencial, ya que es mucho más sencillo trabajar con ecuaciones diferenciales de primer orden.

La ecuación de equilibrio dinámico de un sistema en vibración representado por ecuación 6.5a, y cuya equivalencia es la ecuación 6.5b, se puede representar como una formulación de espacio de estados.



Dicha formulación empieza asignando las variables x1 y x2; y proponiendo las igualdades 6.6a y 6.6b.



Posteriormente se tiene una equivalencia en términos de las variables asignadas (expresión 6.7a) y se establece la ecuación de equilibrio dinámico en función de las igualdades propuestas (ecuación 6.7b).



Finalmente, los arreglos matriciales mostrados en las ecuaciones 6.8a y 6.8b se obtienen de las relaciones determinadas entre las derivadas de las variables asignadas (1 i 2) y entre el desplazamiento, velocidad y aceleración del único grado de libertad del sistema.



6.5 VIBRACIÓN LIBRE SIN AMORTIGUAMIENTO

La ecuación diferencial gobernante del movimiento en vibración libre de un sistema de un grado de libertad sin amortiguamiento es la ecuación 6.9,


donde m es la masa y k es la rigidez del sistema.

6.5.1 Ejemplo 1. Vibración libre sin amortiguamiento

Se requiere obtener historiales de desplazamientos, velocidades y aceleraciones a partir de las siguientes consideraciones: tiempo de simulación 2s,

Considerar los parámetros de la tabla 6.1 para la simulación de este modelo.

Tabla 6.1

Configuración de parámetros de la simulación del Ejemplo 1

Solución. Primero realizar el ingreso de datos correspondiente al código fuente mostrado en el siguiente script; con la finalidad de tener los valores de las variables m, c y k y las matrices A, B, C y D almacenados en el Workspace de Matlab.

1 %% Ingreso de datos y cálculo de matrices A, B, C y D

2 clc; clear all; close all; % Funciones de limpieza

3 m = 21.63; % Masa

4 k = 23479.8223; % Rigidez

5 epsilon = 0; % Relación de amortiguamiento

6 % Cálculo de la matriz A

7 A = [0 1; –k/m –2* epsilon * sqrt (k/m)];

8 % Cálculo de la matriz B

9 B = [0; 0];

10 % Cálculo de la matriz C

11 C = [1 0; 0 1; -k/m -2* epsilon * sqrt (k/m)];

12 % Cálculo de la matriz D

13 D = [0; 0; 0];

El valor de 0 a la derecha de la ecuación 6.9 puede considerarse como una señal constante de valor nulo (figura 6.2).

Figura 6.2. Señal constante de valor nulo

El diagrama de bloques del modelo se muestra en la figura 6.3. Se establece el valor de 0 en el parámetro Constant value del bloque Constant; el valor de 3 en el parámetro Number of Input Ports del bloque Scope; los términos x1s, v1s, a1s y f1s en los parámetros File name de los bloques To File. Los demás parámetros de los bloques quedan con los valores dados por defecto.

Figura 6.3. Diagrama de bloques principal del Ejemplo 1

El diagrama de bloques del bloque Subsystem se muestra en la figura 6.4. Se establecen las constantes A, B, C y D en los parámetros A, B, C, D y los valores [0.1 0] en el parámetro Initial conditions del bloque State-Space; el valor de 3 en el parámetro Number of Input Ports del bloque Demux. Los demás parámetros de los bloques quedan con los valores dados por defecto. Realizar las configuraciones de acuerdo a lo visualizado en el modelo de la figura 6.4.

Figura 6.4. Diagrama de bloques del bloque Subsystem del Ejemplo 1

Resultados:

• Un simulador visual de los desplazamientos ocasionados en un pórtico de un nivel en tiempo real (figura 6.5); el cual se obtendrá al ejecutar el código fuente mostrado en el siguiente script:

1 %% Visualización interactiva de desplazamientos

2 clc; clear all; close all; % Funciones de limpieza

3 load x1s

4 figure ( ' Name ' , ' Visualización interactiva de desplazamientos ' ' NumberTitle ' , ' off ' , ' units ' , ' normalized ' , ' outerposition ' ,[0 0 1 1]);

5 set(gcf , ' Color ' , ' w ' )

6 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

7 axis tight

8 x1 = 15* x1s (2 ,:);

9 for k = 1: length (x1s)

10 y1 = 4* ones (1, length (x1s));

11 plot3 ([ x1(k) 5+ x1(k)] ,[0 0] ,[ y1(k) y1(k)], ' Color ' , ' r ' , ' LineWidth ' ,5)

12 hold on

13 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

14 plot3 ([0 x1(k)] ,[0 0] ,[0 y1(k)] ,[5 5+ x1(k)] ,[0 0] ,[0 y1(k)], ' Color ' , ' b ' , ' LineWidth ' ,5)

15 fill3 ([ -0.75 -0.75 0.75 0.75] ,[ -0.75 0.75 0.75 -0.75] ,[0 0 0 0], ' g ' )

16 fill3 ([4.25 4.25 5.75 5.75] ,[ -0.75 0.75 0.75 -0.75] ,[0 0 0 0], ' g ' )

17 axis equal

18 axis ([ -5.5 10.5 -1 1 0 4.05])

19 drawnow

20 pause (0.0125) 21 hold off 22 end

Figura 6.5. Visualización interactiva de desplazamientos del Ejemplo 1

• La representación gráfica de los historiales de respuesta de desplazamientos, velocidades y aceleraciones del sistema (figura 6.6); la cual se obtiene al hacer doble clic sobre el bloque Scope, implementado en el diagrama de bloques del modelo (figura 6.3).

Figura 6.6. Visualización gráfica de desplazamientos, velocidades y aceleraciones del Ejemplo 1

6.6 VIBRACIÓN LIBRE CON AMORTIGUAMIENTO

La ecuación diferencial gobernante del movimiento en vibración libre de un sistema de un grado de libertad con amortiguamiento es la ecuación 6.10,


donde m es la masa, c es el coeficiente de amortiguamiento y k es la rigidez del sistema.

6.6.1 Ejemplo 2. Vibración libre con amortiguamiento

Se requiere obtener historiales de desplazamientos, velocidades y aceleraciones a partir de las siguientes consideraciones: tiempo de simulación 2s, m = 21.63 kN s 2/m, k = 23449.8223 kN /m, ζ = 0.05, u(0) = 0.1 m y (0) = 0 m/s.

Considerar los parámetros de la tabla 6.2 para la simulación de este modelo.

Tabla 6.2

Configuración de parámetros de la simulación del Ejemplo 2

Solución. Primero, realizar el ingreso de datos correspondiente al código fuente mostrado en el siguiente script con la finalidad de tener los valores de las variables m, c y k y las matrices A, B, C y D almacenados en el Workspace de Matlab.

1 %% Ingreso de datos y cálculo de matrices A, B, C y D

2 clc; clear all; close all; % funciones de limpieza

3 m = 21.63; % Masa

4 k = 23479.8223; % Rigidez

5 epsilon = 0.05; % Relación de amortiguamiento

6 % Cálculo de la matriz A

7 A = [0 1; –k/m –2* epsilon * sqrt (k/m)];

8 % cálculo de la matriz B

9 B = [0; 0];

10 % Cálculo de la matriz C

11 C=[1 0; 0 1; -k/m -2* epsilon * sqrt (k/m)];

12 % Cálculo de la matriz D

13 D = [0; 0; 0];

El valor de 0 a la derecha de la ecuación 6.10 puede considerarse como una señal constante de valor nulo (figura 6.7).

Figura 6.7. Señal constante de valor nulo

El diagrama de bloques del modelo se muestra en la figura 6.8. Se establece el valor de 0 en el parámetro Constant value del bloque Constant; el valor de 3 en el parámetro Number of Input Ports del bloque Scope; los términos x1s, v1s, a1s y f1s en los parámetros File name de los bloques To File. Los demás parámetros de los bloques quedan con los valores dados por defecto.

Figura 6.8. Diagrama de bloques principal del Ejemplo 2

El diagrama de bloques del bloque Subsystem se muestra en la figura 6.9. Se establecen las constantes A, B, C y D en los parámetros A, B, C, D y los valores [0.1 0] en el parámetro Initial conditions del bloque State-Space; el valor de 3 en el parámetro Number of Input Ports del bloque Demux. Los demás parámetros de los bloques quedan con los valores dados por defecto. Realizar las configuraciones de acuerdo a lo visualizado en el modelo de la figura 6.9.

Figura 6.9. Diagrama de bloques del bloque Subsystem del Ejemplo 2

Resultados:

• Un simulador visual de los desplazamientos ocasionados en un pórtico de un nivel en tiempo real (figura 6.10); el cual se obtendrá al ejecutar el código fuente mostrado en el siguiente script:

1 %% Visualización interactiva de desplazamientos

2 clc; clear all; close all; % Funciones de limpieza

3 load x1s

4 figure ( ' Name ' , ' Visualización interactiva de desplazamientos ' ' NumberTitle ' , ' off ' , ' units ' , ' normalized ' , ' outerposition ' ,[0 0 1 1]);

5 set(gcf , ' Color ' , ' w ' )

6 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

7 axis tight

8 x1 =15* x1s (2 ,:);

9 for k=1: length (x1s)

10 y1 =4* ones (1, length (x1s));

11 plot3 ([ x1(k) 5+ x1(k)] ,[0 0] ,[ y1(k) y1(k)], ' Color ' , ' r ' , ' LineWidth ' ,5)

12 hold on

13 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

14 plot3 ([0 x1(k)] ,[0 0] ,[0 y1(k)] ,[5 5+ x1(k)] ,[0 0] ,[0 y1(k)], ' Color ' , ' b ' , ' LineWidth ' ,5)

15 fill3 ([ -0.75 -0.75 0.75 0.75] ,[ -0.75 0.75 0.75 -0.75] ,[0 0 0 0], ' g ' )

16 fill3 ([4.25 4.25 5.75 5.75] ,[ -0.75 0.75 0.75 -0.75] ,[0 0 0 0], ' g ' )

17 axis equal

18 axis ([ -5.5 10.5 -1 1 0 4.05])

19 drawnow

20 pause (0.0125)

21 hold off

22 end

Figura 6.10. Visualización interactiva de desplazamientos del Ejemplo 2

• La representación gráfica de los historiales de respuesta de desplazamientos, velocidades y aceleraciones del sistema (figura 6.11), la cual se obtiene al hacer doble clic sobre el bloque Scope, implementado en el diagrama de bloques del modelo (figura 6.8).

Figura 6.11. Visualización gráfica de desplazamientos, velocidades y aceleraciones del Ejemplo 2


Capítulo7Sistemas de un grado de libertad bajo excitaciones arbitrarias mediante el uso de Matlab y Simulink

7.1 INTRODUCCIÓN

Este capítulo se centra en el modelamiento y simulación de sistemas de 1 grado de libertad sometidos a excitaciones armónicas, periódicas y arbitrarias usando diagramas de bloques con Simulink.

7.2 EJEMPLO 1. EXCITACIÓN SINUSOIDAL

Crear un modelo de Simulink para implementar la visualización de desplazamientos, velocidades y aceleraciones de un sistema de 1 grado de libertad gobernado por la ecuación diferencial de movimiento 7.1.


La fuerza f(t) = 250 sin(5t) se muestra en la figura 7.1.

Figura 7.1. Gráfica Tiempo vs Fuerza f(t) del Ejemplo 1

Considerar los parámetros de la tabla 7.1 para la simulación de este modelo.

Tabla 7.1

Configuración de parámetros de la simulación del Ejemplo 1

Solución. El diagrama de bloques del modelo se muestra en la figura 7.2.

Figura 7.2. Diagrama de bloques del Ejemplo 1

Se establecen el valor de 250 y 5 en los parámetros Amplitude y Frequency del bloque Sine Wave, respectivamente; el valor de [1] en el parámetro Numerator coefficients y las constantes [m c k] en el parámetro Denominator coefficients del bloque Transfer Fcn; el valor de 3 en el parámetro Number of Input Ports del bloque Scope; los términos x1, v1, a1 y f1 en los parámetros File name de los bloques To File. Los demás parámetros de los bloques quedan con los valores dados por defecto.

Adicionalmente, ejecutar el código fuente mostrado en el siguiente script; con la finalidad de tener los valores de las variables m, c y k almacenados en el Workspace de Matlab.

1 %% Ingreso de datos

2 clc; clear all; close all; % Funciones de limpieza

3 m = 21.63; % Masa

4 c = 71.2649; % Coeficiente de amortiguamiento

5 k = 23479.8223; % Rigidez

Resultados:

• Un simulador visual de los desplazamientos ocasionados en un pórtico de un nivel en tiempo real (figura 7.3), el cual se obtendrá al ejecutar el código fuente mostrado en el siguiente script:

1 %% Visualización interactiva de desplazamientos

2 clc; clear all; close all; % Funciones de limpieza

3 load x1

4 figure ( ' Name ' , ' Visualización interactiva de desplazamientos ' ' NumberTitle ' , ' off ' , ' units ' , ' normalized ' , ' outerposition ' ,[0 0 1 1]);

5 set(gcf , ' Color ' , ' w ' )

6 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

7 axis tight

8 x1 = 15* x1 (2 ,:);

9 for k = 1: length (x1)

10 y1 = 4* ones (1, length (x1));

11 plot3 ([ x1(k) 5+ x1(k)] ,[0 0] ,[ y1(k) y1(k)], ' Color ' , ' r ' , ' LineWidth ' ,5)

12 hold on

13 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

14 plot3 ([0 x1(k)] ,[0 0] ,[0 y1(k)] ,[5 5+ x1(k)] ,[0 0] ,[0 y1(k)], ' Color ' , ' b ' , ' LineWidth ' ,5)

15 fill3 ([ –0.75 -0.75 0.75 0.75] ,[ –0.75 0.75 0.75 –0.75] ,[0 0 0 0], ' g ' )

16 fill3 ([4.25 4.25 5.75 5.75] ,[ –0.75 0.75 0.75 –0.75] ,[0 0 0 0], ' g ' )

17 axis equal

18 axis ([ –5.5 10.5 –1 1 0 4.05])

19 drawnow

20 pause (0.0125)

21 hold off

22 end

• La representación gráfica de los historiales de respuesta de desplazamientos, velocidades y aceleraciones del sistema (figura 7.4); la cual se obtiene al hacer doble clic sobre el bloque Scope, implementado en el diagrama de bloques del modelo (figura 7.2).

Figura 7.4. Visualización gráfica de desplazamientos, velocidades y aceleraciones del Ejemplo 1

7.3 Ejemplo 2. Excitación cosenoidal

Crear un modelo de Simulink para implementar la visualización de desplazamientos, velocidades y aceleraciones de un sistema de 1 grado de libertad gobernado por la ecuación diferencial de movimiento 7.2.


La fuerza f(t) = 250 cos(5t) se muestra en la figura 7.5.

Figura 7.5. Gráfica Tiempo vs Fuerza f(t) del Ejemplo 2

Considerar los parámetros de la tabla 7.2 para la simulación de este modelo.

Tabla 7.2

Configuración de parámetros de la simulación del Ejemplo 2

Solución

El diagrama de bloques del modelo se muestra en la figura 7.6.

Figura 7.6. Diagrama de bloques del Ejemplo 2

Se establecen el valor de 50 y 5 en los parámetros Amplitude y Frequency del bloque Sine Wave, respectivamente; el valor de [1] en el parámetro Numerator coefficients y las constantes [m c k] en el parámetro Denominator coefficients del bloque Transfer Fcn; el valor de 3 en el parámetro Number of Input Ports del bloque Scope; los términos x1, v1, a1 y f1 en los parámetros File name de los bloques To File. Los demás parámetros de los bloques quedan con los valores dados por defecto.

Adicionalmente, ejecutar el código fuente mostrado en el siguiente script, con la finalidad de tener los valores de las variables m, c y k almacenados en el Workspace de Matlab.

1 %% ingreso de datos

2 clc; clear all; close all; % funciones de limpieza

3 m = 21.63; % masa

4 c = 71.2649; % coeficiente de amortiguamiento

5 k = 23479.8223; % rigidez

Resultados

• Un simulador visual de los desplazamientos ocasionados en un pórtico de un nivel en tiempo real, similar al del ejemplo 1: excitación sinusoidal; el cual se obtendrá al ejecutar el código fuente mostrado en el siguiente script:

1 %% visualización interactiva de desplazamientos

2 clc; clear all; close all; % funciones de limpieza

3 load x1

4 figure ( ' Name ' , ' Visualización interactiva de desplazamientos ' ' NumberTitle ' , ' off ' , ' units ' , ' normalized ' , ' outerposition ' ,[0 0 1 1]);

5 set(gcf , ' Color ' , ' w ' )

6 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

7 axis tight

8 x1 = 15* x1 (2 ,:);

9 …

• La representación gráfica de los historiales de respuesta de desplazamientos, velocidades y aceleraciones del sistema (figura 7.7); la cual se obtiene al hacer doble clic sobre el bloque Scope, implementado en el diagrama de bloques del modelo (figura 7.6).

Figura 7.7. Visualización gráfica de desplazamientos, velocidades y aceleraciones del Ejemplo 2

7.4 EJEMPLO 3. EXCITACIÓN TRIANGULAR

Crear un modelo de Simulink para implementar la visualización de desplazamientos, velocidades y aceleraciones de un sistema de 1 grado de libertad gobernado por la ecuación diferencial de movimiento 7.3.


La fuerza f(t) se muestra en la figura 7.8.

Figura 7.8. Gráfica Tiempo vs Fuerza f(t) del Ejemplo 3

Considerar los parámetros de la tabla 7.3 para la simulación de este modelo.

Tabla 7.3

Configuración de parámetros de la simulación del Ejemplo 3

Solución:

El diagrama de bloques del modelo se muestra en la figura 7.9.

Figura 7.9. Diagrama de bloques del Ejemplo 3

Se establecen los valores [0 1 2] en el parámetro Time values y los valores [0 200 0] en el parámetro Output values del bloque Repeating Sequence; el valor de [1] en el parámetro Numerator coefficients y las constantes [m c k] en el parámetro Denominator coefficients del bloque Transfer Fcn; el valor de 3 en el parámetro Number of Input Ports del bloque Scope; los términos x1, v1, a1 y f1 en los parámetros File name de los bloques To File. Los demás parámetros de los bloques quedan con los valores dados por defecto.

Adicionalmente, ejecutar el código fuente mostrado en el siguiente script; con la finalidad de tener los valores de las variables m, c y k almacenados en el Workspace de Matlab.

1 %% ingreso de datos

2 clc; clear all; close all; % funciones de limpieza

3 m = 21.63; % masa

4 c = 71.2649; % coeficiente de amortiguamiento

5 k = 23479.8223; % rigidez

Resultados:

• Un simulador visual de los desplazamientos ocasionados en un pórtico de un nivel en tiempo real, similar al del ejemplo 1: excitación sinusoidal; el cual se obtendrá al ejecutar el código fuente mostrado en el siguiente script:

1 %% Visualización interactiva de desplazamientos

2 clc; clear all; close all; % Funciones de limpieza

3 load x1

4 figure ( ' Name ' , ' Visualización interactiva de desplazamientos ' ' NumberTitle ' , ' off ' , ' units ' , ' normalized ' , ' outerposition ' ,[0 0 1 1]);

5 set(gcf , ' Color ' , ' w ' )

6 set(gca , ' Color ' , ' w ' , ' Visible ' , ' off ' )

7 axis tight

8 x1 = 15* x1 (2 ,:);

9 …

• La representación gráfica de los historiales de respuesta de desplazamientos, velocidades y aceleraciones del sistema (figura 7.10), la cual se obtiene al hacer doble clic sobre el bloque Scope, implementado en el diagrama de bloques del modelo (figura 7.9).

Figura 7.10. Visualización gráficas de desplazamientos, velocidades y aceleraciones del Ejemplo 3

Покупайте книги и получайте бонусы в Литрес, Читай-городе и Буквоеде.

Участвовать в бонусной программе

Жанры и теги

Возрастное ограничение:
0+
Объем:
599 стр. 649 иллюстраций
ISBN:
9789972455339
Издатель:
Правообладатель:
Bookwire
Формат скачивания:
Текст
Средний рейтинг 5 на основе 1 оценок
Текст
Средний рейтинг 5 на основе 3 оценок
Текст PDF
Средний рейтинг 5 на основе 1 оценок
Текст, доступен аудиоформат
Средний рейтинг 5 на основе 1 оценок
По подписке
Текст, доступен аудиоформат
Средний рейтинг 5 на основе 4 оценок
По подписке
Текст PDF
Средний рейтинг 0 на основе 0 оценок
Текст PDF
Средний рейтинг 5 на основе 1 оценок
Текст
Средний рейтинг 4,2 на основе 10 оценок
По подписке
Аудио
Средний рейтинг 0 на основе 0 оценок