Google Cartographer guide for SLAM and Navigation [based on Clearpath Jackal and VLP-16 LiDAR]

Jackal side setup(Prerequisites):

  • Network : Use Jackal’s user manual (Clearpath’s website or from my github) to setup the robot to connect to a 5 GHz WiFi to account for high bandwidth needed to stream data from the LiDAR. Configure the router or your /etc/hosts file to forward the host name of the jackal which might be in CPR-JXXX-YYYY(factory default) format. Note down the IP of the laptop on this network and export ROS_MASTER_URI to the IP or the hostname of the robot. Export ROS_IP to your laptop’s IP. Alternatively, you can source these from a .sh script file containing the lines:
    export ROS_MASTER_URI = http://<robot ip or host name>:<port no>
    export ROS_IP = <your laptop IP>

    A ‘rostopic list’ command should then show you the topics of the robot itself.
  • Velodyne: Use the ROS official guide for Velodyne LiDAR to install the drivers on the robot using SSH once network is setup. Guide to SSH can be found in the robot manual.Configure the robot to launch the velodyne-launch-file on bootup if you don’t want to launch everytime manually.
    Change the launch file of the robot to broadcast a tf frame whose transform is already available to you. If the LiDAR is mounted on the chassis, use the appropriate chassis frame for the same.  Alternatively, add a static transform publisher to the velodyne launch file in order to transform from chassis to your mount’s frame. This will be useful later.
  • Description: Use the Jackal description package’s  description.launch file to start the robot state publisher for the TF transforms of the robot wheels, mounts etc.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.