Comran Morshed | 6c6a0a9 | 2016-01-17 12:45:16 +0000 | [diff] [blame] | 1 | #include "y2016/control_loops/drivetrain/drivetrain_base.h" |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 2 | |
| 3 | #include "frc971/control_loops/drivetrain/drivetrain_config.h" |
| 4 | |
Comran Morshed | 225f0b9 | 2016-02-10 20:34:27 +0000 | [diff] [blame^] | 5 | #include "frc971/control_loops/state_feedback_loop.h" |
Comran Morshed | 6c6a0a9 | 2016-01-17 12:45:16 +0000 | [diff] [blame] | 6 | #include "y2016/control_loops/drivetrain/drivetrain_dog_motor_plant.h" |
| 7 | #include "y2016/control_loops/drivetrain/polydrivetrain_dog_motor_plant.h" |
| 8 | #include "y2016/control_loops/drivetrain/kalman_drivetrain_motor_plant.h" |
| 9 | #include "y2016/constants.h" |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 10 | |
| 11 | using ::frc971::control_loops::drivetrain::DrivetrainConfig; |
| 12 | |
Comran Morshed | 6c6a0a9 | 2016-01-17 12:45:16 +0000 | [diff] [blame] | 13 | namespace y2016 { |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 14 | namespace control_loops { |
| 15 | |
Comran Morshed | 225f0b9 | 2016-02-10 20:34:27 +0000 | [diff] [blame^] | 16 | using ::frc971::constants::ShifterHallEffect; |
| 17 | |
| 18 | const ShifterHallEffect kThreeStateDriveShifter{0.0, 0.0, 0.0, 0.0, 0.5, 0.5}; |
| 19 | |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 20 | const DrivetrainConfig &GetDrivetrainConfig() { |
| 21 | static DrivetrainConfig kDrivetrainConfig{ |
| 22 | ::frc971::control_loops::drivetrain::ShifterType::HALL_EFFECT_SHIFTER, |
| 23 | |
Comran Morshed | 6c6a0a9 | 2016-01-17 12:45:16 +0000 | [diff] [blame] | 24 | ::y2016::control_loops::drivetrain::MakeDrivetrainLoop, |
| 25 | ::y2016::control_loops::drivetrain::MakeVelocityDrivetrainLoop, |
| 26 | ::y2016::control_loops::drivetrain::MakeKFDrivetrainLoop, |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 27 | |
Comran Morshed | 6c6a0a9 | 2016-01-17 12:45:16 +0000 | [diff] [blame] | 28 | drivetrain::kDt, |
| 29 | drivetrain::kStallTorque, |
| 30 | drivetrain::kStallCurrent, |
| 31 | drivetrain::kFreeSpeedRPM, |
| 32 | drivetrain::kFreeCurrent, |
| 33 | drivetrain::kJ, |
| 34 | drivetrain::kMass, |
| 35 | drivetrain::kRobotRadius, |
| 36 | drivetrain::kWheelRadius, |
| 37 | drivetrain::kR, |
| 38 | drivetrain::kV, |
| 39 | drivetrain::kT, |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 40 | |
Comran Morshed | 225f0b9 | 2016-02-10 20:34:27 +0000 | [diff] [blame^] | 41 | constants::Values::kTurnWidth, |
| 42 | constants::Values::kHighGearRatio, |
| 43 | constants::Values::kLowGearRatio, |
| 44 | kThreeStateDriveShifter, |
| 45 | kThreeStateDriveShifter}; |
Comran Morshed | 9a9948c | 2016-01-16 15:58:04 +0000 | [diff] [blame] | 46 | |
| 47 | return kDrivetrainConfig; |
| 48 | }; |
| 49 | |
| 50 | } // namespace control_loops |
Comran Morshed | 6c6a0a9 | 2016-01-17 12:45:16 +0000 | [diff] [blame] | 51 | } // namespace y2016 |