All Projects → iamrajee → ws_moveit

iamrajee / ws_moveit

Licence: MIT license
This ROS melodic workspace is created on Ubuntu 18.04. Here I worked on moveit & MTC projects like Pick, Place, Pouring task for multi-manipulator system using MoveIt Task Constructor(MTC).

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to ws moveit

Autonomus Indoor Drone
Final year project, autonomus indoor drone developed in ROS using DWM1001 dev-board
Stars: ✭ 26 (+4%)
Mutual labels:  ros, ros-melodic
microstrain inertial
ROS driver for all of MicroStrain's current G and C series products. To learn more visit
Stars: ✭ 44 (+76%)
Mutual labels:  ros, ros-melodic
summit xl sim
Packages for the simulation of the Summit XL, Summit XL HL and Summit-X (including X-WAM) robots
Stars: ✭ 32 (+28%)
Mutual labels:  ros, ros-melodic
installRealSenseROS
Install the realsense-ros library on NVIDIA Jetson Nano Developer Kit.
Stars: ✭ 27 (+8%)
Mutual labels:  ros, ros-melodic
arm
Robot arm simulation using Gazebo, ROS Control and MoveIt.
Stars: ✭ 79 (+216%)
Mutual labels:  ros, moveit
moveit python
Pure Python Bindings to ROS MoveIt!
Stars: ✭ 107 (+328%)
Mutual labels:  ros, moveit
tensorflow ros cpp
Catkin-friendly C++ bindings for tensorflow.
Stars: ✭ 60 (+140%)
Mutual labels:  ros, catkin
bio ik
MoveIt kinematics_base plugin based on particle optimization & GA
Stars: ✭ 104 (+316%)
Mutual labels:  ros, moveit
riptide setup
The software packages which power The OSU Underwater Robotics Team's AUV.
Stars: ✭ 31 (+24%)
Mutual labels:  ros, catkin
robotiq 2finger grippers
ROS packages enabling the control, visualization and simulation of the Robotiq 2 Fingers Adaptive Grippers model version C3
Stars: ✭ 59 (+136%)
Mutual labels:  ros, ros-melodic
rospberrypi
Everything you need to set up ROS Melodic on the Raspberry Pi Zero / W
Stars: ✭ 33 (+32%)
Mutual labels:  ros, ros-melodic
onine
ROS based service robot
Stars: ✭ 32 (+28%)
Mutual labels:  ros, moveit
ROS-Object-Detection-2Dto3D-RealsenseD435
Use the Intel D435 real-sensing camera to realize object detection based on the Yolov3-5 framework under the Opencv DNN(old version)/TersorRT(now) by ROS-melodic.Real-time display of the Pointcloud in the camera coordinate system.
Stars: ✭ 45 (+80%)
Mutual labels:  ros, ros-melodic
lidar body tracking
ROS Catkin package to track people using octree and cluster extraction
Stars: ✭ 68 (+172%)
Mutual labels:  ros, catkin
ur-reaching-reinforcement-learning
Reinforcement learning using rlkit, UR5, Robotiq gripper on ROS(Robot Operating System)
Stars: ✭ 53 (+112%)
Mutual labels:  moveit, moveit-api
mycobot ros
A ros package for myCobot.
Stars: ✭ 76 (+204%)
Mutual labels:  ros, moveit
ur ws
Universal robot with robotiq hand workspace
Stars: ✭ 21 (-16%)
Mutual labels:  ros, moveit
PROBOT Anno
ROS Packages for PROBOT Anno.
Stars: ✭ 75 (+200%)
Mutual labels:  ros, moveit
timeup-nlw4
Project developed with ReactJS | Move.It by Rocketseat NLW#4 🖥️🚀
Stars: ✭ 45 (+80%)
Mutual labels:  moveit
atl
Autonomous Quadrotor Landing
Stars: ✭ 12 (-52%)
Mutual labels:  ros

ROS Melodic Workspace

Build Status Coverage Status MIT License GitHub Issues GitHub Pull Requests Gitter Join our Slack Workspace

This ROS melodic workspace is created on Ubuntu 18.04. Here I have worked on several moveit related projects like Pick, Place, Pouring task for multi-manipulator system using MoveIt Task Constructor(MTC).

Table of content


Installation

All the code required to get started

  • Prerequisite

    • You should have ROS melodic on your ubuntu 18.04.
    • All ROS dependency is satisfied.
  • Clone

    git clone https://github.com/iamrajee/ws_moveit.git
    
  • Setup

    cd ws_moveit/
    ./refresh.sh
    make
    

