5 ball auto for SFR
1. Shoot the first ball at the start, and drive in a half circle
like motion picking up the 2 balls in the top right of the field,
returning to around the same shot distance in the starting zone
and shoot the 2 balls we have
2. Drive straight back to the human player station and pick up the
ball that is laying there and pick one up from the human player
3. Drive back to the same position it was in just before and shoot
The drive time of this auto is around 10.6 seconds.
Keep in mind that number is without the time to shoot.
Change-Id: I2eef6b9a881951756cee771125f064024547cc18
Signed-off-by: Henry Speiser <henry@speiser.net>
diff --git a/y2022/actors/autonomous_actor.h b/y2022/actors/autonomous_actor.h
index b7d89bf..461cfc1 100644
--- a/y2022/actors/autonomous_actor.h
+++ b/y2022/actors/autonomous_actor.h
@@ -50,6 +50,9 @@
void set_requested_intake(std::optional<RequestedIntake> requested_intake) {
requested_intake_ = requested_intake;
}
+ void set_turret_goal(double turret_goal) {
+ turret_goal_ = turret_goal;
+ }
void set_fire_at_will(bool fire) { fire_ = fire; }
void set_preloaded(bool preloaded) { preloaded_ = preloaded; }
@@ -80,6 +83,7 @@
double transfer_roller_front_voltage_ = 0.0;
double transfer_roller_back_voltage_ = 0.0;
std::optional<RequestedIntake> requested_intake_ = std::nullopt;
+ double turret_goal_ = 0.0;
bool fire_ = false;
bool preloaded_ = false;
@@ -96,7 +100,7 @@
aos::TimerHandler *button_poll_;
std::optional<SplineHandle> test_spline_;
- std::optional<std::array<SplineHandle, 5>> rapid_react_splines_;
+ std::optional<std::array<SplineHandle, 3>> rapid_react_splines_;
aos::Alliance alliance_ = aos::Alliance::kInvalid;
AutonomousSplines auto_splines_;