2019:Robot IO Map: Difference between revisions

From 1511Wookiee
Jump to navigationJump to search
(Created page with "= Robot I/O = == CAN ID Assignments == {| border="1" cellpadding="2" cellspacing="1" style="width: 855px" |- | style="text-align: center" | '''ID''' | style="text-align: cen...")
 
No edit summary
 
(84 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<div class="mw-parser-output"><div class="mw-parser-output">
= Robot I/O =
= Robot I/O =
 
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
== CAN ID Assignments ==
== CAN ID Assignments ==


{| border="1" cellpadding="2" cellspacing="1" style="width: 855px"
{| style="width: 855px" cellspacing="1" cellpadding="2" border="1"
|-
|-
| style="text-align: center" | '''ID'''
| style="text-align: center" | '''ID'''
| style="text-align: center" | '''Subsystem'''
| style="text-align: center" | '''Subsystem'''
| <p style="text-align: center">'''Component'''</p> <p style="text-align: center">'''Type'''</p>  
| <p style="text-align: center">'''Component'''</p> <p style="text-align: center">'''Type'''</p>  
| style="text-align: center" | '''Model #'''
| style="text-align: center;  width: 75px" | '''Model #'''
| style="width: 210px; text-align: center" | '''Description'''<br/> (brief)
| style="width: 81px;  text-align: center" | '''Brake or Coast?'''
| style="width: 224px; text-align: center" | '''Operation'''
| style="width: 210px; text-align: center" | '''Description'''<br/> (brief)
| colspan="2" rowspan="1" style="width: 175px; text-align: center" |  
| style="width: 224px; text-align: center" | '''Operation'''
| colspan="2" rowspan="1" style="width: 175px; text-align: center" |  
'''Notes'''
'''Notes'''


Line 20: Line 29:
| style="text-align: center" | Electrica'''l'''
| style="text-align: center" | Electrica'''l'''
| <p style="text-align: center">PD Module</p>  
| <p style="text-align: center">PD Module</p>  
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | Power Distribution Module feedback
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | monitor PD
| style="width: 210px; text-align: center" | Power Distribution Module feedback
| style="width: 224px; text-align: center" | monitor PD
| style="width: 115px" | <p style="text-align: center">must be CAN 0</p>  
| style="width: 115px" | <p style="text-align: center">must be CAN 0</p>  
| style="width: 55px" | &nbsp;
| style="width: 55px" | &nbsp;
Line 29: Line 39:
| style="text-align: center" | '''RESERVED'''
| style="text-align: center" | '''RESERVED'''
| style="text-align: center" | n/a
| style="text-align: center" | n/a
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | Factory-default<br/> allows for adding new device quickly and re-assign its ID
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | Factory-default<br/> allows for adding new device quickly and re-assign its ID
| style="width: 115px; text-align: center" | don't use
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | don't use
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center" | 2
| style="text-align: center" | 2
| style="text-align: center" | cube intake
| style="text-align: center" | Cargo
| style="text-align: center" | RS 775
| style="text-align: center" | Talon-SRX
| style="text-align: center" | Talon SRX
| style="text-align: center;  width: 75px" | 775 Pro
| style="width: 210px; text-align: center" | left
| style="width: 81px;  text-align: center" | Brake
| style="width: 224px; text-align: center" | Intake cube to hand (+) eject cube (-)
| style="width: 210px; text-align: center" |  
| style="width: 115px; text-align: center" | 30 A
Intakes or expels cargo.
| style="width: 55px; text-align: center" | 8
 
Left half motor
 
| style="width: 224px; text-align: center" |  
(+) = intake cargo
 
(-) = expel cargo
 
| style="width: 115px; text-align: center" | 30
| style="width: 55px; text-align: center" | 11
|-
|-
| style="text-align: center" | 3
| style="text-align: center" | 3
| style="text-align: center" | cube intake
| style="text-align: center" | Cargo
| style="text-align: center" | RS 775
| style="text-align: center" | Talon SRX
| style="text-align: center" | Talon SRX
| style="width: 210px; text-align: center" | right
| style="text-align: center;  width: 75px" | 775 Pro
| style="width: 224px; text-align: center" | Intake cube to hand (+) eject cube (-)
| style="width: 81px;  text-align: center" | Brake
| style="width: 115px; text-align: center" | 30 A
| style="width: 210px; text-align: center" |  
| style="width: 55px; text-align: center" | 7
Intakes or expels cargo
 
Right half motor
 
| style="width: 224px; text-align: center" |  
(+) = intake cargo
 
(-) = expel cargo
 
| style="width: 115px; text-align: center" | 30
| style="width: 55px; text-align: center" | 4
|-
|-
| style="text-align: center" | 4
| style="text-align: center" | 4
| style="text-align: center" | arm
| style="text-align: center" | Elevator
| style="text-align: center" | RS 775
| style="text-align: center" | Talon SRX
| style="text-align: center" | Talon SRX
| style="width: 210px; text-align: center" | moves arm&nbsp;&nbsp;
| style="text-align: center;  width: 75px" | 775 Pro
| style="width: 224px; text-align: center" | moves from arm front (+) to back (-)
| style="width: 81px;  text-align: center" | Brake
| style="width: 115px; text-align: center" | 30 A
| style="width: 210px; text-align: center" |  
| style="width: 55px; text-align: center" | 9
Moves elevator up/down.
 
Primary motor "A"/Left
 
| style="width: 224px; text-align: center" |  
(+) = elevator up
 
(-) = elevator down
 
<span style="background-color: rgb(241, 196, 15)">Vex encoder feeds direct to talon</span>
 
| style="width: 115px; text-align: center" | 40
| style="width: 55px; text-align: center" | 12
|-
|-
| style="text-align: center" | 5
| style="text-align: center" | 5
| style="text-align: center" | hand
| style="text-align: center" | Elevator
| style="text-align: center" | RS 775
| style="text-align: center" | Talon SRX
| style="text-align: center" | Talon SRX
| style="width: 210px; text-align: center" | &nbsp; &nbsp; &nbsp; &nbsp;hold and eject the cube
| style="text-align: center;  width: 75px" | 775 Pro
| style="width: 224px; text-align: center" | rollers intake (+) eject the cube (-)
| style="width: 81px;  text-align: center" | Brake
| style="width: 115px; text-align: center" | 30 A
| style="width: 210px; text-align: center" |  
| style="width: 55px; text-align: center" | 6
Moves elevator up/down
 
Secondary motor "B"/Right
 
| style="width: 224px; text-align: center" |  
(+) = elevator up
 
(-) = elevator down
 
| style="width: 115px; text-align: center" | 40
| style="width: 55px; text-align: center" | 3
|-
|-
| style="text-align: center" | 6
| style="text-align: center" | 6
| style="text-align: center" | Left lift
| style="text-align: center" | Hab
| style="text-align: center" | RS 775
| style="text-align: center" | Talon SRX
| style="text-align: center" | Talon SRX
| style="width: 210px; text-align: center" | raises the left lift
| style="text-align: center;  width: 75px" | 775 Pro
| style="width: 224px; text-align: center" |  
| style="width: 81px; text-align: center" | Brake
raise lift (+)
| style="width: 210px; text-align: center" |  
Drive "back legs"


<span style="background-color:#ffff66;">Vex encoder feeds direct to talon</span>
Primary motor; left"leg"


| style="width: 115px; text-align: center" | 30 A
| style="width: 224px;  text-align: center" |
| style="width: 55px; text-align: center" | 13
(+) = move foward
 
(-) = move reverse
 
| style="width: 115px; text-align: center" | 40
| style="width: 55px; text-align: center" | 15
|-
|-
| style="text-align: center" | 7
| style="text-align: center" | 7
| style="text-align: center" | Right lift
| style="text-align: center" | Hab
| style="text-align: center" | RS 775
| style="text-align: center" | Victor SPX
| style="text-align: center" | Talon SRX
| style="text-align: center;  width: 75px" | 775 Pro
| style="width: 210px; text-align: center" | raises the right lift
| style="width: 81px;  text-align: center" | Brake
| style="width: 224px; text-align: center" |  
| style="width: 210px; text-align: center" |  
Raise lift&nbsp;(+)
Drive "back legs"
 
Secondary motor; right"leg"
 
| style="width: 224px; text-align: center" |  
(+) = move foward


<span style="background-color:#ffff66;">Vex encoder feeds direct to talon</span>
(-) = move reverse


| style="width: 115px; text-align: center" | 40 A
| style="width: 115px; text-align: center" | 40
| style="width: 55px; text-align: center" | 12
| style="width: 55px; text-align: center" | 0
|-
|-
| style="text-align: center" | 8
| style="text-align: center" | 8
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" |  
| style="width: 55px; text-align: center" | &nbsp;
&nbsp;
 
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center" | 9
| style="text-align: center" | 9
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center" | 10
| style="text-align: center" | 10
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center" | 11
| style="text-align: center" | 11
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| 12
| 12
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center;  width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| 13
| 13
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| &nbsp;
| style="width: 75px" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 81px;  text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 224px" | &nbsp;
| style="width: 224px" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| 14
| 14
| &nbsp;
| &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| &nbsp;
| style="width: 75px" | &nbsp;
| style="width: 81px" | &nbsp;
| style="width: 210px" | &nbsp;
| style="width: 210px" | &nbsp;
| style="width: 224px" | &nbsp;
| style="width: 224px" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| 15
| 15
| &nbsp;
| &nbsp;
| style="text-align: center" | &nbsp;
| style="text-align: center" | &nbsp;
| &nbsp;
| style="width: 75px" | &nbsp;
| style="width: 81px" | &nbsp;
| style="width: 210px" | &nbsp;
| style="width: 210px" | &nbsp;
| style="width: 224px" | &nbsp;
| style="width: 224px" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|}
|}


&nbsp;
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div> </div> </div> <div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div> <div class="mw-parser-output">&nbsp;</div> </div> </div> <div class="mw-parser-output">&nbsp;</div> </div></div></div> <div class="mw-parser-output">&nbsp;</div> </div></div></div></div>


== PWM Outputs ==
== PWM Outputs ==
Line 185: Line 256:
&nbsp;
&nbsp;


| style="text-align: center; width: 280px" | '''Brake/Coast'''
| colspan="2" rowspan="1" style="width: 198px; text-align: center" |  
| colspan="2" rowspan="1" style="width: 198px; text-align: center" |  
'''Notes'''
'''Notes'''
Line 191: Line 263:


|-
|-
| 0
| rowspan="2" | 0
| style="width: 82px" | DriveBase
| style="width: 82px" | Drivetrain
| style="width: 76px" | CIM
| style="width: 76px" | SPARK
| style="width: 54px" | &nbsp;
| style="width: 54px" | CIM
| style="width: 170px" | SPARK
| style="width: 170px" |
| style="width: 280px" | Left Motor 1;&nbsp; +Voltage = Forwards
Left front drive motor
| style="width: 125px; text-align: center" | 40A
 
| style="width: 72px; text-align: center" | 0
| style="width: 280px" |
+ Moves left side of robot forward
 
- Moves left side of robot reverts
 
| style="width: 280px" | Don't know
| style="width: 125px; text-align: center" | 40
| style="width: 72px; text-align: center" | 2
|-
| style="width: 82px" | Drivetrain
| style="width: 76px" | SPARK
| style="width: 54px" | CIM
| style="width: 170px" | Left rear drive motor
| style="width: 280px" | &nbsp;
| style="width: 280px" | Don't know
| style="width: 125px; text-align: center" | 40
| style="width: 72px; text-align: center" | 14
|-
|-
| 0
| rowspan="2" | 1
| style="width: 82px" | DriveBase
| style="width: 82px" | Drivetrain
| style="width: 76px" | CIM
| style="width: 76px" | SPARK
| style="width: 54px" | &nbsp;
| style="width: 54px" | CIM
| style="width: 170px" | SPARK
| style="width: 170px" | Right front drive motor
| style="width: 280px" | Left Motor 2; +Voltage = Forwards
| style="width: 280px" |  
| style="width: 125px; text-align: center" | 40A
+ Moves left side of robot forward
 
- Moves left side of robot reverts
 
| style="width: 280px" | Don't know
| style="width: 125px; text-align: center" | 40
| style="width: 72px; text-align: center" | 1
| style="width: 72px; text-align: center" | 1
|-
|-
| 1
| style="width: 82px" | Drivetrain
| style="width: 82px" | DriveBase
| style="width: 76px" | SPARK
| style="width: 76px" | CIM
| style="width: 54px" | CIM
| style="width: 54px" | &nbsp;
| style="width: 170px" | Right reardrive motor
| style="width: 170px" | SPARK
| style="width: 280px" | &nbsp;
| style="width: 280px" | Right Motor 1; +Voltage = Forwards
| style="width: 280px" | Don't know
| style="width: 125px; text-align: center" | 40A
| style="width: 125px; text-align: center" | 40
| style="width: 72px; text-align: center" | 15
| style="width: 72px; text-align: center" | 13
|-
| 1
| style="width: 82px" | DriveBase
| style="width: 76px" | CIM
| style="width: 54px" | &nbsp;
| style="width: 170px" | SPARK
| style="width: 280px" | Right Motor 2; +Voltage = Forwards
| style="width: 125px; text-align: center;" | 40A
| style="width: 72px; text-align: center;" | 14
|-
|-
| 2
| 2
| style="width: 82px" | &nbsp;
| style="width: 82px" | Camera
| style="width: 76px" | &nbsp;
| style="width: 76px" | Servo
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | Changes camera angle
| style="width: 280px" | &nbsp;
| style="width: 280px" | +moves sevro up, - moves sevro down
| style="width: 280px" | N/A
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 72px" | &nbsp;
| style="width: 72px" | &nbsp;
Line 241: Line 326:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 250: Line 336:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 259: Line 346:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 268: Line 356:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 277: Line 366:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 286: Line 376:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 295: Line 386:
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 170px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 280px" | &nbsp;
| style="width: 125px" | &nbsp;
| style="width: 125px" | &nbsp;
Line 300: Line 392:
|}
|}


