2020:Robot IO Map

From 1511Wookiee
Revision as of 11:08, 5 January 2020 by Programming (talk | contribs)
Jump to navigationJump to search

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        

 

     
3        

 

     
4                
5                
6                
7                
8          

 

   
9                
10                
11                
12                
13                
14                
15                

 

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                

 

 

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            
1 IN            
2 IN            
3 IN            
4 IN            
5 IN            
6 IN            
7 IN            
8 IN            
9 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
             
           

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 Forward/backward drive  
A-1 Left Joystick X    
A-4 Right Joystick Y    
A-4 Right Joystick X Left/right steering/pivot  
B-6 Right Bumper Slow on right side  
B-5 Left Bumper Slow on left side  
A-3 Right Trigger Fast on right side (binary)  
A-2 Left Trigger Fast on left (binary)  
B-1 A Button Swap Drive  
B-3 X Button Switch camera view  
B-4 Y Button Calibrate Gyro  
B-2 B Button Slow Mode Toggle  

Controller 2 - Aux Driver

Button/Axis # Action/Button Description Details
A-1 Elevator Manual Control

If in hab mode:

If elevator is pivoted down and we have begun a hab climb, moves the appropriate drive wheels the given speed instead of the elevator.

If not in carirage mode:

Moves the elevator up and down, overrides going to a position, if hit when going somewhere, stop going somewhere and do this instead.

If in carriage mode:

Moves just the elevator carriage using window motor, stops if it reaches either the lower flag or the elevator upper flag.

Joystick; only up and down
B-1 Elevator High Rocket position Move elevator to high rocket height.  Height adjusts depending on the cargo or hatch mode Press only
B-2 Elevator Middle Rocket position Move elevator to middle rocket height.  Height adjusts depending on the cargo or hatch mode Press only
B-3 Elevator Low Rocket position Move elevator to low rocket height.  Height adjusts depending on the cargo or hatch mode Press only
B-4 Elevator Pivot Toggle Toggles the elevator pivot and carriage position on each press. Only goes to starting config if the elevator is at the bottom. Only pivots elevator forwards if the carriage is at the upper stop or at the bottom. Press only
B-5 Elevator Loading Station and/or Cargo ship position Move elevator to loading station/cargo ship height.  Height adjusts depending on the cargo or hatch mode Press only
B-6 Elevator Ground  Position Move elevator to ground pick up position. Only works in cargo mode.  Press only
B-7 Intake Intake game piece. Hatch or cargo depending on which mode it's in. Hold for continued operation of cargo Press / press & hold
B-8 Outtake Ejects game piece. Hatch or cargo depending on which mode it's in. Hold for continued operation of cargo Press / press & hold
B-9 Hab Manual climb - step 2 On the first press extend back cylinder, when pressed after that retract back cylinders Press only
B-10 Hab Manual climb - step 1 Extends the front 2 cylinders Press only
B-11 Hab Manual climb - step 3 Retracts the rear cylinders to complete the climb Press only
B-12 Hab auto climb

Begin and continue automatic Hab climbing. Let go to stop. Press again to continue where you left off.

Does nothing if elevator is not pivoted down.

Press and Hold

Controller 2 - Aux Driver (Continued) 

 Button/Axis #  Action/Button  Description Details
B-1 Game piece mode - Cargo  Change game piece system to cargo mode Press only
B-2 Game piece mode - Hatch  Change game piece system to hatch mode Press only
B-3 HAB Sensor Broken Makes HAB ignore sensor input Toggle
B-4 Elevator encoder broken Makes elevator ignore encoder input Toggle
B-5 Hatch Sensor Broken Makes hatch ignore sensor input Toggle
B-6 HAB enable

Only enable HAB when pressed to avoid preemptively deploying

Toggle
B-7 Elevator Carriage Broken Allows drivers to move carriage independently from the inner frame using window motor, switches the aux joystick input to control the snowblower motor instead of the elevator motors Toggle
B-8 Broken Switch 6   Press only
B-9      
B-10      
B-11      
B-12      
 
 
 

Dashboard

Key Data Type Value Description
thunderdashboard_elevator number 0-100 elevator's height location/position
thunderdashboard_elevator_target number 0-100 the elevator location it is trying to reach
elevator_target_position string  e.g. Hatch 1, Cargo 2, Loading Station the 'name' of the location the elevator is trying to reach
gamepiece_mode string

hatch

cargo

The game piece "mode" the robot thinks it is in. This impacts the elevator positions.

Color coded border or text color of gamepiece_target_mode based on if this is the same as or different than gamepiece_target_mode (aka if the robot has achieved the desired mode or not yet). Something like red for "not there yet" and green for "there".

gamepiece_target_mode string

hatch

cargo

The game piece "mode" the robot wants to go to. Display using text. Also consider using an image of a hatch panel or cargo ball?

thunderdashboard_green number

0 - do NOT have a game piece

1 - have a game piece

Background of dashboard goes green.
robot_airpressure number 0 - 125 Indicates the PSI in the air system. Display in a slider or pressure gauge (this if possible). based on lower and upper, indicate range its in. 
thunderdashboard_airpressure_lower number

something 0-125

threshold between red and yellow
thunderdashboard_airpressure_upper number something 0-125 threshold between yellow and green
robot_match_time_remaining number 0-135 number of seconds left in the current match period 
pi_connected number

0 - NOT connected

1 - connected

Raspberry Pi connection status

Only will update with a clean shutdown - will not get unset with a sudden power loss

thunderdashboard_max number

0 = show normal

1 = fill screen

fills screen or not
thunderdashboard_match_period_length number 0-135 number of total seconds in the current match period

IO Maps for Old Robots