blob: 373bfe2d3de5621593560ad2e3e4a9253ce2e4fd [file] [log] [blame]
Alex Perrycb7da4b2019-08-28 19:35:56 -07001include "frc971/control_loops/control_loops.fbs";
2
3namespace y2016.control_loops.superstructure;
4
5table JointState {
6 // Angle of the joint in radians.
7 angle:float;
8 // Angular velocity of the joint in radians/second.
9 angular_velocity:float;
10 // Profiled goal angle of the joint in radians.
11 goal_angle:float;
12 // Profiled goal angular velocity of the joint in radians/second.
13 goal_angular_velocity:float;
14 // Unprofiled goal angle of the joint in radians.
15 unprofiled_goal_angle:float;
16 // Unprofiled goal angular velocity of the joint in radians/second.
17 unprofiled_goal_angular_velocity:float;
18
19 // The estimated voltage error.
20 voltage_error:float;
21
22 // The calculated velocity with delta x/delta t
23 calculated_velocity:float;
24
25 // Components of the control loop output
26 position_power:float;
27 velocity_power:float;
28 feedforwards_power:float;
29
30 // State of the estimator.
31 estimator_state:frc971.EstimatorState;
32}
33
34table Status {
35 // Are the superstructure subsystems zeroed?
36 zeroed:bool;
37
38 // If true, we have aborted.
39 estopped:bool;
40
41 // The internal state of the state machine.
42 state:int;
43
44
45 // Estimated angles and angular velocities of the superstructure subsystems.
46 intake:JointState;
47 shoulder:JointState;
48 wrist:JointState;
49
50 shoulder_controller_index:int;
51
52 // Is the superstructure collided?
53 is_collided:bool;
54}
55
56root_type Status;