miércoles, 31 de octubre de 2012

EJERCICIO 13

BLOQUE SIMOUT en SIMULINK Matlab en simulación de Temperatura en Farenheit







Este bloque permite visualizar en el WORKSPACE los valores guardados en la variable YOUT, TOUT
 u otra variable definida.
Los cambios en los parámetros de simulación permitirán obtener mayor o menor cantidad de valores.

En este ejemplo simularemos la ecuación de la Temperatura en grados Farenheit con valores de entrada en grados Celcius.






En Workspace llamamos a la variable yout y obtenemos los valores de la temperatura entre 0 y 15 grados celcius. Se puede aumentar el rango aumentando el tiempo de simulación.







Utilizando en el workspace de Matlab plot(tout,yout) se obtiene una gráfica que se puede guardar en un archivo jpg, modificarle los colores del fondo, colocarle etiquetas, etc.



martes, 30 de octubre de 2012

EJERCICIO 12

Modelo de ecuaciones diferenciales sencillas

d(y)/dt = 1

Solución de la ecuación diferencial: y(t) = t +A







d^2(y)/dt^2= 1



Solución de la ecuación diferencial: y(t) = 0.5*t^2+A*t+B Y y'(t)= A*t




EJERCICIO 11

PÉNDULO SIMPLE

Modelar el comportamiento de un péndulo simple.

El péndulo simple se rige por una ecuación diferencial, que se obtuvo luego de realizar las consideraciones físicas. Se considero sen(theta)=theta para theta menor a 1

Con una solución de la forma:


Considerando g/l=5, condiciones iniciales theta(t=0) = Pi/2 y para la derivada d(theta(t=0)) = 2*Pi.
Theta es el angulo inicial y su derivada la velocidad angular, luego de tener la simulación se puede probar con otros parámetros de borde y verificar el comportamiento del sistema.















lunes, 29 de octubre de 2012

EJERCICIO 10

BLOQUE RAMP

Simula expresiones de la forma y(t)= m*t+b


Slope Pendiente de la rampa.
Start time Tiempo en el cual se inicia la rampa.
Initial output Valor inicial de la rampa.

Para este caso en particular la salida es una funcion y(t)= t, ya q m=1 y b=0

EJERCICIO 9

Simulacion utilizando bloque CONSTANT como un vector escalar 1-D




EJERCICIO 8
Calculos de temperatura

function t_f=temperatura_celsius(x);
t_f=(5/9)*x+32
% esta funcion determina la temperatura en farenheit dada en celsius



>> x=[10 20 30 40]



x =

    10    20    30    40



>> temperatura_celsius(x)

t_f =

   37.5556   43.1111   48.6667   54.2222


ans =

   37.5556   43.1111   48.6667   54.2222

EJERCICIO 7

Archivos tipo m.

Con expresiones functions.


function p=f(x);
p=x.^2
% esta funcion determina el cuadrado de x

Esta función creada por usuario se ha guardado en un archivo tipo .m, llamado f.m.
Es importante tomar el nombre que genera Matlab por defecto con el fin de no crear conflictos si se tienen gran cantidad de funciones.

>> x=[1 2 3 4 5 6 7 8 9 10]

x =

     1     2     3     4     5     6     7     8     9    10

>> f(x)

p =

     1     4     9    16    25    36    49    64    81   100


ans =

     1     4     9    16    25    36    49    64    81   100


>> x=[1 2; 1 2]

x =

     1     2
     1     2

>> f(x)

p =

     1     4
     1     4


ans =

     1     4
     1     4

>> x=[1 2 3; 4 5 6; 7 8 9]

x =

     1     2     3
     4     5     6
     7     8     9

>> f(x)

p =

     1     4     9
    16    25    36
    49    64    81


ans =

     1     4     9
    16    25    36
    49    64    81


EJERCICIO 6

Realize un modelo para calcular la temperatura en Farenheit según entradas con temperaturas en grados celsius.




 Sabemos que la expresión general para calcular la temperatura viene dada por F=5/9C+32

 Utilizamos los bloques:

