2018:Robot IO Map: Difference between revisions

From 1511Wookiee
Jump to navigationJump to search
No edit summary
No edit summary
 
(73 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= 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">
== CAN ID Assignments ==
== CAN ID Assignments ==


{| border="1" cellpadding="2" cellspacing="1" style="width: 855px;"
{| border="1" cellpadding="2" cellspacing="1" style="width: 855px"
|-
|-
| style="text-align: center" | '''ID'''
| style="text-align: center" | '''ID'''
Line 12: Line 18:
| style="width: 210px; text-align: center" | '''Description'''<br/> (brief)
| style="width: 210px; text-align: center" | '''Description'''<br/> (brief)
| style="width: 224px; text-align: center" | '''Operation'''
| style="width: 224px; text-align: center" | '''Operation'''
| colspan="2" rowspan="1" style="width: 175px; text-align: center;" |  
| colspan="2" rowspan="1" style="width: 175px; text-align: center" |  
'''Notes'''
'''Notes'''


Line 25: Line 31:
| style="width: 224px; text-align: center" | monitor PD
| 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;
|-
|-
| style="text-align: center" | 1
| style="text-align: center" | 1
Line 34: Line 40:
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 115px; text-align: center" | don't use
| style="width: 115px; text-align: center" | don't use
| style="width: 55px; text-align: center;" | &nbsp;
| style="width: 55px; text-align: center" | &nbsp;
|-
|-
| style="text-align: center" | 2
| style="text-align: center" | 2
Line 42: Line 48:
| style="width: 210px; text-align: center" | left
| style="width: 210px; text-align: center" | left
| style="width: 224px; text-align: center" | Intake cube to hand (+) eject cube (-)
| style="width: 224px; text-align: center" | Intake cube to hand (+) eject cube (-)
| style="width: 115px; text-align: center" | 30 A ?
| style="width: 115px; text-align: center" | 30 A
| style="width: 55px; text-align: center;" | 6
| style="width: 55px; text-align: center" | 8
|-
|-
| style="text-align: center" | 3
| style="text-align: center" | 3
Line 51: Line 57:
| style="width: 210px; text-align: center" | right
| style="width: 210px; text-align: center" | right
| style="width: 224px; text-align: center" | Intake cube to hand (+) eject cube (-)
| style="width: 224px; text-align: center" | Intake cube to hand (+) eject cube (-)
| style="width: 115px; text-align: center" | 30 A ?
| style="width: 115px; text-align: center" | 30 A
| style="width: 55px; text-align: center;" | 7
| style="width: 55px; text-align: center" | 7
|-
|-
| style="text-align: center" | 4
| style="text-align: center" | 4
Line 60: Line 66:
| style="width: 210px; text-align: center" | moves arm&nbsp;&nbsp;
| style="width: 210px; text-align: center" | moves arm&nbsp;&nbsp;
| style="width: 224px; text-align: center" | moves from arm front (+) to back (-)
| style="width: 224px; text-align: center" | moves from arm front (+) to back (-)
| style="width: 115px; text-align: center" | 30 A ?
| style="width: 115px; text-align: center" | 30 A
| style="width: 55px; text-align: center;" | 5
| style="width: 55px; text-align: center" | 9
|-
|-
| style="text-align: center" | 5
| style="text-align: center" | 5
Line 69: Line 75:
| style="width: 210px; text-align: center" | &nbsp; &nbsp; &nbsp; &nbsp;hold and eject the cube
| style="width: 210px; text-align: center" | &nbsp; &nbsp; &nbsp; &nbsp;hold and eject the cube
| style="width: 224px; text-align: center" | rollers intake (+) eject the cube (-)
| style="width: 224px; text-align: center" | rollers intake (+) eject the cube (-)
| style="width: 115px; text-align: center" | 30 A ?
| style="width: 115px; text-align: center" | 30 A
| style="width: 55px; text-align: center;" | 4
| style="width: 55px; text-align: center" | 6
|-
|-
| style="text-align: center" | 6
| style="text-align: center" | 6
| style="text-align: center" | &nbsp;
| style="text-align: center" | Left lift
| style="text-align: center" | &nbsp;
| style="text-align: center" | RS 775
| style="text-align: center" | &nbsp;
| style="text-align: center" | Talon SRX
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | raises the left lift
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" |  
| style="width: 115px; text-align: center" | &nbsp;
raise lift (+)
| style="width: 55px; text-align: center;" | &nbsp;
 
<span style="background-color:#ffff66;">Vex encoder feeds direct to talon</span>
 
| style="width: 115px; text-align: center" | 30 A
| style="width: 55px; text-align: center" | 13
|-
|-
| style="text-align: center" | 7
| style="text-align: center" | 7
| style="text-align: center" | &nbsp;
| style="text-align: center" | Right lift
| style="text-align: center" | &nbsp;
| style="text-align: center" | RS 775
| style="text-align: center" | &nbsp;
| style="text-align: center" | Talon SRX
| style="width: 210px; text-align: center" | &nbsp;
| style="width: 210px; text-align: center" | raises the right lift
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" |  
| style="width: 115px; text-align: center" | &nbsp;
Raise lift&nbsp;(+)
| style="width: 55px; text-align: center;" | &nbsp;
 
<span style="background-color:#ffff66;">Vex encoder feeds direct to talon</span>
 
| style="width: 115px; text-align: center" | 40 A
| style="width: 55px; text-align: center" | 12
|-
|-
| style="text-align: center" | 8
| style="text-align: center" | 8
Line 97: Line 111:
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &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;
|-
|-
| style="text-align: center" | 9
| style="text-align: center" | 9
Line 106: Line 120:
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &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;
|-
|-
| style="text-align: center" | 10
| style="text-align: center" | 10
Line 115: Line 129:
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &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;
|-
|-
| style="text-align: center" | 11
| style="text-align: center" | 11
Line 124: Line 138:
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &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;
|-
|-
| 12
| 12
Line 133: Line 147:
| style="width: 224px; text-align: center" | &nbsp;
| style="width: 224px; text-align: center" | &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;
|-
|-
| 13
| 13
Line 142: Line 156:
| 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;
| &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;
| &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;
|}
|}
</div>
</div>
<div class="mw-parser-output">&nbsp;</div> </div></div></div> <div class="mw-parser-output">&nbsp;</div> </div></div></div>


<div class="mw-parser-output">
== PWM Outputs ==
== PWM Outputs ==


Line 202: Line 217:
| style="width: 125px; text-align: center" | 40A
| style="width: 125px; text-align: center" | 40A
| style="width: 72px; text-align: center" | 1
| style="width: 72px; text-align: center" | 1
|-
| 0
| style="width: 82px" | DriveBase
| style="width: 76px" | CIM
| style="width: 54px" | &nbsp;
| style="width: 170px" | SPARK
| style="width: 280px" | Left Motor 3; +Voltage = Forwards
| style="width: 125px; text-align: center" | 40A
| style="width: 72px; text-align: center" | 2
|-
|-
| 1
| 1
Line 229: Line 235:
| style="width: 125px; text-align: center;" | 40A
| style="width: 125px; text-align: center;" | 40A
| style="width: 72px; text-align: center;" | 14
| style="width: 72px; text-align: center;" | 14
|-
| 1
| style="width: 82px" | DriveBase
| style="width: 76px" | CIM
| style="width: 54px" | &nbsp;
| style="width: 170px" | SPARK
| style="width: 280px" | Right Motor 3; +Voltage = Forwards
| style="width: 125px; text-align: center;" | 40A
| style="width: 72px; text-align: center;" | 13
|-
|-
| 2
| 2
Line 311: Line 308:
| style="width: 72px" | &nbsp;
| style="width: 72px" | &nbsp;
|}
|}
</div>
</div>
</div>


