Overview

This page will take you through installing the MIRO Developer Kit (MDK) and installing ROS (and Gazebo, if required).

The supported software stack for MIRO is ROS Kinetic / Gazebo 7; however, other configurations may also be possible.

Install MDK

On your workstation, unzip the MDK (MIRO Developer Kit) to a directory of your choice. This directory will be denoted ~/mdk throughout the documentation.

Test

You should now be able to run any of the tools in the MDK by changing into the bin folder for your machine's system. For example, here we test the miro_maint tool on a 64-bit Debian system.

$ cd ~/mdk/bin/deb64 $ ./miro_maint ________________________________________________________________ MIRO tools [miro_maint] Copyright (C) 2017 Consequential Robotics ________________________________________________________________ ...

Install ROS

The Robot Operating System (ROS) is a communications layer (amongst other things) that is popular in robotics R&D. MIRO exposes its interface as a ROS node, so you will need to install ROS on your workstation in order to communicate with the robot.

There are many web resources that will help you to install ROS (you might want to look at this, for example). This page is a quick install recipe for Linux Ubuntu 16.04.1 (Xenial) using ROS "kinetic". The procedure will probably be similar for other systems and versions, but watch out for minor changes that might be needed to path names (such as the token "kinetic"!).

Base installation

Follow the instructions at ros.org to install ROS kinetic on your workstation.

Or, roughly, enter the commands below. This will take, like, a billion years to complete.

$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' $ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116 $ sudo apt-get update $ sudo apt-get install ros-kinetic-desktop ros-kinetic-image-transport-plugins
If installing for Linux Mint, you can pretend to the server that you are installing for Ubuntu, and all goes well. Replace the text $(lsb_release -sc), above, with the text xenial.

Configure installation for use with MIRO

If your robot or robots are to find the ROS master node on your workstation, they will need its IP address. To this end, you should now equip your workstation with a fixed IP.

Add the following lines to the file ~/.profile or ~/.bashrc, as preferred, on your workstation.

"~/.profile"
# configuration export MIRO_PATH_MDK=~/mdk export ROS_IP=[WORKSTATION_IP] export ROS_MASTER_URI=http://localhost:11311 # usual ROS setup source /opt/ros/kinetic/setup.bash # make our custom messages available to ROS/python export ROS_PACKAGE_PATH=$MIRO_PATH_MDK/share:$ROS_PACKAGE_PATH export PYTHONPATH=$MIRO_PATH_MDK/share:$PYTHONPATH

Replace the token [WORKSTATION_IP] with the fixed IP you have chosen for your workstation (and check that your MDK is indeed installed at ~/mdk, or else change that path as well).

Log out and back in (~/.profile) or just restart bash (~/.bashrc) to cause the above to take effect.

Test

You should now be able to run the ROS core as follows.

$ roscore ... Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. started roslaunch server http://192.168.1.100:41666/ ros_comm version 1.12.2 SUMMARY ======== PARAMETERS * /rosdistro: kinetic * /rosversion: 1.12.2 NODES auto-starting new master process[master]: started with pid [21504] ROS_MASTER_URI=http://192.168.1.100:11311/ setting /run_id to a617fb4a-85d4-11e6-885b-74d02bce982a process[rosout-1]: started with pid [21517] started core service [/rosout]

Leave it running

You should leave the ROS master running on your workstation, because we'll be using it when we Commission MIRO.

Install Gazebo

On your workstation, install the robot simulator Gazebo only if you plan to work with a simulated MIRO robot. If you plan to work with physical MIRO, you do not need the simulator.

There are many web resources that will help you to install Gazebo. This page is a quick install recipe for Linux Ubuntu 16.04.1 (Xenial) using ROS "kinetic" and Gazebo 7. The procedure will probably be similar for other systems and versions, but watch out for minor changes that might be needed to path names.

Base installation

To install Gazebo, enter the commands below. Linux Ubuntu 16.04.1 will give you Gazebo 7.0.

$ sudo apt-get install gazebo7 libgazebo7-dev
Since Ubuntu 16.04, the latter part libgazebo7-dev ought not to be necessary since you have already installed ros-kinetic-desktop at Install ROS, but it does no harm.

Configure installation for use with MIRO

Add the following lines to the file ~/.profile or ~/.bashrc, as preferred, on your workstation.

"~/.profile"
# usual Gazebo setup source /usr/share/gazebo/setup.sh # announce MIRO resources to Gazebo export GAZEBO_RESOURCE_PATH=$MIRO_PATH_MDK/share:${GAZEBO_RESOURCE_PATH}

Log out and back in (~/.profile) or just restart bash (~/.bashrc) to cause the above to take effect.

Test

You should now be able to invoke the simulator as follows.

$ gazebo ...
If the Gazebo window appears and then disappears immediately, you may have a problem with your graphics driver. You may find more information at the bottom of dmesg.