2022:Robot IO Map: Difference between revisions

From 1511Wookiee
Jump to navigationJump to search
No edit summary
Tag: visualeditor
No edit summary
Tag: visualeditor
Line 65: Line 65:
| style="text-align: center; width: 112px" | Neo 550
| style="text-align: center; width: 112px" | Neo 550
| style="width: 70px; text-align: center" | Brake
| style="width: 70px; text-align: center" | Brake
| style="width: 110px; text-align: center" | Get ball into robot
| style="width: 110px; text-align: center" | Get ball into robot and storage stage one




| style="width: 224px; text-align: center" |  
| style="width: 224px; text-align: center" |  
| style="width: 115px; text-align: center" |30A
| style="width: 115px; text-align: center" |30A
| style="width: 55px; text-align: center" |
|
|-
| style="text-align: center" | 4
| style="text-align: center" | Storage
| 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" | Move ball into first position
| style="width: 224px; text-align: center" |
| style="width: 115px; text-align: center" | 20A/30A
| style="width: 55px; text-align: center" |
|
|-
| style="text-align: center" | 5
| style="text-align: center" | Storage
| 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" | Move ball into upper storage area
| style="width: 224px; text-align: center" |  
| style="width: 115px; text-align: center" | 20A/30A
| style="width: 55px; text-align: center" |  
| style="width: 55px; text-align: center" |  
|
|
Line 100: Line 78:
| style="text-align: center; width: 112px" | Neo 550
| style="text-align: center; width: 112px" | Neo 550
| style="width: 70px; text-align: center" | Brake
| style="width: 70px; text-align: center" | Brake
| style="width: 110px; text-align: center" | Transition motor to go into fly wheels
| style="width: 110px; text-align: center" | Transition motor to go into fly wheels and stage two
| style="width: 224px; text-align: center" |  
| style="width: 224px; text-align: center" | 
| style="width: 115px; text-align: center" | 20A/30A
| style="width: 115px; text-align: center" | 20A/30A
| style="width: 55px; text-align: center" |  
| style="width: 55px; text-align: center" |  
Line 288: Line 266:
|-
|-
| style="width: 15px" | 0
| style="width: 15px" | 0
| style="width: 70px" | Hang
| style="width: 70px" |  
| style="width: 76px" | servo
| style="width: 76px" |  
| style="width: 94px" |  
| style="width: 94px" |  
| style="width: 167px; text-align: center" |rachet and pawl
| style="width: 167px; text-align: center" |
| style="width: 148px" |  
| style="width: 148px" |  
| style="width: 280px" |  
| style="width: 280px" |  
Line 298: Line 276:
|-
|-
| style="width: 15px" | 1
| style="width: 15px" | 1
| style="width: 70px" | hang
| style="width: 70px" |  
| style="width: 76px" | servo
| style="width: 76px" |  
| style="width: 94px" |  
| style="width: 94px" |  
| style="width: 167px; text-align: center" | left hard stop
| style="width: 167px; text-align: center" |  
| style="width: 148px" |  
| style="width: 148px" |  
| style="width: 280px" |  
| style="width: 280px" |  
Line 308: Line 286:
|-
|-
| style="width: 15px" | 2
| style="width: 15px" | 2
| style="width: 70px" | hang
| style="width: 70px" |  
| style="width: 76px" | servo
| style="width: 76px" |  
| style="width: 94px" |  
| style="width: 94px" |  
| style="width: 167px; text-align: center" | right hard stop
| style="width: 167px; text-align: center" |  
| style="width: 148px" |  
| style="width: 148px" |  
| style="width: 280px" |  
| style="width: 280px" |  
Line 318: Line 296:
|-
|-
| style="width: 15px" | 3
| style="width: 15px" | 3
| style="width: 70px" | shooter
| style="width: 70px" |  
| style="width: 76px" | servo
| style="width: 76px" |  
| style="width: 94px" |  
| style="width: 94px" |  
| style="width: 167px; text-align: center" | hood
| style="width: 167px; text-align: center" |  
| style="width: 148px" |  
| style="width: 148px" |  
| style="width: 280px" |  
| style="width: 280px" |  

Revision as of 15:38, 23 January 2022

Robot I/O

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, REV Through Bore Encoder attached directly to SPARK
3 Intake Spark Max Neo 550 Brake Get ball into robot and storage stage one


  30A
