Stephan Massalt | d021f97 | 2020-01-05 20:41:23 -0800 | [diff] [blame] | 1 | include "frc971/control_loops/profiled_subsystem.fbs"; |
| 2 | |
| 3 | namespace y2020.control_loops.superstructure; |
| 4 | |
Tyler Chatow | cf41366 | 2020-02-09 14:36:36 -0800 | [diff] [blame] | 5 | table ShooterGoal { |
| 6 | // Angular velocity in rad/s of the slowest (lowest) wheel in the kicker. |
| 7 | // Positive is shooting the ball. |
Sabina Davis | edf8947 | 2020-02-17 15:27:37 -0800 | [diff] [blame] | 8 | velocity_accelerator:double; |
Tyler Chatow | cf41366 | 2020-02-09 14:36:36 -0800 | [diff] [blame] | 9 | |
| 10 | // Angular velocity in rad/s of the flywheel. Positive is shooting. |
Sabina Davis | edf8947 | 2020-02-17 15:27:37 -0800 | [diff] [blame] | 11 | velocity_finisher:double; |
Tyler Chatow | cf41366 | 2020-02-09 14:36:36 -0800 | [diff] [blame] | 12 | } |
| 13 | |
Stephan Massalt | d021f97 | 2020-01-05 20:41:23 -0800 | [diff] [blame] | 14 | table Goal { |
Sabina Davis | 70d5e91 | 2020-01-31 21:10:37 -0800 | [diff] [blame] | 15 | // Zero is at the horizontal, positive towards the front (meters on the lead screw). |
Tyler Chatow | cf41366 | 2020-02-09 14:36:36 -0800 | [diff] [blame] | 16 | // Only applies if hood_tracking = false. |
Sabina Davis | 70d5e91 | 2020-01-31 21:10:37 -0800 | [diff] [blame] | 17 | hood:frc971.control_loops.StaticZeroingSingleDOFProfiledSubsystemGoal; |
Sabina Davis | 6b61de3 | 2020-02-02 12:42:51 -0800 | [diff] [blame] | 18 | |
Sabina Davis | 5187f86 | 2020-02-09 13:16:51 -0800 | [diff] [blame] | 19 | // Positive = counterclockwise from above; rotates Wheel of Fortune clockwise |
| 20 | // Zero is relative to start. |
| 21 | control_panel:frc971.control_loops.StaticZeroingSingleDOFProfiledSubsystemGoal; |
| 22 | |
Sabina Davis | 6737b09 | 2020-02-17 12:59:32 -0800 | [diff] [blame] | 23 | // 0 = Linkage on sprocket is pointing straight up |
| 24 | // Positive = forward |
Sabina Davis | 6b61de3 | 2020-02-02 12:42:51 -0800 | [diff] [blame] | 25 | intake:frc971.control_loops.StaticZeroingSingleDOFProfiledSubsystemGoal; |
Tyler Chatow | 1879acc | 2020-02-01 13:26:48 -0800 | [diff] [blame] | 26 | |
John Park | 0a245a0 | 2020-02-02 14:10:15 -0800 | [diff] [blame] | 27 | // Positive is rollers intaking to Washing Machine. |
Sabina Davis | 6b61de3 | 2020-02-02 12:42:51 -0800 | [diff] [blame] | 28 | roller_voltage:float; |
Tyler Chatow | 1879acc | 2020-02-01 13:26:48 -0800 | [diff] [blame] | 29 | |
Austin Schuh | 2fb2364 | 2020-02-29 15:10:51 -0800 | [diff] [blame^] | 30 | // 0 = facing the back of the robot. Positive rotates counterclockwise. |
Tyler Chatow | 1879acc | 2020-02-01 13:26:48 -0800 | [diff] [blame] | 31 | turret:frc971.control_loops.StaticZeroingSingleDOFProfiledSubsystemGoal; |
Tyler Chatow | cf41366 | 2020-02-09 14:36:36 -0800 | [diff] [blame] | 32 | |
| 33 | // Only applies if shooter_tracking = false. |
| 34 | shooter:ShooterGoal; |
| 35 | |
| 36 | // Whether the robot should be shooting balls. Waits until hood, turret, and |
| 37 | // shooter are at goal (as determined by auto-tracking or override). |
| 38 | shooting:bool; |
| 39 | |
| 40 | // Whether the hood should adjust its position automatically. |
| 41 | hood_tracking:bool; |
| 42 | |
| 43 | // Whether the turret should follow the target automatically. |
| 44 | turret_tracking:bool; |
| 45 | |
| 46 | // Whether the kicker and flywheel should choose a velocity automatically. |
| 47 | shooter_tracking:bool; |
Sabina Davis | 6737b09 | 2020-02-17 12:59:32 -0800 | [diff] [blame] | 48 | |
| 49 | // Positive is deploying climber and to climb; cannot run in reverse |
John Park | 0a245a0 | 2020-02-02 14:10:15 -0800 | [diff] [blame] | 50 | climber_voltage:float; |
Stephan Massalt | d021f97 | 2020-01-05 20:41:23 -0800 | [diff] [blame] | 51 | } |
| 52 | |
| 53 | root_type Goal; |