Moveit with Perception causes slow path planning

asked 2019-03-19 10:52:50 -0500

akosodry gravatar image


I have a robotic arm which is equipped with 3D sensor (PointCloud2 Occupancy Map Updater) to detect the world around. The path planning works fine with Moveit, the world around is detected well, the obstacle avoidance works as well.

My problem is that after the integration of the 3D sensor into Moveit the path planning has become very slow, e.g., from pointA to pointB the calculation takes 40-50 sec.

1) Can you suggest what to change in general that could speed up the path planning?

Currently the max_update_rate in the sensor.yaml file is set 2Hz (i suppose that is not a high frequency)

The default_planner_config is RRTConnect.

The robot has its own IK plugin.

2) In my configuration, the world/environment in front of the robot is static, i.e., the point cloud data provided by the sensor is "constant" (if the noise is not considered). This means that it is enough to capture only once the environment in front of the robot, since it will not change in time. I think that Moveit Perception assumes dynamic environment, that is why the max_update_rate is required. In my special case, is it possible somehow to inform the Moveit Perception that the point cloud can be considered constant in order to speed up the path planning calculation?

Thank you in advance. Best regards.

edit retag flag offensive close merge delete



Have you solved it? I meet the similar problem with yours, the difference is that my environment needs to be dynamic. In my system, the path planning and the environment update are both quite slow. I'm using kinetic+ur5+kinect. Any suggestion would be grateful.

Best regards.

bottlesong gravatar image bottlesong  ( 2019-06-17 22:15:40 -0500 )edit

No, unfortunately i did not solve the situation.

akosodry gravatar image akosodry  ( 2019-06-18 06:20:19 -0500 )edit

How exactly did you integrate the 3D sensors into MoveIt? According to the tutorial? What is the size of your octomap? What happens if you decrease the resolution of the octomap or the update rate significantly? If you know that your environment is static, can you represent it with simpler geometry than the octomap, e.g. by fitting a plane or boxes/cylinders/spheres to your point cloud?

fvd gravatar image fvd  ( 2020-03-02 23:24:58 -0500 )edit