2024:Robot IO Map

From 1511Wookiee
Revision as of 13:30, 19 February 2024 by Programming (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

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 Drive

SparkMax

Neo


Front Right Drive


40A

0

Using Integrated Encoder

3 Drive

SparkMax

Neo


Front Left Drive


40A

1

Using Integrated Encoder

4 Drive

SparkMax

Neo


Back Right Drive


40A

2

Using Integrated Encoder

5 Drive

SparkMax

Neo


Back Left Drive


40A

3

Using Integrated Encoder

6 Drive

SparkMax

Neo


Front Right Rotation


40A

4

Using Integrated Encoder

7 Drive

SparkMax

Neo


Front Left Rotation


40A

5

Using Integrated Encoder

8

Drive

SparkMax

Neo


Back Right Rotation


40A

6

Using Integrated Encoder

9

Drive

SparkMax

Neo


Back Left Rotation


40A

7

Using Integrated Encoder

10 Drive

Encoder

CANCoder


Front Right


N/A

N/A

Powered From Ganged 12V VRM

11 Drive

Encoder

CANCoder


Front Left


N/A

N/A

Powered From Ganged 12V VRM

12 Drive

Encoder

CANCoder


Back Right


N/A

N/A

Powered From Ganged 12V VRM

13 Drive

Encoder

CANCoder


Back Left


N/A

N/A

Powered From Ganged 12V VRM

14 Drive

IMU

Pigeon 2.0






Powered from dedicated 12V VRM

15 Game Piece

SparkMax

Neo 550


Intake

Pulls in or ejects a game piece

30A

8

Diffuse retro-reflective sensor Allen Bradley 42EF-D2MPAK-F4

When sensor is tripped, this means GP has entered intake and sensor just clears when GP is position for storage or shooting

Connects to roborio DIO 

12V powered 

16 Game Piece

SparkMax

Neo


Shooter Left Wheels

Runs shooter wheels

40A

9


17 Game Piece

SparkMax

Neo


Shooter Right Wheels

Runs shooter wheels

40A

10


18 Game Piece

SparkMax

Neo


Arm

Pivots Arm

40A

11

Using Rev through-bore encoder

Used in absolute position mode to indicate arm pivot angle

5V powered Signal to roborio DIO

Input lower extreme limit switch

19 Game Piece

SparkMax

Neo 550


Arm

Actuates bicycle brake for arm pivot

30A

12


20 Hang

SparkMax

Neo


Hang Arm Right

causes hang hook to go up or down

40A

13


21 Hang SparkMax Neo
Hang Arm Left causes hang hook to go up or down 40A 14
22









 CAN Chain Pathway

Current Device (ID): Next Device (ID): Notes:
RIO PDH(0) On DB Bellypan
PDH(0)  Front Right Encoder (10) On DB Bellypan
Front Right Encoder (10) Front Right Drive (2) On DB Bellypan
Front Right Drive (2) Front Right Rotation (6) On DB Bellypan
Front Right Rotation (6) Hang Right (20) On DB Bellypan
Hang Right (20) Back Right Rotation (8) On DB Bellypan
Back Right Rotation (8) Back Right Drive (4) On DB Bellypan
Back Right Drive (4) Back Right Encoder (12) On DB Bellypan
Back Right Encoder (12) Worm/Brake (19) On Worm Gearbox
Worm/Brake (19) Pidgeon 2.0 (14) On DB Bellypan
Pidgeon 2.0 (14) Arm Pivot (18) On DB Bellypan
Arm Pivot (18) Front Left Encoder (11) On DB Bellypan
Front Left Encoder (11) Front Left Drive (3) On DB Bellypan
Front Left Drive (3) Front Left Rotation (7) On DB Bellypan
Front Left Rotation (7) Hang Left (21) On DB Bellypan
Hang Left (21) Back Left Rotation (9) On DB Bellypan
Back Left Rotation (9) Back Left Drive (5) On DB Bellypan
Back Left Drive (5) Back Left Encoder (13) On DB Bellypan
Back Left Encoder (13) Left Shooter (16)


Left Shooter (16)

Right Shooter (17)


Right Shooter (17)

Intake (15)


Intake (15)

TERMINATION: 120 ohm resistor 





PDB Assignments
Port # Device (Subteam) Breaker Value Max Channel Current Note
0

Front Right Drive (Drive)

40A

40A


1

Front Right Rotation (Drive)

40A

40A


2

Solenoid Relay

20A

40A


3



40A


4

Left Hang Arm

40A

40A


5

Intake

30A

40A


6

Right Shooter

40A

40A


7

Left Shooter

40A

40A


8

Front Left Drive (Drive)

40A

40A


9

Front Left Rotation

40A

40A


10


40

40A


11

Back Left Rotation (Drive)

40A

40A


12

Back Left Drive (Drive)

40A

40A


13



40A


14

Game Piece Arm Pivot

40A

40A


15

Back Right Drive (Drive)

40A

40A


16

Back Right Rotation (Drive)

40A

40A


17

Hang Right 

40A

40A


18

Brake/Worm Gear

30A

40A


19



40A


20

RoboRIO (RCS)

10A

10A Fused


21

VRM (RCS)

10A

10A Fused


22

3X Allen Bradley Sensors (Ganged)

10A

10A Fused


23 (Switchable)



5A Fused


VRM Assignments
Port # Device (Subteam)
5V/2A

LED

5V/2A

LED

5V/500mA


5V/500mA


12V/2A

Radio (RCS)

12V/2A

Do Not Use 

12V/500mA

CanCoders 4x Ganged - Drive

12V/500mA Pigeon2

PWM Outputs

ID Subsystem

Component

Type

Model # Description
(brief)

Operation

 

Brake/Coast

Notes

(8) max. 40A              PDB #   

0

LEDs







 
1





 


   
2





       
3





       
4









5



 


       
6









7





 




8









9





 




10                
11                
 
 

Relay Outputs

ID Subsystem

Component

Type

Model # Description
(brief)
Operation Notes
0  Hang SPIKE relay   Actuates braking pawl against ratchet wheel.

Energizing lifts the pawl off the ratchet wheel. Integrated spring pushes pawl into ratchet wheel.

  Two solenoids controlled via one SPIKE relay (one on M+ and one on M- with common ground)

Left Solenoid is Reverse, Right is Forward.

See Spike Users Guide

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

Game Piece - Intake

Diffuse retro-reflective sensor

Allen Bradley 42EF-D2MPAK-F4

Senses GP
Positioned such that sensor is tripped when game piece has entered intake and sensor just clears when game piece is positioned for storage until time to shoot or eject.


Wire for Dark operating

Signal connects to roborio DIO

12V powered

Voltage divider added to cable pigtail

See circuit diagram 

1 IN

Game Piece - Arm

Encoder

https://www.revrobotics.com/rev-11-1271/

Used in absolute position mode to indicate arm pivot angle.


Wire White/Red/Black To roborio DIO

2 IN

Hang Brake

Leaf Lever Limit Switch Right

V7-2B17D8-048

Triggers when pawl on brake is fully lifted and clear of ratchet wheel


roborio DIO
Wire for normally open

3 IN

Hang Brake

Leaf Lever Limit Switch Left

V7-2B17D8-048

Triggers when pawl on brake is fully lifted and clear of ratchet wheel


roborio DIO
Wire for normally open

4 IN

Hang

Diffuse retro-reflective sensor

Allen Bradley 42EF-D2MPAK-F4

Detects when left hook is present (down)


Wire for Dark operating

Signal connects to roborio DIO

12V powered

Voltage divider added to cable pigtail

See circuit diagram

5

IN

Hang

Diffuse retro-reflective sensor

Allen Bradley 42EF-D2MPAK-F4

Detects when right hook is present (down)


Wire for Dark operating

Signal connects to roborio DIO

12V powered

Voltage divider added to cable pigtail

See circuit diagram

6

IN







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


 






 
               
               
               
               
               
               

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
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)

IO Maps for Old Robots