</div> </div> </div> </div>
</div>
<div class="mw-parser-output">
<div class="mw-parser-output">
== Relay Outputs ==
== Relay Outputs ==


{| style="width: 927px" border="1" cellpadding="2" cellspacing="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 927px"
|-
|-
| '''ID'''
| '''ID'''
| style="text-align: center" | '''Subsystem'''
| style="text-align: center" | '''Subsystem'''
| style="width: 69px" | <p style="text-align: center">'''Component'''</p><p style="text-align: center">'''Type'''</p>
| style="width: 69px" | <p style="text-align: center">'''Component'''</p> <p style="text-align: center">'''Type'''</p>  
| style="width: 54px; text-align: center" | '''Model #'''
| style="width: 54px; text-align: center" | '''Model #'''
| style="width: 192px; text-align: center" | '''Description<br/>(brief)'''
| style="width: 192px; text-align: center" | '''Description<br/> (brief)'''
| style="width: 259px; text-align: center" | '''Operation'''<br/>
| style="width: 259px; text-align: center" | '''Operation'''
| style="width: 115px; text-align: center" | '''Notes'''
| style="width: 115px; text-align: center" | '''Notes'''
|-
|-
| 0
| 0
|  
| Pnuematics
| style="width: 69px" | <br/>
| style="width: 69px" | Spike
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 192px" |  
| style="width: 192px" | Controls the compressor
| style="width: 259px" | <br/>
| style="width: 259px" | forward = compressor on. dont use reverse
| style="width: 115px" |  
| style="width: 115px" | 20 amp breaker, pdb 8
|-
|-
| 1
| 1
|  
| &nbsp;
| style="width: 69px" | <br/>
| style="width: 69px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 192px" |  
| style="width: 192px" | &nbsp;
| style="width: 259px" | <br/>
| style="width: 259px" | &nbsp;
| style="width: 115px" |  
| style="width: 115px" | &nbsp;
|-
|-
| 2
| 2
|  
| &nbsp;
| style="width: 69px" | <br/>
| style="width: 69px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 192px" |  
| style="width: 192px" | &nbsp;
| style="width: 259px" | <br/>
| style="width: 259px" | &nbsp;
| style="width: 115px" |  
| style="width: 115px" | &nbsp;
|-
|-
| 3
| 3
|  
| &nbsp;
| style="width: 69px" | <br/>
| style="width: 69px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 192px" |  
| style="width: 192px" | &nbsp;
| style="width: 259px" | <br/>
| style="width: 259px" | &nbsp;
| style="width: 115px" |  
| style="width: 115px" | &nbsp;
|}
|}
</div>
</div>


== Analog IO ==
== Analog IO ==
 
<div class="mw-parser-output"><div class="mw-parser-output">
=== <u>RoboRIO Analog Inputs</u> ===
=== <u>RoboRIO Analog Inputs</u> ===


