compas-dev / compas-dev/compas_fab
Non trivial example for common robotic operations
- Dominant language
- Python
- Stars
- 137
- Forks
- 47
- PR merge metrics
- No merged PRs in 30d
Description
# Feature Request
As a user who programs robotic movements for pick and place tasks. I would like to have some examples showing how common robotic operations can be computed with the help of compas_fab.
- Aligning tool TCF with a grasp frame expressed in OCF
- Using ros to search for collision-free grasp pose
- How to program tool change (dealing with tool pick-up paths and tool-storage locations)
- Compute approach and retract movements for a pick and place operation
## Details
**Is your feature request related to a problem? Please describe.**
I am currently working on a problem where I need to compute the approach and retract positions. I realized there are 4 positions at least to be considered:
1. **Pickup Approach** (Related to the `tool` - gripper jaw design)
2. **Pickup Retract** (Related to the pickup station design)
3. **Placement Approach** (Related to the engagement logic, probably related to `object`)
4. **Placement Retract** (Related to the `tool` - gripper jaw design)
I had to implement my own `tool` and `object` class for functions that will allow storing gripper approach vector relative to T0CF, computing approach vector for various OCF etc. And then there is another whole business about tool change, where the gripper I used to pick objects are suddenly the object that needs to be picked.
(The hunter 🐺 is now the hunted 🐑 )
I believe these functions are very common to pick and place task and many other researchers need them. However I also think my implementation maybe wonky and I'm not going to PR it. So maybe some brighter minds can think about them and make them reusable.
Contributor guide
Assessment
This issue has not been assessed yet.