Line 358: Line 357:
|}
|}


<div class="mw-parser-output">
<div class="mw-parser-output">
== Analog IO ==
== Analog IO ==
 
<div class="mw-parser-output">
<div class="mw-parser-output">
<div class="mw-parser-output">
=== <u>RoboRIO Analog Inputs</u> ===
=== <u>RoboRIO Analog Inputs</u> ===
Line 387: Line 388:
| style="width: 91px; text-align: center;" | &nbsp;
| style="width: 91px; text-align: center;" | &nbsp;
|-
|-
| <span style="color:#c0392b;"><span style="background-color:#f1c40f;">1</span></span>
| 1
| <span style="color:#c0392b;"><span style="background-color:#f1c40f;">Drive</span></span>
| &nbsp;
| style="width: 70px" | <span style="color:#c0392b;"><span style="background-color:#f1c40f;">gyro</span></span>
| style="width: 70px" | &nbsp;
| style="width: 54px; text-align: center;" | <span style="color:#c0392b;"><span style="background-color:#f1c40f;">TBD</span></span>
| style="width: 54px; text-align: center;" | &nbsp;
| style="width: 227px" | <span style="color:#c0392b;"><span style="background-color:#f1c40f;">gyro</span></span>
| style="width: 227px" | &nbsp;
| style="width: 262px" | <span style="color:#c0392b;"><span style="background-color:#f1c40f;">telling angle and rate in auto</span></span>
| style="width: 262px" | &nbsp;
| style="width: 132px" |  
| style="width: 132px" |  
&nbsp;
&nbsp;
Line 399: Line 400:
|-
|-
| 2
| 2
| &nbsp;
| Arm
| style="width: 70px" | &nbsp;
| style="width: 70px" | pot
| style="width: 54px" | &nbsp;
| style="width: 54px" |  
| style="width: 227px" | &nbsp;
{| border="0" cellpadding="0" cellspacing="0" id="product-details" style="width: 71px;"
| style="width: 262px" | &nbsp;
|-
| style="width: 132px" | &nbsp;
| id="reportPartNumber" style="width: 67px;" | 3852A-282-103AL-ND
|}
 
| style="width: 227px" | arm position
| style="width: 262px" | arm forward (+) arm back (-)
| style="width: 132px" | 0-4 v&nbsp;?
| style="width: 91px" | &nbsp;
| style="width: 91px" | &nbsp;
|-
|-
Line 416: Line 422:
| style="width: 91px" | &nbsp;
| style="width: 91px" | &nbsp;
|}
|}
</div>
</div>
</div>


=== <u>Rev Robotics More Board Analog IO</u> ===
=== <u>Rev Robotics More Board Analog IO</u> ===


