Cómo alimentar datos de ZeroMQ a Simulink vía S-functions

Este ejemplo se basa en nuestro ejemplo anterior de S-function y muestra cómo alimentar datos desde un publicador ZeroMQ a Simulink vía S-functions.

Recomiendo no usar cppzmq porque Simulink tiende a tener problemas con las excepciones de C++. En su lugar, usamos la API C de ZeroMQ.

Este ejemplo en particular recibe un valor double desde un publicador ZeroMQ (como una cadena, tal como "-10.2345") y lo envía a un puerto de salida de Simulink.

Recomiendo usar simulation stop time = inf aquí. Esto significa, sin embargo, que los scopes no funcionan correctamente. Usando display

Configuración del ejemplo ZMQ de Simulink

Implementación de la S-function

Compila esto usando

Productor de datos de prueba

Este simple programa C++ envía valores al publicador ZeroMQ.

y ejecútalo en segundo plano.


Echa un vistazo a artículos similares por categoría: Matlab/Simulink C/C++