# Fichero .mat en Matlab/Simulink



## DeSoRdEn (Mar 24, 2008)

Hola,
En un sistema en Simulink, quiero que la entrada sea un fichero .mat con 64 valores que son en 64 puntos diferentes del tiempo, y su salida quiero que sea los 64 resultados correspondientes respecto a esos 64 valores del tiempo. 
No sé como implementar ese fichero y conseguir este propuesto, espero algún consejo.
Muchísimas gracias por vuestra ayuda.
Un saludo.


----------



## Ardogan (Mar 26, 2008)

Bueno, para crear el archivo te recomiendo lo hagas en matlab.
Tiene que ser una matriz de (al menos) 2 filas. En la 1ra fila va tiempo, en las siguientes los valores de las variables correspondientes a ese tiempo.

fila 1 = tiempo     = 0   0.1  0.2  0.3  0.4
fila 2 = variable1 = 15  12     8    -6  0.453
fila 3 = variable2 = -------------------------------- (llenar con los valores que quieras)
-----
fila n = variablen = --------------------------------


suponiendo que sea una sola variable a ingresar al simulink, escribís en el matlab

A = [0:0.1:0.5; valoresVariable];
save nombrearchivo A

Ahí ya tenes un archivo con la matriz guardada.
En simulink metés el bloque  Simulink -> Sources -> from file
y para verificar meté un Scope (Simulink -> Sinks-> Scopes)

Abrí el bloque FromFile y especificá el nombre de archivo que creaste, y un tiempo de muestreo que sea igual al que usaste en la matrriz A. Si no lo ponés igual pasa lo siguiente en el Scope te van a aparecer valores nuevos de tiempo y el valor de la variable en ese instante va a ser la interpolación lineal de los valores adyacentes.
En castellano: si los tiempos de A vienen [... 4 5 6 ... ] y la variable viene [... 6 5 4...] y en el bloque FromFile especificas tiempo de muestreo = 0.5 (en vez de 1 que es el tiempo de muestreo de la matriz) en el scope vas a ver [... 4 4.5 5 5.5 6 ...] como tiempos y [... 6 5.5 5 4.5 4...] como valores de la variable.

Después, una vez que metiste el FromFile le hiciste todo el procesamiento que quisiste en el Simulink, y querés guardar el resultado en un archivo, podés usar el bloque ToFile.

Si entendiste bárbaro, sino avisame que pego unas figuras.
Saludos


----------



## DeSoRdEn (Mar 26, 2008)

Gracias por la explicación, aunque finalmente lo hice con el bloque Signal Builder que metiendole los parametros de valores con respecto al tiempo genera la señal. Creo que este bloque empezó a estar disponible en el Simulink 5.
Muchas gracias por tu interés.
Un saludo.


----------

