blob: bf61a0fdc510294dae5110220ac974c09f87e8e2 [file] [log] [blame]
package y2015.actors;
import "aos/common/actions/actions.q";
// Parameters to send with start.
// This action picks a right side up can from the claw.
// It starts by lifting up, then moving the arm out, then lifting the can out of
// the claw, and then ends with the can inside the bot.
struct CanPickupParams {
// X position for the fridge when picking up.
double pickup_x;
// Y position for the fridge when picking up.
double pickup_y;
// Height to move the elevator to to lift the can out of the claw.
double lift_height;
// Height to use when lifting before moving it back.
double pickup_goal_before_move_height;
// The height at which to start pulling back.
double before_place_height;
// X at which to start lowering the can.
double start_lowering_x;
// End position with the can.
double end_height;
double end_angle;
};
queue_group CanPickupActionQueueGroup {
implements aos.common.actions.ActionQueueGroup;
message Goal {
uint32_t run;
CanPickupParams params;
};
queue Goal goal;
queue aos.common.actions.Status status;
};
queue_group CanPickupActionQueueGroup can_pickup_action;