Comunicação VRC

De LCAD
Ir para: navegação, pesquisa

The plan for the VRC is to:

  • run a ROS master (aka roscore) on the Simulation Computer;
  • run ROS nodes on the Simulation Computer that are the sources and sinks for all data and commands that interact with simulation;
  • provide full network connectivity (all IP traffic) among the Simulation Computer, the Field Computer, and the OCU (aka OCS);
  • manipulate (induce latency, loss, etc.) communication between the OCU and the Simulation Computer and between the OCU and the Field Computer; and
  • NOT manipulate communication between the Field Computer and the Simulation Computer.

So, you can run ROS nodes on the Field Computer and/or the OCU that work with the ROS master on the Simulation Computer to communicate with the ROS nodes on the Simulation Computer.

ROS communication should work just fine between the Field Computer and the Simulation Computer, as those two machines are connected by a high-bandwidth backplane and there's no manipulation on the link.

But you're probably right to worry about how ROS communication will behave between the OCU and the Field Computer or Simulation Computer. We're not requiring or even recommending that you use ROS for that communication link. It might better to, e.g., use ROS betwen the Simulation Computer and the Field Computer and then run your own, presumably delay/drop-tolerant, communication system between the Field Computer and the OCU.

You might first try UDPROS to see how far that gets you over TCPROS (note that UDPROS is implemented in roscpp but not in rospy).