Line 365: Line 465:
|-
|-
| 0
| 0
| &nbsp;
| Pnuematics
| style="width: 70px" | &nbsp;
| style="width: 70px" | Pressure guage
| style="width: 54px" | &nbsp;
| style="width: 54px" | REV-11-1107
| style="width: 227px" | &nbsp;
| style="width: 227px" | Senses amount of pressure we have
| style="width: 262px" | &nbsp;
| style="width: 262px" | To know if we can actually do HAB
| style="width: 132px" | &nbsp;
| style="width: 132px" | &nbsp;
| style="width: 91px; text-align: center;" | &nbsp;
| style="width: 91px; text-align: center" | &nbsp;
|-
|-
| 1
| style="text-align: center" | 1
| &nbsp;
| style="text-align: center" | Hab
| style="width: 70px" | &nbsp;
| style="width: 69px; text-align: center" | Left Front Extended
| style="width: 54px; text-align: center;" | &nbsp;
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
| style="width: 227px" | &nbsp;
| style="width: 139px; text-align: center" | senses when the front left cylinder is extended
| style="width: 262px" | &nbsp;
| style="width: 193px; text-align: center" | Low = cylinder extended
| style="width: 132px" |  
High = cylinder not extended
&nbsp;
| style="width: 223px; text-align: center" |  
 
|
| style="width: 91px" | &nbsp;
|-
|-
| 2
| style="text-align: center" | 2
| Arm
| style="text-align: center" | Hab
| style="width: 70px" | pot
| style="width: 69px; text-align: center" | Left Rear Extended
| style="width: 54px" |  
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
{| border="0" cellpadding="0" cellspacing="0" id="product-details" style="width: 71px;"
| style="width: 139px; text-align: center" | senses when the rear left cylinder is extended
| style="width: 193px; text-align: center" | Low = cylinder extended
High = cylinder not extended
| style="width: 223px; text-align: center" |
|
|-
|-
| id="reportPartNumber" style="width: 67px;" | 3852A-282-103AL-ND
| style="text-align: center" | 3
| style="text-align: center" | Hab
| style="width: 69px; text-align: center" | Left front cylinder retracted
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
| style="width: 139px; text-align: center" | senses when the front left cylinder is retracted
| style="width: 193px; text-align: center" | Low = cylinder retracted
High = cylinder not retracted
| style="width: 223px; text-align: center" |
|
|}
|}
=== <u>More Board Analog Inputs</u> ===
{| border="1" cellpadding="2" cellspacing="1" style="width: 1030px"
|-
| ID
| style="text-align: center" | Subsystem
| style="width: 70px" | <p style="text-align: center">Component</p> <p style="text-align: center">Type</p>
| style="width: 54px; text-align: center" | Model #
| style="width: 227px; text-align: center" | Description<br/> (brief)
| style="width: 262px; text-align: center" | Operation
| style="width: 132px; text-align: center" |
Voltage


| style="width: 227px" | arm position
Range
| style="width: 262px" | arm forward (+) arm back (-)
 
| style="width: 132px" | 0-4 v&nbsp;?
| style="width: 91px; text-align: center" | Notes
| style="width: 91px" | &nbsp;
|-
| style="text-align: center" | 0
| style="text-align: center" | Hab
| style="width: 69px; text-align: center" | Right Front Extended
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
| style="width: 139px; text-align: center" | senses when the front Right cylinder is extended
| style="width: 193px; text-align: center" | Low = cylinder extended
High = cylinder not extended
| style="width: 223px; text-align: center" |
|
|-
| style="text-align: center" | 1
| style="text-align: center" | Hab
| style="width: 69px; text-align: center" | Right Rear Extended
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
| style="width: 139px; text-align: center" | senses when the rear Right cylinder is extended
| style="width: 193px; text-align: center" | Low = cylinder extended
High = cylinder not extended
| style="width: 223px; text-align: center" |
|
|-
| style="text-align: center" | 2
| style="text-align: center" | Hab
| style="width: 69px; text-align: center" | Right front cylinder retracted
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
| style="width: 139px; text-align: center" | senses when the front Right cylinder is retracted
| style="width: 193px; text-align: center" | Low = cylinder retracted
High = cylinder not retracted
| style="width: 223px; text-align: center" |
|
|-
|-
| 3
| style="text-align: center" | 3
| &nbsp;
| style="text-align: center" | Game piece
| style="width: 70px" | &nbsp;
| style="width: 69px; text-align: center" | Sense when the cargo arms in hatch configuration
| style="width: 54px" | &nbsp;
| style="width: 122px; text-align: center" | Bimba&nbsp;MRS-.087-PBL-17
| style="width: 227px" | &nbsp;
| style="width: 139px; text-align: center" | Senses when the cargo arms are fully open and out of the way
| style="width: 262px" | &nbsp;
| style="width: 193px; text-align: center" |  
| style="width: 132px" | &nbsp;
0 = arm&nbsp;open, cylinder retracted
| style="width: 91px" | &nbsp;
 
1 = arm&nbsp;not open, pls dont hit wall
| style="width: 223px; text-align: center" |  
|
|}
|}
 
</div> </div>


=== <u>Rev Robotics More Board Analog IO</u> ===
=== <u>Rev Robotics More Board Analog IO</u> ===
Line 480: Line 635:
| style="width: 91px" | &nbsp;
| style="width: 91px" | &nbsp;
|}
|}
== Digital IO (GPIO) ==
== Digital IO (GPIO) ==
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output"><div class="mw-parser-output">
=== <u>RoboRio IO</u> ===
=== <u>RoboRio IO</u> ===


{| border="1" cellpadding="2" cellspacing="1" style="width: 1229px;"
{| style="width: 1229px" cellspacing="1" cellpadding="2" border="1"
|-
|-
| style="text-align: center;" | '''ID'''
| style="text-align: center" | '''ID'''
| style="text-align: center;" | '''Direction'''<br/> (IN/OUT)
| style="text-align: center" | '''Direction'''<br/> (IN/OUT)
| style="width: 69px; text-align: center;" | '''Subsystem'''
| style="width: 69px; text-align: center" | '''Subsystem'''
| style="width: 122px;" | <p style="text-align: center;">'''Component'''</p> <p style="text-align: center;">'''Type'''</p>  
| style="width: 122px" | <p style="text-align: center">'''Component'''</p> <p style="text-align: center">'''Type'''</p>  
| style="width: 139px; text-align: center;" | '''Model #'''
| style="width: 139px; text-align: center" | '''Model #'''
| style="width: 193px; text-align: center;" | '''Description<br/> (brief)'''
| style="width: 193px; text-align: center" | '''Description<br/> (brief)'''
| style="width: 223px; text-align: center;" | '''Operation'''
| style="width: 223px; text-align: center" | '''Operation'''
| style="width: 231px; text-align: center;" | '''Notes'''
| style="width: 231px; text-align: center" | '''Notes'''
|-
|-
| style="text-align: center;" | 0
| style="text-align: center" | 0
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Drive
| style="width: 69px; text-align: center" | Hatch
| style="width: 122px; text-align: center;" | encoder
| style="width: 122px; text-align: center" | Limit switch
| style="width: 139px; text-align: center;" | 63r256
| style="width: 139px; text-align: center" | Honeywell SZL-VL-S-B-N-M
| style="width: 193px; text-align: center;" | left encoder phase A
| style="width: 193px; text-align: center" | Hatch against backplate
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 223px; text-align: center" |  
| style="width: 231px; text-align: center;" | 256 counts per rev
0 = have hatch
 
&nbsp;1&nbsp;= no hatch
 
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 3
| style="text-align: center" | 1
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Arm
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | Limit at end of travel for back of robot
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit&nbsp;
| style="width: 223px; text-align: center" | &nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 2
| style="text-align: center" | 2
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Drive
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | encoder
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | 63r256
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | right encoder phase A
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 223px; text-align: center" | &nbsp;
| style="width: 231px; text-align: center;" | 256 counts per rev
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 1
| style="text-align: center" | 3
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Arm
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | Limit at end of travel for front of robot
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit
| style="width: 223px; text-align: center" | &nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 4
| style="text-align: center" | 4
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Intake
| style="width: 69px; text-align: center" | Elevator
| style="width: 122px; text-align: center;" | magnetic reed switch
| style="width: 122px; text-align: center" | Upper Limit
| style="width: 139px; text-align: center;" | &nbsp;
| style="width: 139px; text-align: center" | EE-SPY415
| style="width: 193px; text-align: center;" | Intake is all the way out&nbsp;
| style="width: 193px; text-align: center" | senses when the elevator is at the top of its track
| style="width: 223px; text-align: center;" |  
| style="width: 223px; text-align: center" |  
1 = Intake Up (In)
0 = no face sensed


0 = Intage Down (Out)
1 = face sensed


| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 5
| style="text-align: center" | 5
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Left Lift&nbsp;
| style="width: 69px; text-align: center" | Elevator
| style="width: 122px; text-align: center;" | encoder
| style="width: 122px; text-align: center" | Lower Limit
| style="width: 139px; text-align: center;" | srx magnetic encoder
| style="width: 139px; text-align: center" | Optek OPB815WZ
| style="width: 193px; text-align: center;" | Lift encoder phase A
| style="width: 193px; text-align: center" | senses when the elevator inner frame is at the bottom of the track
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 223px; text-align: center" |  
| style="width: 231px; text-align: center;" | 1024 counts per rev
0 = elevator not at bottom
 
1 = elevator is at bottom
 
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 6
| style="text-align: center" | 6
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Right Lift
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | encoder
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | srx magnetic encoder
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | Lift encoder phase A
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 223px; text-align: center" | &nbsp;
| style="width: 231px; text-align: center;" | 1024 counts per rev
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 7
| style="text-align: center" | 7
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Left Lift
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | Limit at the upper end of the left lift travel
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit
| style="width: 223px; text-align: center" | &nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 8
| style="text-align: center" | 8
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Right Lift
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | Limit at the upper end of the right lift travel
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit
| style="width: 223px; text-align: center" | &nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center;" | 9
| style="text-align: center" | 9
| style="text-align: center;" | IN
| style="text-align: center" | IN
| style="width: 69px; text-align: center;" | Hand
| style="width: 69px; text-align: center" | &nbsp;
| style="width: 122px; text-align: center;" | Allen Bradley diffuse sensor
| style="width: 122px; text-align: center" | &nbsp;
| style="width: 139px; text-align: center;" | 42EF-D1MNAK-A2
| style="width: 139px; text-align: center" | &nbsp;
| style="width: 193px; text-align: center;" | cube present
| style="width: 193px; text-align: center" | &nbsp;
| style="width: 223px; text-align: center;" |  
| style="width: 223px; text-align: center" | &nbsp;
1 = Cube Present
| style="width: 231px;  text-align: center" | &nbsp;
 
|}
0 = Cube Not Present
</div> </div> <div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> <div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div></div></div>


| style="width: 231px; text-align: center;" | needs 10+ volt via PD board #3
<div class="mw-parser-output">
|}
=== <u>Rev Robotics More Board IO</u> ===
=== <u>Rev Robotics More Board IO</u> ===