{| style="width: 1030px" border="1" cellpadding="2" cellspacing="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 1030px"
|-
|-
| '''ID'''
| '''ID'''
| style="text-align: center" | '''Subsystem'''
| style="text-align: center" | '''Subsystem'''
| style="width: 70px" | <p style="text-align: center">'''Component'''</p><p style="text-align: center">'''Type'''</p>
| 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: 54px; text-align: center" | '''Model #'''
| style="width: 227px; text-align: center" | '''Description<br/>(brief)'''
| style="width: 227px; text-align: center" | '''Description<br/> (brief)'''
| style="width: 262px; text-align: center" | '''Operation'''<br/>
| style="width: 262px; text-align: center" | '''Operation'''
| style="width: 132px; text-align: center" |  
| style="width: 132px; text-align: center" |  
'''Voltage'''
'''Voltage'''
Line 436: Line 444:
|-
|-
| AIN0
| AIN0
| <br/>
| &nbsp;
| style="width: 70px" | <br/>
| style="width: 70px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 54px" | &nbsp;
| style="width: 227px" | <br/>
| style="width: 227px" | &nbsp;
| style="width: 262px" | <br/>
| style="width: 262px" | &nbsp;
| style="width: 132px" | &nbsp;
| style="width: 132px" | &nbsp;
| style="width: 91px" |  
| style="width: 91px" | &nbsp;
|-
|-
| AIN1
| AIN1
| <br/>
| &nbsp;
| style="width: 70px" | <br/>
| style="width: 70px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 227px" |  
| style="width: 227px" | &nbsp;
| style="width: 262px" | <br/>
| style="width: 262px" | &nbsp;
| style="width: 132px" | <br/>
| style="width: 132px" | &nbsp;
| style="width: 91px" |  
| style="width: 91px" | &nbsp;
|-
|-
| AIN2
| AIN2
| <br/>
| &nbsp;
| style="width: 70px" | <br/>
| style="width: 70px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 227px" |  
| style="width: 227px" | &nbsp;
| style="width: 262px" | <br/>
| style="width: 262px" | &nbsp;
| style="width: 132px" | <br/>
| style="width: 132px" | &nbsp;
| style="width: 91px" |  
| style="width: 91px" | &nbsp;
|-
|-
| AIN3
| AIN3
| <br/>
| &nbsp;
| style="width: 70px" | <br/>
| style="width: 70px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 227px" | <br/>
| style="width: 227px" | &nbsp;
| style="width: 262px" | <br/>
| style="width: 262px" | &nbsp;
| style="width: 132px" | <br/>
| style="width: 132px" | &nbsp;
| style="width: 91px" | <br/>
| style="width: 91px" | &nbsp;
|-
|-
| AOUT0
| AOUT0
| <br/>
| &nbsp;
| style="width: 70px" | <br/>
| style="width: 70px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 227px" | <br/>
| style="width: 227px" | &nbsp;
| style="width: 262px" | <br/>
| style="width: 262px" | &nbsp;
| style="width: 132px" | <br/>
| style="width: 132px" | &nbsp;
| style="width: 91px" | <br/>
| style="width: 91px" | &nbsp;
|-
|-
| AOUT1
| AOUT1
| <br/>
| &nbsp;
| style="width: 70px" | <br/>
| style="width: 70px" | &nbsp;
| style="width: 54px" | <br/>
| style="width: 54px" | &nbsp;
| style="width: 227px" |  
| style="width: 227px" | &nbsp;
| style="width: 262px" | <br/>
| style="width: 262px" | &nbsp;
| style="width: 132px" | <br/>
| style="width: 132px" | &nbsp;
| style="width: 91px" |  
| style="width: 91px" | &nbsp;
|}
|}
<div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div>


<div class="mw-parser-output">
== 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">
<div class="mw-parser-output">
=== <u>RoboRio IO</u> ===
=== <u>RoboRio IO</u> ===


{| cellpadding="2" cellspacing="1" border="1" style="width: 998px;"
{| border="1" cellpadding="2" cellspacing="1" style="width: 1229px;"
|-
|-
| '''ID'''
| style="text-align: center;" | '''ID'''
| '''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: 73px;" | <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: 52px; text-align: center;" | '''Model #'''
| style="width: 139px; text-align: center;" | '''Model #'''
| style="width: 194px; text-align: center;" | '''Description<br/>(brief)'''
| style="width: 193px; text-align: center;" | '''Description<br/> (brief)'''
| style="width: 253px; text-align: center;" | '''Operation'''<br/>
| style="width: 223px; text-align: center;" | '''Operation'''
| style="width: 118px; text-align: center;" | '''Notes'''
| style="width: 231px; text-align: center;" | '''Notes'''
|-
|-
| 0
| style="text-align: center;" | 0
| IN
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Drive
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | encoder
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | 63r256
 
| style="width: 193px; text-align: center;" | left encoder phase A
| style="width: 194px;" |  
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 253px;" |  
| style="width: 231px; text-align: center;" | 256 counts per rev
| style="width: 118px;" |  
|-
| style="text-align: center;" | 3
| style="text-align: center;" | IN
| style="width: 69px; text-align: center;" | Arm
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 193px; text-align: center;" | Limit at end of travel for back of robot
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit&nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
|-
| style="text-align: center;" | 2
| style="text-align: center;" | IN
| style="width: 69px; text-align: center;" | Drive
| style="width: 122px; text-align: center;" | encoder
| style="width: 139px; text-align: center;" | 63r256
| style="width: 193px; text-align: center;" | right encoder phase A
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 231px; text-align: center;" | 256 counts per rev
|-
|-
| 1
| style="text-align: center;" | 1
| IN
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Arm
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
 
| style="width: 193px; text-align: center;" | Limit at end of travel for front of robot
| style="width: 194px;" |  
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit
| style="width: 253px;" |  
| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 118px;" |  
|-
|-
| 2
| style="text-align: center;" | 4
| IN
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Intake
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | magnetic reed switch
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | &nbsp;
| style="width: 193px; text-align: center;" | Intake is all the way out&nbsp;
| style="width: 223px; text-align: center;" |  
1 = Intake Up (In)


| style="width: 194px;" |
0 = Intage Down (Out)
| style="width: 253px;" |
| style="width: 118px;" |
|-
| 3
| IN
| style="width: 69px;" |
| style="width: 73px;" |
| style="width: 52px;" |


| style="width: 194px;" |
| style="width: 231px; text-align: center;" | &nbsp;
| style="width: 253px;" |  
| style="width: 118px;" |
|-
|-
| 4
| style="text-align: center;" | 5
| IN
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Left Lift&nbsp;
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | encoder
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | srx magnetic encoder
 
| style="width: 193px; text-align: center;" | Lift encoder phase A
| style="width: 194px;" |  
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 253px;" |  
| style="width: 231px; text-align: center;" | 1024 counts per rev
| style="width: 118px;" |  
|-
|-
| 5
| style="text-align: center;" | 6
| OUT
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Right Lift
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | encoder
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | srx magnetic encoder
| style="width: 194px;" |  
| style="width: 193px; text-align: center;" | Lift encoder phase A
| style="width: 253px;" |  
| style="width: 223px; text-align: center;" | measures distance traveled
| style="width: 118px;" |  
| style="width: 231px; text-align: center;" | 1024 counts per rev
|-
|-
| 6
| style="text-align: center;" | 7
| IN
| style="text-align: center;" | IN
| style="width: 69px;" | <br/>
| style="width: 69px; text-align: center;" | Left Lift
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 194px;" | <br/>
| style="width: 193px; text-align: center;" | Limit at the upper end of the left lift travel
| style="width: 253px;" | <br/>
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit
| style="width: 118px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
|-
|-
| 7
| style="text-align: center;" | 8
| IN
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Right Lift
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | Leaf switch
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | Honeywell V7-2B17D8-048
| style="width: 194px;" |  
| style="width: 193px; text-align: center;" | Limit at the upper end of the right lift travel
| style="width: 253px;" |  
| style="width: 223px; text-align: center;" | Limit "switch" - digital low at limit
| style="width: 118px; text-align: center;" | &nbsp;
| style="width: 231px; text-align: center;" | &nbsp;
|-
|-
| 8
| style="text-align: center;" | 9
| IN
| style="text-align: center;" | IN
| style="width: 69px;" |  
| style="width: 69px; text-align: center;" | Hand
| style="width: 73px;" |  
| style="width: 122px; text-align: center;" | Allen Bradley diffuse sensor
| style="width: 52px;" |  
| style="width: 139px; text-align: center;" | 42EF-D1MNAK-A2
| style="width: 193px; text-align: center;" | cube present
| style="width: 223px; text-align: center;" |
1 = Cube Present
 
0 = Cube Not Present


| style="width: 194px;" |
| style="width: 231px; text-align: center;" | needs 10+ volt via PD board #3
| style="width: 253px;" |
| style="width: 118px;" |
|-
| 9
| IN
| style="width: 69px;" |
| style="width: 73px;" |
| style="width: 52px;" |
| style="width: 194px;" |
| style="width: 253px;" |
| style="width: 118px;" |  
|}
|}
</div> </div> </div> </div> </div> </div> </div>
</div>


