Sign inSign up

lyubomyrd/haron

By lyubomyrd

•Updated over 7 years ago

Image
0

882

lyubomyrd/haron repository overview

⁠HaRoN

The goal of this educational project is to develop a rescue robot.

License

⁠Docker

For convenience it is recommended to use Docker containers. Please follow these steps to run Docker container on your machine.

  1. Install Desktop OS Ubuntu Trusty or Xenial on your machine or in virtual machine
  2. Install Docker-CE using these instructions⁠
  3. In order to executed Docker without sudo please execute
sudo usermod -aG docker $USER
  1. Logout and login to your machine again :)
  2. For development the following⁠ docker container was used.
  3. To pull it please run
docker pull lyubomyrd/haron:latest
  1. Use the following command to start Docker container
docker run -it --privileged --name haron_dev -p 8080:8080 -e DISPLAY -e LOCAL_USER_ID=$(id -u) -v /tmp/.X11-unix:/tmp/.X11-unix:rw lyubomyrd/haron:latest
  1. Black window of Terminator⁠ UI console will appear after some time.
  2. You can use it's features to split terminal window⁠ into smaller terminals and run few commands in parallel (Ctrl+Shift+E).
  3. 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 haron_dev

After some time Terminator window will reappear.

⁠IDEs

In case if you want to run PyCharm in Docker container please run

pycharm

To launch QtCreator please run

qtcreator

For VSCode type

vscode

⁠Designation:

The following designation will be used through the rest of the repository

Remote PC: R

Turtlebot(Raspberry): T

⁠Turtlebot start

Turtlebot is controller using ROS which is installed both on PC and Raspberry.

To execute the bringup sequence You have to perform the following steps:

⁠Steps that has to be performed inside the docker container's terminator window

1R) roscore

Connect to RPI (note that IP address might be different - this depends on network settings)

2R) ssh [email protected]

(Password: turtlebot)

Now You have a separeate window inside the terminator that controlles Raspberry, therefore Tx notation corresponds to input into this window.

3T) roslaunch turtlebot3_bringup turtlebot3_robot.launch

4R) roslaunch turtlebot3_bringup turtlebot3_remote.launch

⁠Teleoperation

1R) roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

⁠Mapping

Create a map:

1R) roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping

Save a map (do NOT close the previous window vefore the next step):

2R) rosrun map_server map_saver -f ~/map

After this step You can close 1R and 2R from mapping.

⁠Navigation

1R) roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml

⁠Troubleshooting

See wiki for Troubleshooting

Tag summary

Content type

Image

Digest

Size

2 GB

Last updated

over 7 years ago

docker pull lyubomyrd/haron