3. Moveit config package - GitSRealpe/abb_irb140_ros_sim GitHub Wiki
This is a pretty standard Moveit! configuration package for the robot used in this project (ABB IRB140 + Gripper).
Moveit! is a well known ROS package that contains a set of various libraries and algorithms for robot motion planning and execution. We will not talk in depth of this, as it has its own dedicated web pages and forums, videos and tutorials, We only show how the configuration was made, to give some understanding of how Moveit operates.
NOTE: This page its intended to show how the package was made, you don't need to follow any of this steps, as the package is already created in this repository.
For a well detailed explanation of the Moveit robot configuration package and other Moveit related things please go to their official tutorial site here: Moveit Setup Assistant.
The Moveit Setup assistant is a tool that helps to create the Moveit configuration files of a robot that is going to be moved with, well, Moveit itself, there is defined the robot description, collisions, kinematic description or move groups, and other parameters.
To launch it simply run in a terminal roslaunch moveit_setup_assistant setup_assistant.launch
and this window will open:
In this window you start by selecting the robot URDF main file so that Moveit can process it, from there on you go on the left tabs and configure several aspects needed for Moveit. The generated package for this project was configured as shown in the following sections:
In this tab we define which self-collisions will Moveit have to handle when doing the motion planning calculations, Moveit can determine by itself the possible collisions, but you still should verify that everything is in order.
As an example from the image, for the robot link_2
is not possible to collide with the robot base_link
(within the proper joint limits defined), so there is no need for Moveit to "care" for this collision in the motion planning calculations, therefore reducing resources and computing time.
In this tab is setted the motion planning group from wich Moveit will do the motion calculations, so its important to define all the joints that you expect to be part of the robot motion plan.
For this project the planning group is composed of joints 1 to 6, and an additional "virtual" tcp_joint
that is where the center of the tool/gripper is to be expected. This is so the motion plan is made about the Tool Center Point and not from the joint6
, the last joint.
Here we set predefined robot poses given particular joint values, for example, a predefined Home
pose is when all the joints are at 0 radians. This helps when using the Moveit GUI for a quick request of a known pose.
Here is defined which controllers is Moveit going to handle, so it knows what type of message to send when the motion planning is done and it requests the motion execution.
The name of the controller has to be specified in the same way as it is defined in the irb140_sim/config/joints/joints.yaml
file here:
This is the final step of the Moveit Setup Assistant application, where it is only needed to specify the directory path to save the package. Because its a ROS package it has to be saved in your defined Catkin Workspace.
prevoius<<<<>>>>Next