2018:Robot IO Map
Robot I/O
CAN ID Assignments
| ID | Subsystem | Component Type |
Model # | 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 | cube intake | RS 775 | Talon SRX | left | Intake cube to hand (+) eject cube (-) | 30 A | 6 |
| 3 | cube intake | RS 775 | Talon SRX | right | Intake cube to hand (+) eject cube (-) | 30 A | 7 |
| 4 | arm | RS 775 | Talon SRX | moves arm | moves from arm front (+) to back (-) | 30 A | 5 |
| 5 | hand | RS 775 | Talon SRX | hold and eject the cube | rollers intake (+) eject the cube (-) | 30 A | 4 |
| 6 | Left Ramp, Near Jack | RS 775 | Talon SRX | Raise/Lower jack | Raise jack (+) | 30 A | 8 |
| 7 | Left Ramp, Far Jack | RS 775 | Talon SRX | Raise/Lower jack |
Raise jack (+) Vex encoder feeds direct to talon |
40 A | 12 |
| 8 | Right Ramp, Near Jack | RS 775 | Talon SRX | Raise/Lower jack |
Raise jack (+) Vex encoder feeds direct to talon |
40 A | 3 |
| 9 | Right Ramp, Far Jack | RS 775 | Talon SRX | Raise/Lower jack |
Raise jack (+) Vex encoder feeds direct to talon |
30 A | 11 |
| 10 | |||||||
| 11 | |||||||
| 12 | |||||||
| 13 | |||||||
| 14 | |||||||
| 15 | |||||||
PWM Outputs
| ID | Subsystem | Component Type |
Model # | Description (brief) |
Operation
|
Notes (8) max. 40A PDB # | |
| 0 | DriveBase | CIM | SPARK | Left Motor 1; +Voltage = Forwards | 40A | 0 | |
| 0 | DriveBase | CIM | SPARK | Left Motor 2; +Voltage = Forwards | 40A | 1 | |
| 0 | DriveBase | CIM | SPARK | Left Motor 3; +Voltage = Forwards | 40A | 2 | |
| 1 | DriveBase | CIM | SPARK | Right Motor 1; +Voltage = Forwards | 40A | 15 | |
| 1 | DriveBase | CIM | SPARK | Right Motor 2; +Voltage = Forwards | 40A | 14 | |
| 1 | DriveBase | CIM | SPARK | Right Motor 3; +Voltage = Forwards | 40A | 13 | |
| 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 | Drive | gyro | TBD | gyro | telling angle and rate in auto |
|
||
| 2 | Arm | pot |
|
arm position | arm forward (+) arm back (-) | 0-4 v ? | ||
| 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 | Drive | encoder | 63r256 | left encoder phase A | measures distance traveled | 256 counts per rev |
| 1 | IN | Arm | ??? | ??? | Limit at end of travel for front of robot | Limit "switch" - digital low at limit | |
| 2 | IN | Drive | encoder | 63r256 | right encoder phase A | measures distance traveled | 256 counts per rev |
| 3 | IN | Arm | ??? | ??? | Limit at end of travel for back of robot | Limit "switch" - digital low at limit | |
| 4 | IN | Intake | magnetic reed switch | Intake is all the way out | when it is all the way out it is digital low | ||
| 5 | IN | Arm | encoder | srx magnetic encoder | arm encoder phase A | 1024 counts per rev | |
| 6 | IN | Arm | encoder | srx magnetic encoder | arm encoder phase B | 1024 counts per rev | |
| 7 | IN | ||||||
| 8 | IN | ||||||
| 9 | IN | Hand | banner diffuse sensor | sm312fvqd | cube present | when cube is present digital low | needs 10+ volt via PD board #3 |
Rev Robotics More Board IO
| ID | Direction (IN/OUT) | Subsystem | Component Type | Model # | Description (brief) | Operation | Notes |
| 0 | |||||||
| 1 | |||||||
| 2 | |||||||
| 3 | |||||||
| 4 | |||||||
| 5 | |||||||
| 6 | |||||||
| 7 | |||||||
| 8 | |||||||
| 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 |
| 0 | |||||||
| 1 | |||||||
| 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 Module
| # | Subsystem | Solenoid is Double or Single? |
Solenoid Model # |
Description (brief) |
Operation | Circuit Pressure | Notes |
| 0 | Intake | Double | SY3240-6 | Raise intake | Extends cylinder to raise intake | 60 PSI | |
| 1 | Intake | Double | SY3240-6 | Lower intake | Retracts cylinder to lower intake | 60 PSI | |
| 2 | Arm | Double | SY3240-6 | Disengage brake on arm pivot. Does not actually pass air (block output) | Extends cylinder to disengage brake | 60 PSI | |
| 3 | Arm | Double | SY3240-6 | Engage brake on arm pivot | Retracts cylinder to engage brake | 60 PSI | |
| 4 | Arm | Double | SY3240-6 |
Release hand's grip on cube Does not actually pass air (block output) |
Removes air pressure from cylinder to "relax" grip on cube | ?? PSI | |
| 5 | Arm | Double | SY3240-6 | Tighten hand grip on cube | Retracts cylinder to "close" hand | ?? PSI | |
| 6 | Ramp | Double | SY3240-6 | Holds ramps in stored position | Extends cylinder to hold ramps in up position | 60 PSI | |
| 7 | Ramp | Double | SY3240-6 | Allows ramps to deploy to ground | Retracts cylinder to release ramps to ground | 60 PSI |
Operator Controls
Controller 1 - Primary Driver
| Button # | Action/Button | Description | Details |
| 1 | Left Joystick Y | Drive Forward/Back |
Up drive the robot forward (Intake side) NOTE: will do the opposite if drive is toggled |
| Left Joystick X | Nothing | ||
| Right Joystick Y | Nothing | ||
| 4 | Right Joystick X | Turn Left/Right |
Right will turn the robot clockwise and vice NOTE: will do the opposite if drive is toggled |
| 5 | Left Bumper | Slow | decreases the range of power to the motors by a set amount |
| 6 | Right Bumper | Nothing | |
| 2 | Left Trigger | Turbo | Increases the range of power to the motors by a set amount. |
| 3 | Right Trigger | Swap Drive |
Switches the front and back of the robot. Press to toggle.w |
Controller 2 - Aux Driver
| Button # | Action/Button | Description | Details |
| 5 | Right Joystick Y | Fine Arm Control |
Up - towards front Down - towards back Moves arm only when preset is complete. Moves at a slower speed than the presets. |
| 5 | Left Bumper | Raise Right Ramp |
Press and Hold If button is let go, then the ramp will stop in place. |
| 6 | Right Bumper | Raise Left Ramp |
Press and Hold If button is let go, then the ramp will stop in place. |
| 3 | Right Trigger | Intake | Press and Hold |
| 2 | Left Trigger | Outtake | Press and Hold |
| 0 | Dpad Up | Moves Intake Up | When arm is broken |
| 180 | Dpad Down | Moves Intake Down | When arm is broken |
| 4 | Y button | Arm to Front (Preset position) |
Exchange Level Press to move arm there automatically. Doesn't accept any other arm movement requests until the current movement is complete. |
| 1 | A button | Arm to Back (Preset position) |
Exchange Level Press to move arm there automatically. Doesn't accept any other arm movement requests until the current movement is complete. |
| 2 | B button | Arm to Switch Back (Preset position) | Press to move arm there automatically. Doesn't accept any other arm movement requests until the current movement is complete. |
| 3 | X button | Arm to Switch Front (Preset position) | Press to move arm there automatically. Doesn't accept any other arm movement requests until the current movement is complete. |
| 7 + 8 | Start + Select | Deploy Ramps |
Press both at same time to lower ramps. Lowers all parts of the ramp. |
Broken Switches
| Switch | Description | Details |
| Broken Switch1 | ||
| Broken Switch2 | ||
| Broken Switch3 | ||
| Broken Switch4 | ||
| Broken Switch5 | ||
| Broken Switch6 | ||
| Broken Switch7 |