blob: 860162e220fca74df524468915308cf83beb7f69 [file] [log] [blame]
package frc971.control_loops;
import "aos/common/control_loop/control_looops.q";
queue_group ShooterLoop {
implements aos.control_loops.ControlLoop;
message Goal {
// The energy to load to in joules.
double energy;
// Shoots as soon as this is true.
bool shoot;
};
message Position {
bool back_hall_effect;
// In meters, out is positive.
double position;
double back_calibration;
};
message Status {
// Whether it's ready to shoot right now.
bool ready;
// Whether the plunger is in and out of the way of grabbing a ball.
bool cocked;
// How many times we've shot.
int shots;
};
queue Goal goal;
queue Position position;
queue aos.control_loops.Output output;
queue Status status;
};
queue_group ShooterLoop shooter;