2014:Robot Sensors/Motors/Lights/Controls Map: Difference between revisions

From 1511Wookiee
Jump to navigationJump to search
No edit summary
(→‎SmartDashboard: removed sound - not used, gone from code as well)
 
(59 intermediate revisions by 3 users not shown)
Line 14: Line 14:
| '''IO Map<br/>Updated?'''
| '''IO Map<br/>Updated?'''
| '''Operation Details'''<br/>(including when broken)
| '''Operation Details'''<br/>(including when broken)
| '''Output Level'''
| '''Output Level'''<br/>
| '''Notes'''
| '''Notes'''
|-
|-
Line 22: Line 22:
| 3852A-282-104AL
| 3852A-282-104AL
| Analog
| Analog
| No
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Sensor which detects when the intake bar passes by to calculate the angle of the intake&nbsp;bar
| Sensor which detects the angle of the intake&nbsp;bar<br/>
| <br/>
|
|-
| Shooter
| Detect&nbsp;kicker speed A<br/>
| Optical shaft encoder sensor<br/>
| E4P<br/>
| Digital<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
|
Sensor detects shaft rotation to sense how fast the gear is rotating
 
(Could also use shaft encoder on motor transmission&nbsp;?)
 
| <br/>
|
|-
| Shooter<br/>
| Detect kicker speed B<br/>
| Optical shaft encoder sensor<br/>
|
E4P
 
|
Digital
 
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| <br/>
| <br/>
| <br/>
|-
| Shooter<br/>
| Detect kicker gear teeth<br/>
| Optical flag sensor<br/>
|
OPB815
 
| Digital<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| additional check on kicker rotation to account for chain/gear slop<br/>
| <br/>
| <br/>
|-
| Shooter
| Detects kicker low position (home)<br/>
| Optical beam break<br/>
| Banner Sensor<br/>
| Digital<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Senses&nbsp;kicker arm and&nbsp;detects whenever kicker is in low position<br/>
| <br/>
|
|-
| Shooter<br/>
| Detect kicker high position<br/>
| Optical flag sensor<br/>
| OPB815<br/>
| Digital<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
|
Senses flag that's connected to gear and detects whenever kicker is in&nbsp;high position
 
| <br/>
| Interfaced to Jaguar limit switch inputs - not DIO.<br/>
|-
| Intake<br/>
| Detects intake position<br/>
| Potentiometer<br/>
| 3852A-282-104AL
| Analog
| Analog
| &lt;u</u&gt;
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Sensor which detects the angle of the intake bar - redundant sensor
| <br/>
|
|-
| Intake<br/>
| Detects ball presence on top of bumper<br/>
| Optical beam break<br/>
| Banner Sensor<br/>
| Digital<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Detects if ball is on top of the bumper.
| <br/>
| <br/>
|-
|-
| Drivetrain
| Left Encoder, Phase A
| Shaft encoder
| E4P
| Digital
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Measure left drive side movement<br/>
| <br/>
|  
|  
|-
| Drivetrain
| Left Encoder, Phase B
| Shaft encoder
| E4P
| Digital
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
|  
|  
Measure left drive side movement
| <br/>
|  
|  
|-
|  
|  
Drivetrain
| Right Encoder, Phase A
| Shaft encoder
| E4P
| Digital
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
|  
|  
Measure right drive side movement
| <br/>
|  
|  
|-
| Drivetrain<br/>
| Right Encoder, phase B<br/>
| Shaft encoder
| E4P
| Digital
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
|  
|  
Measure right drive side movement
| <br/>
|  
|  
|  
|-
| Drivetrain<br/>
| Gyro<br/>
| Gyro<br/>
| &nbsp;??<br/>
| Analog<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Measure drivetrain rotation<br/>
| <br/>
| <br/>
|-
| Camera<br/>
| Camera<br/>
| Network
| Axis M1013<br/>
| n/a<br/>
| <span style="color: rgb(0, 128, 0);">'''Yes'''</span><br/>
| Faces out the kicker side of the robot. So it is facing the goals at the start of the match. It is powered on the entire time the robot is powered on.<br/>
| n/a
| Connects to robot's router and needs 5V
|}
|}


<br/>&nbsp;


 
<span id="motors"></span>&nbsp;
<span id="motors"></span>


