ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

Networked of microcontrollers

asked 2020-12-24 12:29:41 -0600

Hello everyone.

Could you please guide me to the best practice for connecting 1 computer running ROS and a number of networked microcontrollers ~40? I am connecting a number of Arduino (MicroPro) controllers via ENC28J60 to a network. Each controller needs to receive a task from the computer and return feedback values for that task.(Task example are, operate a servo, activate a relay, or something similar to this).

My approach to this would be to have a node for every uC on the main computer. Each node would subscribe to topic to receive a task and send this task to a specific IP, it would also receive feedback from same IP and publish it to a new topic. Should there just be two topics and all nodes use them together or should there be separate topics for each node(one published and one subscribed topic for each node)?

Is there a better way of doing this? Is ros or ros2 better for this?

Thanks for any help and constructive criticism in advance.

edit retag flag offensive close merge delete


Micro-ROS will not fit in the 8bit uC. As @duck-development suggested, MQTT may be a good idea

lukicdarkoo gravatar image lukicdarkoo  ( 2020-12-29 06:03:24 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2020-12-25 06:35:35 -0600

duck-development gravatar image

I think the name task is to general.

Because at the end you send an bool(for relais) Task has a big Semantik.

To connect the Mc arduino 8 bit. You may think to use an mqtt barocker vor the communication. And write nodes for reading the relevant data topics to be avaliable in you ros environment.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools



Asked: 2020-12-24 12:29:41 -0600

Seen: 333 times

Last updated: Dec 25 '20