Ioan Sucan: Motion Planning for the PR2 Arm
-
Upload
willow-garage -
Category
Documents
-
view
14.344 -
download
4
description
Transcript of Ioan Sucan: Motion Planning for the PR2 Arm
![Page 1: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/1.jpg)
20090820
Ioan Alexandru ŞucanRice University
Motion Planning for the PR2 Arm
![Page 2: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/2.jpg)
2
Samplingbased Motion Planning
Fast algorithms, probabilistically completeApproximate connectivity of the state spaceIgnore optimality
![Page 3: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/3.jpg)
3
Diffusion Trees
Examples include RRT, EST, SBL, etc ...
Iteratively grow a tree of motions
![Page 4: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/4.jpg)
4
Implemented in ROS (ompl package)
Kinematic planning:RRT (Rapidlyexploring Random Trees)LazyRRT (Lazy RRT)EST (Expansive Space Trees)SBL (Singlequery Bidirectional Lazy tree planner)pSBL (Parallel SBL)pRRT (Parallel RRT)KPIECE (Kinematic Planning by InteriorExterior Cell Exploration)LBKPIECE (Lazy BiDirectional KPIECE)
Planning with differential constraints:RRTKPIECE
Other tools:GAIK (Genetic Algrorithm for Inverse Kinematics)
![Page 5: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/5.jpg)
5
Other Needed Components
Robot Self FilterRemove points from sensor data that correspond to hits on the links the robot can seeRemove shadow points caused by seen links
http://www.ros.org/wiki/robot_self_filter
Collision MapAs the arm moves occlusions can be producedOccluded information should not be forgotten
http://www.ros.org/wiki/collision_map
Planning EnvironmentBrings all other components togetherhttp://www.ros.org/wiki/planning_environment
![Page 6: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/6.jpg)
6
Interface to Arm Motion Planning
Nodes that offer motion planning servicesompl_planning, sbpl_arm_planner (Ben), chomp_motion_planner (Mrinal)
The move_arm packageReceives user requests that define desired arm positions (constraints)Requests motion plans from a loaded planner (common ROS interface for all types of planners is available)Monitors paths as they are being executed (requests new paths if current ones become invalid)Switched between different planners if needed (not visible to the user)
![Page 7: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/7.jpg)
7
What we can do now
Plan among obstaclesEven slowly moving obstacles
Account for path constraintsNot spilling odwalla bottles
Update the kinematic chain of the robot onthefly
So we avoid collisions betweengrasped objects and the environment
Move to positions that cause the arm to touch objects in the environment
Useful for grasping
Safe teleoperation
Ken Conley
![Page 8: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/8.jpg)
8
Next Step: Planning with Dynamics
Try using physics simulationAccount for friction, gravity, limits in forcesNeeded for more accurate simulation
![Page 9: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/9.jpg)
Thank you!
(videos and demo in the green room)
![Page 10: Ioan Sucan: Motion Planning for the PR2 Arm](https://reader033.fdocuments.us/reader033/viewer/2022051322/54686fddaf795974338b5c29/html5/thumbnails/10.jpg)
10
In ROS Packages
Perceptionrobot_self_filtercollision_map
Robot modelplanning_models
Collision checkingcollision_space
Motion planningplanning_environmentompl, ompl_ros, ompl_search, ompl_planningmove_arm