MoveIt
1 MoveIt Brief Introduction
MoveIt is an integrated development platform in ROS, which is composed of a variety of functional packages for manipulator manipulation, including motion planning, operation, control, inverse kinematics, 3D perception, collision detection, etc.
The following figure shows the high-level structure of the main node move_group provided by Moveit. It is like a combiner: it integrates all individual components together, and provides a series of actions and services for users to use.
2 User Interface
Users can access the operations and services provided by move_group in three ways:
- In C++ : Use the move_group_interface package to facilitate the use of move_group.
- In Python : Use the moveit_commander package
- In GUI : use Rviz in Motion——commander(ROS Visualizer).
move_group can be configured using the ROS parameter server, from which the URDF and SRDF of the robot can also be obtained.
3 Configuration
move_group is an ROS node. It uses the ROS parameter server to obtain three types of information:
URDF - move_group searches the robot_description parameter on the ROS parameter server to obtain the URDF of the robot.
SRDF - move_group searches the robot_description_semantic parameter on the ROS parameter server to obtain the SRDF of the robot.SRDF is typically created by users using the MoveIt Setup Assistant.
MoveIt Configuration - "move_group" will find other configurations specific to MoveIt on the ROS parameter server, including joint limits, kinematics, motion planning, perception, and other information. The configuration files of these components are automatically generated by the MoveIt Settings Assistant and stored in the configuration directory of the corresponding MoveIt configuration package of the robot.
4 ultraArm Moveit
mycobot_ros
has now integrated the MoveIt section.
Open the command line to run:
roslaunch ultraarm_moveit ultraarm_moveit.launch
The operation effect is as follows:
If the real robot arm needs to execute the plan synchronously, you need to open another command line to run:
# The default serial port name of the ultraArm version is"/dev/ttyUSB0",baud rate is 115200".
rosrun ultraarm_moveit sync_plan.py