= Motors =
= Motors =


NOTE: each of these should also have a line in the appropriate [[2014:Robot IO Map|IO Map table]] (e.g. [[2014:Robot IO Map#can|CAN]] or [[2014:Robot IO Map#pwm|PWM]] or [[2014:Robot IO Map#relay|Relay]]) (the "IO Map Updated?" column in the following table indicates if this was done)
NOTE: each of these should also have a line in the appropriate (e.g. or or ) (the "IO Map Updated?" column in the following table indicates if this was done)


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Subsystem'''
| '''Subsystem'''
Line 52: Line 192:
| '''Type'''
| '''Type'''
| '''Model#'''
| '''Model#'''
| '''Controlled By'''<br/>([[2014:Robot IO Map#can|CAN]]/[[2014:Robot IO Map#pwm|PWM]]/[[2014:Robot IO Map#relay|Relay]])
| '''Controlled By'''<br/>(//)<br/>
| '''IO Map<br/>Updated?'''
| '''IO Map<br/>Updated?'''
| '''Operation Details'''<br/>(including when broken)
| '''Operation Details'''<br/>(including when broken)
Line 62: Line 202:
| TBD
| TBD
| CAN
| CAN
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| TBD
| Run with tank drive controls<br/>
|  
|  
|-
|-
Line 71: Line 211:
| TBD
| TBD
| CAN
| CAN
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| TBD
|  
Run with tank drive controls
 
|  
|  
|-
|-
Line 80: Line 222:
| TBD
| TBD
| CAN
| CAN
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| TBD
|  
Run with tank drive controls
 
|  
|  
|-
|-
Line 89: Line 233:
| TBD
| TBD
| CAN
| CAN
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| TBD
|  
|  
Run with tank drive controls
| <br/>
|-
|-
| Shooter
| Shooter
| front left Kicker arm
| front left Kicker arm
| CIM
| CIM
| TBD
| AM802
| CAN
| CAN<span style="color:#d3d3d3"></span><br/>
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| spins at full power in one direction, spins to 2 points
| spins at full power in one direction, spins to 2 points
|  
|  
Note: The jaguars for the kicker motors will first be primed with a command and then commanded to start.
Integration Meeting Thursday claimed CAN;
|-
|-
| Shooter
| Shooter
| mid left Kicker arm
| mid left Kicker arm
| CIM
| CIM
| TBD
| AM802
| CAN
| CAN<br/>
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| spins at full power in one direction, spins to 2 points
| spins at full power in one direction, spins to 2 points
|  
| Jaguars placed on robot model already<br/>
|-
|-
| Shooter
| Shooter
| back left Kicker arm
| back left Kicker arm
| Mini CIM
| Mini CIM
| TBD
| 2501BL
| CAN
| CAN<span style="color:#d3d3d3"></span><br/>
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| spins at full power in one direction, spins to 2 points
| spins at full power in one direction, spins to 2 points<br/>
|  
| ^<br/>
|-
|-
| Shooter
| Shooter
| right front Kicker arm
| right front Kicker arm
| Mini CIM
| Mini CIM
| TBD
| 2493BL
| CAN
| CAN<br/>
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| spins at full power in one direction, spins to 2 points
| spins at full power in one direction, spins to 2 points
|  
| ^<br/>
|-
|-
| Shooter
| Shooter
| right mid Kicker arm
| right mid Kicker arm
| Mini CIM
| Mini CIM
| TBD
| 2493BL
| CAN
| CAN<br/>
| Yes
| <span style="color:#008000">'''Yes'''</span><br/>
| spins at full power in one direction, spins to 2 points
| spins at full power in one direction, spins to 2 points
|  
| ^<br/>
|-
|-
| Shooter
| Shooter
| right back Kicker arm
| right back Kicker arm
| Mini CIM
| Mini CIM
| TBD
| 2493BL
| CAN
| CAN<br/>
| yes
| <span style="color:#008000">'''Yes'''</span><br/>
| spins at full power in one direction, spins to 2 points
| spins at full power in one direction, spins to 2 points
| ^<br/>
|-
| Intake<br/>
| roller<br/>
| 550/775<br/>
| TBD<br/>
| CAN<br/>
| <span style="color:#008000">'''Yes'''</span><br/>
| 4 modes; stopped, spins in, spins out slow, out fast<br/>
| <br/>
|-
| Shooter<br/>
| cradle lift<br/>
| 775&PG71<br/>
| AM 0914
| CAN<br/>
| <span style="color:#008000">'''Yes'''</span><br/>
| lifts cradle and intake arm between two points<br/>
|  
|  
|}
|}
Line 156: Line 324:
NOTE: each of these should also have a line in the appropriate [[2014:Robot IO Map|IO Map table]] (e.g. [[2014:Robot IO Map#pwm|PWM]] or [[2014:Robot IO Map#relay|Relay]]) (the "IO Map Updated?" column in the following table indicates if this was done)
NOTE: each of these should also have a line in the appropriate [[2014:Robot IO Map|IO Map table]] (e.g. [[2014:Robot IO Map#pwm|PWM]] or [[2014:Robot IO Map#relay|Relay]]) (the "IO Map Updated?" column in the following table indicates if this was done)


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Subsystem'''
| '''Subsystem'''
Line 167: Line 335:
| '''Notes'''
| '''Notes'''
|-
|-
| Shooter<br/>
| Guard Actuator A<br/>
| Servo<br/>
| &nbsp;?<br/>
| PWM<br/>
| <span style="color:#008000">'''Yes'''</span><br/>
| pulls in just before shooting; stays out otherwise to keep ball secure<br/>
| <br/>
|-
| Shooter<br/>
|  
|  
|
Guard Actuator B
|  
 
|  
| Servo<br/>
|  
| &nbsp;?<br/>
|  
| PWM
|  
| <span style="color:#008000">'''Yes'''</span><br/>
|  
| Same as the other one<br/>
| <br/>
|}
|}


Line 185: Line 364:
NOTE: each of these should also have a line in the appropriate [[2014:Robot IO Map|IO Map table]] (e.g. [[2014:Robot IO Map#relay|Relay]] or [[2014:Robot IO Map#gpio|GPIO]] or [[2014:Robot IO Map#i2c|I2C]]) (the "IO Map Updated?" column in the following table indicates if this was done)
NOTE: each of these should also have a line in the appropriate [[2014:Robot IO Map|IO Map table]] (e.g. [[2014:Robot IO Map#relay|Relay]] or [[2014:Robot IO Map#gpio|GPIO]] or [[2014:Robot IO Map#i2c|I2C]]) (the "IO Map Updated?" column in the following table indicates if this was done)


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Subsystem'''
| '''Subsystem'''
Line 191: Line 370:
| '''Type'''
| '''Type'''
| '''Model#'''
| '''Model#'''
| '''Controlled By'''<br/>([[2014:Robot IO Map#relay|Relay]]/[[2014:Robot IO Map#gpio|GPIO]]/[[2014:Robot IO Map#i2c|I2C]])
| '''Controlled By'''<br/>([[2014:Robot IO Map#relay|Relay]]/[[2014:Robot IO Map#gpio|GPIO]]/[[2014:Robot IO Map#i2c|I2C]])<br/>
| '''IO Map<br/>Updated?'''
| '''IO Map<br/>Updated?'''<br/>
| '''Location'''
| '''Location'''<br/>
| '''Used By'''<br/>(driver/human/alliance)
| '''Used By'''<br/>(driver/human/alliance)<br/>
| '''Operation'''
| '''Operation'''<br/>
| '''Notes'''
| '''Notes'''
|-
|-
| Storage
| Camera
| OK to feed
| Camera Light
|  
| Green LED Ring
|  
| AE60-G15
| GPIO
| <span style="color:#008000;">'''Yes'''</span><br/>
| mounted to the camera<br/>
| Robot<br/>
| Turned on in autonomous mode to 'light up' reflective tape so the robot can determine the hot goal
| uses 12V. ([http://www.superbrightleds.com/cgi-bin/store/index.cgi?action=DispPage&category=ACCENTS&Page2Disp=%2Fspecs%2FAE.htm http://www.superbrightleds.com/cgi-bin/store/index.cgi?action=DispPage&category=ACCENTS&Page2Disp=%2Fspecs%2FAE.htm])
|-
| Intake<br/>
| Possession<br/>
| RGB Led Strip
| TBD
| GPIO
| <span style="color:#008000;">'''Yes'''</span><br/>
| Intake uprights facing kicker; on P012, about 1 inch from the top to where P109 meets P012.
| Driver
| They light up blue when the ball is just barely within our possession (i.e. the ball is squished between the bumpers and the wheels of the intake system) AND we are not <u>Ready to Kick</u>
| There are a total of four strips of lights. These lights will be ganged/wired together with the <u>Ready to Kick</u> lights.<br/><br/>Original request was for 'all around the robot'; this final layout was reviewed with Elliot D.
|-
| Intake
| Ready to Kick
| RGB Led Strip
| TBD
| GPIO
| GPIO
| Yes
| <span style="color:#008000;">'''Yes'''</span><br/>
| Near feed slot on the storage mech
| Front side of both intake uprights opposite kicker (side facing outward); about 20 in. long starting at the top of the arms.
| Human player
| Driver
| Will be 'green' when in Feed mode and it is ok for the human player to feed a disc. Will be 'red' when in Feed mode and it is NOT ok to feed a disc. Will be off when not in Feed mode. It is OK to feed when the entire mech is at the proper angle AND there are less than 4 discs in the robot AND the fan blades are in the feed position.
| They light up green when the cradle is all the way up and we are ready to shoot.<br/>This light takes precedence over the <u>Possession</U> light.
| <u>'''THIS IS JUST AN EXAMPLE'''</u>
| There are a total of four strips of lights. These lights will be ganged/wired together with the <u>Possession</u> lights.<br/><br/>Original request was 'everywhere'; this final layout was reviewed with Elliot D.
|}
|}


Line 216: Line 417:
= Operator Controls =
= Operator Controls =


== Joystick 1 (Driver Left) ==
== Joystick 1 (Driver Left) Attack3&nbsp; ==


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Button/Axis'''
| '''Button/Axis'''
Line 227: Line 428:
| 1
| 1
| Turbo
| Turbo
|  
| Make da robot go fast
|  
| Both sides&nbsp;
|-
|-
| 2
| 2
| Slow
| Slow
|  
| Make da robot go slow
|  
| Both sides
|-
|-
| 3
| 3
|  
| <br/>
|  
|  
|  
|  
|-
|-
| 4
| 4
|  
| <br/>
|  
| <br/>
|  
|  
|-
|-
| 5
| 5
|  
| <br/>
|  
| <br/>
|  
|  
|-
|-
| 6
| 6
| Debug TBD
| Debug Drive<br/>
|  
|  
|  
|  
|-
|-
| 7
| 7
| Debug TBD
| Debug Intake<br/>
|  
|  
|  
|  
Line 267: Line 468:
| 9
| 9
|  
|  
|  
| <br/>
|  
|  
|-
|-
| 10
| 10
| Debug TBD
| Debug Kicker<br/>
|  
| <br/>
|  
|  
|-
|-
| 11
| 11<br/>
| Debug Drive
| Debug Miscellaneous<br/>
|  
| <br/>
|  
|  
|-
|-
| 12
| 12
| n/a
| n/a<br/>
|  
| <br/>
|  
|  
|-
|-
Line 300: Line 501:
|  
|  
|}
|}


== Joystick 2 (Driver Right) ==
== Joystick 2 (Driver Right) ==


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Button/Axis'''
| '''Button/Axis'''
Line 314: Line 513:
| 1
| 1
| Turbo
| Turbo
|  
| Robot turbo
|  
| Controls both sides
|-
|-
| 2
| 2
| Slow
| Slow
|  
| robot slow
|  
|  
|-
|-
| 3
| 3
|  
| <br/>
|  
| <br/>
|  
|  
|-
|-
| 4
| 4
|  
| &nbsp;
|  
| <br/>
|  
|  
|-
|-
| 5
| 5
|  
| <br/>
|  
| <br/>
|  
|  
|-
|-
Line 387: Line 586:
|  
|  
|}
|}


== Joystick 3 (Aux Driver) ==
== Joystick 3 (Aux Driver) ==


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Button/Axis'''
| '''Button/Axis'''
| '''Description'''<br/>(brief)
| '''Description'''<br/>(brief)
| '''Operation'''
| '''Operation'''<br/>
| '''Notes'''
| '''Notes'''<br/>
|-
|-
| 1
| 1
| Acquire Ball
| Acquire Ball
| Intake wheels spin such the ball is moved onto the robot.
| Intake wheels spin such the ball is moved onto the robot.
|  
| <br/>
|-
|-
| 2
| 2
| Pass Ball Fast
| Broken Mode Guard<br/>
| Intake wheels spin such the ball is moved out of the robot.<br/>This will be the fastest it can be, allowing for a long pass.
| When pressed, open kicker guard; else keep it closed<br/>
|
| Only works when kicker broken switch is set.<br/>
|-
|-
| 3
| 3
| Pass Ball Slow
| Pass Ball Fast<br/>
| Intake wheels spin such the ball is moved out of the robot.<br/>This will be a 'slow' rate to allow for a short pass to a close by robot.
|  
|  
Intake wheels spin such the ball is moved out of the robot.<br/>This will be the fastest it can be, allowing for a long pass.
| <br/>
|-
|-
| 4
| 4
| Set Kick Position<br/>
|  
|  
|
While pressed, intake stays at kick level
 
|  
|  
|-
|-
Line 457: Line 658:
|  
|  
|  
|  
|  
| <br/>
|-
|-
| X-axis
| X-axis<br/>
|  
| Broken Mode Kicker<br/>
|  
| Motion to right turns kicker up; motion to left turns it down<br/>
|  
|  
Only works when kicker broken switch is set.
|-
|-
| Y-axis
| Y-axis
| Intake
| Intake
| Moves intake in/out
|  
Moves intake in/out (up/down)
 
| When joystick is pushed forward (away from driver) the intake will got out (extend away from robot).
| When joystick is pushed forward (away from driver) the intake will got out (extend away from robot).
|-
|-
Line 474: Line 679:
|  
|  
|}
|}


== Joystick 4 (Aux Controls/Extended IO) ==
== Joystick 4 (Aux Controls/Extended IO) ==


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Button/Axis'''
| '''Button/Axis'''
Line 487: Line 690:
|-
|-
| 1
| 1
| Truss Shot&nbsp;
| shoot with enough strength to get over the truss
|  
|  
|
This will be the 3D printed lightning bolt).
|
 
|-
|-
| 2
| 2
| High goal shot
| Shott with enough strength to get into the high goal from a fixed distance.&nbsp;
|  
|  
|
This will be the 3D printed Gear.&nbsp;
|
 
|-
|-
| 3
| 3
|  
| Manual shoot
|  
| Shoot at &nbsp;speed of manual power
|  
| this is the push in the push potentiometer
|-
|-
| 4
| 4
|  
| TBD&nbsp;
|  
| nothing yet
|  
| &nbsp;
|-
|-
| 5
| 5
| Auto Choice 2<br/>
| will run auto mode 2<br/>
|  
|  
|
The 3 way switch has an up down and off
|
 
|-
|-
| 6
| 6
|  
| Auto Choice 1<br/>
|  
| run auto mode 1<br/>
|  
|  
|-
|-
| 7
| 7
|  
| Broken 1
|  
| Intake/Cradle Sensors Broken<br/>
|  
| left most<br/>
|-
|-
| 8
| 8
|  
| Broken 2
|  
| Kicker Sensors Broken<br/>
|  
| .
|-
|-
| 9
| 9
|  
| Broken 3
|  
| <br/>
|  
| .
|-
|-
| 10
| 10
| Broken 4
|  
|  
|  
| .
|
|-
|-
| 11
| 11
| Broken 5
|  
|  
|  
| .
|
|-
|-
| 12
| 12
|  
| reserved&nbsp;
|  
| &nbsp;For controls lights.
|  
| Right most&nbsp;
|-
|-
| X-axis
| X-axis
Line 552: Line 761:
|-
|-
| Y-axis
| Y-axis
| Future use
| Color adjustment
| This is not used for anything at this time. But is available if needed.
| Adjust the color of the lights
|  
| silver knob (potentiometer)
|-
|-
| Z-axis
| Z-axis
|  
| Hip check buton&nbsp;
|  
| Make noise and flash the noise
|  
| 0 When not pressed. 1 or higher is on.&nbsp;
|-
| <br/>
| <br/>
| <br/>
| <br/>
|}
|}


== SmartDashboard ==
== SmartDashboard ==


{| cellpadding="2" cellspacing="1" border="1"
{| border="1" cellpadding="2" cellspacing="1"
|-
|-
| '''Screen'''
| '''Screen'''
| '''Description'''<br/>(brief)
| '''Description'''<br/>(brief)
| '''Operation'''
| '''Operation'''
| '''Notes'''
| '''Notes'''<br/>
| '''Variable Name'''
| '''Variable Name'''
| '''Data Type'''
| '''Data Type'''<br/>
|-
|-
| Main
| Main
Line 579: Line 791:
| This will be a direct feed from the camera.
| This will be a direct feed from the camera.
| The internet address will be based on the <u>Team Number</u>.
| The internet address will be based on the <u>Team Number</u>.
| n/a
|  
| n/a
process_img;
 
is_hot_goal;
 
img_failed;
 
|  
raised by robot, lowered by dash to queue processing;
 
dash raises if goal is hot;
 
dash raises if bad image;
 
|-
|-
| Main
| Main
Line 586: Line 810:
| Meter next to the <u>Camera Feed</u> that shows the manual shooter's power. Would be a bar with a label next to it with a number representing power, scaling from 0 to 100
| Meter next to the <u>Camera Feed</u> that shows the manual shooter's power. Would be a bar with a label next to it with a number representing power, scaling from 0 to 100
|  
|  
| Manualpower
| manual_power<br/>
| TBD
| double: range 0 to 1<br/>
|-
|-
| Setup Dialog (TBD)
| Main
| Team Number
| Team Number
| Numberbox
| Numberbox used to set the team number for the robot. This is used for the camera feed. Should remain constant until we change the IP address of the robot. Should not change very much.
| Sets the team number for the robot to set the camera feed. Should remain constant until we change the IP address of the robot. Should not change very much.
| Control should be disabled unless the user specifically 'asks' to change the number (e.g. have an Edit button, then an OK & Cancel button to make the change)
| n/a
| --<br/>
| n/a
| --<br/>
|-
| Main
| Screen's background
| When the robot has the ball (i.e. the sensor indicating the ball is 'on the bumper' is tripped), then majority of the background needs to be a color the driver can see (e.g. yellow). When the sensor is not tripped, the background returns to its default color.
| <br/>
| flash_screen<br/>
| boolean: robot sets it; true means yellow, false is normal<br/>
|}
|}

Latest revision as of 14:17, 25 March 2014

Sensors

NOTE: each of these should also have a line in the appropriate (e.g. or ) (the "IO Map Updated?" column in the following table indicates if this was done)

Subsystem Description
(brief)
Type Model# Controlled By
(/)
IO Map
Updated?
Operation Details
(including when broken)
Output Level
Notes
Intake Detects intake position Potentiometer 3852A-282-104AL Analog Yes
Sensor which detects the angle of the intake bar

Shooter Detect kicker speed A
Optical shaft encoder sensor
E4P
Digital
Yes

Sensor detects shaft rotation to sense how fast the gear is rotating

(Could also use shaft encoder on motor transmission ?)


Shooter
Detect kicker speed B
Optical shaft encoder sensor

E4P

Digital

Yes



Shooter
Detect kicker gear teeth
Optical flag sensor

OPB815

Digital
Yes
additional check on kicker rotation to account for chain/gear slop


Shooter Detects kicker low position (home)
Optical beam break
Banner Sensor
Digital
Yes
Senses kicker arm and detects whenever kicker is in low position

Shooter
Detect kicker high position
Optical flag sensor
OPB815
Digital
Yes

Senses flag that's connected to gear and detects whenever kicker is in high position


Interfaced to Jaguar limit switch inputs - not DIO.
Intake
Detects intake position
Potentiometer
3852A-282-104AL Analog Yes
Sensor which detects the angle of the intake bar - redundant sensor
Intake
Detects ball presence on top of bumper
Optical beam break
Banner Sensor
Digital
Yes
Detects if ball is on top of the bumper.

Drivetrain Left Encoder, Phase A Shaft encoder E4P Digital Yes
Measure left drive side movement

Drivetrain Left Encoder, Phase B Shaft encoder E4P Digital Yes

Measure left drive side movement


Drivetrain

Right Encoder, Phase A Shaft encoder E4P Digital Yes

Measure right drive side movement


Drivetrain
Right Encoder, phase B
Shaft encoder E4P Digital Yes

Measure right drive side movement


Drivetrain
Gyro
Gyro
 ??
Analog
Yes
Measure drivetrain rotation


Camera
Camera
Network Axis M1013
n/a
Yes
Faces out the kicker side of the robot. So it is facing the goals at the start of the match. It is powered on the entire time the robot is powered on.
n/a Connects to robot's router and needs 5V


 

 

Motors

NOTE: each of these should also have a line in the appropriate (e.g. or or ) (the "IO Map Updated?" column in the following table indicates if this was done)

Subsystem Description
(brief)
Type Model# Controlled By
(//)
IO Map
Updated?
Operation Details
(including when broken)
Notes
Drivetrain Left Front Drive CIM TBD CAN Yes
Run with tank drive controls
Drivetrain Left Rear Drive CIM TBD CAN Yes

Run with tank drive controls

Drivetrain Right Front Drive CIM TBD CAN Yes

Run with tank drive controls

Drivetrain Right Rear Drive CIM TBD CAN Yes

Run with tank drive controls


Shooter front left Kicker arm CIM AM802 CAN
Yes
spins at full power in one direction, spins to 2 points

Note: The jaguars for the kicker motors will first be primed with a command and then commanded to start.

Integration Meeting Thursday claimed CAN;

Shooter mid left Kicker arm CIM AM802 CAN
Yes
spins at full power in one direction, spins to 2 points Jaguars placed on robot model already
Shooter back left Kicker arm Mini CIM 2501BL CAN
Yes
spins at full power in one direction, spins to 2 points
^
Shooter right front Kicker arm Mini CIM 2493BL CAN
Yes
spins at full power in one direction, spins to 2 points ^
Shooter right mid Kicker arm Mini CIM 2493BL CAN
Yes
spins at full power in one direction, spins to 2 points ^
Shooter right back Kicker arm Mini CIM 2493BL CAN
Yes
spins at full power in one direction, spins to 2 points ^
Intake
roller
550/775
TBD
CAN
Yes
4 modes; stopped, spins in, spins out slow, out fast

Shooter
cradle lift
775&PG71
AM 0914 CAN
Yes
lifts cradle and intake arm between two points


Servors/Actuators

NOTE: each of these should also have a line in the appropriate IO Map table (e.g. PWM or Relay) (the "IO Map Updated?" column in the following table indicates if this was done)

Subsystem Description
(brief)
Type Model# Controlled By
(PWM/Relay)
IO Map
Updated?
Operation Details
(including when broken)
Notes
Shooter
Guard Actuator A
Servo
 ?
PWM
Yes
pulls in just before shooting; stays out otherwise to keep ball secure

Shooter

Guard Actuator B

Servo
 ?
PWM Yes
Same as the other one



Lights (on robot)

NOTE: each of these should also have a line in the appropriate IO Map table (e.g. Relay or GPIO or I2C) (the "IO Map Updated?" column in the following table indicates if this was done)

Subsystem Description
(brief)
Type Model# Controlled By
(Relay/GPIO/I2C)
IO Map
Updated?

Location
Used By
(driver/human/alliance)
Operation
Notes
Camera Camera Light Green LED Ring AE60-G15 GPIO Yes
mounted to the camera
Robot
Turned on in autonomous mode to 'light up' reflective tape so the robot can determine the hot goal uses 12V. (http://www.superbrightleds.com/cgi-bin/store/index.cgi?action=DispPage&category=ACCENTS&Page2Disp=%2Fspecs%2FAE.htm)
Intake
Possession
RGB Led Strip TBD GPIO Yes
Intake uprights facing kicker; on P012, about 1 inch from the top to where P109 meets P012. Driver They light up blue when the ball is just barely within our possession (i.e. the ball is squished between the bumpers and the wheels of the intake system) AND we are not Ready to Kick There are a total of four strips of lights. These lights will be ganged/wired together with the Ready to Kick lights.

Original request was for 'all around the robot'; this final layout was reviewed with Elliot D.
Intake Ready to Kick RGB Led Strip TBD GPIO Yes
Front side of both intake uprights opposite kicker (side facing outward); about 20 in. long starting at the top of the arms. Driver They light up green when the cradle is all the way up and we are ready to shoot.
This light takes precedence over the Possession light.
There are a total of four strips of lights. These lights will be ganged/wired together with the Possession lights.

Original request was 'everywhere'; this final layout was reviewed with Elliot D.


Operator Controls

Joystick 1 (Driver Left) Attack3 

Button/Axis Description
(brief)
Operation Notes
1 Turbo Make da robot go fast Both sides 
2 Slow Make da robot go slow Both sides
3
4

5

6 Debug Drive
7 Debug Intake
8
9
10 Debug Kicker

11
Debug Miscellaneous

12 n/a

X-axis
Y-axis Left Wheels Controls both left side motors.
Pushing the joystick forward (away from driver) will move the robot forward.
Pulling the joystick backwards (towards driver) will move the robot backwards.
Shooter is the 'front'
Z-axis

Joystick 2 (Driver Right)

Button/Axis Description
(brief)
Operation Notes
1 Turbo Robot turbo Controls both sides
2 Slow robot slow
3

4  
5

6
7
8
9
10
11
12 n/a
X-axis
Y-axis Right Wheels Controls both right side motors.
Pushing the joystick forward (away from driver) will move the robot forward.
Pulling the joystick backwards (towards driver) will move the robot backwards.
Shooter is the 'front'
Z-axis

Joystick 3 (Aux Driver)

Button/Axis Description
(brief)
Operation
Notes
1 Acquire Ball Intake wheels spin such the ball is moved onto the robot.
2 Broken Mode Guard
When pressed, open kicker guard; else keep it closed
Only works when kicker broken switch is set.
3 Pass Ball Fast

Intake wheels spin such the ball is moved out of the robot.
This will be the fastest it can be, allowing for a long pass.


4 Set Kick Position

While pressed, intake stays at kick level

5
6
7
8
9
10
11
12
X-axis
Broken Mode Kicker
Motion to right turns kicker up; motion to left turns it down

Only works when kicker broken switch is set.

Y-axis Intake

Moves intake in/out (up/down)

When joystick is pushed forward (away from driver) the intake will got out (extend away from robot).
Z-axis

Joystick 4 (Aux Controls/Extended IO)

Button/Axis Description
(brief)
Operation Notes
1 Truss Shot  shoot with enough strength to get over the truss

This will be the 3D printed lightning bolt).

2 High goal shot Shott with enough strength to get into the high goal from a fixed distance. 

This will be the 3D printed Gear. 

3 Manual shoot Shoot at  speed of manual power this is the push in the push potentiometer
4 TBD  nothing yet  
5 Auto Choice 2
will run auto mode 2

The 3 way switch has an up down and off

6 Auto Choice 1
run auto mode 1
7 Broken 1 Intake/Cradle Sensors Broken
left most
8 Broken 2 Kicker Sensors Broken
.
9 Broken 3
.
10 Broken 4 .
11 Broken 5 .
12 reserved   For controls lights. Right most 
X-axis Manual Power The amount of power for a manual shoot. This is used when the Manual Shot button is pressed.
Y-axis Color adjustment Adjust the color of the lights silver knob (potentiometer)
Z-axis Hip check buton  Make noise and flash the noise 0 When not pressed. 1 or higher is on. 




SmartDashboard

Screen Description
(brief)
Operation Notes
Variable Name Data Type
Main Camera Feed This will be a direct feed from the camera. The internet address will be based on the Team Number.

process_img;

is_hot_goal;

img_failed;

raised by robot, lowered by dash to queue processing;

dash raises if goal is hot;

dash raises if bad image;

Main Power meter Meter next to the Camera Feed that shows the manual shooter's power. Would be a bar with a label next to it with a number representing power, scaling from 0 to 100 manual_power
double: range 0 to 1
Main Team Number Numberbox used to set the team number for the robot. This is used for the camera feed. Should remain constant until we change the IP address of the robot. Should not change very much. Control should be disabled unless the user specifically 'asks' to change the number (e.g. have an Edit button, then an OK & Cancel button to make the change) --
--
Main Screen's background When the robot has the ball (i.e. the sensor indicating the ball is 'on the bumper' is tripped), then majority of the background needs to be a color the driver can see (e.g. yellow). When the sensor is not tripped, the background returns to its default color.
flash_screen
boolean: robot sets it; true means yellow, false is normal