Interface/communicate data between SIMULINK and a C-program running on the same computer

Hey everyone! I'm very new to this so, please bear with me.
I'm working on a C-program that is supposed to control a small fluid system (read pressures and actuate valves, etc.). I need to simulate a plant model in SIMULINK/SIMSCAPE that can be controlled by the C-program. I'm trying to figure out how I would setup the model such that it can communicate and transfer live data with the C-program.
Things like, send .csv sensor data over to the C-program and accept HIGH/LOW signals from it. Any assistance is appreciated. Thank you!

 Respuesta aceptada

If you have the source code for the C program, the best approach is to create a new Simulink block that contains your C code modified to be a C function. The inputs to the C-Function would be the outputs of the plant model, and the return vaues from the C function are the inputs to your plant model.
THe easiest way to create this Simulink block that contains your C code is with the Simulink C Caller block:
Thanks.
Mark.

1 comentario

Thank you for the answer, Mark!
I have the source code in C however, it's a complicated program. I'm not really experienced with C, only MATLAB.
There're about 9 source code files and 5 header files. Is it plausible in SIMULINK to do what you suggested for a program like this?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Simscape Fluids en Centro de ayuda y File Exchange.

Productos

Versión

R2018b

Preguntada:

el 25 de Jun. de 2020

Comentada:

el 27 de Jun. de 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by