=== <u>Rev Robotics More Board IO</u> ===
=== <u>Rev Robotics More Board IO</u> ===


{| style="width: 1022px" border="1" cellpadding="1" cellspacing="1"
{| border="1" cellpadding="1" cellspacing="1" style="width: 1022px"
|-
|-
| style="width: 16px; text-align: center" | '''ID'''
| style="width: 16px; text-align: center" | '''ID'''
Line 612: Line 629:
| 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'''<br/>
| 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" |  
| style="width: 56px" | &nbsp;
| style="width: 74px" |  
| style="width: 74px" | &nbsp;
| style="width: 74px" |  
| style="width: 74px" | &nbsp;
| style="width: 56px" |  
| style="width: 56px" | &nbsp;
| style="width: 197px" |  
| style="width: 197px" | &nbsp;
| style="width: 254px" |  
| style="width: 254px" | &nbsp;
| style="width: 141px" |  
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 1
| style="width: 16px" | 1
| style="width: 56px" |  
| style="width: 56px" | &nbsp;
| style="width: 74px" |  
| style="width: 74px" | &nbsp;
| style="width: 74px" |  
| style="width: 74px" | &nbsp;
| style="width: 56px" |  
| style="width: 56px" | &nbsp;
| style="width: 197px" |  
| style="width: 197px" | &nbsp;
| style="width: 254px" |  
| style="width: 254px" | &nbsp;
| style="width: 141px" |  
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 2
| style="width: 16px" | 2
| style="width: 56px" |  
| style="width: 56px" | &nbsp;
| style="width: 74px" |  
| style="width: 74px" | &nbsp;
| style="width: 74px" |  
| style="width: 74px" | &nbsp;
| style="width: 56px" |  
| style="width: 56px" | &nbsp;
| style="width: 197px" |  
| style="width: 197px" | &nbsp;
| style="width: 254px" |  
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 3
| style="width: 16px" | 3
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 4
| style="width: 16px" | 4
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 5
| style="width: 16px" | 5
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 6
| style="width: 16px" | 6
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 7
| style="width: 16px" | 7
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 8
| style="width: 16px" | 8
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 9
| style="width: 16px" | 9
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 10
| style="width: 16px" | 10
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 11
| style="width: 16px" | 11
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 12
| style="width: 16px" | 12
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 13
| style="width: 16px" | 13
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 14
| style="width: 16px" | 14
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|-
|-
| style="width: 16px" | 15
| style="width: 16px" | 15
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 74px" | <br/>
| style="width: 74px" | &nbsp;
| style="width: 56px" | <br/>
| style="width: 56px" | &nbsp;
| style="width: 197px" | <br/>
| style="width: 197px" | &nbsp;
| style="width: 254px" | <br/>
| style="width: 254px" | &nbsp;
| style="width: 141px" | <br/>
| style="width: 141px" | &nbsp;
|}
|}
</div> </div> </div>
</div>
</div>


== I2C Registers ==
== I2C Registers ==
Line 894: Line 914:
|}
|}


<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">
== Pneumatics Control Module ==
== Pneumatics Control Module ==


{| style="width: 931px" border="1" cellpadding="2" cellspacing="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 931px"
|-
|-
| '''ID'''
| '''#'''
| style="text-align: center" | '''Subsystem'''
| style="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">'''Solenoid is Double or Single?'''</p>  
| style="width: 51px" | <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: 211px" | <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'''<br/>
| style="width: 290px; text-align: center" | '''Operation'''
| style="width: 118px; text-align: center" | '''Circuit Pressure'''
| style="width: 118px; text-align: center" | '''Notes'''
| style="width: 118px; text-align: center" | '''Notes'''
| style="width: 118px; text-align: center" | '''Pressure Circuit'''
|-
|-
| 0
| 0
|  
| colspan="1" rowspan="2" | Intake
| style="width: 75px" |  
| colspan="1" rowspan="2" style="width: 75px" | Double
| style="width: 51px" |  
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| style="width: 211px" |  
| style="width: 183px;" | Raise intake
| style="width: 290px" |  
| style="width: 290px" | Extends cylinder to raise intake
| style="width: 118px" |  
| colspan="1" rowspan="2" style="width: 118px" | 60 PSI
| style="width: 118px" |  
| style="width: 118px" | B
|-
|-
| 1
| 1
|
| style="width: 183px;" | Lower intake
| style="width: 75px" |
| style="width: 290px" | Retracts cylinder to lower intake
| style="width: 51px" |
| style="width: 118px" | A
| style="width: 211px" |  
| style="width: 290px" |  
| style="width: 118px" |  
| style="width: 118px" |
|-
|-
| 2
| 2
|  
| colspan="1" rowspan="2" | Brake (Arm)
| style="width: 75px" |  
| colspan="1" rowspan="2" style="width: 75px" | Double
| style="width: 51px" |  
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| style="width: 211px" |  
| style="width: 183px;" | Disengage brake on arm pivot. Does not actually pass air (block output)
| style="width: 290px" |  
| style="width: 290px" | Extends cylinder to disengage brake
| style="width: 118px" |  
| colspan="1" rowspan="2" style="width: 118px" | 60 PSI
| style="width: 118px" |  
| style="width: 118px" | A
|-
|-
| 3
| 3
|
| style="width: 183px;" | Engage brake on arm pivot
| style="width: 75px" |
| style="width: 290px" | Retracts cylinder to engage brake
| style="width: 51px" |
| style="width: 118px" | B
| style="width: 211px" |  
| style="width: 290px" |  
| style="width: 118px" |  
| style="width: 118px" |
|-
|-
| 4
| 4
| <br/>
| colspan="1" rowspan="2" | Hand (Arm)
| style="width: 75px" | <br/>
| colspan="1" rowspan="2" style="width: 75px" | Double
| style="width: 51px" | &nbsp;
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| style="width: 211px" | <br/>
| style="width: 183px;" |  
| style="width: 290px" | <br/>
Release hand's grip on cube
| style="width: 118px" | <br/>
 
| style="width: 118px" | <br/>
Does not actually pass air (block output)
 
| 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
| 5
| <br/>
| style="width: 183px;" | Tighten hand grip on cube
| style="width: 75px" | <br/>
| style="width: 290px" | Retracts cylinder to "close" hand
| style="width: 51px" | <br/>
| style="width: 118px" | A
| style="width: 211px" | <br/>
| style="width: 290px" | <br/>
| style="width: 118px" | <br/>
| style="width: 118px" | <br/>
|-
|-
| 6
| 6
| <br/>
| colspan="1" rowspan="2" | Ramp
| style="width: 75px" | <br/>
| colspan="1" rowspan="2" style="width: 75px" | Double
| style="width: 51px" | &nbsp;
| colspan="1" rowspan="2" style="width: 64px;" | SY3240-6
| style="width: 211px" | <br/>
| style="width: 183px;" | Allows ramps to deploy to ground
| style="width: 290px" | <br/>
| style="width: 290px" | Retracts cylinder to release ramps to ground
| style="width: 118px" | <br/>
| colspan="1" rowspan="2" style="width: 118px" | 60 PSI
| style="width: 118px" | <br/>
| style="width: 118px" | B
|-
|-
| 7
| 7
|
| style="width: 183px;" | Holds ramps in stored position
| style="width: 75px" |
| style="width: 290px" | Extends cylinder to hold ramps in up position
| style="width: 51px" | <br/>
| style="width: 118px" | A
| style="width: 211px" | <br/>
| style="width: 290px" | <br/>
| style="width: 118px" |
| style="width: 118px" | <br/>
|}
|}
</div> </div> </div>
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div></div>


= Operator Controls =
= Operator Controls =
 
<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 1 - Primary Driver ===
=== Controller 1 - Primary Driver ===


{| style="width: 908px" cellspacing="1" cellpadding="2" border="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
|-
|-
| style="width: 63px" | '''&nbsp;Button #'''<br/>
| style="width: 92px;" | '''&nbsp;Button/Axis #'''
| style="width: 432px" | '''Action/Button'''<br/>
| style="width: 414px;" | '''Action/Button'''
| '''Description'''
| '''Description'''
| '''Details'''
| '''Details'''
|-
|-
| style="width: 63px; text-align: center" | <br/>
| style="width: 92px; text-align: center;" | A-1
| style="width: 432px" | Left Joystick Y<br/>
| style="width: 414px;" | Left Joystick Y
| <br/>
| Drive Forward/Back
| <br/>
|  
Up drive the robot forward (Intake side)<br/> Down drives the robot backward
 
NOTE: will do the opposite if swap drive is toggled
 
|-
|-
| style="width: 63px" | <br/>
| style="width: 92px; text-align: center;" | A-1
| style="width: 432px" | Left Joystick X<br/>
| style="width: 414px;" | Left Joystick X
| <br/>
| Nothing
| <br/>
| &nbsp;
|-
|-
| style="width: 63px; text-align: center" | <br/>
| style="width: 92px; text-align: center;" | A-4
| style="width: 432px" | Right Joystick Y
| style="width: 414px;" | Right Joystick Y
| <br/>
| Nothing
| <br/>
| &nbsp;
|-
|-
| style="width: 63px" | <br/>
| style="width: 92px; text-align: center;" | A-4
| style="width: 432px" | Right Joystick X
| style="width: 414px;" | Right Joystick X
| <br/>
| Turn Left/Right
| <br/>
|
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: 63px; text-align: center" | 5<br/>
| style="width: 92px; text-align: center;" | B-6
| style="width: 432px" | Left Bumper
| style="width: 414px;" | Right Bumper
| <br/>
| Slow
| <br/>
| decreases the range of power to the<br/> motors by a set amount
|-
|-
| style="width: 63px; text-align: center" | 6<br/>
| style="width: 92px; text-align: center;" | B-5
| style="width: 432px" | Right Bumper
| style="width: 414px;" | Right Bumper
| <br/>
| Nothing
| <br/>
| &nbsp;
|-
|-
| style="width: 63px; text-align: center" | 7<br/>
| style="width: 92px; text-align: center;" | A-3
| style="width: 432px" | Left Trigger
| style="width: 414px;" | Right Trigger
| <br/>
| Turbo
| <br/>
| Increases the range of power to the motors by a set amount.
|-
|-
| style="width: 63px; text-align: center" | 8<br/>
| style="width: 92px; text-align: center;" | A-2
| style="width: 432px" | Right Trigger<br/>
| style="width: 414px;" | Left Trigger
| <br/>
| Swap Drive
| <br/>
|  
|-
Switches the front and back of the robot.
| style="width: 63px; text-align: center" | 4<br/>
 
| style="width: 432px" | Y button
Press to toggle.
| <br/>
 
| <br/>
|-
| style="width: 63px;  text-align: center" | 1<br/>
| style="width: 432px" | A button<br/>
| <br/>
| <br/>
|}
|}
<div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output"><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"><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">&nbsp;</div> </div> </div> </div> </div> </div> </div> </div> </div> <div class="mw-parser-output">&nbsp;</div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">&nbsp;</div> </div> </div> </div>


=== Controller 2 - Aux Driver ===
=== Controller 2 - Aux Driver ===


{| style="width: 908px" cellspacing="1" cellpadding="2" border="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
|-
|-
| style="text-align: center; width: 66px" | Button #<br/>
| style="text-align: center; width: 91px" | '''Button/Axis #'''
| style="width: 405px" | '''Action/Button'''<br/>
| style="width: 379px" | '''Action/Button'''
| '''Description'''
| '''Description'''
| '''Details'''
| '''Details'''
|-
|-
| style="width: 66px; text-align: center" | 5<br/>
| style="text-align: center; width: 91px" | A-5
| style="width: 405px" | Left Bumper<br/>
| style="width: 379px" | Right Joystick Y
| <br/>
| Fine Arm Control
| <br/>
|
Up - towards front
 
Down - towards back
 
Only moves arm and intake,&nbsp;when not in moving to a preset.
 
Moves at a slower speed than the presets.
 
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.
 
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.
 
|-
| style="width: 91px; text-align: center" | B-5
| style="width: 379px" | Left Bumper
| Raise Right Ramp
|
Press and Hold
 
If button is let go, then the ramp&nbsp;will stop in place.
 
If broken switch 5&nbsp;is flipped, the ramp will not auto-stop when at top. Driver is responsible for stopping.
 
|-
| style="width: 91px; text-align: center" | B-6
| style="width: 379px" | Right Bumper
| Raise Left Ramp
|
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: 379px" | Right Trigger
| Intake
|
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: 379px" | Left Trigger
| Outtake
| Press and Hold
|-
|-
| style="width: 66px; text-align: center" | 6<br/>
| style="width: 91px; text-align: center" | POV-0
| style="width: 405px" | Right Bumper<br/>
| style="width: 379px" | Dpad Up
| <br/>
| Moves Intake Up
| <br/>
|  
When broken switch 1 is flipped, this moves the intake up.
 
|-
|-
| style="width: 66px; text-align: center" | 8<br/>
| style="width: 91px; text-align: center" | POV-180
| style="width: 405px" | Right Trigger
| style="width: 379px" | Dpad Down
| <br/>
| Moves Intake Down
| <br/>
| When broken switch 1 is flipped, this moves the intake down
|-
|-
| style="width: 66px; text-align: center" | 7<br/>
| style="width: 91px; text-align: center" | B-4
| style="width: 405px" | Left Trigger
| style="width: 379px" | Y button
| <br/>
| Arm to Intake Level Front&nbsp; (Preset position)
| <br/>
|  
Press, and release, to move arm and intake there automatically.
 
When broken switch 1 is flipped, the presets do not work.
 
|-
|-
| style="width: 66px; text-align: center" | 0<br/>
| style="width: 91px; text-align: center" | B-1
| style="width: 405px" | Dpad Up<br/>
| style="width: 379px" | A button
| <br/>
| Arm to&nbsp; Exchange Level Back (Preset position)
| <br/>
|  
Press, and release, to move arm and intake there automatically.
 
When broken switch 1 is flipped, the presets do not work.
 
|-
|-
| style="width: 66px; text-align: center" | 4<br/>
| style="width: 91px; text-align: center" | B-2
| style="width: 405px" | Y button
| style="width: 379px" | B button
| <br/>
| Arm to Switch Back (Preset position)
| <br/>
|  
Press, and release,&nbsp;to move arm and intake there automatically.
 
When broken switch 1 is flipped, the presets do not work.
 
|-
|-
| style="width: 66px; text-align: center" | 1<br/>
| style="width: 91px; text-align: center" | B-3
| style="width: 405px" | A button<br/>
| style="width: 379px" | X button
| <br/>
| Arm to Switch Front (Preset position)
| <br/>
|  
Press, and release, to move arm and intake there automatically.
 
When broken switch 1&nbsp;is flipped, the presets do not work.
 
|-
|-
| style="width: 66px; text-align: center" | 3<br/>
| style="width: 91px; text-align: center" | B-7 + B-8
| style="width: 405px" | X button
| style="width: 379px" | Start + Select
| <br/>
| Deploy Ramps
| <br/>
|  
Press, and release,&nbsp;both at same time to lower ramps.
 
Lowers all parts of the ramp.&nbsp;
 
|}
|}
 
</div> </div> </div> </div> </div> </div> </div> </div> </div> </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></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"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output">
<div class="mw-parser-output">
=== Broken Switches ===
=== Broken Switches ===


