Austin Schuh | 994d42c | 2015-03-01 00:02:17 -0800 | [diff] [blame] | 1 | package frc971.actors; |
| 2 | |
| 3 | import "aos/common/actions/actions.q"; |
| 4 | |
| 5 | // Parameters to send with start. |
| 6 | // This action picks a right side up can from the claw. |
| 7 | // It starts by lifting up, then moving the arm out, then lifting the can out of |
| 8 | // the claw, and then ends with the can inside the bot. |
| 9 | struct CanPickupParams { |
Austin Schuh | 90f2854 | 2015-03-29 13:46:03 -0700 | [diff] [blame] | 10 | // X position for the fridge when picking up. |
| 11 | double pickup_x; |
| 12 | // Y position for the fridge when picking up. |
| 13 | double pickup_y; |
Austin Schuh | 994d42c | 2015-03-01 00:02:17 -0800 | [diff] [blame] | 14 | // Height to move the elevator to to lift the can out of the claw. |
| 15 | double lift_height; |
Austin Schuh | 90f2854 | 2015-03-29 13:46:03 -0700 | [diff] [blame] | 16 | // Height to use when lifting before moving it back. |
| 17 | double pickup_goal_before_move_height; |
| 18 | // The height at which to start pulling back. |
| 19 | double before_place_height; |
Austin Schuh | 994d42c | 2015-03-01 00:02:17 -0800 | [diff] [blame] | 20 | |
Austin Schuh | 90f2854 | 2015-03-29 13:46:03 -0700 | [diff] [blame] | 21 | // X at which to start lowering the can. |
| 22 | double start_lowering_x; |
Austin Schuh | 994d42c | 2015-03-01 00:02:17 -0800 | [diff] [blame] | 23 | // End position with the can. |
| 24 | double end_height; |
| 25 | double end_angle; |
| 26 | }; |
| 27 | |
| 28 | queue_group CanPickupActionQueueGroup { |
| 29 | implements aos.common.actions.ActionQueueGroup; |
| 30 | |
| 31 | message Goal { |
| 32 | uint32_t run; |
| 33 | CanPickupParams params; |
| 34 | }; |
| 35 | |
| 36 | queue Goal goal; |
| 37 | queue aos.common.actions.Status status; |
| 38 | }; |
| 39 | |
| 40 | queue_group CanPickupActionQueueGroup can_pickup_action; |