2022:Robot IO Map

From 1511Wookiee
Revision as of 18:56, 1 March 2022 by Programming (talk | contribs) (→‎Dashboard)
(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  
2 Hang Spark Max Neo Brake Winch robot up   40A, 13 REV Through Bore Encoder attached directly to SPARK
3 Intake Spark Max Neo 550 Brake Get ball into robot (Stage 1)


  30A 6
6 Shooter/Storage Spark Max Neo 550 Brake Transition motor to go into fly wheels (Stage 2)   20A/30A 7
7 Shooter Spark Max Neo Brake Left side fly wheel


40A 2 Using Integrated Encoder
8 Shooter Spark Max Neo Brake Right side fly wheel 40A 3 Using Integrated Encoder
9 Drive Spark Max Neo Coast Front left drive motor 40A 0 Using Integrated Encoder
10 Drive Spark Max Neo Coast Back left drive motor 40A 1 Using Integrated Encoder
11 Drive Spark Max Neo Coast Back right drive motor   40A 14 Using Integrated Encoder
12 Drive Spark Max Neo Coast Front right drive motor 40A 15 Using Integrated Encoder
13 Drive Spark Max Neo 550 Coast Front left turning motor   20A 4 Using Integrated Encoder
14 Drive Spark Max Neo 550 Coast Back left turning motor   20A 5 Using Integrated Encoder
15 Drive Spark Max Neo 550 Coast Back right turning motor   20A 10 Using Integrated Encoder
16 Drive Spark Max Neo 550 Coast Front right turning motor   20A 11 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
 
PDB Assignments
Port # Device (Subteam) Breaker Value Max Current
0 Neo (Drive) 40 A 40 A
1 Neo (Drive) 40 A 40 A
2 Neo (Shooter) 40 A 40 A
3 Neo (Shooter) 40 A 40 A
4 Neo 550 (Drive) 20A 30A
5 Neo 550 (Drive) 20A 30A
6 Neo 550 (Intake {Stage 1}) 30A 30A
7 Neo 550 (Shooter/Storage {Stage 2}) 20A/30A 30A
8 Limelight 20A 30A
9 PCM (#2)? 20A 30A
10 Neo 550 (Drive) 20A 30A
11 Neo 550 (Drive) 20A 30A
12 40A
13 Neo (Hang) 40A 40A
14 Neo (Drive) 40A 40A
15 Neo (Drive) 40A 40A
 
 
 
 
 

PWM Outputs

ID Subsystem

Component

Type

Model # Description
(brief)

Operation

 

Brake/Coast

Notes

(8) max. 40A              PDB #   

0 Hang Servo Ratchet and Pawl    
1 Shooter Servo   hood servo      
2 Blinky Blinky LED Illumination        
3 Hang Servo String Thing (left)        
4 Hang Servo String Thing (right)
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 Shooter Potentiometer Bourns 3-Turn

Bourns 5-Turn

Used for hood to show where it is Tells the angle for the hood Need to know how many rotations???
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 Hang Flag sensor OPB815WZ Tell if hang is all the way in 0 = out, 1 = in Power From RoboRio, Requires Pullup
1 IN
2 IN Storage Banner Optical Q10RN6R/Q106E Sees when a ball is at stage one 1 = Ball present

0 = Ball not present

Requires 12V and Pullup
3 IN Storage Banner Optical Q10RN6R/Q106E Sees when a ball is at stage two 1 = Ball present

0 = Ball not present

Requires 12V and Pullup
4 IN Shooter Banner Optical Q10RN6R/Q106E Counts balls that leave the robot 1 = Ball present

0 = Ball not present

Requires 12V and Pullup
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 Drive IMU ADIS16470 IMU A 3d gyro and accelerometer Tells the rotation for swerve drive  

USB Host Ports

Address Subsystem

Component Type

Model # Description (brief) Operation Notes
0 Vision USB Camera Microsoft LifeCam HD-3000 The intake camera Shows the drivers a view of the intake and is used for vision processing in autonomous mode  
1            

Pneumatics Control Modules

PCM

ID

# Subsystem

Solenoid is Double or Single?

Solenoid

Model #

Description

(brief)

Operation Circuit Pressure PDB #
1 0 Intake Double   Intake not deployed extend piston to retract intake   Dedicated Output 
1 Intake deployed retract piston to extend/deploy intake
2 Hang (Lower pivot pistons) Double   pivot arm to stored position extends piston, moves arms closer to stored position  
3 pivot arm to bar retracts piston, moves arms closer to fully pivoted outward position
4 Hang (Upper pivot pistons) Double   pivot arm to stored position extends piston, moves arms closer to stored position  
5 pivot arm to bar retracts piston, moves arms closer to fully pivoted outward position
6  
7
2 0 Hang Double   Only used if lower pressure is needed    9
1 Only used if lower pressure is needed
2 Hang Double   Only used if lower pressure is needed  
3 Only used if lower pressure is needed
4            
5    

Robot Lights Reference

TBD if lights on 2022 robot

  • When Disabled:
    • TBD
  • When Enabled:
    • TBD

Operator Controls

Disable Xbox Controller

DisableXbox.docx

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-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 A Button
B-2 B button
B-3 X Button
B-4 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

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_alliance number

0 - Red

1 - Blue

Alliance we are one
thunderdashboard_stage1 number 0 - not blocked

1 - blocked

Stage 1 sensor blocked?
thunderdashboard_stage2 number 0 - not blocked

1 - blocked

Stage 2 sensor blocked?
thunderdashboard_ballcount number -1 - don't know

0 to 9 - number of balls

how many balls are in the robot
thunderdashboard_shooter_hood number 0 - 100 the position of the hood: 0 is down, 100 is completely up
thunderdashboard_hang_bar number

0 - unknown

1 - mid

2 - high

3 - traversal

the bar the robot is on
thunderdashboard_hang_status number

0 - unknown

1 - red

2 - green

3 - yellow

hang status color to show
thunderdashboard_match_length number

0 - no bar

1 to 599 - show bar, max seconds for the match period

Displays countdown progress bar at bottom of dashboard.
thunderdashboard_match_remaining number 0 to 599 Number of seconds left in the match period
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_max number

0 - show normal

1 - fills screen

whether to fill the laptop screen with the dashboard or not
thunderdashboard_frontcamera number 0 - LimeLight (mjpeg, roboRIO-1511-FRC.local:5800)

1 - USB camera (mjpeg, 10.15.11.11:1181)

which camera the dashboard should connect to
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

IO Maps for Old Robots