Giter VIP home page Giter VIP logo

tinker_gazebo_ros2_simulation's Introduction

tinker_gazebo_sim

Tinker simulation based on ROS2 and gazebo11, adapted from tinker_nav_sim

Setup

  1. Prepration:
  2. Install all dependecies(You should setup rosdep first following official documentation):
    rosdep install --from-paths src -y --ignore-src
  3. Install gazebo_ros package
    sudo apt install ros-humble-gazebo-ros-pkgs
  4. Install ros2 control dependency
    sudo apt-get install ros-humble-ros2-control
    sudo apt-get install ros-humble-ros2-controllers
    sudo apt-get install ros-humble-gazebo-ros2-control
  5. Install Universal_Robots_ROS2_Driver package
    sudo apt-get install ros-humble-ur
  6. If you need to do navigation simulation, install nav2 dependency
    sudo apt install ros-humble-navigation2
    sudo apt install ros-humble-nav2-bringup
    sudo apt install ros-humble-robot-localization
    sudo apt install ros-humble-slam-toolbox

Run

Test Tinker Model

All terminals should source the setup.bash(setup.zsh) in workspace first.

Be sure you are using gnome-terminal rather than xterm

Visualization

Launch the visual model of tinker, which shows the RobotModel

ros2 launch tinker_sim display.launch.py

Test Gazebo Simulation

Launch the robot and controller, which test the robot and chassis controller

ros2 launch tinker_sim gazebo_sim.launch.py

Set use_teleop:=True to control the base by keyboard

Then run the following command in another ternimal to control the arm by moveit:

ros2 launch tinker_sim arm_moveit.launch.py

The UR simulation refers https://github.com/UniversalRobots/Universal_Robots_ROS2_Gazebo_Simulation To move it to Tinker, please change add the prefix "ur_" to all the controllers yaml except joint_limits.yaml in config/ur5. And set use_fake_hardware:=true in simulation.

The controller shaking problem and broken joints can be solved in UniversalRobots/Universal_Robots_ROS2_Gazebo_Simulation#11 and UniversalRobots/Universal_Robots_ROS2_Gazebo_Simulation#19

<joint name="${prefix}wrist_3_joint" type="revolute">
  [...]
  <dynamics damping="0.7" friction="1.0"/>
</joint>

<gazebo reference="${prefix}wrist_3_joint">
  <implicitSpringDamper>true</implicitSpringDamper>
</gazebo>

Nav Simulation

Use Lidar to setup map

Launch slam toolbox and localization

ros2 launch navigation_sim gazebo_robot.launch.py headless:=False use_teleop:=True

Test navigation by using rivz to publihs a goal

Launch navigation stack

ros2 launch navigation_sim navigation.launch.py headless:=False 

Run Navigation

Set 2D pose first, then set a goalpose in rviz.

tinker_gazebo_ros2_simulation's People

Watchers

 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.