2020:Robot IO Map

From 1511Wookiee
Revision as of 11:04, 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              

 

Rev Robotics More Board Analog IO

ID Subsystem

Component

Type

Model # Description
(brief)
Operation

Voltage

Range

Notes
AIN0              
AIN1              
AIN2              
AIN3              
AOUT0              
AOUT1              

Digital IO (GPIO)

RoboRio IO

ID Direction
(IN/OUT)
Subsystem

Component

Type

Model # Description
(brief)
Operation Notes
0 IN Hatch Limit switch Honeywell SZL-VL-S-B-N-M Hatch against backplate

0 = have hatch

 1 = no hatch

 
1 IN            
2 IN            
3 IN            
4 IN Elevator Upper Limit EE-SPY415 senses when the elevator is at the top of its track

0 = no face sensed

1 = face sensed

 
5 IN Elevator Lower Limit Optek OPB815WZ senses when the elevator inner frame is at the bottom of the track

0 = elevator not at bottom

1 = elevator is at bottom

 
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 Drive Encoder 63R256 Grayhill Left drive train encoder Left encoder phase A  
3 IN Drive Encoder 63R256 Grayhill Right drive train encoder Right encoder phase A  
4 IN Hab Range Finder Optek OPB720A Front robot over a hab level

0 = not

1 = over level

 
5 IN Hab Range Finder Optek OPB720A Back robot over a hab level

0 = not

1 = over level

 
6 IN Elevator Lower Limit Optek OPB815WZ Carriage lower limit

0 = elevator carriage not at bottom

1 = elevator carriage is at bottom

 
7 IN Elevator Middle? Limit Optek OPB815WZ Carriage upper sensor for returning to starting configuration inside starting configuration

0 = elevator not at starting configuration

1 = elevator is at starting configuration

 
8 IN Pnuematics Compressor Switch  ? Sensor which turns off compressor

0 = compressor on

1= compressor off

 
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
0x29   Habitat laser range finder VL53L0X detects when we are ready to retract the first set of cylinders

If climbing to level 3, when distance changes from 21.162 to 2.162 the cylinders will retract . 

If climbing to level 2, when distance changes from 21.162 to 15.162 the cylinders will retract. 

PROBABLY NOT USING ANYMORE
0x2A   Habitat laser range finder VL53L0X detects when we are ready to retract the second set of cylinders

If climbing to level 3, when distance changes from 21.162 to 2.162 the cylinders will retract . 

If climbing to level 2, when distance changes from 21.162 to 15.162 the cylinders will retract. 

NOT USING ANYMORE BUT I DONT WANT TO DELETE THIS
2              
3              
4              
5              
6              

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

ID # Subsystem

Solenoid is Double or Single?

Solenoid

Model #

Description

(brief)

Operation Circuit Pressure PDB #
1 0 Hatch Double SY3240-6LZ Hold hatch Extends cylinder to raise hook 50 N/A (dedicated PCM terminal)
1 Allow hatch to release Retract cylinder to lower hook
2 Cargo Double SY3240-6LZ Enables cargo mechanism Extends cargo cylinders (2) to extend cargo mechism to usable position 50
3 Store cargo, enable hatch Retracts cargo cylinders (2) to store cargo mechanism out of way of hatch mechanism
4 Elevator Double SY3240-6LZ Lowers elevator to inside robot frame Extends cylinder to lower entire elevator 50
5 Raises elevator to usable position Retracts cylinder to raise elevator to usable position for game piece
6 Elevator Double SY3240-6LZ Engage brake Extends cylinder to engage elevator brake 50
7 Release brake Retracts cylinder to release elevator brake
2 0 Habitat Double SY3240-6LZ Lift front of robot Extends cylinders (2) to lift front end of robot 50 8
1 Lower front of robot Retracts cylinders (2) to lower front end of robot
2 Habitat Double SY3240-6LZ Lift rear of robot Extends cylinders (2) to lift back end of robot 50
3 Lower rear of robot Retracts cylinders (2) to lower back end of robot
4 Elevator

Double-RB1

Single -RB2

SY3240-6LZ Return paracord to its normal length Extends cylinder to legthen rope 50
5 Shorten paracord to lift carriage more Retract cylinder to lift carriage
 

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