Alex Perry | cb7da4b | 2019-08-28 19:35:56 -0700 | [diff] [blame^] | 1 | include "frc971/control_loops/control_loops.fbs"; |
| 2 | |
| 3 | namespace y2017.control_loops.superstructure; |
| 4 | |
| 5 | table IntakeGoal { |
| 6 | // Zero for the intake is when the front tube is tangent with the front of the |
| 7 | // frame. Positive is out. |
| 8 | |
| 9 | // Goal distance of the intake. |
| 10 | distance:double; |
| 11 | |
| 12 | // Caps on velocity/acceleration for profiling. 0 for the default. |
| 13 | profile_params:frc971.ProfileParameters; |
| 14 | |
| 15 | // Voltage to send to the rollers. Positive is sucking in. |
| 16 | voltage_rollers:double; |
| 17 | |
| 18 | // If true, disable the intake so we can hang. |
| 19 | disable_intake:bool; |
| 20 | |
| 21 | // The gear servo value. |
| 22 | gear_servo:double; |
| 23 | } |
| 24 | |
| 25 | table IndexerGoal { |
| 26 | // Indexer angular velocity goals in radians/second. |
| 27 | angular_velocity:double; |
| 28 | |
| 29 | // Roller voltage. Positive is sucking in. |
| 30 | voltage_rollers:double; |
| 31 | } |
| 32 | |
| 33 | table TurretGoal { |
| 34 | // An angle of zero means the turrent faces toward the front of the |
| 35 | // robot where the intake is located. The angle increases when the turret |
| 36 | // turns clockwise (towards right from the front), and decreases when |
| 37 | // the turrent turns counter-clockwise (towards left from the front). |
| 38 | // These are from a top view above the robot. |
| 39 | angle:double; |
| 40 | |
| 41 | // If true, ignore the angle and track using vision. If we don't see |
| 42 | // anything, we'll use the turret goal above. |
| 43 | track:bool; |
| 44 | |
| 45 | // Caps on velocity/acceleration for profiling. 0 for the default. |
| 46 | profile_params:frc971.ProfileParameters; |
| 47 | } |
| 48 | |
| 49 | table HoodGoal { |
| 50 | // Angle the hood is currently at. An angle of zero is at the lower hard |
| 51 | // stop, angle increases as hood rises. |
| 52 | angle:double; |
| 53 | |
| 54 | // Caps on velocity/acceleration for profiling. 0 for the default. |
| 55 | profile_params:frc971.ProfileParameters; |
| 56 | } |
| 57 | |
| 58 | table ShooterGoal { |
| 59 | // Angular velocity goals in radians/second. Positive is shooting out of the |
| 60 | // robot. |
| 61 | angular_velocity:double; |
| 62 | } |
| 63 | |
| 64 | table Goal { |
| 65 | intake:IntakeGoal; |
| 66 | indexer:IndexerGoal; |
| 67 | turret:TurretGoal; |
| 68 | hood:HoodGoal; |
| 69 | shooter:ShooterGoal; |
| 70 | lights_on:bool; |
| 71 | use_vision_for_shots:bool; |
| 72 | } |
| 73 | |
| 74 | root_type Goal; |