How do I integrate ZeroMQ library with Matlab. I want my Matlab program to be a subscriber of ZeroMQ publisher.

69 visualizaciones (últimos 30 días)
How do I integrate ZeroMQ with Matlab. I would like my Matlab program to be a subscriber of ZeroMQ message, which is a publisher. Thank you.

Respuestas (2)

Will Grant
Will Grant el 12 de En. de 2017
Editada: Will Grant el 12 de En. de 2017
From this blog post, it appears that the usage of JeroMQ (a pure-java implementation of ZeroMQ) is the easiest route to go.
1. Clone the repo from https://github.com/zeromq/jeromq
2. Install maven
3. get into the repository root and build with
mvn package
4. Put the .jar file [somewhere]
5. Add [somewhere] to your javaclasspath
6. Import the package and enjoy!
Edit
Adding the following useful links with example matlab code

Ivan Kostin
Ivan Kostin el 11 de Jun. de 2021
From this post we can understand that the latest Matlab versions do not work with the latest JDK versions. Only 7 or 8 are supported.
But last version of JeroMQ from gihub seems to use JDK with version >=9. Because after I ran the example from git I got exception like this:
java.lang.NoSuchMethodError: java.nio.ByteBuffer.clear()Ljava/nio/ByteBuffer;
at zmq.Signaler.send(Signaler.java:134)
...
I wonder if anyone has solved the JeroMQ in Matlab problem. Seems impossible.
  1 comentario
Anil GURSES
Anil GURSES el 29 de Mzo. de 2022
Editada: Anil GURSES el 29 de Mzo. de 2022
It is not impossible. You need to change your default JDK to 1.8 and compile it again with the command below.
mvn clean package
I tested this on Matlab R2022a and it works fine. If that doesn't work somehow, just change the compiler properties inside the pom.xml from 8 to 1.8(It's the same thing but give it a try). Lastly, add this to properties
<maven.compiler.release>8</maven.compiler.release>
or
<maven.compiler.release>1.8</maven.compiler.release>

Iniciar sesión para comentar.

Categorías

Más información sobre Simulink PLC Coder en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by