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

Revision history [back]

click to hide/show revision 1
initial version

ROS is a distributed system. All nodes run in parallel, and each is listening on its inputs for new messages. When a message arrives, the node processes it. The node may then publish one or more new messages on output(s), which will then cause other nodes to do stuff.

In general, the overall system does not have "a state machine" to coordinate all nodes. More typically, what happens is that a human sends a command/request to a single node, and additional messages propagate outward from that event.

Google for distributed system or publish/subscribe to learn more about this kind of architecture.