blob: e8f763741bf5ba38cab9ae04f1f51df9d7745693 [file] [log] [blame]
Stephan Massaltd021f972020-01-05 20:41:23 -08001include "frc971/control_loops/control_loops.fbs";
2include "frc971/control_loops/profiled_subsystem.fbs";
3
4namespace y2020.control_loops.superstructure;
5
Sabina Davisedf89472020-02-17 15:27:37 -08006table FlywheelControllerStatus {
Tyler Chatowcf413662020-02-09 14:36:36 -08007 // The current average velocity in radians/second over the last kHistoryLength
8 // in shooter.h
9 avg_angular_velocity:double;
10
11 // The current instantaneous filtered velocity in radians/second.
12 angular_velocity:double;
13
14 // The target speed selected by the lookup table or from manual override
15 // Can be compared to velocity to determine if ready.
16 angular_velocity_goal:double;
17}
18
19table ShooterStatus {
20 // The final wheel shooting the ball
Sabina Davisedf89472020-02-17 15:27:37 -080021 finisher:FlywheelControllerStatus;
Tyler Chatowcf413662020-02-09 14:36:36 -080022
Sabina Davisedf89472020-02-17 15:27:37 -080023 // The subsystem to accelerate the ball before the finisher
Austin Schuh9dcd5202020-02-20 20:06:04 -080024 // Velocity is the fastest (top) wheel
Sabina Davisedf89472020-02-17 15:27:37 -080025 accelerator_left:FlywheelControllerStatus;
26 accelerator_right:FlywheelControllerStatus;
Tyler Chatowcf413662020-02-09 14:36:36 -080027}
28
Stephan Massaltd021f972020-01-05 20:41:23 -080029table Status {
30 // All subsystems know their location.
31 zeroed:bool;
32
Sabina Davis5187f862020-02-09 13:16:51 -080033 // If true, we have aborted. This is if one or all subsystem estops.
Stephan Massaltd021f972020-01-05 20:41:23 -080034 estopped:bool;
35
Austin Schuh9dcd5202020-02-20 20:06:04 -080036 // Subsystem status.
Sabina Davis70d5e912020-01-31 21:10:37 -080037 hood:frc971.control_loops.AbsoluteEncoderProfiledJointStatus;
Sabina Davis6b61de32020-02-02 12:42:51 -080038 intake:frc971.control_loops.AbsoluteEncoderProfiledJointStatus;
Tyler Chatow1879acc2020-02-01 13:26:48 -080039 turret:frc971.control_loops.PotAndAbsoluteEncoderProfiledJointStatus;
Tyler Chatowcf413662020-02-09 14:36:36 -080040
41 // Shooter subsystem status.
42 shooter:ShooterStatus;
Sabina Davis5187f862020-02-09 13:16:51 -080043
44 // Status of the control_panel
45 control_panel:frc971.control_loops.RelativeEncoderProfiledJointStatus;
Stephan Massaltd021f972020-01-05 20:41:23 -080046}
47
48root_type Status;