Differences in Allowed Collision Matrix between Planning Scene and Planning Scene Monitor

819 views
Skip to first unread message

Glenn Blair

unread,
Jul 14, 2016, 10:44:27 AM7/14/16
to MoveIt! Users
Hi All,

So I am trying to use the Allowed Collision Matrix to add objects that the robot can collide with. Essentially I am trying to have a PR2 move it's arm and avoid an object, then add the object to the ACM and have the PR2 collide with the object.

The problem I am having is that once I add an object to the ACM and publish the planning scene, the planning scene monitor never receives the update. I have the planning scene monitor subscribed as a listener to the planning scene so that but it seems to not be working.

1) Any suggestions on why, if I add an object to the ACM, publish to the Planning Scene, the PR2 still avoids the object?

2) Does the FCL use ACM data from the planning scene or the planning scene monitor?

I am using ROS Hydro, MoveIt, and Gazebo for simulation.

Any help or even knowledge on how the ACM works would be greatly appreciated!!

Thanks!!

guangda chen

unread,
Nov 28, 2017, 10:22:20 PM11/28/17
to MoveIt! Users
Hi

    moveit_msgs::PlanningScene planning_scene;
    collision_detection::AllowedCollisionMatrix& acm = planning_scene_monitor_->getPlanningScene()->getAllowedCollisionMatrixNonConst();
    acm.setEntry(link1, link2, true);
    acm.getMessage(planning_scene.allowed_collision_matrix);
    planning_scene.is_diff = true;
    moveit_msgs::ApplyPlanningScene srv;
    srv.request.scene = planning_scene;
    planning_scene_diff_client_.call(srv);

在 2016年7月14日星期四 UTC+8下午10:44:27,Glenn Blair写道:
Reply all
Reply to author
Forward
0 new messages