In a project, I am building a system with multiple arduino dues connected to sensors that read a variety of data like temperature, pressure etc. I want to send all of these values to a central Hub computer for processing into a controller. To connect all components for data sharing, I use the ZCM protocol which is found at the following links:
Using the zcm networks allows for UDP Multicast but I cannot seem to include the zcm library into the arduino code to create these zcm objects ti publish onto the network. ZCM is written in C but when I try to include the .ZIP library, it never seems to find the header file which means I am unable to execute any functions to create structs or objects. I have attached an image on what is seen in the IDE.
Welcome to the forum
Maybe this helps with the basic of libraries?
If that does not help, please
- copy the error message instead of a screen shot
- confirm your sketch location
- confirm your library location (there should be a folder called libraries in the same folder as your projects)
- confirm the file exists
As reference you can install a library from the library manager and compare the sub folder and file structure.
Did you find any example of an arduino using ZCM ? if the answer is no, there is a good chance that you will have to port this library to Arduino by yourself, and more specifically to an Arduino DUE.
IMO there are more simple ways to connect several DUEs together, and one of these DUEs to a PC as a hub within a star network .
Cable lengths will be an major concern. If cable lengths do not exceed a few meters long, USART communication would be the simpler with hardware Serial ( 5 hardware serial are available for each DUE) and software serial (there is a software serial library for DUE by antodom on github) if more than 5 Serial com are needed. On the other hand, if cable lenghts are bigger, CAN buses are the best choice (2 CAN buses per DUE are available by adding CAN transceivers).
This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.