2020:Robot IO Map: Difference between revisions
Mechanical1 (talk | contribs) No edit summary |
No edit summary |
||
| Line 2: | Line 2: | ||
= Robot I/O = | = Robot I/O = | ||
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | ||
<div class="mw-parser-output"> | |||
== CAN ID Assignments == | == CAN ID Assignments == | ||
| Line 74: | Line 75: | ||
| style="width: 110px; text-align: center" | Agitates balls up the corkscrew | | style="width: 110px; text-align: center" | Agitates balls up the corkscrew | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 30A | ||
| style="width: 55px; text-align: center" | 6 | | style="width: 55px; text-align: center" | 6 | ||
|- | |- | ||
| Line 84: | Line 85: | ||
| style="width: 110px; text-align: center" | Feeds balls into shooter | | style="width: 110px; text-align: center" | Feeds balls into shooter | ||
| style="width: 224px; text-align: center" | | | style="width: 224px; text-align: center" | | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 30A | ||
| style="width: 55px; text-align: center" | 7 | | style="width: 55px; text-align: center" | 7 | ||
|- | |- | ||
| Line 124: | Line 125: | ||
| | ||
| style="width: 115px; text-align: center" | | | style="width: 115px; text-align: center" | 30A | ||
| style="width: 55px; text-align: center" | 8 | | style="width: 55px; text-align: center" | 8 | ||
|- | |- | ||
| Line 145: | Line 146: | ||
| 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 | |||
Using integrated encoder | Using integrated encoder | ||
| Line 201: | Line 202: | ||
| style="width: 55px; text-align: center" | | | style="width: 55px; text-align: center" | | ||
|} | |} | ||
</div> </div> <div class="mw-parser-output"><div class="mw-parser-output"> </div> </div> </div> <div class="mw-parser-output"> </div> </div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | </div> </div> <div class="mw-parser-output"><div class="mw-parser-output"> </div> </div> </div> <div class="mw-parser-output"> </div> </div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> </div> </div> </div> </div> </div> </div> | ||
== PWM Outputs == | == PWM Outputs == | ||
Revision as of 14:49, 10 February 2020
Robot I/O
CAN ID Assignments
| ID | Subsystem | Component Type |
Model # | Brake or Coast? | Description (brief) |
Operation |
Notes (8) max. 40A PDB # | |
| 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 | ||||
| 2 | Intake | Spark Max | Neo 550 | Brake |
Pivots intake in/out of robot |
30A Using integrated encoder |
4 | |
| 3 | Intake | Spark max | Neo 550 | Brake |
Spins "beater bars" |
20A | 5 | |
| 4 | Storage | Spark max | Neo 550 | Brake | Agitates balls up the corkscrew | 30A | 6 | |
| 5 | Storage | Spark max | Neo 550 | Brake | Feeds balls into shooter | 30A | 7 | |
| 6 | Shooter | Spark max | Neo | Coast | Spins left shooting motor |
40A |
12 | |
| 7 | Shooter | Spark max | Neo | Coast | Spins right shooting motor |
40A Using integrated encoder. 1 might run in follower mode |
2 | |
| 8 | Turret | Spark max | Neo 550 | Brake | Rotates turret |
|
30A | 8 |
| 9 | WoF | Spark max | Neo 550 | Brake | Rotates Wheel of Fortune | 20A | 11 | |
| 10 | Hang | Spark max | Neo | Brake | Winches robot up |
40A Using integrated encoder |
13 | |
| 11 | Shooter | Spark Max | Neo | ? | Primer wheel | |||
| 12 | ||||||||
| 13 | ||||||||
| 14 | ||||||||
| 15 | ||||||||
PWM Outputs
| ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation
|
Brake/Coast |
Notes (8) max. 40A PDB # | |
| 0 | Hang | Servo |
Hs-322HD |
Engages/disingages ratchet |
|
N/A | ||
| 1 | Shooter | Servo |
Hs-785HB |
Moves turret hood to increase/decrease shot angle | N/A | |||
| 2 | ||||||||
| 3 | ||||||||
| 4 | ||||||||
| 5 | Wheel of Fortune | Servo | Swing color sensor outside the frame perimeter | |||||
|
6
|
Drive base
|
Spark Max | Neo | Left front drive motor | Moves left side of robot forwards/backwards | Don't know | 40A | 14 |
|
7
|
Drive Base | Spark Max | Neo | Left rear drive motor | Don't know | 40A | 15 | |
| 8 | Drive Base | Spark Max | Neo | Right front drive motor | Moves right side of robot forwards/backwards | Don't know | 40A | 0 |
|
9
|
Drive Base | Spark Max | Neo | Right Rear drive Motor | Don't know | 40A | 1 | |
| 8 | ||||||||
| 9 | ||||||||
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 | Intake | Banner Opto | Q10RN6R | Senses Incoming Power Cells |
1 = Ball not present 0 = Ball Present |
w/Q106E emitter, sensor open-collector out |
| 1 | IN | Storage | Banner Opto | Q10RN6R | Senses balls when ready to shoot |
1 = Ball not present 0 = Ball Present |
w/Q106E emitter, sensor open-collector out |
| 2 | IN | ||||||
| 3 | IN | Shooter | ??? | ??? | Senses when a ball is exiting the shooter | ||
| 4 | IN | Drive base | Phase A Left Encoder | REV-11-1271 | measures rotation of drive wheels | 2048 cycles per revolution | |
| 5 | IN | Drive base | Phase B Left Encoder | REV-11-1271 | measures rotation of drive wheels | 2048 cycles per revolution | |
| 6 | IN | Drive base | Phase A Right Encoder | REV-11-1271 | measures rotation of drive wheels | 2048 cycles per revolution | |
| 7 | IN | Drive base | Phase B right encoder | REV-11-1271 | measures rotation of drive wheels | 2048 cycles per revolution | |
| 8 | IN | Intake | Omron Reflective | EE-SPY415 | Senses the presence of the intake mechanism to zero the rotation motor encoder |
1 = not present 0 = present |
|
| 9 | IN | Hang | U-Shaped Sensor | ?? | Sense when hanger is all the way retracted | 1 = hanger sensed (all the way down), 0 = hanger not sensed |
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 | Wheel of Fortune | Color Sensor | REV-31-1557 | Reads colors of wheel | Provides these channels: Red, Green, Blue, Alpha, and Proximity | ||
SPI Devices
| # | Subsystem | Component Type |
Model # | Description (brief) | Operation | Notes |
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 | |||||||
| 1 | ||||||||
| 2 | ||||||||
| 3 | ||||||||
| 4 | ||||||||
| 5 | ||||||||
| 6 | ||||||||
| 7 | ||||||||
| 2 | 0 | |||||||
| 1 | ||||||||
| 2 | ||||||||
| 3 | ||||||||
| 4 | ||||||||
| 5 |
Operator Controls
Controller 1 - Primary Driver
| Button/Axis # | Action/Button | Description | Details |
| A-1 | Left Joystick Y | ||
| A-1 | Left Joystick X | ||
| A-4 | Right Joystick Y | ||
| A-4 | Right Joystick X | ||
| B-6 | Right Bumper | ||
| B-5 | Left Bumper | ||
| A-3 | Right Trigger | ||
| A-2 | Left Trigger | ||
| B-1 | A Button | ||
| B-3 | X Button | ||
| B-4 | Y Button | ||
| B-2 | B Button |
Controller 2 - Aux Driver
| Button/Axis # | Action/Button | Description | Details |
| A-1 | Left Trigger | Outtake-Just intake mechanism (not helix) | Press hold, release to stop |
| A-2 | Right Trigger | Runs shooter/helix (warm up) | binary action, press hold |
| A-3? | Left Dial | Rotates turret | Positional rotation |
| A-4? | Right Dial | Controls shooter speed |
Positional rotation
|
| B-1 | A Button | Moves hang in retract direction | press hold, release to stop |
| B-2 | B button | Adjusts hood to wall | Press only |
| B-3 | X Button | Adjusts hood to initiation line | Press only |
| B-4 | Y button | Moves hang in extend direction | press hold, release to stop |
| B-5 | Left bumper | Run control panel | press |
| B-6 | Right bumper | Run intake/drive helix up | press hold, release to stop |
| B-7 | Back Button | Shoots the ball | press only |
| B-8 | Start Button | Adjusts hood control panel | press only |
| B-9 | |||
| POV-90 | D-pad up | ||
| POV-270 | D-pad down |
Controller 3 - Switches on console
| Button/Axis # | Action/Button | Description | Details |
| B-1 | Control Panel Mode |
Determines which control panel operation to run On = rotation Off = position |
|
| B-2 | Control Panel Sensor Broken |
On = broken, run CP manually Off = Working, do whatever is in button 1 |
|
| B-3 | Intake Pivot Sensor Broken |
On = broken, zero pivot based solely on startup position |
|
| B-4 | Intake ball counter Broken | On = broken, don't use this sensor | |
| B-5 | Storage-shooter transition counter broken | On = broken, don't use this sensor | |
| B-6 | Shooter ball counter broken | On = broken, don't use this sensor | |
| B-7 | Hanger zero sensor broken | On = broken, don't use the sensor to zero encoder, just use startup position | |
| B-8 | |||
| B-9 |
Dashboard
| Key | Data Type | Value | Description |
| thunderdashboard_green | number |
0 - do NOT have a game piece 1 - have a game piece |
Background of dashboard goes green. |
| thunderdashboard_max | number |
0 = show normal 1 = fill screen |
fills screen or not |