MUX: Permite ingresar valores de entrada, estos pueden ser escalares, matrices, funciones.
DEMUX: Permite obtener los valores de salida
DISPLAY: Muestra en pantalla los valores obtenidos







Se puede crear en Matlab un archivo .m creando una function.




EJERCICIO 5
Generar un modelo con una señal de onda cosenoidal.

Para general una señal de onda cosenoidal se utiliza el bloque para una señal senoidal y posteriormente de realizar un desfase de la onda en Pi/2

Podemos utilizar una sola hola de trabajo.



Se tiene como gráficas de salida:















EJERCICIO 4

Utilizar el bloque PRODUCT como divisor.

Tenemos el mismo planteamiento del ejercicio 3. Sin embargo, se va utilizar el bloque product como divisor. Es decir tendríamos la expresión:

y(t)= sen(t)* (1/sen(t))*5+3

Con un análisis de la expresión tenemos que y(t)= 5+3=8. Así que si el arreglo esta bien, nos debe resultar una gráfica constante y(t)=8


EJERCICIO 3

Se puede obtener infinitos modelos de nuestra ecuación inicial y(t) = kx(t)+b. Se pueden multiplicar las funciones de entrada, utilizando un bloque multiplicador.

y(t) = sen(t)*sen(t)*5+3

Importante:
Gain multiplica un elemento escalar con una matriz o vector!
Product multiplica o divide elementos o matrices. Se pueden colocar mas de 2 entradas.
EJERCICIO 2

Considere una función de la forma y(t) = k*x(t) + b y obtenga la simulación.

k=5
x(t) va ser la suma de dos funciones, en este caso sen(t) y step (representa la función paso)
b=3



Aquí se ha utilizado los bloques necesarios de la libreria de Simulink, SINE WAVE, STEP, CONSTANT, GAIN, SCOPE, SUME


SINE WAVE: obtenemos una señal de entrada función seno
STEP: obtenemos una señal de entra función Paso
CONSTANT: obtenemos una variable escalar
GAIN: obtenemos un elemento multiplicador
SCOPE: obtenemos el resultado 
SUME: obtenemos una suma o resta








EJERCICIO 1

Sea y(t) = k. x(t), siendo k una constante y x(t) una función de entrada. Obtenga la configuración para realizar la simulación en Simulink-Matlab.




Siendo x(t) una función de entrada o elemento de entrada
K es una constante distinta de cero que multiplica la función de entrada, por lo que se utiliza el operador
Gain
Por ultimo tenemos nuestra función y(t) de salida, que es el resultado de la simulación en si.

Este ejercicio básico, podemos modificarlo de la siguiente forma:

x(t) = sen(t)
k=2
y(t)=?














Haciendo doble click sobre SCOPE tenemos la función Sen(t)*2








MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software matemático que ofrece un entorno de desarrollo integrado(IDE) con un lenguaje de programación propio (lenguaje M). 
Está disponible para las plataformas UnixWindows y Mac OS X.
Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware. El paquete MATLAB dispone de dos herramientas adicionales que expanden sus prestaciones, a saber, Simulink (plataforma de simulación multidominio) y GUIDE (editor de interfaces de usuario - GUI). Además, se pueden ampliar las capacidades de MATLAB con las cajas de herramientas(toolboxes); y las de Simulink con los paquetes de bloques (blocksets).



Simulink es un entorno de programación visual, que funciona sobre el entorno de programación Matlab.
Es un entorno de programación de más alto nivel de abstracción que el lenguaje interpretado Matlab (archivos con extensión .m). Simulink genera archivos con extensión .mdl (de "model").
Simulink viene a ser una herramienta de simulación de modelos o sistemas, con cierto grado de abstracción de los fenómenos físicos involucrados en los mismos. Se hace hincapié en el análisis de sucesos, a través de la concepción de sistemas (cajas negras que realizan alguna operación).
Se emplea arduamente en todas las ramas de la ingeniería, físicaquímica.


Para utilizar con éxito Simulink es importante que el estudiante tenga una sólida base conceptual del fenómeno que quiere modelar. Es decir, conocer el comportamiento de las ecuaciones matemáticas que rigen los procesos a estudiar.