{| border="1" cellpadding="1" cellspacing="1" style="width: 1022px"
{| style="width: 1022px" cellspacing="1" cellpadding="1" border="1"
|-
|-
| style="width: 16px; text-align: center" | '''ID'''
| style="width: 16px; text-align: center" | '''ID'''
| style="width: 56px; text-align: center" | '''Direction (IN/OUT)'''
| style="width: 56px; text-align: center" | '''Direction (IN/OUT)'''
| style="width: 74px; text-align: center" | '''Subsystem'''
| style="width: 74px; text-align: center" | '''Subsystem'''
| style="width: 74px; text-align: center" | '''Component Type'''
| style="width: 74px; text-align: center" | '''Component Type'''
| style="width: 56px; text-align: center" | '''Model #'''
| style="width: 56px; text-align: center" | '''Model #'''
| style="width: 197px; text-align: center" | '''Description (brief)'''
| style="width: 197px; text-align: center" | '''Description (brief)'''
| style="width: 254px; text-align: center" | '''Operation'''
| style="width: 254px; text-align: center" | '''Operation'''
| style="width: 141px; text-align: center" | '''Notes'''
| style="width: 141px; text-align: center" | '''Notes'''
|-
|-
| style="width: 16px" | 0
| style="width: 16px" | 0
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 1
| style="width: 16px;  text-align: center" | 1
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 2
| style="width: 16px;  text-align: center" | 2
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Drive
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Encoder
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | 63R256 Grayhill
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Left drive train encoder
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | Left encoder phase A
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 3
| style="width: 16px;  text-align: center" | 3
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Drive
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Encoder
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | 63R256 Grayhill
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Right drive train encoder
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | Right encoder phase A
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 4
| style="width: 16px;  text-align: center" | 4
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Hab
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Range Finder
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | Optek OPB720A
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Front robot over a hab level
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" |  
| style="width: 141px" | &nbsp;
0 = not
 
1 = over level
 
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 5
| style="width: 16px;  text-align: center" | 5
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Hab
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Range Finder
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | Optek OPB720A
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Back robot over a hab level
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" |  
| style="width: 141px" | &nbsp;
0 = not
 
1 = over level
 
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 6
| style="width: 16px;  text-align: center" | 6
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Elevator
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Lower Limit
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | Optek OPB815WZ
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Carriage lower limit
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" |  
| style="width: 141px" | &nbsp;
0 = elevator carriage not at bottom
 
1 = elevator carriage is at bottom
 
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 7
| style="width: 16px;  text-align: center" | 7
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Elevator
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Middle? Limit
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | Optek OPB815WZ
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Carriage upper sensor for returning to starting configuration inside starting configuration
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" |  
| style="width: 141px" | &nbsp;
0 = elevator not at starting configuration
 
1 = elevator is at starting configuration
 
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 8
| style="width: 16px;  text-align: center" | 8
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | IN
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Pnuematics
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | Compressor Switch
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;?
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | Sensor which turns off compressor
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" |  
| style="width: 141px" | &nbsp;
0 = compressor on
 
1= compressor off
 
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 9
| style="width: 16px;  text-align: center" | 9
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 10
| style="width: 16px;  text-align: center" | 10
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 11
| style="width: 16px;  text-align: center" | 11
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 12
| style="width: 16px;  text-align: center" | 12
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 13
| style="width: 16px;  text-align: center" | 13
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 14
| style="width: 16px;  text-align: center" | 14
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px;  text-align: center" | &nbsp;
|-
|-
| style="width: 16px" | 15
| style="width: 16px;  text-align: center" | 15
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 74px" | &nbsp;
| style="width: 74px;  text-align: center" | &nbsp;
| style="width: 56px" | &nbsp;
| style="width: 56px;  text-align: center" | &nbsp;
| style="width: 197px" | &nbsp;
| style="width: 197px;  text-align: center" | &nbsp;
| style="width: 254px" | &nbsp;
| style="width: 254px;  text-align: center" | &nbsp;
| style="width: 141px" | &nbsp;
| style="width: 141px" | &nbsp;
|}
|}
</div>
<div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output">&nbsp;</div> </div></div></div></div></div></div></div>


== I2C Registers ==
== I2C Registers ==


{| style="width: 1007px" border="1" cellpadding="2" cellspacing="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 1007px"
|-
|-
| style="text-align: center" | '''Address'''<br/>(e.g. 0100111X)
| style="text-align: center" | '''Address'''<br/> (e.g. 0100111X)
| style="width: 37px; text-align: center" | '''Pin'''<br/>(e.g. GP0)
| style="width: 37px; text-align: center" | '''Pin'''<br/> (e.g. GP0)
| style="width: 76px; text-align: center" | '''Subsystem'''
| style="width: 76px; text-align: center" | '''Subsystem'''
| style="width: 75px" | <p style="text-align: center">'''Component'''</p><p style="text-align: center">'''Type'''</p>
| style="width: 75px" | <p style="text-align: center">'''Component'''</p> <p style="text-align: center">'''Type'''</p>  
| style="width: 53px; text-align: center" | '''Model #'''
| style="width: 53px; text-align: center" | '''Model #'''
| style="width: 205px; text-align: center" | '''Description<br/>(brief)'''
| style="width: 205px; text-align: center" | '''Description<br/> (brief)'''
| style="width: 241px; text-align: center" | '''Operation'''<br/>
| style="width: 241px; text-align: center" | '''Operation'''
| style="width: 112px; text-align: center" | '''Notes'''
| style="width: 112px; text-align: center" | '''Notes'''
|-
|-
| 0
| 0x29
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | Habitat
| style="width: 75px" | <br/>
| style="width: 75px" | laser range finder
| style="width: 53px" | <br/>
| style="width: 53px" | VL53L0X
| style="width: 205px" |  
| style="width: 205px" | detects when we are ready to retract the first set of cylinders
| style="width: 241px" | <br/>
| style="width: 241px" |  
| style="width: 112px" |  
If climbing to level 3, when distance changes from 21.162 to 2.162 the cylinders will retract .&nbsp;
 
If climbing to level 2, when distance changes from 21.162 to 15.162 the cylinders will retract.&nbsp;
 
| style="width: 112px" | PROBABLY NOT USING ANYMORE
|-
|-
| 1
| 0x2A
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | Habitat
| style="width: 75px" | <br/>
| style="width: 75px" | laser range finder
| style="width: 53px" | <br/>
| style="width: 53px" | VL53L0X
| style="width: 205px" |  
| style="width: 205px" | detects when we are ready to retract the second set of cylinders
| style="width: 241px" | <br/>
| style="width: 241px" |  
| style="width: 112px" |  
If climbing to level 3, when distance changes from 21.162 to 2.162 the cylinders will retract .&nbsp;
 
If climbing to level 2, when distance changes from 21.162 to 15.162 the cylinders will retract.&nbsp;
 
| style="width: 112px" | NOT USING ANYMORE BUT I DONT WANT TO DELETE THIS
|-
|-
| 2
| 2
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" | <br/>
| style="width: 75px" | &nbsp;
| style="width: 53px" | <br/>
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" | <br/>
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|-
|-
| 3
| 3
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" | <br/>
| style="width: 75px" | &nbsp;
| style="width: 53px" | <br/>
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" | <br/>
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|-
|-
| 4
| 4
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" | <br/>
| style="width: 75px" | &nbsp;
| style="width: 53px" | <br/>
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" | <br/>
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|-
|-
| 5
| 5
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" | <br/>
| style="width: 75px" | &nbsp;
| style="width: 53px" | <br/>
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" | <br/>
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|-
|-
| 6
| 6
| style="width: 37px" |  
| style="width: 37px" | &nbsp;
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" | <br/>
| style="width: 75px" | &nbsp;
| style="width: 53px" | <br/>
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" | <br/>
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|}
|}
</div> </div>
</div>


== SPI Devices ==
== SPI Devices ==


{| style="width: 1007px" border="1" cellpadding="2" cellspacing="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 1007px"
|-
|-
| style="text-align: center" | '''#'''<br/>
| style="text-align: center" | '''#'''
| style="width: 76px; text-align: center" | '''Subsystem'''
| style="width: 76px; text-align: center" | '''Subsystem'''
| style="width: 75px" | <p style="text-align: center">'''Component&nbsp;Type'''</p>
| style="width: 75px" | <p style="text-align: center">'''Component&nbsp;Type'''</p>  
| style="width: 53px; text-align: center" | '''Model #'''
| style="width: 53px; text-align: center" | '''Model #'''
| style="width: 205px; text-align: center" | '''Description&nbsp;(brief)'''
| style="width: 205px; text-align: center" | '''Description&nbsp;(brief)'''
| style="width: 241px; text-align: center" | '''Operation'''<br/>
| style="width: 241px; text-align: center" | '''Operation'''
| style="width: 112px; text-align: center" | '''Notes'''<br/>
| style="width: 112px; text-align: center" | '''Notes'''
|-
|-
|  
| &nbsp;
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" |  
| style="width: 75px" | &nbsp;
| style="width: 53px" |  
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" |  
| style="width: 241px" | &nbsp;
| style="width: 112px" | <br/>
| style="width: 112px" | &nbsp;
|-
|-
| <br/>
| &nbsp;
| style="width: 76px" | <br/>
| style="width: 76px" | &nbsp;
| style="width: 75px" | <br/>
| style="width: 75px" | &nbsp;
| style="width: 53px" | &nbsp;
| style="width: 53px" | &nbsp;
| style="width: 205px" | <br/>
| style="width: 205px" | &nbsp;
| style="width: 241px" | <br/>
| style="width: 241px" | &nbsp;
|}
|}


== USB Host Ports ==
== USB Host Ports ==


{| style="width: 1007px" border="1" cellpadding="2" cellspacing="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 1007px"
|-
|-
| style="text-align: center" | '''Address'''<br/>
| style="text-align: center" | '''Address'''
| style="width: 76px; text-align: center" | '''Subsystem'''
| style="width: 76px; text-align: center" | '''Subsystem'''
| style="width: 75px" | <p style="text-align: center">'''Component&nbsp;Type'''</p>
| style="width: 75px" | <p style="text-align: center">'''Component&nbsp;Type'''</p>  
| style="width: 53px; text-align: center" | '''Model #'''
| style="width: 53px; text-align: center" | '''Model #'''
| style="width: 205px; text-align: center" | '''Description&nbsp;(brief)'''
| style="width: 205px; text-align: center" | '''Description&nbsp;(brief)'''
| style="width: 241px; text-align: center" | '''Operation'''<br/>
| style="width: 241px; text-align: center" | '''Operation'''
| style="width: 112px; text-align: center" | '''Notes'''
| style="width: 112px; text-align: center" | '''Notes'''
|-
|-
| 0
| 0
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" |  
| style="width: 75px" | &nbsp;
| style="width: 53px" |  
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" |  
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|-
|-
| 1
| 1
| style="width: 76px" |  
| style="width: 76px" | &nbsp;
| style="width: 75px" |  
| style="width: 75px" | &nbsp;
| style="width: 53px" |  
| style="width: 53px" | &nbsp;
| style="width: 205px" |  
| style="width: 205px" | &nbsp;
| style="width: 241px" |  
| style="width: 241px" | &nbsp;
| style="width: 112px" |  
| style="width: 112px" | &nbsp;
|}
|}
<div class="mw-parser-output"><div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
== Pneumatics Control Modules ==


== Pneumatics Control Module ==
{| style="width: 931px" cellspacing="1" cellpadding="2" border="1"
 
{| border="1" cellpadding="2" cellspacing="1" style="width: 931px"
|-
|-
| '''#'''
| style="width: 8px" | '''ID'''
| style="width: 1px" | '''#'''
| style="text-align: center" | '''Subsystem'''
| style="text-align: center" | '''Subsystem'''
| style="width: 75px" | <p style="text-align: center">'''Solenoid is Double or Single?'''</p>  
| style="width: 75px" | <p style="text-align: center">'''Solenoid is Double or Single?'''</p>  
| style="width: 64px;" | <p style="text-align: center">'''Solenoid'''</p> <p style="text-align: center">'''Model #'''</p>  
| style="width: 64px" | <p style="text-align: center">'''Solenoid'''</p> <p style="text-align: center">'''Model #'''</p>  
| style="width: 183px;" | <p style="text-align: center">'''Description'''</p> <p style="text-align: center">'''(brief)'''</p>  
| style="width: 183px" | <p style="text-align: center">'''Description'''</p> <p style="text-align: center">'''(brief)'''</p>  
| style="width: 290px; text-align: center" | '''Operation'''
| style="width: 290px; text-align: center" | '''Operation'''
| style="width: 118px; text-align: center" | '''Circuit Pressure'''
| style="width: 118px; text-align: center" | '''Circuit Pressure'''
| style="width: 118px; text-align: center" | '''Notes'''
| style="width: 118px; text-align: center" | '''PDB #'''
|-
| rowspan="8" style="width: 8px" | 1
| style="width: 1px" | 0
| colspan="1" rowspan="2" | Hatch
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px" | Hold hatch
| style="width: 290px" | Extends cylinder to raise hook
| colspan="1" rowspan="2" style="width: 118px" | 50
| rowspan="8" style="width: 118px" | N/A (dedicated PCM terminal)
|-
| style="width: 1px" | 1
| style="width: 183px" | Allow hatch to release
| style="width: 290px" | Retract cylinder to lower hook
|-
| style="width: 1px" | 2
| colspan="1" rowspan="2" | Cargo
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px" | Enables cargo mechanism
| style="width: 290px" | Extends cargo cylinders (2) to extend cargo mechism to usable position
| colspan="1" rowspan="2" style="width: 118px" | 50
|-
| style="width: 1px" | 3
| style="width: 183px" | Store cargo, enable hatch
| style="width: 290px" | Retracts cargo cylinders (2) to store cargo mechanism out of way of hatch mechanism
|-
|-
| 0
| style="width: 1px" | 4
| colspan="1" rowspan="2" | Intake
| colspan="1" rowspan="2" | Elevator
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px;" | Raise intake
| style="width: 183px" | Lowers elevator to inside robot frame
| style="width: 290px" | Extends cylinder to raise intake
| style="width: 290px" | Extends cylinder to lower entire elevator
| colspan="1" rowspan="2" style="width: 118px" | 60 PSI
| colspan="1" rowspan="2" style="width: 118px" | 50
| style="width: 118px" | B
|-
|-
| 1
| style="width: 1px" | 5
| style="width: 183px;" | Lower intake
| style="width: 183px" | Raises elevator to usable position
| style="width: 290px" | Retracts cylinder to lower intake
| style="width: 290px" | Retracts cylinder to raise elevator to usable position for game piece
| style="width: 118px" | A
|-
|-
| 2
| style="width: 1px" | 6
| colspan="1" rowspan="2" | Brake (Arm)
| colspan="1" rowspan="2" | Elevator
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px;" | Disengage brake on arm pivot. Does not actually pass air (block output)
| style="width: 183px" | Engage brake
| style="width: 290px" | Extends cylinder to disengage brake
| style="width: 290px" | Extends cylinder to engage elevator brake
| colspan="1" rowspan="2" style="width: 118px" | 60 PSI
| colspan="1" rowspan="2" style="width: 118px" | 50
| style="width: 118px" | A
|-
|-
| 3
| style="width: 1px" | 7
| style="width: 183px;" | Engage brake on arm pivot
| style="width: 183px" | Release brake
| style="width: 290px" | Retracts cylinder to engage brake
| style="width: 290px" | Retracts cylinder to release elevator brake
| style="width: 118px" | B
|-
|-
| 4
| colspan="1" rowspan="6" style="width: 8px" | 2
| colspan="1" rowspan="2" | Hand (Arm)
| style="width: 1px" | 0
| colspan="1" rowspan="2" | Habitat
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px;" |  
| style="width: 183px" | Lift front of robot
Release hand's grip on cube
| style="width: 290px" | Extends cylinders (2) to lift front end of robot
 
| colspan="1" rowspan="2" style="width: 118px" | 50
Does not actually pass air (block output)
| colspan="1" rowspan="6" style="width: 118px" | 8
 
| style="width: 290px" | Removes air pressure from cylinder to "relax" grip on cube
| colspan="1" rowspan="2" style="width: 118px" | &nbsp;?? PSI
| style="width: 118px" | B
|-
|-
| 5
| style="width: 1px" | 1
| style="width: 183px;" | Tighten hand grip on cube
| style="width: 183px" | Lower front of robot
| style="width: 290px" | Retracts cylinder to "close" hand
| style="width: 290px" | Retracts cylinders (2) to lower front end of robot
| style="width: 118px" | A
|-
|-
| 6
| style="width: 1px" | 2
| colspan="1" rowspan="2" | Ramp
| colspan="1" rowspan="2" | Habitat
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 75px" | Double
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px;" | Allows ramps to deploy to ground
| style="width: 183px" | Lift rear of robot
| style="width: 290px" | Retracts cylinder to release ramps to ground
| style="width: 290px" | Extends cylinders (2) to lift back end of robot
| colspan="1" rowspan="2" style="width: 118px" | 60 PSI
| colspan="1" rowspan="2" style="width: 118px" | 50
| style="width: 118px" | B
|-
| style="width: 1px" | 3
| style="width: 183px" | Lower rear of robot
| style="width: 290px" | Retracts cylinders (2) to lower back end of robot
|-
|-
| 7
| style="width: 1px" | 4
| style="width: 183px;" | Holds ramps in stored position
| colspan="1" rowspan="2" | Elevator
| style="width: 290px" | Extends cylinder to hold ramps in up position
| colspan="1" rowspan="2" style="width: 75px" |
| style="width: 118px" | A
Double-RB1
 
Single -RB2
 
| colspan="1" rowspan="2" style="width: 64px" | SY3240-6LZ
| style="width: 183px" | Return paracord to its normal length
| style="width: 290px" | Extends cylinder to legthen rope
| colspan="1" rowspan="2" style="width: 118px" | 50
|-
| style="width: 1px" | 5
| style="width: 183px" | Shorten paracord to lift carriage more
| style="width: 290px" | Retract cylinder to lift carriage
|}
|}
<div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div></div>


= Operator Controls =
= Operator Controls =
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
=== Controller 1 - Primary Driver ===
=== Controller 1 - Primary Driver ===


{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
|-
|-
| style="width: 92px;" | '''&nbsp;Button/Axis #'''
| style="width: 92px" | '''&nbsp;Button/Axis #'''
| style="width: 414px;" | '''Action/Button'''
| style="width: 414px" | '''Action/Button'''
| '''Description'''
| '''Description'''
| '''Details'''
| '''Details'''
|-
|-
| style="width: 92px; text-align: center;" | A-1
| style="width: 92px; text-align: center" | A-1
| style="width: 414px;" | Left Joystick Y
| style="width: 414px" | Left Joystick Y
| Drive Forward/Back
| Forward/backward drive
|  
| &nbsp;
Up drive the robot forward (Intake side)<br/> Down drives the robot backward
|-
 
| style="width: 92px; text-align: center" | A-1
NOTE: will do the opposite if swap drive is toggled
| style="width: 414px" | Left Joystick X
 
| &nbsp;
| &nbsp;
|-
|-
| style="width: 92px; text-align: center;" | A-1
| style="width: 92px; text-align: center" | A-4
| style="width: 414px;" | Left Joystick X
| style="width: 414px" | Right Joystick Y
| Nothing
| &nbsp;
| &nbsp;
| &nbsp;
|-
|-
| style="width: 92px; text-align: center;" | A-4
| style="width: 92px; text-align: center" | A-4
| style="width: 414px;" | Right Joystick Y
| style="width: 414px" | Right Joystick X
| Nothing
| Left/right steering/pivot
| &nbsp;
| &nbsp;
|-
|-
| style="width: 92px; text-align: center;" | A-4
| style="width: 92px; text-align: center" | B-6
| style="width: 414px;" | Right Joystick X
| style="width: 414px" | Right Bumper
| Turn Left/Right
| Slow on right side
|  
| &nbsp;
Right will turn the robot clockwise and vice<br/> versa. With no input from the left Joytick,<br/> does point turn. With input from left, does<br/> curve turn
 
NOTE: will do the opposite if swap drive is toggled
 
|-
|-
| style="width: 92px; text-align: center;" | B-6
| style="width: 92px; text-align: center" | B-5
| style="width: 414px;" | Right Bumper
| style="width: 414px" | Left Bumper
| Slow
| Slow on left side
| decreases the range of power to the<br/> motors by a set amount
| &nbsp;
|-
|-
| style="width: 92px; text-align: center;" | B-5
| style="width: 92px; text-align: center" | A-3
| style="width: 414px;" | Right Bumper
| style="width: 414px" | Right Trigger
| Nothing
| Fast on right side (binary)
| &nbsp;
| &nbsp;
|-
|-
| style="width: 92px; text-align: center;" | A-3
| style="width: 92px; text-align: center" | A-2
| style="width: 414px;" | Right Trigger
| style="width: 414px" | Left Trigger
| Turbo
| Fast on left (binary)
| Increases the range of power to the motors by a set amount.
| &nbsp;
|-
|-
| style="width: 92px; text-align: center;" | A-2
| style="width: 92px; text-align: center" | B-1
| style="width: 414px;" | Left Trigger
| style="width: 414px" | A Button
| Swap Drive
| Swap Drive
|  
| &nbsp;
Switches the front and back of the robot.
|-
 
| style="width: 92px; text-align: center" | B-3
Press to toggle.
| style="width: 414px" | X Button
 
| Switch camera view
| &nbsp;
|-
| style="width: 92px; text-align: center" | B-4
| style="width: 414px" | Y Button
| Calibrate Gyro
| &nbsp;
|-
| style="width: 92px; text-align: center" | B-2
| style="width: 414px" | B Button
| Slow Mode Toggle
| &nbsp;
|}
|}
 
</div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
=== Controller 2 - Aux Driver ===
=== Controller 2 - Aux Driver ===


{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
{| style="width: 908px" cellspacing="1" cellpadding="2" border="1"
|-
|-
| style="text-align: center; width: 91px" | '''Button/Axis #'''
| style="text-align: center; width: 91px" | '''Button/Axis #'''
| style="width: 379px" | '''Action/Button'''
| style="width: 286px" | '''Action/Button'''
| '''Description'''
| style="width: 343px" | '''Description'''
| '''Details'''
| '''Details'''
|-
|-
| style="text-align: center; width: 91px" | A-5
| style="text-align: center; width: 91px" | A-1
| style="width: 379px" | Right Joystick Y
| style="width: 286px" | Elevator Manual Control
| Fine Arm Control
| style="width: 343px" |  
|  
If in hab mode:
Up - towards front


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


Only moves arm and intake,&nbsp;when not in moving to a preset.
If not in carirage mode:


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


When broken switches 1 is flipped, the arm will not stop at the front of the robot&nbsp;automatically. The driver is responsible for stopping the arm by letting go of the joystick.
If in carriage mode:


When broken switches 2 is&nbsp;flipped, the arm will not stop at the back&nbsp;of the robot&nbsp;automatically. The driver is responsible for stopping the arm by letting go of the joystick.
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
|-
|-
| style="width: 91px; text-align: center" | B-5
| style="width: 91px; text-align: center" | B-1
| style="width: 379px" | Left Bumper
| style="width: 286px" | Elevator High Rocket position
| Raise Right Ramp
| style="width: 343px" | Move elevator to high rocket height.&nbsp; Height adjusts depending on the cargo or hatch mode
|  
| Press only
Press and Hold
|-
 
| style="width: 91px; text-align: center" | B-2
If button is let go, then the ramp&nbsp;will stop in place.
| style="width: 286px" | Elevator Middle Rocket position
 
| style="width: 343px" | Move elevator to middle rocket height.&nbsp; Height adjusts depending on the cargo or hatch mode
If broken switch 5&nbsp;is flipped, the ramp will not auto-stop when at top. Driver is responsible for stopping.
| Press only
 
|-
|-
| style="width: 91px; text-align: center" | B-6
| style="width: 91px; text-align: center" | B-3
| style="width: 379px" | Right Bumper
| style="width: 286px" | Elevator Low Rocket position
| Raise Left Ramp
| style="width: 343px" | Move elevator to low rocket height.&nbsp; Height adjusts depending on the cargo or hatch mode
|  
| Press only
Press and Hold
 
If button is let go, then the ramp&nbsp;will stop in place.
 
If broken switch 4&nbsp;is flipped, the ramp will not auto-stop when at top. Driver is responsible for stopping.
 
|-
|-
| style="width: 91px; text-align: center" | A-3
| style="width: 91px; text-align: center" | B-4
| style="width: 379px" | Right Trigger
| style="width: 286px" | Elevator Pivot Toggle
| Intake
| style="width: 343px" | 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
Press and Hold
 
Will auto-stop when cube is all the way in.
 
If broken switch 6&nbsp;is flipped, the intake will not auto-stop when cube is fully in.
 
|-
|-
| style="width: 91px; text-align: center" | A-2
| style="width: 91px; text-align: center" | B-5
| style="width: 379px" | Left Trigger
| style="width: 286px" | Elevator Loading Station and/or Cargo ship position
| Outtake
| style="width: 343px" | Move elevator to loading station/cargo ship height.&nbsp; Height adjusts depending on the cargo or hatch mode
| Press and Hold
| Press only
|-
|-
| style="width: 91px; text-align: center" | POV-0
| style="width: 91px; text-align: center" | B-6
| style="width: 379px" | Dpad Up
| style="width: 286px" | Elevator Ground&nbsp; Position
| Moves Intake Up
| style="width: 343px" | Move elevator to ground pick up position. Only works in cargo mode.&nbsp;
|  
| Press only
When broken switch 1 is flipped, this moves the intake up.
 
|-
|-
| style="width: 91px; text-align: center" | POV-180
| style="width: 91px; text-align: center" | B-7
| style="width: 379px" | Dpad Down
| style="width: 286px" | Intake
| Moves Intake Down
| style="width: 343px" | Intake game piece.&nbsp;Hatch or cargo depending on which mode it's in. Hold for continued operation of cargo
| When broken switch 1 is flipped, this moves the intake down
| Press / press & hold
|-
|-
| style="width: 91px; text-align: center" | B-4
| style="width: 91px; text-align: center" | B-8
| style="width: 379px" | Y button
| style="width: 286px" | Outtake
| Arm to Intake Level Front&nbsp; (Preset position)
| style="width: 343px" | Ejects game piece. Hatch or cargo depending on which mode it's in. Hold for continued operation of cargo
|  
| Press / press & hold
Press, and release, to move arm and intake there automatically.
 
When broken switch 1 is flipped, the presets do not work.
 
|-
|-
| style="width: 91px; text-align: center" | B-1
| style="width: 91px; text-align: center" | B-9
| style="width: 379px" | A button
| style="width: 286px" | Hab Manual climb - step 2
| Arm to&nbsp; Exchange Level Back (Preset position)
| style="width: 343px" | On the first press extend back cylinder, when pressed after that retract back cylinders
|  
| Press only
Press, and release, to move arm and intake there automatically.
 
When broken switch 1 is flipped, the presets do not work.
 
|-
|-
| style="width: 91px; text-align: center" | B-2
| style="width: 91px; text-align: center" | B-10
| style="width: 379px" | B button
| style="width: 286px" | Hab Manual climb - step 1
| Arm to Switch Back (Preset position)
| style="width: 343px" | Extends the front 2 cylinders
|  
| Press only
Press, and release,&nbsp;to move arm and intake there automatically.
 
When broken switch 1 is flipped, the presets do not work.
 
|-
|-
| style="width: 91px; text-align: center" | B-3
| style="width: 91px; text-align: center" | B-11
| style="width: 379px" | X button
| style="width: 286px" | Hab Manual climb - step 3
| Arm to Switch Front (Preset position)
| style="width: 343px" | Retracts the rear cylinders to complete the climb
|  
| Press only
Press, and release, to move arm and intake there automatically.
 
When broken switch 1&nbsp;is flipped, the presets do not work.
 
|-
|-
| style="width: 91px; text-align: center" | B-7 + B-8
| style="width: 91px; text-align: center" | B-12
| style="width: 379px" | Start + Select
| style="width: 286px" | Hab auto climb
| Deploy Ramps
| style="width: 343px" |  
|  
Begin and continue automatic Hab climbing. Let go to stop. Press again to continue where you left off.
Press, and release,&nbsp;both at same time to lower ramps.


Lowers all parts of the ramp.&nbsp;
Does nothing if elevator is not pivoted down.


| Press and Hold
|}
|}
=== Broken Switches ===


{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
'''Controller 2 - Aux Driver (Continued)&nbsp;'''
 
{| style="width: 907px" cellspacing="1" cellpadding="1" border="1"
|-
| style="width: 92px" | '''&nbsp;Button/Axis #'''
| style="width: 112px" | '''&nbsp;Action/Button'''
| style="width: 521px" | &nbsp;'''Description'''
| style="width: 158px" | '''Details'''
|-
| style="width: 92px;  text-align: center" | B-1
| style="width: 112px" | Game piece mode - Cargo
| style="width: 521px" | &nbsp;Change game piece system to cargo mode
| style="width: 158px" | Press only
|-
| style="width: 92px;  text-align: center" | B-2
| style="width: 112px" | Game piece mode - Hatch
| style="width: 521px" | &nbsp;Change game piece system to hatch mode
| style="width: 158px" | Press only
|-
| style="width: 92px;  text-align: center" | B-3
| style="width: 112px" | HAB Sensor Broken
| style="width: 521px" | Makes HAB ignore sensor input
| style="width: 158px" | Toggle
|-
| style="width: 92px;  text-align: center" | B-4
| style="width: 112px" | Elevator encoder broken
| style="width: 521px" | Makes elevator ignore encoder input
| style="width: 158px" | Toggle
|-
|-
| '''Switch'''
| style="width: 92px;  text-align: center" | B-5
| '''Description'''
| style="width: 112px" | Hatch Sensor Broken
| '''Details'''
| style="width: 521px" | Makes hatch ignore sensor input
| style="width: 158px" | Toggle
|-
|-
| Broken Switch1
| style="width: 92px;  text-align: center" | B-6
| Arm/Intake Movement
| style="width: 112px" | HAB enable
|  
| style="width: 521px" |  
None of the presets work.
Only enable HAB when pressed to avoid preemptively deploying
 
Intake doesn't move in and out with the arm automatically


| style="width: 158px" | Toggle
|-
| style="width: 92px;  text-align: center" | B-7
| style="width: 112px" | Elevator Carriage Broken
| style="width: 521px" | 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
| style="width: 158px" | Toggle
|-
|-
| Broken Switch2
| style="width: 92px;  text-align: center" | B-8
| Arm Front Limit Switch
| style="width: 112px" | Broken Switch 6
| Arm won't auto-stop when going towards the front.
| style="width: 521px" | &nbsp;
| style="width: 158px" | Press only
|-
|-
| Broken Switch3
| style="width: 92px;  text-align: center" | B-9
| Arm Back Limit Switch
| style="width: 112px" | &nbsp;
| Arm won't auto-stop when going towards the back.
| style="width: 521px" | &nbsp;
| style="width: 158px" | &nbsp;
|-
|-
| Broken Switch4
| style="width: 92px;  text-align: center" | B-10
| Ramp Left Lift
| style="width: 112px" | &nbsp;
| Left Ramp doesnt auto-stop when at top.
| style="width: 521px" | &nbsp;
| style="width: 158px" | &nbsp;
|-
|-
| Broken Switch5
| style="width: 92px;  text-align: center" | B-11
| Ramp Right Lift
| style="width: 112px" | &nbsp;
| Right Ramp doesn't auto-stop when at top.
| style="width: 521px" | &nbsp;
| style="width: 158px" | &nbsp;
|-
|-
| Broken Switch6
| style="width: 92px;  text-align: center" | B-12
| Cube Sensor
| style="width: 112px" | &nbsp;
| Cube sensor broken - intake/hand doesn't auto-stop when cube is fully in.
| style="width: 521px" | &nbsp;
| style="width: 158px" | &nbsp;
|}
|}
</div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div> </div> </div> </div></div> <div class="mw-parser-output">&nbsp;</div> </div></div></div></div> <div class="mw-parser-output">&nbsp;</div> </div>
=== Dashboard ===
=== Dashboard ===


{| border="1" cellpadding="2" cellspacing="1" style="width: 0px;"
{| border="1" cellpadding="2" cellspacing="1" style="width: 0px"
|-
|-
| '''Feature'''
| style="width: 600px;" | '''Control'''
| '''Key'''
| '''Key'''
| '''Data Type'''
| '''Value'''
| '''Value'''
| style="width: 600px" | '''Description'''
|-
|-
| Have Cube
| thunderdashboard_elevator
| The background areas of the dashboard will be green when there is a cube
| number
| thunderdashboard_green
| 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
| &nbsp;e.g. Hatch 1, Cargo 2, Loading Station
| the 'name' of the location the elevator is trying to reach
|-
| gamepiece_mode
| string
|  
|  
0 - do not have a cube
hatch


1 - have a cube
cargo


|-
|  
| Arm position
The game piece "mode" the robot thinks it is in. This impacts the elevator positions.
| A horizontal meter/gauge that shows the arm's position.
An empty gauge means the arm is all the way down in the back.


A full gauge means the arm is all the way down in the front .
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".


| thunderdashboard_armpos
|-
| gamepiece_target_mode
| string
|  
|  
number ranging from 0 to 100
hatch


0 means arm is all the way down on the back
cargo


50 means arm is point straight up
|
 
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?
100 means arm is all the way down on the front


|-
|-
| Intake position
| thunderdashboard_green
| A panel that will be yellow when intake is up/in.
| number
| thunderdashboard_intake
|  
|  
0 - intake is up/in
0 - do NOT have a game piece


1 - intake is down/out
1 - have a game piece


| Background of dashboard goes green.
|-
|-
| Gyro cal
| 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.&nbsp;
|-
| thunderdashboard_airpressure_lower
| number
|  
|  
The background areas of the dashboard will be red when the gyro is in the middle of its calibration.
something 0-125


Helps to inform drivers to not touch the robot while calibrating,
| threshold between red and yellow
 
|-
| thunderdashboard_gyro
| 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&nbsp;
|-
| pi_connected
| number
|  
|  
0 - not calibrating
0 - NOT connected


1 - in middle of calibration
1 - connected


|-
| Auto Wait Time
|  
|  
Number input box next to Autonomous mode dropdown to indicate how many seconds to wait before executing the selected auto mode.
Raspberry Pi connection status


Default value is zero, If auto mode is changed, do NOT change value.
Only will update with a clean shutdown - will not get unset with a sudden power loss


<span style="color:#c0392b;">NOTE: if value already in NetTables, the dasboard may not overright it. This can happen if&nbsp;robot is running before Dashboard starts, and value was set previously. Auto mode dropdown border (and list background) will be yellow if&nbsp;delay is not zero; to assist drivers in knowing it is non-zero.</span>
|-
 
| thunderdashboard_max
&nbsp;
| number
 
| thunderdashboard_auto_start_delay
|  
|  
Number of seconds to wait before executing auto mode
0 = show normal


<span style="color:#c0392b;">NOTE: up to two digits</span>
1 = fill screen


&nbsp;
| fills screen or not
|-
| thunderdashboard_match_period_length
| number
| 0-135
| number of total seconds in the current match period
|}


|}
</div> </div> </div> </div> </div> </div> </div></div> </div> </div> </div>
</div>


= IO Maps for Old Robots =
= IO Maps for Old Robots =


*[[2018:Robot IO Map|2018&nbsp;IO Map]]
*[[2018:Robot_IO_Map|2018&nbsp;IO Map]]  
*[[2017:Robot IO Map|2017&nbsp;IO Map]]
*[[2017:Robot_IO_Map|2017&nbsp;IO Map]]  
*[[2016:Robot IO Map|2016&nbsp;IO Map]]
*[[2016:Robot_IO_Map|2016&nbsp;IO Map]]  
*[[2015:Robot IO Map|2015&nbsp;IO Map]]
*[[2015:Robot_IO_Map|2015&nbsp;IO Map]]  
*[[2014:Robot IO Map|2014 IO Map]]
*[[2014:Robot_IO_Map|2014 IO Map]]  
*[[2013:Robot IO Map|2013 IO Map]]
*[[2013:Robot_IO_Map|2013 IO Map]]  
*[[2012:Robot IO Map|2012 IO Map]]
*[[2012:Robot_IO_Map|2012 IO Map]]  
*[[2011:Robot IO Map|2011 Thunderous Prime IO Map]]
*[[2011:Robot_IO_Map|2011 Thunderous Prime IO Map]]  
*[[2010:Electrical Main#IO Map 2010 Thunderfoot|2010 Thunderfoot IO Map]]
*[[2010:Electrical_Main#IO_Map_2010_Thunderfoot|2010 Thunderfoot IO Map]]  
*[[2009:IO Map|2009 Thunderplucker]]
*[[2009:IO_Map|2009 Thunderplucker]]  
*[[IO Pin Maps for Pre-2009 Robots]]
*[[IO_Pin_Maps_for_Pre-2009_Robots|IO Pin Maps for Pre-2009 Robots]]  
</div> </div> </div>

Latest revision as of 15:10, 21 February 2019

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 Cargo Talon-SRX 775 Pro Brake

Intakes or expels cargo.

Left half motor

(+) = intake cargo

(-) = expel cargo

30 11
3 Cargo Talon SRX 775 Pro Brake

Intakes or expels cargo

Right half motor

(+) = intake cargo

(-) = expel cargo

30 4
4 Elevator Talon SRX 775 Pro Brake

Moves elevator up/down.

Primary motor "A"/Left

(+) = elevator up

(-) = elevator down

Vex encoder feeds direct to talon

40 12
5 Elevator Talon SRX 775 Pro Brake

Moves elevator up/down

Secondary motor "B"/Right

(+) = elevator up

(-) = elevator down

40 3
6 Hab Talon SRX 775 Pro Brake

Drive "back legs"

Primary motor; left"leg"

(+) = move foward

(-) = move reverse

40 15
7 Hab Victor SPX 775 Pro Brake

Drive "back legs"

Secondary motor; right"leg"

(+) = move foward

(-) = move reverse

40 0
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 Drivetrain SPARK CIM

Left front drive motor

+ Moves left side of robot forward

- Moves left side of robot reverts

Don't know 40 2
Drivetrain SPARK CIM Left rear drive motor   Don't know 40 14
1 Drivetrain SPARK CIM Right front drive motor

+ Moves left side of robot forward

- Moves left side of robot reverts

Don't know 40 1
Drivetrain SPARK CIM Right reardrive motor   Don't know 40 13
2 Camera Servo   Changes camera angle +moves sevro up, - moves sevro down N/A    
3                
4                
5                
6                
7                
8                
9                

Relay Outputs

ID Subsystem

Component

Type

Model # Description
(brief)
Operation Notes
0 Pnuematics Spike   Controls the compressor forward = compressor on. dont use reverse 20 amp breaker, pdb 8
1            
2            
3            

Analog IO

RoboRIO Analog Inputs

ID Subsystem

Component

Type

Model # Description
(brief)
Operation

Voltage

Range

Notes
0 Pnuematics Pressure guage REV-11-1107 Senses amount of pressure we have To know if we can actually do HAB    
1 Hab Left Front Extended Bimba MRS-.087-PBL-17 senses when the front left cylinder is extended Low = cylinder extended

High = cylinder not extended

2 Hab Left Rear Extended Bimba MRS-.087-PBL-17 senses when the rear left cylinder is extended Low = cylinder extended

High = cylinder not extended

3 Hab Left front cylinder retracted Bimba MRS-.087-PBL-17 senses when the front left cylinder is retracted Low = cylinder retracted

High = cylinder not retracted

More Board Analog Inputs

ID Subsystem

Component

Type

Model # Description
(brief)
Operation

Voltage

Range

Notes
0 Hab Right Front Extended Bimba MRS-.087-PBL-17 senses when the front Right cylinder is extended Low = cylinder extended

High = cylinder not extended

1 Hab Right Rear Extended Bimba MRS-.087-PBL-17 senses when the rear Right cylinder is extended Low = cylinder extended

High = cylinder not extended

2 Hab Right front cylinder retracted Bimba MRS-.087-PBL-17 senses when the front Right cylinder is retracted Low = cylinder retracted

High = cylinder not retracted

3 Game piece Sense when the cargo arms in hatch configuration Bimba MRS-.087-PBL-17 Senses when the cargo arms are fully open and out of the way

0 = arm open, cylinder retracted

1 = arm not open, pls dont hit wall

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