Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
tutorials:intermediate:simple_mobile_manipulation_plan [2019/07/16 11:26] – [Some Useful Designators] ?grasp-pose -> ?grasp-pose-identifier amar | tutorials:intermediate:simple_mobile_manipulation_plan [2019/08/02 13:19] – Added details about the reachability costmap in the end amar | ||
---|---|---|---|
Line 492: | Line 492: | ||
You can now try spawning the bottle in different points on the table and observing how the robot resolves the arm and grasp for it. Subsequently, | You can now try spawning the bottle in different points on the table and observing how the robot resolves the arm and grasp for it. Subsequently, | ||
+ | |||
+ | Instead of a hardcoded pose for the base of the robot, you now would now need to obtain a list of poses where the robot will be able to grasp the bottle from. This is exactly where [[tutorials: | ||
+ | <code lisp> | ||
+ | (a location | ||
+ | | ||
+ | | ||
+ | (type bottle)))) | ||
+ | |||
+ | </ | ||
+ | Referencing this will give you locations where our robot PR2 can successfully reach an object of type bottle. Note that the object designator used here is pretty generic and will apply to all the bottles in the robot' | ||
+ | To make it more specific we can provide the name and the location designator where the bottle is expected to be in. | ||
+ | Eg: | ||
+ | <code lisp> | ||
+ | ;; This is the location designator used to reference locations where the pr2 should be to reach an object | ||
+ | ;; named bottle-1 of type bottle which is situated on the counter-top named sink-area-surface | ||
+ | (a location | ||
+ | | ||
+ | | ||
+ | (type bottle) | ||
+ | (name bottle-1) | ||
+ | | ||
+ | (on (an object | ||
+ | (type counter-top) | ||
+ | (urdf-name sink-area-surface) | ||
+ | (part-of kitchen)))))))) | ||
+ | </ | ||
+ | You can see that the designator is not that intimidating as it looks, but provides a structured way to reference objects and locations. You can use these to write plans without having to worry about the actual coordinates. | ||
Since this is a simple tutorial in formulating and understanding mobile plans using CRAM, developing advanced plans and recovery behaviors is left up to you. | Since this is a simple tutorial in formulating and understanding mobile plans using CRAM, developing advanced plans and recovery behaviors is left up to you. | ||
Line 595: | Line 622: | ||
- | --></ | + | --> |
+ | |||
+ | </ |