2025:Robot IO Map: Difference between revisions
Programming (talk | contribs) |
|||
| Line 1,151: | Line 1,151: | ||
{| style="width: 1187px; height: 408px;" border="1" cellspacing="1" cellpadding="2" | {| style="width: 1187px; height: 408px;" border="1" cellspacing="1" cellpadding="2" | ||
|- style="height: 57px;" | |- style="height: 57px;" | ||
| style="text-align: center; height: 57px; width: 41.9844px;" | '''ID''' | | style="text-align: center; height: 57px; width: 41.9844px;" | '''ID''' | ||
| style="text-align: center; height: 57px; width: 153px;" | '''Direction'''<br>(IN/OUT) | | style="text-align: center; height: 57px; width: 153px;" | '''Direction'''<br>(IN/OUT) | ||
| style="width: 76.9375px; text-align: center; height: 57px;" | '''Subsystem''' | | style="width: 76.9375px; text-align: center; height: 57px;" | '''Subsystem''' | ||
| style="width: 119.062px; height: 57px;" | <p style="text-align: center;" >'''Component'''</p> | | style="width: 119.062px; height: 57px;" | <p style="text-align: center;">'''Component'''</p> | ||
<p style="text-align: center;" >'''Type'''</p> | <p style="text-align: center;">'''Type'''</p> | ||
| style="width: 140.016px; text-align: center; height: 57px;" | '''Model #''' | | style="width: 140.016px; text-align: center; height: 57px;" | '''Model #''' | ||
| style="width: 181.016px; text-align: center; height: 57px;" | '''Description<br>(brief)''' | | style="width: 181.016px; text-align: center; height: 57px;" | '''Description<br>(brief)''' | ||
| style="width: 213.969px; text-align: center; height: 57px;" | '''Operation''' | | style="width: 213.969px; text-align: center; height: 57px;" | '''Operation''' | ||
| style="width: 220.016px; text-align: center; height: 57px;" | '''Notes''' | | style="width: 220.016px; text-align: center; height: 57px;" | '''Notes''' | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 0 | | style="text-align: center; height: 28px; width: 41.9844px;" | 0 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
| Line 1,176: | Line 1,176: | ||
| style="width: 220.016px; height: 28px; text-align: left;" | | | style="width: 220.016px; height: 28px; text-align: left;" | | ||
Sensor should also detect slip and make sure the motors maintain grip on the Algae. | Sensor should also detect slip and make sure the motors maintain grip on the Algae. | ||
|- style="height: 51px;" | |- style="height: 51px;" | ||
| style="text-align: center; height: 51px; width: 41.9844px;" | 1 | | style="text-align: center; height: 51px; width: 41.9844px;" | 1 | ||
| style="text-align: center; height: 51px; width: 153px;" | IN | | style="text-align: center; height: 51px; width: 153px;" | IN | ||
| Line 1,191: | Line 1,191: | ||
| style="width: 220.016px; height: 51px; text-align: left;" | | | style="width: 220.016px; height: 51px; text-align: left;" | | ||
<br> | <br> | ||
|- style="height: 57px;" | |- style="height: 57px;" | ||
| style="text-align: center; height: 57px; width: 41.9844px;" | 2 | | style="text-align: center; height: 57px; width: 41.9844px;" | 2 | ||
| style="text-align: center; height: 57px; width: 153px;" | IN | | style="text-align: center; height: 57px; width: 153px;" | IN | ||
| Line 1,206: | Line 1,206: | ||
| style="width: 220.016px; height: 57px; text-align: left;" | | | style="width: 220.016px; height: 57px; text-align: left;" | | ||
<br> | <br> | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 3 | | style="text-align: center; height: 28px; width: 41.9844px;" | 3 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
| Line 1,221: | Line 1,221: | ||
| style="width: 220.016px; height: 28px; text-align: left;" | | | style="width: 220.016px; height: 28px; text-align: left;" | | ||
<br> | <br> | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 4 | | style="text-align: center; height: 28px; width: 41.9844px;" | 4 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
| Line 1,236: | Line 1,236: | ||
| style="width: 220.016px; text-align: center; height: 28px;" | | | style="width: 220.016px; text-align: center; height: 28px;" | | ||
<br> | <br> | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 5 | | style="text-align: center; height: 28px; width: 41.9844px;" | 5 | ||
| style="text-align: center; height: 28px; width: 153px;" | | | style="text-align: center; height: 28px; width: 153px;" | | ||
IN | IN | ||
| style="width: 76.9375px; text-align: center; height: 28px;" | | | style="width: 76.9375px; text-align: center; height: 28px;" | | ||
Hang | |||
| style="width: 119.062px; text-align: center; height: 28px;" | | | style="width: 119.062px; text-align: center; height: 28px;" | | ||
Sensor | |||
| style="width: 140.016px; text-align: center; height: 28px;" | | | style="width: 140.016px; text-align: center; height: 28px;" | | ||
<br> | <br> | ||
| style="width: 181.016px; text-align: center; height: 28px;" | | | style="width: 181.016px; text-align: center; height: 28px;" | | ||
Hang Solenoid Up | |||
| style="width: 213.969px; text-align: center; height: 28px;" | | | style="width: 213.969px; text-align: center; height: 28px;" | | ||
<br> | <br> | ||
| style="width: 220.016px; text-align: center; height: 28px;" | | | style="width: 220.016px; text-align: center; height: 28px;" | | ||
<br> | <br> | ||
|- style="height: 19px;" | |- style="height: 19px;" | ||
| style="text-align: center; height: 19px; width: 41.9844px;" | 6 | | style="text-align: center; height: 19px; width: 41.9844px;" | 6 | ||
| style="text-align: center; height: 19px; width: 153px;" | | | style="text-align: center; height: 19px; width: 153px;" | | ||
IN | IN | ||
| style="width: 76.9375px; text-align: center; height: 19px;" | | | style="width: 76.9375px; text-align: center; height: 19px;" | | ||
Hang | |||
| style="width: 119.062px; text-align: center; height: 19px;" | | | style="width: 119.062px; text-align: center; height: 19px;" | | ||
Sensor | |||
| style="width: 140.016px; text-align: center; height: 19px;" | | | style="width: 140.016px; text-align: center; height: 19px;" | | ||
<br> | <br> | ||
| style="width: 181.016px; text-align: center; height: 19px;" | | | style="width: 181.016px; text-align: center; height: 19px;" | | ||
Hang Hung | |||
| style="width: 213.969px; text-align: center; height: 19px;" | | | style="width: 213.969px; text-align: center; height: 19px;" | | ||
<br> | <br> | ||
| style="width: 220.016px; text-align: center; height: 19px;" | | | style="width: 220.016px; text-align: center; height: 19px;" | | ||
<br> | <br> | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 7 | | style="text-align: center; height: 28px; width: 41.9844px;" | 7 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
| Line 1,282: | Line 1,282: | ||
<br> | <br> | ||
| style="width: 220.016px; text-align: center; height: 28px;" | | | style="width: 220.016px; text-align: center; height: 28px;" | | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 8 | | style="text-align: center; height: 28px; width: 41.9844px;" | 8 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
| Line 1,296: | Line 1,296: | ||
<br> | <br> | ||
| style="width: 220.016px; text-align: center; height: 28px;" | | | style="width: 220.016px; text-align: center; height: 28px;" | | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 9 | | style="text-align: center; height: 28px; width: 41.9844px;" | 9 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
| Line 1,310: | Line 1,310: | ||
<br> | <br> | ||
| style="width: 220.016px; text-align: center; height: 28px;" | | | style="width: 220.016px; text-align: center; height: 28px;" | | ||
|- style="height: 28px;" | |- style="height: 28px;" | ||
| style="text-align: center; height: 28px; width: 41.9844px;" | 10 | | style="text-align: center; height: 28px; width: 41.9844px;" | 10 | ||
| style="text-align: center; height: 28px; width: 153px;" | IN | | style="text-align: center; height: 28px; width: 153px;" | IN | ||
Revision as of 18:22, 11 February 2025
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 | Drive | Motor | Kraken X60 | Brake | Drive Motor Front Left |
|
|
| |
| 2 |
Drive |
Motor |
Kraken X60 | Brake |
Rotation Motor Front Left |
|
|
|
|
| 3 |
Drive |
Cancoder |
|
|
Cancoder Front Left |
|
|
|
|
| 4 |
Drive |
Motor |
Kraken X60 | Brake |
Drive Motor Front Right |
|
|
|
|
| 5 |
Drive |
Motor |
Kraken X60 | Brake |
Rotation Motor Front Right |
|
|
|
|
| 6 |
Drive |
Cancoder |
|
|
Cancoder Front Right |
|
|
|
|
| 7 |
Drive |
Motor |
Kraken X60 | Brake |
Drive Motor Back Right |
|
|
|
|
| 8 |
Drive |
Motor |
Kraken X60 | Brake |
Rotation Motor Back Right |
|
|
|
|
|
9 |
Drive |
Cancoder |
|
|
Cancoder Back Right |
|
|
|
|
| 10 |
Drive |
Motor |
Kraken X60 | Brake |
Drive Motor Back Left |
|
|
|
|
| 11 |
Drive |
Motor |
Kraken X60 | Brake |
Rotation Motor Back Left |
|
|
|
|
| 12 |
Drive |
Cancoder |
|
|
Cancoder Back Left |
|
|
|
|
| 14 |
Drive |
Pigeon |
Pigeon |
|
IMU (centered) |
|
|
|
|
| 15 |
Elevator |
Motor |
Neo |
Brake |
Elevator Motor Right |
|
|
|
|
| 16 |
Elevator |
Motor |
Neo |
Brake |
Elevator Motor Left |
|
|
|
|
| 17 |
|
|
|
|
|
|
|
|
|
| 18 |
|
|
|
|
|
|
|
|
|
| 19 |
|
|
|
|
|
|
|
|
|
| 20 |
Cage |
Motor |
Neo |
? |
Hang Arm Right |
|
|
|
|
| 21 |
Cage |
Motor |
Neo |
? |
Hang Arm Left |
|
|
|
|
| 22 |
|
||||||||
| Port # | Device (Subteam) | Breaker Value | Max Channel Current | Motor Type | Note |
|---|---|---|---|---|---|
| 0 |
Front Right Drive (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 1 |
Front Right Rotation (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 2 |
Front Left Drive (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 3 |
Front Left Rotation (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 4 |
Rear Right Drive (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 5 |
Rear Right Rotation (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 6 |
Rear Left Drive (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 7 |
Rear Left Rotation (Drivebase) |
40A |
|
Kraken 60 |
Port is subject to change |
| 8 |
Cage Lift 1 (Cage) |
40A |
|
Neo? |
Port is subject to change |
| 9 |
Cage Lift 2 (Cage) |
40A |
|
Neo? |
Port is subject to change |
| 10 |
Elevator Drive 1 (Gamepiece) |
40A? |
|
Port is subject to change | |
| 11 |
Elevator Drive 2 (Gamepiece)? |
40A? |
|
Port is subject to change. Not sure if we need multiple motors for elevator. | |
| 12 |
Wrist (Gamepiece) |
30A? |
|
Port is subject to change | |
| 13 |
Intake (Gamepiece) |
30A? |
|
Port is subject to change | |
| 14 |
|
|
|
| |
| 15 |
|
|
|
| |
| 16 |
|
|
|
| |
| 17 |
|
|
|
| |
| 18 |
|
|
|
| |
| 19 |
|
|
|
| |
| 20 |
Radio (RCS) |
15A |
|
Fused Port | |
| 21 |
RoboRio (RCS) |
15A |
|
Fused Port | |
| 22 |
|
|
|
| |
| 23 (Switchable) |
|
|
|
|
| Port # | Device (Subteam) |
|---|---|
| 5V/2A |
|
| 5V/2A |
|
| 5V/500mA |
|
| 5V/500mA |
|
| 12V/2A |
|
| 12V/2A |
|
| 12V/500mA |
|
| 12V/500mA |
|
PWM Outputs
| ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation
|
Brake/Coast |
Notes (8) max. 40A PDB # | |
| 0 |
Gamepiece |
Motor |
Neo 550 |
Calgae Motors (Left and Right) |
|
|
|
|
| 1 |
|
|||||||
| 2 |
Gamepiece |
Motor |
Neo |
Calgae Wrist |
||||
| 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 |
Gamepiece |
Sensor |
OPB720B-06Z |
Algae Sensor |
Detects when Algae is present in the Calgae Intake. |
Sensor should also detect slip and make sure the motors maintain grip on the Algae. |
| 1 | IN |
Gamepiece |
Sensor |
OMRON |
Coral Sensor |
Detects when Coral is present in the Calgae Intake. Then stops the intake motors. |
|
| 2 | IN |
Elevator |
Sensor |
REV Robotics Magnetic Limit Switch |
Elevator Top Limit |
|
|
| 3 | IN |
Elevator |
Sensor |
REV Robotics Magnetic Limit Switch |
Elevator Bottom Limit |
|
|
| 4 | IN |
Gamepiece |
Encoder |
Used in absolute position mode to indicate wrist pivot angle. |
|
| |
| 5 |
IN |
Hang |
Sensor |
|
Hang Solenoid Up |
|
|
| 6 |
IN |
Hang |
Sensor |
|
Hang Hung |
|
|
| 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 |
Junction Box For Gamepiece Communication (Base & Carriage)
| # (left to right) |
Subsystem | Component | Model |
Description (brief) | Operation | Notes |
| 1 | Gamepiece | Spark Max | Calgae Motor Controller | Controls Intake | After leaving box, it split off into BOTH left and right Spark Max Calgae Motor Controllers. | |
| 2 | Gamepiece | Spark Max | Wrist Motor Controller | Controls Wrist | ||
| 3 |
Gamepiece |
Encoder |
Bore Encoder |
Used in absolute position mode to indicate wrist pivot angle. | ||
| 4 | Gamepiece | Sensor | OMRON | Coral Sensor | Detects when Coral is present in the Calgae Intake. Then stops the intake motors. | |
| 5 | Gamepiece | Sensor | OPB720B-06Z | Algae Sensor | Detects when Algae is present in the Calgae Intake. | Sensor should also detect slip and make sure the motors maintain grip on the Algae. |
| 6 | ||||||
| 7 | ||||||
| 8 |
I2C Registers
| Address (e.g. 0100111X) |
Pin (e.g. GP0) |
Subsystem | Component Type |
Model # | Description (brief) |
Operation | Notes |
|
|
|
|
|
|
|
||
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 |
|
|
|
|
|
|
|
| 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 |
|
|
|
|
Left Joystick Press |
|
|
| 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 | Square / A Button |
|
|
| B-3 | Cross / X Button |
|
|
| B-4 | Triangle / Y Button |
|
|
| 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 |
|
|
| A-3 | Right Trigger |
|
|
| A-4 | Right Joystick X-Axis |
|
|
| A-5 | Right Joystick Y-Axis |
|
|
| B-1 | Square / A Button |
|
|
| B-2 | Circle / B button |
|
|
| B-3 | Cross / X Button |
|
|
| B-4 | Triangle / Y button |
|
|
| B-5 | Left bumper |
|
|
| B-6 | Right bumper |
|
|
| B-7 | Back Button |
|
|
| B-8 | Start Button |
|
|
| B-9 | Left Stick Pressed |
|
|
| B-10 | Right Stick Pressed |
|
|
| POV-0 | D-pad up |
|
|
| POV-90 | D-pad right |
|
|
| POV-180 | D-pad down |
|
|
| POV-270 | D-pad left |
|
|
Controller 3 - Switches on console
| Button/Axis # | Action/Button | Description | Details |
| B-1 |
|
|
|
| B-2 |
|
|
|
| B-3 |
|
|
|
| B-4 |
|
|
|
| B-5 |
|
|
|
| B-6 |
|
|
|
| B-7 |
|
|
|
| B-8 |
|
|
|
| B-9 |
|
|
Dashboard
| Key | Data Type | Value | Description |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|