6 Shooter/Storage Spark Max Neo 550 Brake Transition motor to go into fly wheels and stage two   20A/30A
7 Shooter Spark Max Neo Brake Left side fly wheel


40A Using Integrated Encoder
8 Shooter Spark Max Neo Brake Right side fly wheel 40A Using Integrated Encoder
9 Drive Spark Max Neo Coast Front left drive motor 40A Using Integrated Encoder
10 Drive Spark Max Neo Coast Back left drive motor 40A Using Integrated Encoder
11 Drive Spark Max Neo Coast Back right drive motor   40A Using Integrated Encoder
12 Drive Spark Max Neo Coast Front right drive motor 40A Using Integrated Encoder
13 Drive Spark Max Neo 550 Coast Front left turning motor   20A   Using Integrated Encoder
14 Drive Spark Max Neo 550 Coast Back left turning motor   20A   Using Integrated Encoder
15 Drive Spark Max Neo 550 Coast Back right turning motor   20A   Using Integrated Encoder
16 Drive Spark Max Neo 550 Coast Front right turning motor   20A   Using Integrated Encoder
17 Drive Encoder CANCoder N/A Front left absolute encoder
18 Drive Encoder CANCoder N/A Back left absolute encoder
19 Drive Encoder CANCoder N/A Back right absolute encoder
20 Drive Encoder CANCoder N/A Front right absolute encoder
 
 
 
 
 
 

PWM Outputs

ID Subsystem

Component

Type

Model # Description
(brief)

Operation

 

Brake/Coast

Notes

(8) max. 40A              PDB #   

0    
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 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 Hang Flag sensor OPB815WZ Tells if hang is out 0 = in 1 = out Power From RoboRio, Requires Pullup
2 IN Hang Flag sensor OPB815WZ Tells if hang is out 0 = in 1 = out Power From RoboRio, Requires Pullup
3 IN Intake Banner Optical Q10RN6R/Q106E Counts balls that enter robot 1 = Ball present

0 = Ball not present

Requires 12V and Pullup
4 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
5 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
6 IN Shooter Banner Optical Q10RN6R/Q106E Counts balls that leave the robot 1 = Ball present

0 = Ball not present

Requires 12V and Pullup
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            
1            

Pneumatics Control Modules

PCM

ID

# Subsystem

Solenoid is Double or Single?

Solenoid

Model #

Description

(brief)

Operation Circuit Pressure PDB #
1 0 Hang(left arm) Double   hold arm straight extend piston to pivot    
1 pivot arm to bar retract to straighten
2 Hang Double   engage brake retract to engage  
3 disengage brake extend piston to disengage
4 Intake Double   Intake deployed extend piston to deploy  
5 Intake not deployed retract piston to disengage
6 Intake Double   Intake deployed extend piston to deploy  
7 Intake not deployed retract piston to disengage
2 0              
1    
2            
3    
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_wheel number

0 - do NOT know

1 - Red

2 - Green

3 - Blue

4 - Yellow

The color the robot's sensor is seeing
thunderdashboard_wheel_end number see thunderdashboard_wheel The color FMS is asking for in the final stage
thunderdashboard_shooter_speed number 0 - 100 the speed the shooter is running at: 0 is min and 100 is max
thunderdashboard_shooter_pos number 0 - 360 the position of the turret, in degrees from home position: 0 is home 
thunderdashboard_shooter_hood number 0 - 100 the position of the hood: 0 is down, 100 is completely up
thunderdashboard_hang_pos number

0 - 100

the position of the arm, for hang: 0 is full retracted, 100 is full extended
thunderdashboard_hang_lock number

0 - hang ratched is not locked

1 - hang ratched is locked

indicates whether the ratchet, for hang, is engaged or not
thunderdashboard_intake_pos number

0 - intake is down (deployed)

1 - intake is up (retracted)

indicates whether the intake is up or not
thunderdashboard_ballcount number -1 - do not know

0 - 5

Number of balls (game pieces) the robot thinks it has
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_starting_count number 0-3 editable, set initial count of power cells in robot before auto
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_drivearcade number

0 = tank drive

1 = arcade drive

what mode drive is using. dashboard will show 'Tank Drive' when in that mode, otherwise nothing is shown 

IO Maps for Old Robots