Off-board

In this profile, the controller runs on a workstation attached to the same (usually wireless) network. This allows the use of more computationally-demanding controllers than the on-board computer can handle. Other than that the controller runs on a different computer (rather than the built-in Raspberry Pi) this profile is used in the same way as "on-board".

Getting Started

To get started with this profile, you need first to connect your robot to a network. Use MiRoapp to note down the network address ("IP address") at which MiRo has connected.

Now, on a workstation on the same network, install ROS, then install the MDK (the MDK version you install must match the version of the MDK on your robot, which you can view using MiRoapp).

To connect to the robot, set the value of MIRO_ROBOT_IP before you source ~/mdk/setup.bash in your .bashrc, as follows.

$ export MIRO_ROBOT_IP=x.x.x.x $ source ~/mdk/setup.bash ________________________________________________________________ Sourcing mdk/setup.bash... ... Local network address: 192.168.1.100 (set from miro_get_dynamic_address()) Robot network address: x.x.x.x (set explicitly) ROS master address: http://x.x.x.x:11311 (set from MIRO_ROBOT_IP) ... ________________________________________________________________

You can see above that the network address provided in MIRO_ROBOT_IP has been used to determine the address of the ROS master. You should replace the token x.x.x.x with the network address of your robot recovered from MiRoapp.

You can now control MiRo as follows.

$ cd ~/mdk/bin/shared $ ./client_test.py yaw ...

You will see the robot swing its head from side to side, and you can use the client as a starting point for your own development, or use one of the other examples or templates—see Examples.

For more detailed network configuration information, see Configure Network.