GithubHelp home page GithubHelp logo

roni-kreinin / create3_sim Goto Github PK

View Code? Open in Web Editor NEW

This project forked from iroboteducation/create3_sim

1.0 0.0 0.0 2.38 MB

ROS 2 Simulation for the iRobot® Create® 3 Educational Robot

License: BSD 3-Clause "New" or "Revised" License

CMake 5.60% Python 11.09% C++ 82.59% QML 0.72%

create3_sim's Introduction

iRobot® Create® 3 Simulator

Testing License

This is a ROS 2 simulation stack for the iRobot® Create® 3 robot. Both Ignition Gazebo and Classic Gazebo are supported.

⚠️ To run with Ignition Gazebo you must first build and install the gz_ros2_control package master branch from sources!

Have a look at the Create® 3 documentation for more details on the ROS 2 interfaces exposed by the robot.

Prerequisites

Required dependencies:

  1. ROS 2 humble
  2. ROS 2 dev tools:

Besides the aforementioned dependencies you will also need at least one among Ignition Gazebo and Classic Gazebo

Classic Gazebo

Install Gazebo 11

Ignition Edifice

sudo apt-get update && sudo apt-get install wget
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
sudo apt-get update && sudo apt-get install ignition-edifice

Build

  • Create a workspace if you don't already have one:
mkdir -p ~/create3_ws/src
  • Clone this repository into the src directory from above.

  • Navigate to the workspace and install ROS 2 dependencies with:

cd ~/create3_ws
sudo apt-get update
rosdep install --from-path src -yi
  • Build the workspace with:
export IGNITION_VERSION=edifice
colcon build --symlink-install
source install/local_setup.bash

Run

Classic Gazebo

Empty world

Create® 3 can be spawned in an empty world in Gazebo and monitored through RViz with

ros2 launch irobot_create_gazebo_bringup create3_gazebo.launch.py
AWS house

Create® 3 can be spawned in the AWS small house in Gazebo and monitored through RViz. This requires that the package aws_robomaker_small_house_world is available.

If you need it, you can build aws_robomaker_small_house_world in your ROS 2 workspace by doing:

vcs import ~/create3_ws/src/ < ~/create3_ws/src/create3_sim/irobot_create_gazebo/demo.repos
cd ~/create3_ws
colcon build --symlink-install
source install/local_setup.bash

Then you can run:

ros2 launch irobot_create_gazebo_bringup create3_gazebo_aws_small.launch.py

Ignition Gazebo

Create® 3 can be spawned in a demo world in Ignition and monitored through RViz with

ros2 launch irobot_create_ignition_bringup create3_ignition.launch.py

Package layout

This repository contains packages for both the Classic and Ignition Gazebo simulators:

  • irobot_create_common Packages common to both Classic and Ignition

    • irobot_create_common_bringup Launch files and configurations
    • irobot_create_control Launch control nodes
    • irobot_create_description URDF and mesh files describing the robot
    • irobot_create_nodes Nodes for simulating robot topics and motion control
    • irobot_create_toolbox Tools and helpers for creating nodes and plugins
  • irobot_create_gazebo Packages used for the Classic Gazebo Simulator

    • irobot_create_gazebo_bringup Launch files and configurations
    • irobot_create_gazebo_plugins Sensor plugins
    • irobot_create_gazebo_sim Metapackage
  • irobot_create_ignition Packages used for the Ignition Gazebo Simulator

    • irobot_create_ignition_bringup Launch files and configurations
    • irobot_create_ignition_plugins GUI plugins
    • irobot_create_ignition_sim Metapackage
    • irobot_create_ignition_toolbox Sensor and interface nodes

create3_sim's People

Contributors

alsora avatar rjcausarano avatar lolasegura avatar roni-kreinin avatar justinirbt avatar lchico avatar ahcorde avatar ednip7 avatar eborghi10 avatar santti4go avatar crthilakraj avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.