2024:Robot IO Map: Difference between revisions
No edit summary Tag: visualeditor |
Tag: visualeditor |
||
Line 39: | Line 39: | ||
|- | |- | ||
| style="text-align: center" | 2 | | style="text-align: center" | 2 | ||
| style="text-align: center" | | | style="text-align: center" | Grabber | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="text-align: center; width: 112px" | | | style="text-align: center; width: 112px" | Neo 550 | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Left intake motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 20A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 11 | ||
|Not set yet, depends on wire route | |||
|- | |||
| style="text-align: center" | 3 | |||
| style="text-align: center" | Grabber | |||
| style="text-align: center" | Spark Max | |||
| style="text-align: center; width: 112px" | Neo 550 | |||
| style="width: 70px; text-align: center" | Brake | |||
| style="width: 110px; text-align: center" | Right intake motor | |||
| style="width: 224px; text-align: center" | | |||
| style="width: 115px; text-align: center" |20A | |||
| style="width: 55px; text-align: center" | 10 | |||
|Not set yet, depends on wire route | |||
|- | |||
| style="text-align: center" |4 | |||
| style="text-align: center" |Lift | |||
| style="text-align: center" |Spark Max | |||
| style="text-align: center" |Neo | |||
| style="text-align: center" |Brake | |||
| style="text-align: center" |Telescoping arm extension | |||
| | |||
| style="text-align: center" |40A | |||
|14 | |||
| style="text-align: center" |Using Integrated Encoder | |||
|- | |||
| style="text-align: center" |5 | |||
| style="text-align: center" |Lift | |||
| style="text-align: center" |Spark Max | |||
| style="text-align: center" |Neo 550 | |||
| style="text-align: center" |Brake | |||
| style="text-align: center" |Left lift lead screw | |||
| | | | ||
| style="text-align: center" |40A | |||
|4 | |||
| style="text-align: center" |Using Integrated Encoder | |||
|- | |- | ||
| style="text-align: center" | | | style="text-align: center" | 6 | ||
| style="text-align: center" | | | style="text-align: center" | Lift | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="text-align: center; width: 112px" | Neo 550 | |||
| style="width: 70px; text-align: center" | Brake | |||
| style="width: 110px; text-align: center" | Right lift lead screw | |||
| style="width: 224px; text-align: center" | | |||
| style="width: 115px; text-align: center" | 40A | |||
| style="width: 55px; text-align: center" | 15 | |||
| style="text-align: center" |Using Integrated Encoder | |||
|- | |||
| style="text-align: center" | 7 | |||
| style="text-align: center" | RCS | |||
| style="text-align: center" | PCM | |||
| style="text-align: center; width: 112px" | | | style="text-align: center; width: 112px" | | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Pneumatics Control Module | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 5A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" |22 | ||
| | | | ||
|- | |- | ||
| style="text-align: center" | | | style="text-align: center" |8 | ||
| style="text-align: center" | | | style="text-align: center" | | ||
| style="text-align: center" | | | style="text-align: center" | | ||
| style="text-align: center" | | | style="text-align: center" | | ||
| style="text-align: center" | | | style="text-align: center" | | ||
| style="text-align: center" | | | style="text-align: center" | | ||
Line 79: | Line 116: | ||
| style="text-align: center" | | | style="text-align: center" | | ||
| | | | ||
|- | |- | ||
| style="text-align: center" | | | style="text-align: center" | 9 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="text-align: center; width: 112px" | | | style="text-align: center; width: 112px" | Neo | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Front left drive motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 40A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 0 | ||
| style="text-align: center" | | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" | | | style="text-align: center" | 10 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="text-align: center; width: 112px" | | | style="text-align: center; width: 112px" | Neo | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Back left drive motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 40A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 2 | ||
| | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" | | | style="text-align: center" | 11 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="text-align: center" | | | style="text-align: center; width: 112px" | Neo | ||
| style="text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="text-align: center" | | | style="width: 110px; text-align: center" | Back right drive motor | ||
| style="text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="text-align: center" | | | style="width: 115px; text-align: center" | 40A | ||
| style="text-align: center" | | | style="width: 55px; text-align: center" | 18 | ||
| | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" | | | style="text-align: center" | 12 | ||
| style="text-align: center" | Drive | |||
| style="text-align: center" | Spark Max | |||
| style="text-align: center; width: 112px" | Neo | |||
| style="width: 70px; text-align: center" | Brake | |||
| style="width: 110px; text-align: center" | Front right drive motor | |||
| style="text-align: center" | | |||
| style="text-align: center" | | |||
| style="text-align: center; width: 112px" | | |||
| style="width: 70px; text-align: center" | | |||
| style="width: 110px; text-align: center" | | |||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 40A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 16 | ||
| style="text-align: center" | | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| 13 | | 13 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="text-align: center; width: 112px" | | | style="text-align: center; width: 112px" | Neo 550 | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Front left rotation motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 20A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 1 | ||
| style="text-align: center" | | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" | 14 | | style="text-align: center" | 14 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="width: 112px; text-align: center" | | | style="width: 112px; text-align: center" | Neo 550 | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Back left rotation motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 20A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 3 | ||
| style="text-align: center" | | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" | 15 | | style="text-align: center" | 15 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="width: 112px; text-align: center" | | | style="width: 112px; text-align: center" | Neo 550 | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Back right rotation motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 20A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | 19 | ||
| style="text-align: center" | | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" | 16 | | style="text-align: center" | 16 | ||
| style="text-align: center" | | | style="text-align: center" | Drive | ||
| style="text-align: center" | | | style="text-align: center" | Spark Max | ||
| style="width: 112px; text-align: center" | | | style="width: 112px; text-align: center" | Neo 550 | ||
| style="width: 70px; text-align: center" | | | style="width: 70px; text-align: center" | Brake | ||
| style="width: 110px; text-align: center" | | | style="width: 110px; text-align: center" | Front right rotation motor | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 20A | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" |17 | ||
| style="text-align: center" | | | style="text-align: center" |Using Integrated Encoder | ||
|- | |- | ||
| style="text-align: center" |17 | | style="text-align: center" |17 | ||
| style="text-align: center" | | | style="text-align: center" |Drive | ||
| style="text-align: center" | | | style="text-align: center" |Encoder | ||
| style="text-align: center" | | | style="text-align: center" |CANCoder | ||
| style="text-align: center" | | | style="text-align: center" |N/A | ||
| style="text-align: center" | | | style="text-align: center" |Front left absolute encoder | ||
| | | | ||
| | | | ||
|N/A | |||
| | | | ||
|- | |- | ||
| style="text-align: center" |18 | | style="text-align: center" |18 | ||
| style="text-align: center" | | | style="text-align: center" |Drive | ||
| style="text-align: center" | | | style="text-align: center" |Encoder | ||
| style="text-align: center" | | | style="text-align: center" |CANCoder | ||
| style="text-align: center" | | | style="text-align: center" |N/A | ||
| style="text-align: center" | | | style="text-align: center" |Back left absolute encoder | ||
| | | | ||
| | | | ||
|N/A | |||
| | | | ||
|- | |- | ||
| style="text-align: center" |19 | | style="text-align: center" |19 | ||
| style="text-align: center" | | | style="text-align: center" |Drive | ||
| style="text-align: center" | | | style="text-align: center" |Encoder | ||
| style="text-align: center" | | | style="text-align: center" |CANCoder | ||
| style="text-align: center" | | | style="text-align: center" |N/A | ||
| style="text-align: center" | | | style="text-align: center" |Back right absolute encoder | ||
| | | | ||
| | | | ||
|N/A | |||
| | | | ||
|- | |- | ||
| style="text-align: center" |20 | | style="text-align: center" |20 | ||
| style="text-align: center" | | | style="text-align: center" |Drive | ||
| style="text-align: center" | | | style="text-align: center" |Encoder | ||
| style="text-align: center" | | | style="text-align: center" |CANCoder | ||
| style="text-align: center" | | | style="text-align: center" |N/A | ||
| style="text-align: center" | | | style="text-align: center" |Front right absolute encoder | ||
| | | | ||
| | | | ||
| | |N/A | ||
| | | | ||
|} | |} | ||
Line 259: | Line 259: | ||
|- | |- | ||
|0 | |0 | ||
| | |Neo (Drive) | ||
| | |40A | ||
| | |40A | ||
| | | | ||
|- | |- | ||
|1 | |1 | ||
| | |Neo 550 (Drive) | ||
| | |30A | ||
| | |30A | ||
| | | | ||
|- | |- | ||
|2 | |2 | ||
| | |Neo (Drive) | ||
| | |40A | ||
| | |40A | ||
| | | | ||
|- | |- | ||
|3 | |3 | ||
| | |Neo 550 (Drive) | ||
| | |30A | ||
| | |30A | ||
| | | | ||
|- | |- | ||
|4 | |4 | ||
| | |Leadscrew Left (Lift) | ||
| | |40A | ||
| | | | ||
| | | | ||
Line 319: | Line 319: | ||
|- | |- | ||
|10 | |10 | ||
| | |Grabber Right | ||
| | |30A | ||
| | | | ||
| | | | ||
|- | |- | ||
|11 | |11 | ||
| | |Grabber Left | ||
| | |30A | ||
| | | | ||
| | | | ||
Line 343: | Line 343: | ||
|- | |- | ||
|14 | |14 | ||
| | |Telescoping (Lift) | ||
| | |40A | ||
| | | | ||
| | | | ||
|- | |- | ||
|15 | |15 | ||
|Leadscrew Right (Lift) | |||
|30A | |||
| | | | ||
| | | | ||
|- | |||
|- | |||
|16 | |16 | ||
| | |Neo (Drive) | ||
| | |40A | ||
| | |40A | ||
| | | | ||
|- | |- | ||
|17 | |17 | ||
| | |Neo 550 (Drive) | ||
| | |30A | ||
| | |30A | ||
| | | | ||
|- | |- | ||
|18 | |18 | ||
| | |Neo (Drive) | ||
| | |40A | ||
| | |40A | ||
| | | | ||
|- | |- | ||
|19 | |19 | ||
| | |Neo 550 (Drive) | ||
| | |30A | ||
| | |30A | ||
| | | | ||
|- | |- | ||
|20 | |20 | ||
|RIO(?) | |||
|10A | |||
| | | | ||
| | |Fused Port | ||
|- | |- | ||
|21 | |21 | ||
|VRM(?) | |||
|20A | |||
| | | | ||
| | |Fused Port | ||
|- | |- | ||
|22 | |22 | ||
|PCM | |||
|10A | |||
| | | | ||
| | |Fused Port | ||
|- | |- | ||
|23 (Switchable) | |23 (Switchable) | ||
|Ethernet Switch | |||
|5A | |||
| | | | ||
| | |Fused Port | ||
|} | |} | ||
</div><div class="mw-parser-output"> | </div><div class="mw-parser-output"> | ||
Line 411: | Line 411: | ||
|- | |- | ||
|5V/2A | |5V/2A | ||
| | |Blinky Blinky | ||
|- | |- | ||
|5V/2A | |5V/2A | ||
| | |Blinky Blinky | ||
|- | |- | ||
|5V/500mA | |5V/500mA | ||
| | |Blinky Blinky | ||
|- | |- | ||
|5V/500mA | |5V/500mA | ||
| | |Blinky Blinky | ||
|- | |- | ||
|12V/2A | |12V/2A | ||
| | |Banner Sensor - GamePiece | ||
|- | |- | ||
| 12V/2A | | 12V/2A | ||
Line 429: | Line 429: | ||
|- | |- | ||
|12V/500mA | |12V/500mA | ||
| | |4x CanCoders tied together - Drive | ||
|- | |- | ||
|12V/500mA | |12V/500mA | ||
|} | |} | ||
</div> <div class="mw-parser-output"></div><div class="mw-parser-output"> | </div> <div class="mw-parser-output"></div><div class="mw-parser-output"> | ||
Line 458: | Line 457: | ||
|- | |- | ||
| style="width: 15px" |0 | | style="width: 15px" |0 | ||
| style="width: 70px" | | | style="width: 70px" |Blinky Blinky | ||
| style="width: 76px" | | | style="width: 76px" |LED Strip | ||
| style="width: 94px" | | | style="width: 94px" | | ||
| style="width: 167px; text-align: center" | | | style="width: 167px; text-align: center" | | ||
| style="width: 148px" | | | style="width: 148px" |Illumination & Communication w/ HP | ||
| style="width: 280px" | | | style="width: 280px" |Yes | ||
| style="width: 125px" | | | style="width: 125px" |5V 2A on VRM | ||
| style="width: 72px" | | | style="width: 72px" | | ||
|- | |- | ||
Line 760: | Line 759: | ||
|- | |- | ||
| style="text-align: center" |0 | | style="text-align: center" |0 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" |Grabber | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" |Beam Break | ||
| style="width: 139px; text-align: center" | | | style="width: 139px; text-align: center" | | ||
| style="width: 193px; text-align: center" | | | style="width: 193px; text-align: center" |Grabber intake sensor | ||
| style="width: 223px; text-align: center" | | | style="width: 223px; text-align: center" |Detect acquired game pieces | ||
| style="width: 231px; text-align: center" | | | style="width: 231px; text-align: center" | | ||
|- | |- | ||
| style="text-align: center" |1 | | style="text-align: center" |1 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" |Lift | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
| style="width: 139px; text-align: center" | | | style="width: 139px; text-align: center" | | ||
| style="width: 193px; text-align: center" | | | style="width: 193px; text-align: center" |Lift home sensor | ||
| style="width: 223px; text-align: center" | | | style="width: 223px; text-align: center" |Detect when telescoping arm is fully retracted | ||
| style="width: 231px; text-align: center" | | | style="width: 231px; text-align: center" | | ||
|- | |- | ||
| style="text-align: center" |2 | | style="text-align: center" |2 | ||
| style="text-align: center" | | | style="text-align: center" | IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" | Lift | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
| style="width: 139px; text-align: center" | | | style="width: 139px; text-align: center" | | ||
| style="width: 193px; text-align: center" | | | style="width: 193px; text-align: center" |Lift extension sensor | ||
| style="width: 223px; text-align: center" | | | style="width: 223px; text-align: center" |Detect when telescoping arm is fully extended | ||
| style="width: 231px; text-align: center" | | | style="width: 231px; text-align: center" | | ||
|- | |- | ||
| style="text-align: center" |3 | | style="text-align: center" |3 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" |Lift | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
| style="width: 139px; text-align: center" | | | style="width: 139px; text-align: center" | | ||
| style="width: 193px; text-align: center" | | | style="width: 193px; text-align: center" | | ||
| style="width: 223px; text-align: center" | | | style="width: 223px; text-align: center" |Lift home sensor (ish) & hard stop | ||
| style="width: 231px; text-align: center" | | | style="width: 231px; text-align: center" |Detect when lift needs to stop | ||
|- | |- | ||
| style="text-align: center" |4 | | style="text-align: center" |4 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" | | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
Line 824: | Line 823: | ||
|- | |- | ||
| style="text-align: center" |7 | | style="text-align: center" |7 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" | | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
Line 833: | Line 832: | ||
|- | |- | ||
| style="text-align: center" |8 | | style="text-align: center" |8 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" | | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
Line 842: | Line 841: | ||
|- | |- | ||
| style="text-align: center" |9 | | style="text-align: center" |9 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" | | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
Line 851: | Line 850: | ||
|- | |- | ||
| style="text-align: center" |10 | | style="text-align: center" |10 | ||
| style="text-align: center" | | | style="text-align: center" |IN | ||
| style="width: 69px; text-align: center" | | | style="width: 69px; text-align: center" | | ||
| style="width: 122px; text-align: center" | | | style="width: 122px; text-align: center" | | ||
Line 875: | Line 874: | ||
|- | |- | ||
| style="width: 16px" | 0 | | style="width: 16px" | 0 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 884: | Line 883: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |1 | | style="width: 16px; text-align: center" |1 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 893: | Line 892: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |2 | | style="width: 16px; text-align: center" |2 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 902: | Line 901: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |3 | | style="width: 16px; text-align: center" |3 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 911: | Line 910: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |4 | | style="width: 16px; text-align: center" |4 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 920: | Line 919: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |5 | | style="width: 16px; text-align: center" |5 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 929: | Line 928: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |6 | | style="width: 16px; text-align: center" |6 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 938: | Line 937: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |7 | | style="width: 16px; text-align: center" |7 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 947: | Line 946: | ||
|- | |- | ||
| style="width: 16px; text-align: center" |8 | | style="width: 16px; text-align: center" |8 | ||
| style="width: 56px; text-align: center" | | | style="width: 56px; text-align: center" |IN | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
| style="width: 74px; text-align: center" | | | style="width: 74px; text-align: center" | | ||
Line 1,110: | Line 1,109: | ||
|- | |- | ||
| style="text-align: center" |0 | | style="text-align: center" |0 | ||
| style="width: 76px; text-align: center" | | | style="width: 76px; text-align: center" | | ||
| style="width: 75px; text-align: center" | | | style="width: 75px; text-align: center" | | ||
| style="width: 53px; text-align: center" | | | style="width: 53px; text-align: center" | | ||
| style="width: 205px; text-align: center" | | | style="width: 205px; text-align: center" | | ||
| style="width: 241px; text-align: center" | | | style="width: 241px; text-align: center" | | ||
| style="width: 112px; text-align: center" | | | style="width: 112px; text-align: center" | | ||
|} | |} | ||
Line 1,167: | Line 1,166: | ||
| rowspan="8" style="width: 8px; text-align: center" |1 | | rowspan="8" style="width: 8px; text-align: center" |1 | ||
| style="width: 1px" |0 | | style="width: 1px" |0 | ||
| colspan="1" rowspan="2" | | | colspan="1" rowspan="2" |Grabber | ||
| colspan="1" rowspan="2" style="width: 75px; text-align: center" | | | colspan="1" rowspan="2" style="width: 75px; text-align: center" |Double | ||
| colspan="1" rowspan="2" style="width: 64px; text-align: center" | | | colspan="1" rowspan="2" style="width: 64px; text-align: center" | | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Extend | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" |Difference between cone intake and cube intake | ||
| colspan="1" rowspan="2" style="width: 118px; text-align: center" | | | colspan="1" rowspan="2" style="width: 118px; text-align: center" | | ||
| rowspan="8" style="width: 118px; text-align: center" | | | rowspan="8" style="width: 118px; text-align: center" | | ||
|- | |- | ||
| style="width: 1px; text-align: center" |1 | | style="width: 1px; text-align: center" |1 | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Retract | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" | | ||
|- | |- | ||
| style="width: 1px; text-align: center" |2 | | style="width: 1px; text-align: center" |2 | ||
| colspan="1" rowspan="2" style="text-align: center" | | | colspan="1" rowspan="2" style="text-align: center" |Grabber | ||
| colspan="1" rowspan="2" style="width: 75px; text-align: center" | | | colspan="1" rowspan="2" style="width: 75px; text-align: center" |Double | ||
| colspan="1" rowspan="2" style="width: 64px; text-align: center" | | | colspan="1" rowspan="2" style="width: 64px; text-align: center" | | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Extend | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" |Difference between cone intake and cone transport | ||
| colspan="1" rowspan="2" style="width: 118px; text-align: center" | | | colspan="1" rowspan="2" style="width: 118px; text-align: center" | | ||
|- | |- | ||
| style="width: 1px; text-align: center" |3 | | style="width: 1px; text-align: center" |3 | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Retract | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" | | ||
|- | |- | ||
| style="width: 1px; text-align: center" |4 | | style="width: 1px; text-align: center" |4 | ||
| colspan="1" rowspan="2" style="text-align: center" | | | colspan="1" rowspan="2" style="text-align: center" |Grabber | ||
| colspan="1" rowspan="2" style="width: 75px; text-align: center" | | | colspan="1" rowspan="2" style="width: 75px; text-align: center" |Double | ||
| colspan="1" rowspan="2" style="width: 64px; text-align: center" | | | colspan="1" rowspan="2" style="width: 64px; text-align: center" | | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Extend | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" |Grabber Position for intaking tipped cone | ||
| colspan="1" rowspan="2" style="width: 118px; text-align: center" | | | colspan="1" rowspan="2" style="width: 118px; text-align: center" | | ||
|- | |- | ||
| style="width: 1px; text-align: center" |5 | | style="width: 1px; text-align: center" |5 | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Retract | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" |Grabber Position for intaking upright cone | ||
|- | |- | ||
| style="width: 1px; text-align: center" |6 | | style="width: 1px; text-align: center" |6 | ||
| colspan="1" rowspan="2" style="text-align: center" | | | colspan="1" rowspan="2" style="text-align: center" |Drive Base | ||
| colspan="1" rowspan="2" style="width: 75px; text-align: center" | | | colspan="1" rowspan="2" style="width: 75px; text-align: center" |Double | ||
| colspan="1" rowspan="2" style="width: 64px; text-align: center" | | | colspan="1" rowspan="2" style="width: 64px; text-align: center" | | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Retract | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" |Parking Break | ||
| colspan="1" rowspan="2" style="width: 118px; text-align: center" | | | colspan="1" rowspan="2" style="width: 118px; text-align: center" | | ||
|- | |- | ||
| style="width: 1px; text-align: center" |7 | | style="width: 1px; text-align: center" |7 | ||
| style="width: 183px; text-align: center" | | | style="width: 183px; text-align: center" |Extend | ||
| style="width: 290px; text-align: center" | | | style="width: 290px; text-align: center" |Parking Break | ||
|- | |- | ||
| colspan="1" rowspan="6" style="width: 8px; text-align: center" |2 | | colspan="1" rowspan="6" style="width: 8px; text-align: center" |2 | ||
Line 1,273: | Line 1,272: | ||
| style="width: 92px; text-align: center" |A-1 | | style="width: 92px; text-align: center" |A-1 | ||
| style="width: 414px" |Left Joystick Y | | style="width: 414px" |Left Joystick Y | ||
| | |Drive translation Y | ||
| | | | ||
|- | |- | ||
| style="width: 92px; text-align: center" | A-1 | | style="width: 92px; text-align: center" | A-1 | ||
| style="width: 414px" |Left Joystick X | | style="width: 414px" |Left Joystick X | ||
| | | Drive translation X | ||
| | | | ||
|- | |- | ||
| | | | ||
|Left Joystick Press | |Left Joystick Press | ||
| | |Drive lock X translation toggle | ||
| | | | ||
|- | |- | ||
Line 1,293: | Line 1,292: | ||
| style="width: 92px; text-align: center" |A-4 | | style="width: 92px; text-align: center" |A-4 | ||
| style="width: 414px" | Right Joystick X | | style="width: 414px" | Right Joystick X | ||
| | |Drive rotation | ||
| | | | ||
|- | |- | ||
| style="width: 92px; text-align: center" |B-6 | | style="width: 92px; text-align: center" |B-6 | ||
| style="width: 414px" |Right Bumper | | style="width: 414px" |Right Bumper | ||
| | |Slow drive rotation (hold) | ||
| | | | ||
|- | |- | ||
| style="width: 92px; text-align: center" |B-5 | | style="width: 92px; text-align: center" |B-5 | ||
| style="width: 414px" |Left Bumper | | style="width: 414px" |Left Bumper | ||
| | | Slow drive translation (hold) | ||
| | | | ||
|- | |- | ||
Line 1,323: | Line 1,322: | ||
| style="width: 92px; text-align: center" | B-3 | | style="width: 92px; text-align: center" | B-3 | ||
| style="width: 414px" | Cross / X Button | | style="width: 414px" | Cross / X Button | ||
| | |Brick drive | ||
| | | | ||
|- | |- | ||
| style="width: 92px; text-align: center" |B-4 | | style="width: 92px; text-align: center" |B-4 | ||
| style="width: 414px" |Triangle / Y Button | | style="width: 414px" |Triangle / Y Button | ||
| | |Toggle Absolute Rotation | ||
| | | | ||
|- | |- | ||
Line 1,361: | Line 1,360: | ||
| style="width: 91px; text-align: center" |A-2 | | style="width: 91px; text-align: center" |A-2 | ||
| style="width: 286px" |Left Trigger | | style="width: 286px" |Left Trigger | ||
| style="width: 361px" | | | style="width: 361px" |Score GamePiece | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
| style="width: 91px; text-align: center" |A-3 | | style="width: 91px; text-align: center" |A-3 | ||
| style="width: 286px" |Right Trigger | | style="width: 286px" |Right Trigger | ||
| style="width: 361px" | | | style="width: 361px" |Intake | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
Line 1,380: | Line 1,379: | ||
| style="width: 91px; text-align: center" |A-5 | | style="width: 91px; text-align: center" |A-5 | ||
| style="width: 286px" |Right Joystick Y-Axis | | style="width: 286px" |Right Joystick Y-Axis | ||
| style="width: 361px" | | | style="width: 361px" | | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
| style="width: 91px; text-align: center" | B-1 | | style="width: 91px; text-align: center" | B-1 | ||
| style="width: 286px" |Square / A Button | | style="width: 286px" |Square / A Button | ||
| style="width: 361px" | | | style="width: 361px" |Prepare intake for cube aquisition | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
| style="width: 91px; text-align: center" |B-2 | | style="width: 91px; text-align: center" |B-2 | ||
| style="width: 286px" |Circle / B button | | style="width: 286px" |Circle / B button | ||
| style="width: 361px" | | | style="width: 361px" |Prepare intake / wrist for tipped cone acquisition | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
Line 1,400: | Line 1,399: | ||
| style="width: 91px; text-align: center" |B-4 | | style="width: 91px; text-align: center" |B-4 | ||
| style="width: 286px" |Triangle / Y button | | style="width: 286px" |Triangle / Y button | ||
| style="width: 361px" | | | style="width: 361px" |Prepare intake for upright cone acquisition | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
Line 1,410: | Line 1,409: | ||
| style="width: 91px; text-align: center" |B-6 | | style="width: 91px; text-align: center" |B-6 | ||
| style="width: 286px" |Right bumper | | style="width: 286px" |Right bumper | ||
| style="width: 361px" | | | style="width: 361px" |Outake | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
| style="width: 91px; text-align: center" |B-7 | | style="width: 91px; text-align: center" |B-7 | ||
| style="width: 286px" |Back Button | | style="width: 286px" |Back Button | ||
| style="width: 361px" | | | style="width: 361px" |Reset GamePiece | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
Line 1,425: | Line 1,424: | ||
| style="width: 91px; text-align: center" |B-9 | | style="width: 91px; text-align: center" |B-9 | ||
| style="width: 286px" |Left Stick Pressed | | style="width: 286px" |Left Stick Pressed | ||
| style="width: 361px" | | | style="width: 361px" | | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
| style="width: 91px; text-align: center" |B-10 | | style="width: 91px; text-align: center" |B-10 | ||
| style="width: 286px" |Right Stick Pressed | | style="width: 286px" |Right Stick Pressed | ||
| style="width: 361px" | | | style="width: 361px" | | ||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
| style="width: 91px; text-align: center" |POV-0 | | style="width: 91px; text-align: center" |POV-0 | ||
| style="width: 286px" |D-pad up | | style="width: 286px" |D-pad up | ||
| style="width: 361px" | | | style="width: 361px" |If has GamePiece, then lift goes to high scoring location | ||
If doesn't have GamePiece, then lift goes to balcony acquisition position | |||
| style="width: 141px" | | | style="width: 141px" | | ||
|- | |- | ||
|POV-90 | |POV-90 | ||
| D-pad right | | D-pad right | ||
| | |Lift goes to Mid scoring location | ||
| | | | ||
|- | |- | ||
|POV-180 | |POV-180 | ||
|D-pad down | |D-pad down | ||
| | |If has GamePiece, then goes to hybrid scoring location | ||
If doesn't have GamePiece, then goes to ground intake acquisition position | |||
| | | | ||
|- | |- | ||
Line 1,465: | Line 1,466: | ||
|- | |- | ||
| style="width: 92px; text-align: center" |B-1 | | style="width: 92px; text-align: center" |B-1 | ||
| style="width: 112px" | | | style="width: 112px" |Blinky Blinky Off | ||
| style="width: 521px" | | | style="width: 521px" |Turns off Blinky Blinky | ||
| style="width: 158px" | | | style="width: 158px" | | ||
|- | |- | ||
| style="width: 92px; text-align: center" |B-2 | | style="width: 92px; text-align: center" |B-2 | ||
| style="width: 112px" | | | style="width: 112px" |Robot-Centric | ||
| style="width: 521px" | | | style="width: 521px" |Switches from field-centric to Robot-Centric | ||
| style="width: 158px" | | | style="width: 158px" | | ||
|- | |- | ||
Line 1,485: | Line 1,486: | ||
|- | |- | ||
| style="width: 92px; text-align: center" |B-5 | | style="width: 92px; text-align: center" |B-5 | ||
| style="width: 112px" | | | style="width: 112px" |GamePiece Manual | ||
| style="width: 521px" | | | style="width: 521px" |GamePiece Manual - MAY BREAK THINGS!!!! | ||
| style="width: 158px" | | | style="width: 158px" | | ||
|- | |- | ||
| style="width: 92px; text-align: center" | B-6 | | style="width: 92px; text-align: center" | B-6 | ||
| style="width: 112px" | | | style="width: 112px" |Crater mode | ||
| style="width: 521px" | | | style="width: 521px" |Pit (crater) mode | ||
| style="width: 158px" | | | style="width: 158px" | | ||
|- | |- | ||
Line 1,798: | Line 1,799: | ||
|} | |} | ||
===Network Ports=== | |||
{| style="width: 0px" cellspacing="1" cellpadding="2" border="1" | {| style="width: 0px" cellspacing="1" cellpadding="2" border="1" | ||
|- | |- | ||
| | |'''Server''' | ||
|'''Port''' | |||
|'''Client''' | |||
|'''Protocol''' | |||
| style="width: 1000px" |'''Description''' | |||
|- | |||
|roboRIO | |||
|5809 | |||
|Dashboard | |||
|TCP | |||
|PS5 Controller Input/Output | |||
|- | |||
|roboRIO | |||
|5802 | |||
|Raspberry Pis | |||
|TCP | |||
|Vision Processing communication | |||
|- | |||
|Raspberry Pi 1 | |||
|1181 | |||
|Dashboard | |||
|UDP | |||
|Left Front Camera | |||
|- | |||
|Raspberry Pi 2 | |||
|1182 | |||
|Dashboard | |||
|UDP | |||
|Right Front Camera | |||
|- | |||
|Raspberry Pi 1 | |||
|1182 | |||
|Dashboard | |||
|UDP | |||
|Back Camera | |||
|} | |} | ||
Revision as of 14:36, 4 December 2023
CAN ID Assignments
ID | Subsystem | Component Type |
Model # | Brake or Coast? | Description (brief) |
Operation |
PD Board Info (8) max. 40A PDB # |
General Notes | |
0 | Electrical | PD Module |
Power Distribution Module feedback | monitor PD | must be CAN 0 |
||||
1 | RESERVED | n/a | Factory-default allows for adding new device quickly and re-assign its ID |
don't use please | |||||
2 | Grabber | Spark Max | Neo 550 | Brake | Left intake motor | 20A | 11 | Not set yet, depends on wire route | |
3 | Grabber | Spark Max | Neo 550 | Brake | Right intake motor | 20A | 10 | Not set yet, depends on wire route | |
4 | Lift | Spark Max | Neo | Brake | Telescoping arm extension | 40A | 14 | Using Integrated Encoder | |
5 | Lift | Spark Max | Neo 550 | Brake | Left lift lead screw | 40A | 4 | Using Integrated Encoder | |
6 | Lift | Spark Max | Neo 550 | Brake | Right lift lead screw | 40A | 15 | Using Integrated Encoder | |
7 | RCS | PCM | Pneumatics Control Module | 5A | 22 | ||||
8 | |||||||||
9 | Drive | Spark Max | Neo | Brake | Front left drive motor | 40A | 0 | Using Integrated Encoder | |
10 | Drive | Spark Max | Neo | Brake | Back left drive motor | 40A | 2 | Using Integrated Encoder | |
11 | Drive | Spark Max | Neo | Brake | Back right drive motor | 40A | 18 | Using Integrated Encoder | |
12 | Drive | Spark Max | Neo | Brake | Front right drive motor | 40A | 16 | Using Integrated Encoder | |
13 | Drive | Spark Max | Neo 550 | Brake | Front left rotation motor | 20A | 1 | Using Integrated Encoder | |
14 | Drive | Spark Max | Neo 550 | Brake | Back left rotation motor | 20A | 3 | Using Integrated Encoder | |
15 | Drive | Spark Max | Neo 550 | Brake | Back right rotation motor | 20A | 19 | Using Integrated Encoder | |
16 | Drive | Spark Max | Neo 550 | Brake | Front right rotation motor | 20A | 17 | Using Integrated Encoder | |
17 | Drive | Encoder | CANCoder | N/A | Front left absolute encoder | N/A | |||
18 | Drive | Encoder | CANCoder | N/A | Back left absolute encoder | N/A | |||
19 | Drive | Encoder | CANCoder | N/A | Back right absolute encoder | N/A | |||
20 | Drive | Encoder | CANCoder | N/A | Front right absolute encoder | N/A |
Port # | Device (Subteam) | Breaker Value | Max Current | Note |
---|---|---|---|---|
0 | Neo (Drive) | 40A | 40A | |
1 | Neo 550 (Drive) | 30A | 30A | |
2 | Neo (Drive) | 40A | 40A | |
3 | Neo 550 (Drive) | 30A | 30A | |
4 | Leadscrew Left (Lift) | 40A | ||
5 | ||||
6 | ||||
7 | ||||
8 | ||||
9 | ||||
10 | Grabber Right | 30A | ||
11 | Grabber Left | 30A | ||
12 | ||||
13 | ||||
14 | Telescoping (Lift) | 40A | ||
15 | Leadscrew Right (Lift) | 30A | ||
16 | Neo (Drive) | 40A | 40A | |
17 | Neo 550 (Drive) | 30A | 30A | |
18 | Neo (Drive) | 40A | 40A | |
19 | Neo 550 (Drive) | 30A | 30A | |
20 | RIO(?) | 10A | Fused Port | |
21 | VRM(?) | 20A | Fused Port | |
22 | PCM | 10A | Fused Port | |
23 (Switchable) | Ethernet Switch | 5A | Fused Port |
Port # | Device (Subteam) |
---|---|
5V/2A | Blinky Blinky |
5V/2A | Blinky Blinky |
5V/500mA | Blinky Blinky |
5V/500mA | Blinky Blinky |
12V/2A | Banner Sensor - GamePiece |
12V/2A | |
12V/500mA | 4x CanCoders tied together - Drive |
12V/500mA |
PWM Outputs
ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation
|
Brake/Coast |
Notes (8) max. 40A PDB # | |
0 | Blinky Blinky | LED Strip | Illumination & Communication w/ HP | Yes | 5V 2A on VRM | |||
1 | ||||||||
2 | ||||||||
3 | ||||||||
4 | ||||||||
5 | ||||||||
6 | ||||||||
7 | ||||||||
8 | ||||||||
9 | ||||||||
10 | ||||||||
11 |
Relay Outputs
ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation | Notes |
0 | ||||||
1 | ||||||
2 | ||||||
3 |
Analog IO
RoboRIO Analog Inputs
ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation |
Voltage Range |
Notes |
0 | |||||||
1 | |||||||
2 | |||||||
3 |
More Board Analog Inputs
ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation |
Voltage Range |
Notes |
0 | |||||||
1 | |||||||
2 | |||||||
3 |
Digital IO (GPIO)
RoboRio IO
ID | Direction (IN/OUT) |
Subsystem | Component Type |
Model # | Description (brief) |
Operation | Notes |
0 | IN | Grabber | Beam Break | Grabber intake sensor | Detect acquired game pieces | ||
1 | IN | Lift | Lift home sensor | Detect when telescoping arm is fully retracted | |||
2 | IN | Lift | Lift extension sensor | Detect when telescoping arm is fully extended | |||
3 | IN | Lift | Lift home sensor (ish) & hard stop | Detect when lift needs to stop | |||
4 | IN | ||||||
5 | |||||||
6 | |||||||
7 | IN | ||||||
8 | IN | ||||||
9 | IN | ||||||
10 | IN |
Rev Robotics More Board IO
ID | Direction (IN/OUT) | Subsystem | Component Type | Model # | Description (brief) | Operation | Notes |
0 | IN | ||||||
1 | IN | ||||||
2 | IN | ||||||
3 | IN | ||||||
4 | IN | ||||||
5 | IN | ||||||
6 | IN | ||||||
7 | IN | ||||||
8 | IN | ||||||
9 | |||||||
10 | |||||||
11 | |||||||
12 | |||||||
13 | |||||||
14 | |||||||
15 |
I2C Registers
Address (e.g. 0100111X) |
Pin (e.g. GP0) |
Subsystem | Component Type |
Model # | Description (brief) |
Operation | Notes |
0x52 | |||||||
SPI Devices
# | Subsystem | Component Type |
Model # | Description (brief) | Operation | Notes |
0 |
USB Host Ports
Address | Subsystem | Component Type |
Model # | Description (brief) | Operation | Notes |
0 | ||||||
1 |
Pneumatics Control Modules
PCM ID |
# | Subsystem | Solenoid is Double or Single? |
Solenoid Model # |
Description (brief) |
Operation | Circuit Pressure | PDB # |
1 | 0 | Grabber | Double | Extend | Difference between cone intake and cube intake | |||
1 | Retract | |||||||
2 | Grabber | Double | Extend | Difference between cone intake and cone transport | ||||
3 | Retract | |||||||
4 | Grabber | Double | Extend | Grabber Position for intaking tipped cone | ||||
5 | Retract | Grabber Position for intaking upright cone | ||||||
6 | Drive Base | Double | Retract | Parking Break | ||||
7 | Extend | Parking Break | ||||||
2 | 0 | |||||||
1 | ||||||||
2 | ||||||||
3 | ||||||||
4 | ||||||||
5 |
Operator Controls
Disable Xbox Controller
Controller 1 - Primary Driver
Button/Axis # | Action/Button | Description | Details |
A-1 | Left Joystick Y | Drive translation Y | |
A-1 | Left Joystick X | Drive translation X | |
Left Joystick Press | Drive lock X translation toggle | ||
A-4 | Right Joystick Y | ||
A-4 | Right Joystick X | Drive rotation | |
B-6 | Right Bumper | Slow drive rotation (hold) | |
B-5 | Left Bumper | Slow drive translation (hold) | |
A-3 | Right Trigger | ||
A-2 | Left Trigger | ||
B-1 | Square / A Button | ||
B-3 | Cross / X Button | Brick drive | |
B-4 | Triangle / Y Button | Toggle Absolute Rotation | |
B-2 | Circle / B Button |
Controller 2 - Aux Driver
Button/Axis # | Action/Button | Description | Details |
A-0 | Left Joystick X-Axis | ||
A-1 | Left Joystick Y-Axis | ||
A-2 | Left Trigger | Score GamePiece | |
A-3 | Right Trigger | Intake | |
A-4 | Right Joystick X-Axis |
| |
A-5 | Right Joystick Y-Axis | ||
B-1 | Square / A Button | Prepare intake for cube aquisition | |
B-2 | Circle / B button | Prepare intake / wrist for tipped cone acquisition | |
B-3 | Cross / X Button | ||
B-4 | Triangle / Y button | Prepare intake for upright cone acquisition | |
B-5 | Left bumper | ||
B-6 | Right bumper | Outake | |
B-7 | Back Button | Reset GamePiece | |
B-8 | Start Button | ||
B-9 | Left Stick Pressed | ||
B-10 | Right Stick Pressed | ||
POV-0 | D-pad up | If has GamePiece, then lift goes to high scoring location
If doesn't have GamePiece, then lift goes to balcony acquisition position |
|
POV-90 | D-pad right | Lift goes to Mid scoring location | |
POV-180 | D-pad down | If has GamePiece, then goes to hybrid scoring location
If doesn't have GamePiece, then goes to ground intake acquisition position |
|
POV-270 | D-pad left |
Controller 3 - Switches on console
Button/Axis # | Action/Button | Description | Details |
B-1 | Blinky Blinky Off | Turns off Blinky Blinky | |
B-2 | Robot-Centric | Switches from field-centric to Robot-Centric | |
B-3 | |||
B-4 | |||
B-5 | GamePiece Manual | GamePiece Manual - MAY BREAK THINGS!!!! | |
B-6 | Crater mode | Pit (crater) mode | |
B-7 | |||
B-8 | |||
B-9 |
Dashboard
Key | Data Type | Value | Description |
thunderdashboard_gyro | number |
0 - dashboard background not based on this 1 - dashboard background goes red |
used when: gyro is calibrating |
thunderdashboard_yellow | number |
0 - dashboard background not based on this 1 - dashboard background goes yellow |
used when: TBD NOTE: thunderdashboard_gyro takes precedence |
thunderdashboard_green | number |
0 - dashboard background not based on this 1 - dashboard background goes green |
used when: TBD NOTE: thunderdashboard_gyro takes precendence |
thunderdashboard_inpitmode | number |
0 - dashboard background not based on this 1 - dashboard background is power blue |
used when: robot is operating in 'pit mode' (for safer operatin in the pits) NOTE: thunderdashboard_gyro takes precendence |
thunderdashboard_auto_list | string | a comma seperated list | the list of auto modes (e.g. "0,1,2,3,4,5") |
thunderdashboard_auto_# | string | any text | one for each auto mode (e.g. thunderdashboard_auto_0 ... thunderdashboard_auto_5) |
Auto_Mode | number | a number from thunderdashboard_auto_list | the auto mode selected on the UI |
thunderdashboard_auto_start_delay | number | user selected number of seconds, 0 to 15, to delay start of auto mode | |
thunderdashboard_auto_doing_auto | boolean | true - should do autonomous
false - should not do autonomous |
Dashboard checkbox in auto selector page. When false, the robot should not do anything in autonomous |
thunderdashboard_auto_starting_location | number | 0 - barrier side
1 - center 2 - edge side |
Dashboard selection of which community zone the robot should start in |
thunderdashboard_auto_starting_gamepiece | number | 0 - cube
1 - cone |
Dashboard selection of which GamePiece the robot is starting with. Also determines the exact starting position of the robotin combination with the general zone as provided by 'thunderdashboard_auto_starting_location' |
thunderdashboard_auto_starting_action | number | Depending on the starting location, this value means different things.
If starting in the center, 0 - Score preloaded GamePiece and balance on Charge Station 1 - Score preloaded GamePiece, traverse Charge Station, and collect GamePiece 3 from field If starting on either side, Anything - Score preloaded GamePiece and collect field GamePiece 1 or 4 |
Dashboard selection of what action the robot should do first in autonomous |
thunderdashboard_auto_field_gamepiece | number | 0 - cube
1 - cone |
Dashboard selection of which GamePiece to collect on the field (if the starting action puts the robot in the position to acquire a GamePiece) |
thunderdashboard_auto_final_action | number | Depending on the starting location, this value means different things,
If starting in the center, 0 - Do nothing 1 - Balance on Charge Station If starting on either side, 0 - Do nothing 1 - Score acquired field GamePiece 2 - Balance on Charge Station |
Dashboard selection of what action the robot should do at the end of Autonomous (if the starting action puts the robot in the position for a final action). |
thunderdashboard_drive_x_pos | number | Robot current X position on the field (m) | |
thunderdashboard_drive_y_pos | number | Robot current Y position on the field (m) | |
thunderdashboard_drive_target_x_pos | number | Robot target X position on the field (m) | |
thunderdashboard_drive_target_y_pos | number | Robot target Y position on the field (m) | |
thunderdashboard_drive_x_vel | number | Robot current X velocity (m/s) | |
thunderdashboard_drive_y_vel | number | Robot current Y velocity (m/s) | |
thunderdashboard_drive_ang_vel | number | Robot current angular velocity (rad/s) | |
thunderdashboard_drive_ang | number | Robot current angle (radians) | |
thunderdashboard_drive_target_ang | number | Robot target angle (radians) | |
thunderdashboard_lift_pivot_percent | number | 0 to 1 | Percent of lift pivot |
thunderdashboard_lift_extension_percent | number | 0 to 1 | Percent of lift extension |
thunderdashboard_lift_pivot_target_percent | number | 0 to 1, -1 if no target | Target percent of lift pivot |
thunderdashboard_lift_extension_target_percent | number | 0 to 1, -1 if no target | Target percent of lift extension |
thunderdashboard_grabber_position | number | 0 - open
1 - agape 2 - ajar |
State of grabber mechanism |
thunderdashboard_gamepiece | number | -1 - no gamepiece
0 - cube 1 - cone |
Which GamePiece the robot is currently in possession of |
thunderdashboard_match_remaining | number | The time remaining in the current match period | |
thunderdashboard_airpressure_low | number | Low air pressure on gauge | |
thunderdashboard_airpressure_high | number | High air pressure on gauge | |
thunderdashboard_airpressure | number | Current air pressure | |
thunderdashboard_airpressure_iters | number | Number of ticks on air pressure gauge | |
thunderdashboard_led_mode | number | 0 - Robot State
1 - Alliance Color 2 - Custom Color 3 - Off |
The mode of the robot LEDs |
thunderdashboard_led_custom_r | number | 0-1 | Custom LED red value |
thunderdashboard_led_custom_g | number | 0-1 | Custom LED green value |
thunderdashboard_led_custom_b | number | 0-1 | Custom LED blue value |
thunderdashboard_score_grid | number | -1 - No grid aligned
0 - Left grid 1 - Center grid 2 - Right grid |
Which grid the robot is currently in front of (relative to driver, NOT field or robot) |
thunderdashboard_score_grid_column | number | -1 - No Column selected
0 - Left column 1 - Center column 2 - Right column |
Which column of the grid the robot is trying to align to (relative to driver, NOT field or robot) |
Network Ports
Server | Port | Client | Protocol | Description |
roboRIO | 5809 | Dashboard | TCP | PS5 Controller Input/Output |
roboRIO | 5802 | Raspberry Pis | TCP | Vision Processing communication |
Raspberry Pi 1 | 1181 | Dashboard | UDP | Left Front Camera |
Raspberry Pi 2 | 1182 | Dashboard | UDP | Right Front Camera |
Raspberry Pi 1 | 1182 | Dashboard | UDP | Back Camera |