Matlab - Conexion entre Matlab y Simulink (POR FAVOR!!!!)

 
Vista:

Conexion entre Matlab y Simulink (POR FAVOR!!!!)

Publicado por David (1 intervención) el 14/12/2004 19:21:42
Hola, estoy programando un sistema de comunicaciones digitales en matlab, y para el apartado de modulacion me interesaria mas usar los bloques ya hechos de simulink. El caso es que el programa corre en una GUI y lo que querria es poder usar un modelo de simulink (por ejemplo para la modulacion ASK) como si fuese una funcion a la que le paso la señal a modular y que me devolveria la señal modulada, pero todo esto sin que aparezca el simulink. Si a alguien se le ocurre algo me vendria muy bien. GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Utilizar un modelo de Simulink como función en una GUI

Publicado por Alejandro (145 intervenciones) el 06/10/2023 16:46:11
¡Hola, David! Puedes lograrlo utilizando el bloque "Modelo de Simulink" en tu interfaz gráfica de usuario (GUI). Aquí hay una guía paso a paso:

1. Creación del modelo de Simulink:
- Abre Simulink y crea un modelo que contenga tus bloques de modulación (por ejemplo, bloques ASK). Configura las entradas y salidas según sea necesario.

2. Guardar el modelo de Simulink:
- Guarda tu modelo de Simulink en un archivo `.slx` o `.mdl`.

3. Dentro de tu GUI (código MATLAB):
- Utiliza el bloque "Modelo de Simulink" en tu GUI. Puedes agregar este bloque desde GUIDE o escribir el código manualmente en la función que controla tu GUI.

1
2
3
4
5
6
7
% Dentro de la función que controla tu GUI
function miGUI_OpeningFcn(hObject, eventdata, handles, varargin)
    % Otros códigos iniciales...
 
    % Configurar el bloque "Modelo de Simulink"
    set_param('nombre_del_bloque_modelo', 'LinkStatus', 'none');  % Desvincular el modelo para evitar que aparezca
end

Asegúrate de reemplazar `'nombre_del_bloque_modelo'` con el nombre real de tu bloque "Modelo de Simulink". Puedes encontrar el nombre del bloque seleccionándolo y verificando el campo "Nombre del bloque" en la ventana "Inspección de bloque".

4. Llamada al modelo de Simulink:
- Cuando desees modular una señal, puedes llamar al modelo de Simulink desde tu función principal.

1
2
3
4
5
6
7
8
9
10
function senalModulada = modularSenal(senalOriginal)
    % Configurar los parámetros de entrada al modelo de Simulink
    set_param('nombre_del_bloque_modelo', 'InputSignal', 'senalOriginal');
 
    % Ejecutar el modelo de Simulink
    simOut = sim('nombre_del_modelo_simulink');  % Reemplaza 'nombre_del_modelo_simulink' con el nombre real de tu modelo
 
    % Obtener la señal modulada desde la salida del modelo
    senalModulada = simOut.senalModulada;
end

De nuevo, reemplaza los nombres con los reales.

Esto te permite utilizar un modelo de Simulink como si fuera una función sin que aparezca la interfaz gráfica del modelo. Asegúrate de configurar correctamente los nombres de tus bloques y parámetros según tu configuración específica. ¡Espero que esto sea útil!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar