Skip to content
forked from chapulina/dolly

🤖🐑 It's a sheep, it's a dolly, it's a following robot. Dolly was born to be cloned.

License

Notifications You must be signed in to change notification settings

rbccps-iisc/dolly

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

Dolly the robot

It's a sheep, it's a dolly, it's a following robot. Born to be cloned.

Packages for launching Dolly demo, which uses ROS 2 and either Gazebo or Ignition.

Gazebo Ignition
Dolly Gazebo Dolly Ignition

Versions

Dolly is known to work on the following systems.

Branch ROS Gazebo-classic Ignition OS
crystal Crystal Gazebo 9 Ubuntu Bionic
dashing Dashing Gazebo 9 Ubuntu Bionic, macOS Sierra
eloquent Eloquent Gazebo 9, Gazebo 11 Citadel Ubuntu Bionic
foxy Foxy Gazebo 11 Citadel Ubuntu Focal

Packages

This repository contains the following packages:

  • dolly: Metapackage which provides all other packages.
  • dolly_follow: Provides node with follow logic.
  • dolly_gazebo: Robot model, simulation world and launch scripts for Gazebo-classic.
  • dolly_ignition: Robot model, simulation world and launch scripts for Ignition.

Install

It's encouraged that you build Dolly from source, to learn about how to develop your own packages. But in case you just want to give it a quick try, there are binaries available too.

From binaries

Dolly has been released into several ROS distros:

ROS Packages
Dashing ros-dashing-dolly
ros-dashing-dolly-follow
ros-dashing-dolly-gazebo
Eloquent ros-eloquent-dolly
ros-eloquent-dolly-follow
ros-eloquent-dolly-gazebo

From source

Install instructions for Ubuntu Bionic.

  1. Install at least one simulator, Gazebo or Ignition

  2. Install the appropriate ROS 2 version as instructed here.

  3. Clone Dolly, choose the branch according to your ROS distro:

     mkdir -p ~/ws/src
     cd ~/ws/src
     git clone https://github.com/chapulina/dolly -b <distro>
    
  4. Ignition only, for Eloquent and earlier, clone the bridge:

     git clone https://github.com/ignitionrobotics/ros_ign -b <distro>
    
  5. Install dependencies:

     cd ~/ws
     rosdep install --from-paths src --ignore-src -r -y \
         --skip-keys=ignition-math6 \
         --skip-keys=ignition-msgs5 \
         --skip-keys=ignition-transport8 \
         --skip-keys=ignition-gazebo3
    

    Tip: On Ubuntu Focal, there's no need to skip keys.

  6. Build and install:

     cd ~/ws
     colcon build
    

Run

Gazebo-classic

If you had Gazebo installed when compiling Dolly's packages, Gazebo support should be enabled.

  1. Setup environment variables (the order is important):

     . /usr/share/gazebo/setup.sh
     . ~/ws/install/setup.bash
    

    Tip: If the command ros2 pkg list | grep dolly_gazebo comes up empty after setting up the environment, Gazebo support wasn't correctly setup.

  2. Launch Dolly in a city (this will take some time to download models):

     ros2 launch dolly_gazebo dolly.launch.py world:=dolly_city.world
    
  3. Launch Dolly in an empty world:

     ros2 launch dolly_gazebo dolly.launch.py world:=dolly_empty.world
    

Ignition

  1. Setup environment variables:

     . ~/ws/install/setup.bash
    

    Tip: If the command ros2 pkg list | grep dolly_ignition comes up empty after setting up the environment, Ignition support wasn't correctly setup.

  2. Launch Dolly in a station:

     ros2 launch dolly_ignition dolly.launch.py
    

Featured

About

🤖🐑 It's a sheep, it's a dolly, it's a following robot. Dolly was born to be cloned.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 30.6%
  • GLSL 28.1%
  • C++ 17.7%
  • CMake 12.8%
  • Shell 10.8%