Package description

  • moveit_task_constructor


    Pick, Place and pouring demos

    1. Run default Pick & Place demo of MTC

    This is the default Pick & Place demo provided by the MTC.

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace.launch
    

    2. Same as above but with custom formating

    Run (Click to expand!)
    Terminal 1: roslaunch moveit_task_constructor_demo demo2.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace2.launch
    

    3. Same as above but for two object & two cylider

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo3.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace3.launch
    

    4. Same as above but included abstract function pick place for multiple object

    TODO

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo4.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace4.launch
    

    5. Pick & Place for two panda arm

    Also commented various ways which didn't worked

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo5.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace5.launch
    

    6. Same as above but clearner

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo6.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace6.launch
    

    7. Serially executing Pick & Place task using two panda arm

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo7.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace7.launch
    

    8. Parallelly(Merger) executing simple task using two panda arm

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo8.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace8.launch
    

    9. Simplest single panda arm pouring demo

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo9.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace9.launch
    

    10. Same as above but keeping glass at ground level

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo10.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace10.launch
    

    11. Same as above but keeping glass at some height from ground

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo11.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace11.launch
    

    12. Cleaned version of two panda arm pouring.

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo12.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace12.launch
    

    13. Pick & Place using two panda arm for differnt object

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo13.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace13.launch
    

    14. Pick & Place using two panda arm for same object

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo14.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace14.launch
    

    15. Pick & Place for two panda arm using seperated tasks

    TODO

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo15.launch
    
    Terminal 2: roslaunch moveit_task_constructor_demo pickplace15.launch
    

    Cartesian Demos

    1. Run default cartesian demo of MTC

    This is the default cartesian demo provided by the MTC.

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo_cartesian.launch/demo.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo cartesian
    

    2. Same as above but with custom formating

    Run (Click to expand!)
    Terminal 1: roslaunch moveit_task_constructor_demo demo_cartesian2.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo cartesian2
    

    3. Executing two task with differnt node name

    task execution not return problem -> resolved by using in built t.execute() and updating with recent PR #136

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo3.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo cartesian2
    
    Terminal 3: rosrun moveit_task_constructor_demo cartesian3
    

    or

    Terminal 1: roslaunch moveit_task_constructor_demo demo_cartesian3.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo cartesian3
    

    4. Two arm panda executed simple different task

    (Cleaned) could plan but can execute -> resolved by commenting "capabilities" and "disable_capabilities" parameter in move_group.launch

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo_cartesian4.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo cartesian4
    

    5. Trying async spinner to execute two task simontaneously

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo_cartesian5.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo cartesian5
    

    Modular Demos

    1. Run default Modular demo of MTC

    This is the default Modular demo provided by the MTC.

    Run
    Terminal 1: roslaunch moveit_task_constructor_demo demo.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo modular
    

    2. Same as above but with custom formating

    Run (Click to expand!)
    Terminal 1: roslaunch moveit_task_constructor_demo demo.launch
    
    Terminal 2: rosrun moveit_task_constructor_demo modular2
    
  • panda

    panda pkg contain cpp and py interface for moveit.*

    Terminal 1:

    $ roscore
    $ TODO
    

    Terminal 2:

    $ TODO
    
  • mtc_pour

    panda pkg contain cpp and py interface for moveit.*
    Terminal 1:

    $ roscore
    $ TODO
    

    Terminal 2:

    $ TODO
    
  • VLP16


    See full video here. In this pkg TODO




Helper Scripts

  • refresh.sh

    #!/bin/bash
    source /opt/ros/melodic/setup.bash
    source devel/setup.bash
    clear
    

    It will source the workspace after buiding workspace or after creating new pkg. Run it as ./refresh.sh

  • makefile

    SHELL=/bin/bash
    all:
        make run
    run:
        catkin_make
        bash refresh.sh
    

    It will build the workspace . Run it as make

  • createpkg.sh

    #!/bin/bash
    cd src/
    catkin create $1
    cd ../
    make
    source refresh.sh
    

    It will create new package . Run it as ./createpkg.sh newpkg_name

  • tftree.sh

    #!/bin/bash
    rosrun rqt_tf_tree rqt_tf_tree
    

    It will launch the gui to visvualise the tf tree. Run it as ./tftree.sh

  • printenv.sh

    #!/bin/bash
    printenv | grep -i ROS
    

    It will print the ROS related environment variable . Run it as ./printenv.sh

  • rosdep.sh

    sudo rosdep install -i --from-path src --rosdistro $ROS_DISTRO -y
    

    It will install dependencies of all pkg in the workspace. Run it in the workspace as ./rosdep.sh

  • ssh_into_another_computer.sh

    #!/bin/bash
    ssh rajendra@rajendra
    

    It will ssh into another system. Useful when using multiple ros masters. Run it as ./rajendra.sh




Team

Or Contributors/supporters/mentors/guides who helped me out in these projects.

Abhinand A S Sachin Rustagi Swami Prasad

Contributing

To get started...

Step 1

  • Option 1

    • 🍴 Fork this repo!
  • Option 2

    • 👯 Clone this repo to your local machine using https://github.com/iamrajee/ws_moveit.git

Step 2

  • HACK AWAY! 🔨🔨🔨

Step 3


FAQ

  • I ran into some issue while running above package, what to do now?
    • Simply contact me!

Support

Reach out to me for any help!

Name : Rajendra Singh
Email : [email protected]
Web : https://iamrajee.github.io/
LinkedIn : https://www.linkedin.com/in/rajendra-singh-6b0b3a13a/
Twitter: @i_am_rajee

License

MIT License


Acknowledgments

  • Hat tip to anyone whose code was used and thanks to everyone who inspired and supported me in this project.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].