Robert mobile robot
For convenience it is recommended to use Docker containers. Please follow these steps to run Docker container on your machine.
- Install Desktop OS Ubuntu Trusty or Xenial on your machine or in virtual machine
- Install Docker-CE using these instructions
- In order to executed Docker without sudo please execute
sudo usermod -aG docker $USER
- Logout and login to your machine again :)
- For development the following docker container was used.
- To pull it please run
docker pull ucuapps/robert:latest
- Use the following command to start Docker container
docker run -it --name robert_dev -p 8080:8080 -e DISPLAY -e LOCAL_USER_ID=$(id -u) -v /tmp/.X11-unix:/tmp/.X11-unix:rw ucuapps/robert:latest
- Black window of Terminator UI console will appear after some time.
- You can use it's features to split terminal window into smaller terminals and run few commands in parallel (Ctrl+Shift+E).
- If you want to run real robot add user to dialout group and restart Docker container
sudo usermod -a -G dialout user
In order to relaunch docker container after you closed Terminator window or rebooted machine please run
docker start robert_dev
After some time Terminator window will reappear.
In case if you want to run PyCharm in Docker container please run
pycharm
To launch QtCreator please run
qtcreator
For VSCode type
vscode
In order to debug URDF please launch
roslaunch robert_launch view_urdf.launch
To have a look on the state of the robot in RViz run
roslaunch robert_launch rviz.launch
Start office simulation
roslaunch robert_launch simulation.launch
Start UCU simulation
roslaunch robert_launch simulation.launch world_file:=ucu
Launch navigation stack (in order to launch second command split Terminator window by two using Ctrl-Shift-E. More information on Terminator shortcuts can be found here)
roslaunch robert_launch navigation.launch
Start navigation in UCU simulation
roslaunch robert_launch navigation.launch map_file:=ucu
In RViz which appear after some time select "2D Nav Goal" and robot will travel to it. Like it is shown in this video.
Start simulation
roslaunch robert_launch simulation.launch
Launch gmapping node
roslaunch robert_launch gmapping.launch
Start Robot Steering RQT plugin to drive robot around
rosrun rqt_robot_steering rqt_robot_steering
Save map to file
rosrun map_server map_saver -f <map_file_name>