Install Turtle Rover ROS packages

Last updated 22 days ago

Here is tutorial how to build ROS packages in your ROS environment on Turtle Rover

Prepare your Turtle Rover

First connect your device to Turtle Rover's console via SSH

Next step is to establish Internet connection or plug-in Turtle Rover's RaspberryPi directly to your router

Make sure if catkin workspace has been created correctly.

Packages installation

First install git tools in your environment to has possibility to clone repository from TurtleRover GitHub

$ sudo apt update
$ sudo apt install git

Next you need to move to /turtle_ws/src folder and clone repository there.

$ ~/turtle_ws/src
$ git clone https://github.com/TurtleRover/tr_ros.git

Install system dependencies of downloaded packages with the rosdep tool

$ rosdep install --from-paths src --ignore-src

Move to turtle_ws directory and build packages in your workspace.

$ ~/turtle_ws
$ catkin_make

if you used catkin build to initialize catkin workspace you need to use catkin build instead of catkin_make.

That's it! Our packeges successfully installed

Test node on your Turtle Rover

Now your rover is ready to development with ROS. In this paragrahp we will show you how to use our packages.

Your node is built and ready for running, but before you run it, don't forget to load some environment variables or make sure if you already added workspace's source to .bashrc file.

$ source ~/turtle_ws/devel/setup.bash

Run ROS master on RaspberryPi.

$ roscore

Run first node called tr_hat_bridge to open communication between RaspberryPi and shield via UART.

$ rosrun tr_hat_bridge tr_hat_bridge

Next step is to run node responsible for rover's control.

$ rosrun tr_control tr_control

Type command below to see all runing nodes and active topics.

$ rosnode list
$ rostopic list

Check if nodes works correctlly subscribing message to topic /tr_hat_bridge/motors.

$ rostopic pub /tr_hat_bridge/motors tr_hat_msgs/MotorPayload [50,50,50,50]

If you have old version of firmware- you don't have watchdog. You need to type [0,0,0,0] message to stop motors.

$ rostopic pub /tr_hat_bridge/motors tr_hat_msgs/MotorPayload [0,0,0,0]

Your Turtle Rover's environment is ready for development ;-)