Add second transfer roller motor
Still use same behavior of always sending opposite voltages
Signed-off-by: Milind Upadhyay <milind.upadhyay@gmail.com>
Change-Id: If6bcf617db37b40924556d59dcfa23e7d43bdef1
diff --git a/y2022/actors/autonomous_actor.cc b/y2022/actors/autonomous_actor.cc
index ed1a9ee..67156dd 100644
--- a/y2022/actors/autonomous_actor.cc
+++ b/y2022/actors/autonomous_actor.cc
@@ -214,7 +214,10 @@
superstructure_builder.add_roller_speed_compensation(1.5);
superstructure_builder.add_roller_speed_front(roller_front_voltage_);
superstructure_builder.add_roller_speed_back(roller_back_voltage_);
- superstructure_builder.add_transfer_roller_speed(transfer_roller_voltage_);
+ superstructure_builder.add_transfer_roller_speed_front(
+ transfer_roller_front_voltage_);
+ superstructure_builder.add_transfer_roller_speed_back(
+ transfer_roller_back_voltage_);
superstructure_builder.add_catapult(catapult_goal_offset);
superstructure_builder.add_fire(fire_);
superstructure_builder.add_auto_aim(true);
@@ -228,28 +231,32 @@
void AutonomousActor::ExtendFrontIntake() {
set_intake_front_goal(kExtendIntakeGoal);
set_roller_front_voltage(kRollerVoltage);
- set_transfer_roller_voltage(kRollerVoltage);
+ set_transfer_roller_front_voltage(kRollerVoltage);
+ set_transfer_roller_back_voltage(-kRollerVoltage);
SendSuperstructureGoal();
}
void AutonomousActor::RetractFrontIntake() {
set_intake_front_goal(kRetractIntakeGoal);
set_roller_front_voltage(kRollerVoltage);
- set_transfer_roller_voltage(0.0);
+ set_transfer_roller_front_voltage(0.0);
+ set_transfer_roller_back_voltage(0.0);
SendSuperstructureGoal();
}
void AutonomousActor::ExtendBackIntake() {
set_intake_back_goal(kExtendIntakeGoal);
set_roller_back_voltage(kRollerVoltage);
- set_transfer_roller_voltage(-kRollerVoltage);
+ set_transfer_roller_back_voltage(kRollerVoltage);
+ set_transfer_roller_front_voltage(-kRollerVoltage);
SendSuperstructureGoal();
}
void AutonomousActor::RetractBackIntake() {
set_intake_back_goal(kRetractIntakeGoal);
set_roller_back_voltage(kRollerVoltage);
- set_transfer_roller_voltage(0.0);
+ set_transfer_roller_front_voltage(0.0);
+ set_transfer_roller_back_voltage(0.0);
SendSuperstructureGoal();
}
diff --git a/y2022/actors/autonomous_actor.h b/y2022/actors/autonomous_actor.h
index f01da02..37a8cdb 100644
--- a/y2022/actors/autonomous_actor.h
+++ b/y2022/actors/autonomous_actor.h
@@ -40,8 +40,11 @@
void set_roller_back_voltage(double roller_back_voltage) {
roller_back_voltage_ = roller_back_voltage;
}
- void set_transfer_roller_voltage(double voltage) {
- transfer_roller_voltage_ = voltage;
+ void set_transfer_roller_front_voltage(double voltage) {
+ transfer_roller_front_voltage_ = voltage;
+ }
+ void set_transfer_roller_back_voltage(double voltage) {
+ transfer_roller_back_voltage_ = voltage;
}
void set_fire_at_will(bool fire) { fire_ = fire; }
@@ -62,7 +65,8 @@
double intake_back_goal_ = 0.0;
double roller_front_voltage_ = 0.0;
double roller_back_voltage_ = 0.0;
- double transfer_roller_voltage_ = 0.0;
+ double transfer_roller_front_voltage_ = 0.0;
+ double transfer_roller_back_voltage_ = 0.0;
bool fire_ = false;
aos::Sender<frc971::control_loops::drivetrain::LocalizerControl>