ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

One thing to consider is if nodes need significant data transfer between them (point clouds etc..) then having each process running on a different computer will mean lots of traffic on the network - nodes that all need the same data running on different computers will mean duplicating the data over the network. The raspberry pi does not have great usb, and the ethernet adapter uses it as well, so I would be cautious about using lots of raspberry pis networked together. The ethernet on the odroid boards is better (they have a dedicated connection to the processing chip rather than sharing usb).

Having stuff distributed in ROS is relatively easy, but it makes sense to try and divide things up into nodes that share the same data, and run them on one device if the data is large, with higher level messages (less frequent and less data) communicating between devices where possible - its classic parallel processing issues.