{| style="width: 908px" cellspacing="1" cellpadding="2" border="1"
{| border="1" cellpadding="2" cellspacing="1" style="width: 908px"
|-
|-
| '''Switch'''
| '''Switch'''
Line 1,101: Line 1,196:
|-
|-
| Broken Switch1
| Broken Switch1
| <br/>
| Arm/Intake Movement
| <br/>
|  
None of the presets work.
 
Intake doesn't move in and out with the arm automatically
 
|-
|-
| Broken Switch2
| Broken Switch2
| <br/>
| Arm Front Limit Switch
| <br/>
| Arm won't auto-stop when going towards the front.
|-
|-
| Broken Switch3
| Broken Switch3
| <br/>
| Arm Back Limit Switch
| <br/>
| Arm won't auto-stop when going towards the back.
|-
|-
| Broken Switch4
| Broken Switch4
| <br/>
| Ramp Left Lift
| <br/>
| Left Ramp doesnt auto-stop when at top.
|-
| Broken Switch5
| Ramp Right Lift
| Right Ramp doesn't auto-stop when at top.
|-
| Broken Switch6
| Cube Sensor
| Cube sensor broken - intake/hand doesn't auto-stop when cube is fully in.
|}
</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">
=== Dashboard ===
 
{| border="1" cellpadding="2" cellspacing="1" style="width: 0px;"
|-
| '''Feature'''
| style="width: 600px;" | '''Control'''
| '''Key'''
| '''Value'''
|-
| Have Cube
| The background areas of the dashboard will be green when there is a cube
| thunderdashboard_green
|  
0 - do not have a cube
 
1 - have a cube
 
|-
| Arm position
| 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 .
 
| thunderdashboard_armpos
|
number ranging from 0 to 100
 
0 means arm is all the way down on the back
 
50 means arm is point straight up
 
100 means arm is all the way down on the front
 
|-
|-
| Broken Switch5<br/>
| Intake position
| <br/>
| A panel that will be yellow when intake is up/in.
| <br/>
| thunderdashboard_intake
|  
0 - intake is up/in
 
1 - intake is down/out
 
|-
|-
| Broken Switch6<br/>
| Gyro cal
| <br/>
|  
| <br/>
The background areas of the dashboard will be red when the gyro is in the middle of its calibration.
 
Helps to inform drivers to not touch the robot while calibrating,
 
| thunderdashboard_gyro
|  
0 - not calibrating
 
1 - in middle of calibration
 
|-
|-
| Broken Switch7<br/>
| Auto Wait Time
| <br/>
|
| <br/>
Number input box next to Autonomous mode dropdown to indicate how many seconds to wait before executing the selected auto mode.
 
Default value is zero, If auto mode is changed, do NOT change value.
 
<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>
 
&nbsp;
 
| thunderdashboard_auto_start_delay
|
Number of seconds to wait before executing auto mode
 
<span style="color:#c0392b;">NOTE: up to two digits</span>
 
&nbsp;
 
|}
|}
</div> </div> </div> </div> </div> </div>
</div>


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

Latest revision as of 13:00, 9 March 2018

Robot I/O

CAN ID Assignments

ID Subsystem

Component

Type

Model # Description
(brief)
Operation

Notes

(8) max. 40A         PDB #

0 Electrical

PD Module

  Power Distribution Module feedback monitor PD

must be CAN 0

 
1 RESERVED n/a   Factory-default
allows for adding new device quickly and re-assign its ID
  don't use  
2 cube intake RS 775 Talon SRX left Intake cube to hand (+) eject cube (-) 30 A 8
3 cube intake RS 775 Talon SRX right Intake cube to hand (+) eject cube (-) 30 A 7
4 arm RS 775 Talon SRX moves arm   moves from arm front (+) to back (-) 30 A 9
5 hand RS 775 Talon SRX        hold and eject the cube rollers intake (+) eject the cube (-) 30 A 6
6 Left lift RS 775 Talon SRX raises the left lift

raise lift (+)

Vex encoder feeds direct to talon

30 A 13
7 Right lift RS 775 Talon SRX raises the right lift

Raise lift (+)

Vex encoder feeds direct to talon

40 A 12
8              
9              
10              
11              
12              
13              
14              
15              
 
 

PWM Outputs

ID Subsystem

Component

Type

Model # Description
(brief)

Operation

 

Notes

(8) max. 40A              PDB #   

0 DriveBase CIM   SPARK Left Motor 1;  +Voltage = Forwards 40A 0
0 DriveBase CIM   SPARK Left Motor 2; +Voltage = Forwards 40A 1
1 DriveBase CIM   SPARK Right Motor 1; +Voltage = Forwards 40A 15
1 DriveBase CIM   SPARK Right Motor 2; +Voltage = Forwards 40A 14
2              
3              
4              
5              
6              
7              
8              
9              

Relay Outputs

ID Subsystem

Component

Type

Model # Description
(brief)
Operation
Notes
0


1


2


3


Analog IO

RoboRIO Analog Inputs

ID Subsystem

Component

Type

Model # Description
(brief)
Operation

Voltage

Range

Notes
0              
1          

 

 
2 Arm pot
3852A-282-103AL-ND
arm position arm forward (+) arm back (-) 0-4 v ?  
3              

Rev Robotics More Board Analog IO

ID Subsystem

Component

Type

Model # Description
(brief)
Operation

Voltage

Range

Notes
AIN0              
AIN1              
AIN2              
AIN3              
AOUT0              
AOUT1              
 
 

Digital IO (GPIO)

RoboRio IO

ID Direction
(IN/OUT)
Subsystem

Component

Type

Model # Description
(brief)
Operation Notes
0 IN Drive encoder 63r256 left encoder phase A measures distance traveled 256 counts per rev
3 IN Arm Leaf switch Honeywell V7-2B17D8-048 Limit at end of travel for back of robot Limit "switch" - digital low at limit   
2 IN Drive encoder 63r256 right encoder phase A measures distance traveled 256 counts per rev
1 IN Arm Leaf switch Honeywell V7-2B17D8-048 Limit at end of travel for front of robot Limit "switch" - digital low at limit  
4 IN Intake magnetic reed switch   Intake is all the way out 

1 = Intake Up (In)

0 = Intage Down (Out)

 
5 IN Left Lift  encoder srx magnetic encoder Lift encoder phase A measures distance traveled 1024 counts per rev
6 IN Right Lift encoder srx magnetic encoder Lift encoder phase A measures distance traveled 1024 counts per rev
7 IN Left Lift Leaf switch Honeywell V7-2B17D8-048 Limit at the upper end of the left lift travel Limit "switch" - digital low at limit  
8 IN Right Lift Leaf switch Honeywell V7-2B17D8-048 Limit at the upper end of the right lift travel Limit "switch" - digital low at limit  
9 IN Hand Allen Bradley diffuse sensor 42EF-D1MNAK-A2 cube present

1 = Cube Present

0 = Cube Not Present

needs 10+ volt via PD board #3

Rev Robotics More Board IO

ID Direction (IN/OUT) Subsystem Component Type Model # Description (brief) Operation Notes
0              
1              
2              
3              
4              
5              
6              
7              
8              
9              
10              
11              
12              
13              
14              
15              

I2C Registers

Address
(e.g. 0100111X)
Pin
(e.g. GP0)
Subsystem

Component

Type

Model # Description
(brief)
Operation
Notes
0


1


2


3


4


5


6


SPI Devices

#
Subsystem

Component Type

Model # Description (brief) Operation
Notes




 

USB Host Ports

Address
Subsystem

Component Type

Model # Description (brief) Operation
Notes
0
1

Pneumatics Control Module

# Subsystem

Solenoid is Double or Single?

Solenoid

Model #

Description

(brief)

Operation Circuit Pressure Notes
0 Intake Double SY3240-6 Raise intake Extends cylinder to raise intake 60 PSI B
1 Lower intake Retracts cylinder to lower intake A
2 Brake (Arm) Double SY3240-6 Disengage brake on arm pivot. Does not actually pass air (block output) Extends cylinder to disengage brake 60 PSI A
3 Engage brake on arm pivot Retracts cylinder to engage brake B
4 Hand (Arm) Double SY3240-6

Release hand's grip on cube

Does not actually pass air (block output)

Removes air pressure from cylinder to "relax" grip on cube  ?? PSI B
5 Tighten hand grip on cube Retracts cylinder to "close" hand A
6 Ramp Double SY3240-6 Allows ramps to deploy to ground Retracts cylinder to release ramps to ground 60 PSI B
7 Holds ramps in stored position Extends cylinder to hold ramps in up position A
 

Operator Controls

Controller 1 - Primary Driver

 Button/Axis # Action/Button Description Details
A-1 Left Joystick Y Drive Forward/Back

Up drive the robot forward (Intake side)
Down drives the robot backward

NOTE: will do the opposite if swap drive is toggled

A-1 Left Joystick X Nothing  
A-4 Right Joystick Y Nothing  
A-4 Right Joystick X Turn Left/Right

Right will turn the robot clockwise and vice
versa. With no input from the left Joytick,
does point turn. With input from left, does
curve turn

NOTE: will do the opposite if swap drive is toggled

B-6 Right Bumper Slow decreases the range of power to the
motors by a set amount
B-5 Right Bumper Nothing  
A-3 Right Trigger Turbo Increases the range of power to the motors by a set amount.
A-2 Left Trigger Swap Drive

Switches the front and back of the robot.

Press to toggle.

 
 
 
 
 
 

Controller 2 - Aux Driver

Button/Axis # Action/Button Description Details
A-5 Right Joystick Y Fine Arm Control

Up - towards front

Down - towards back

Only moves arm and intake, when not in moving to a preset.

Moves at a slower speed than the presets.

When broken switches 1 is flipped, the arm will not stop at the front of the robot automatically. The driver is responsible for stopping the arm by letting go of the joystick.

When broken switches 2 is flipped, the arm will not stop at the back of the robot automatically. The driver is responsible for stopping the arm by letting go of the joystick.

B-5 Left Bumper Raise Right Ramp

Press and Hold

If button is let go, then the ramp will stop in place.

If broken switch 5 is flipped, the ramp will not auto-stop when at top. Driver is responsible for stopping.

B-6 Right Bumper Raise Left Ramp

Press and Hold

If button is let go, then the ramp will stop in place.

If broken switch 4 is flipped, the ramp will not auto-stop when at top. Driver is responsible for stopping.

A-3 Right Trigger Intake

Press and Hold

Will auto-stop when cube is all the way in.

If broken switch 6 is flipped, the intake will not auto-stop when cube is fully in.

A-2 Left Trigger Outtake Press and Hold
POV-0 Dpad Up Moves Intake Up

When broken switch 1 is flipped, this moves the intake up.

POV-180 Dpad Down Moves Intake Down When broken switch 1 is flipped, this moves the intake down
B-4 Y button Arm to Intake Level Front  (Preset position)

Press, and release, to move arm and intake there automatically.

When broken switch 1 is flipped, the presets do not work.

B-1 A button Arm to  Exchange Level Back (Preset position)

Press, and release, to move arm and intake there automatically.

When broken switch 1 is flipped, the presets do not work.

B-2 B button Arm to Switch Back (Preset position)

Press, and release, to move arm and intake there automatically.

When broken switch 1 is flipped, the presets do not work.

B-3 X button Arm to Switch Front (Preset position)

Press, and release, to move arm and intake there automatically.

When broken switch 1 is flipped, the presets do not work.

B-7 + B-8 Start + Select Deploy Ramps

Press, and release, both at same time to lower ramps.

Lowers all parts of the ramp. 

 
 

Broken Switches

Switch Description Details
Broken Switch1 Arm/Intake Movement

None of the presets work.

Intake doesn't move in and out with the arm automatically

Broken Switch2 Arm Front Limit Switch Arm won't auto-stop when going towards the front.
Broken Switch3 Arm Back Limit Switch Arm won't auto-stop when going towards the back.
Broken Switch4 Ramp Left Lift Left Ramp doesnt auto-stop when at top.
Broken Switch5 Ramp Right Lift Right Ramp doesn't auto-stop when at top.
Broken Switch6 Cube Sensor Cube sensor broken - intake/hand doesn't auto-stop when cube is fully in.

Dashboard

Feature Control Key Value
Have Cube The background areas of the dashboard will be green when there is a cube thunderdashboard_green

0 - do not have a cube

1 - have a cube

Arm position 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 .

thunderdashboard_armpos

number ranging from 0 to 100

0 means arm is all the way down on the back

50 means arm is point straight up

100 means arm is all the way down on the front

Intake position A panel that will be yellow when intake is up/in. thunderdashboard_intake

0 - intake is up/in

1 - intake is down/out

Gyro cal

The background areas of the dashboard will be red when the gyro is in the middle of its calibration.

Helps to inform drivers to not touch the robot while calibrating,

thunderdashboard_gyro

0 - not calibrating

1 - in middle of calibration

Auto Wait Time

Number input box next to Autonomous mode dropdown to indicate how many seconds to wait before executing the selected auto mode.

Default value is zero, If auto mode is changed, do NOT change value.

NOTE: if value already in NetTables, the dasboard may not overright it. This can happen if robot is running before Dashboard starts, and value was set previously. Auto mode dropdown border (and list background) will be yellow if delay is not zero; to assist drivers in knowing it is non-zero.

 

thunderdashboard_auto_start_delay

Number of seconds to wait before executing auto mode

NOTE: up to two digits

 

IO Maps for Old Robots