2010:Autonomous: Difference between revisions

From 1511Wookiee
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
NOTE: this is a work in progress
<u>'''Controls/Sensors needed'''</u>
 
*Control knob to set start delay<br>
*Robot digital i/o for beater brush
*Robot digital i/o for band sensor
*???&nbsp;to drive camera tilt servo
*??? to read magnetic pot for kicker position
*Robot digital i/o for two limit swtiches on the kicker


<br> <u>'''All Zones'''</u>  
<br> <u>'''All Zones'''</u>  


*Variable Delay to start
*Turn off on beater brush
*Option that does nothing
*Option that does nothing


Line 16: Line 21:


*<u>Option 1</u> - dead reckoning  
*<u>Option 1</u> - dead reckoning  
**Delay based on control's setting<br>
**Turn on beater brush
**Set kicking force to amount needed for the near zone  
**Set kicking force to amount needed for the near zone  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
Line 24: Line 31:


*<u>Option 2</u> - camera guided  
*<u>Option 2</u> - camera guided  
**Delay based on control's setting<br>
**Turn on beater brush
**Set kicking force to amount needed for the near zone  
**Set kicking force to amount needed for the near zone  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
Line 51: Line 60:


*<u>Option 1</u> - dead reckoning  
*<u>Option 1</u> - dead reckoning  
**Delay based on control's setting<br>
**Turn on beater brush
**Set kicking force to amount needed for the middle zone  
**Set kicking force to amount needed for the middle zone  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
Line 62: Line 73:


*<u>Option 2</u> - camera guided  
*<u>Option 2</u> - camera guided  
**Delay based on control's setting<br>
**Turn on beater brush
**Set kicking force to amount needed for the middle zone  
**Set kicking force to amount needed for the middle zone  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**User camera to make sure we are aligned with the goal  
**Use camera to make sure we are aligned with the goal  
**Kick ball (Score!!!)  
**Kick ball (Score!!!)  
**Turn '''TBD&nbsp;'''degrees towards Ball 2  
**Turn '''TBD&nbsp;'''degrees towards Ball 2  
Line 82: Line 95:


*Placement on field:  
*Placement on field:  
**Ball 1's 9x9 grid position: near center line, near robot<br>  
**Ball 1's 9x9 grid position: near the edge of the field, near robot<br>  
**Ball 2's 9x9 grid position: near center line, middle<br>  
**Ball 2's 9x9 grid position: near the edge of the field, middle<br>  
**Ball 3's 9x9 grid position: near center line, near bump  
**Ball 3's 9x9 grid position: near the edge of the field, near bump  
**Robot goes against bump, not angled, so there is a straight line from the middle of the robot to all three balls
**Robot goes against bump, not angled, so there is a straight line from the middle of the robot to all three balls(next to ramp in front of goal)<br>


<br>  
<br>  


*<u>Option 1</u> - dead reckoning  
*<u>Option 1</u> - dead reckoning  
**Set kicking force to amount needed for the middle zone  
**Delay based on control's setting<br>
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Turn on beater brush
**Kick ball (Score!!!)
**Set kicking force to amount needed for the far zone  
**Turn '''TBD&nbsp;'''degrees towards Ball 2
**Drive straight for '''TBD''' distance until Ball sensor detects ball 1<br>
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Kick ball  
**Turn -'''TBD&nbsp;'''degrees to align with goal
**Drive straight for '''TBD''' distance until Ball sensor detects ball 2
**Kick ball (Score!!!)
**Kick ball  
**Backup '''TBD'''&nbsp;distance (to get out of the way of other robots)
**Drive straight for '''TBD'''&nbsp;distance until Ball sensor detects ball 3
**Kick ball<br>
**Title camera down<br>
**Title camera down<br>


*<u>Option 2</u> - camera guided  
*<u>Option 2</u> - camera guided (if we can kick the entire length of the field)<br>
**Set kicking force to amount needed for the middle zone  
**Delay based on control's setting<br>
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Turn on beater brush
**User camera to make sure we are aligned with the goal
**Set kicking force to amount needed for the far zone  
**Kick ball (Score!!!)
**Drive straight for '''TBD''' distance until Ball sensor detects the ball 1
**Turn '''TBD&nbsp;'''degrees towards Ball 2  
**Turn/rotate using camera to find target
**Drive straight for '''TBD''' distance until Ball sensor detects the ball  
**Kick ball  
**Turn using camera to find the target  
**'Reverse' Turn/rotate the same amount it took to find the target (to be aligned with Ball 2)
**Kick ball (Score!!!)  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball 2
**Backup '''TBD'''&nbsp;distance (to get out of the way of other robots)
**Turn/rotate using camera to find target  
**Kick ball  
**'Reverse' Turn/rotate the same amount it took to find the target (to be aligned with Ball 3)  
**Drive straight for '''TBD''' distance until Ball sensor detects the ball 3
**Turn/rotate using camera to find target
**Kick ball
**Tilt camera down<br>
**Tilt camera down<br>
*Balls in straight line to make it easier to kick?
*Start in front of goal?


*<u>Alternate endings</u> (low priority)  
*<u>Alternate endings</u> (low priority)  
**Block the opposing goal  
**Block the opposing goal (this can be done by doing nothing)<br>
**Drive to the bump get ready to go over
**Drive to the bump get ready to go over (this can be done by driving straight for TBD&nbsp;distance)<br>
 
<br>
 
<br>  
 
*Sensor to check center line and stop?
*Ball lift?


More Organized Ideas <br> Far Zone<br>1. Move up to ball x inches <br>2. Use camera to angle aim x degrees to mid zone or near zone <br>3. Use kicker mechanism to kick ball using x amount of force<br>4. Turn to next ball x inches<br>5. Rotate x degrees to line up in front of ball <br>6. Use kicker mechanism to kick ball using x amount of force<br>7.Repeat this process with the third ball<br>8.Rotate x degrees to line up with opposing goal<br>9.Move up to opposing goal x inches<br>10.Rotate x degrees to block opposing goal<br>11. Rotate x degrees to line up with bump to middle zone <br>12. Move up to bump to middle zone x inches <br>
<br>

Revision as of 12:16, 30 January 2010

Controls/Sensors needed

  • Control knob to set start delay
  • Robot digital i/o for beater brush
  • Robot digital i/o for band sensor
  • ??? to drive camera tilt servo
  • ??? to read magnetic pot for kicker position
  • Robot digital i/o for two limit swtiches on the kicker


All Zones

  • Option that does nothing


Near Zone - Kick ball in goal

  • Placement on field:
    • Ball's 9x9 grid position: Near the edge of the field and near the goal (corner of grid)
    • Robot goes against bump and angled so there is a straight line from the middle of the robot to the ball to the goal (approx TBD feet from the side of the field)
  • Option 1 - dead reckoning
    • Delay based on control's setting
    • Turn on beater brush
    • Set kicking force to amount needed for the near zone
    • Drive straight for TBD distance until Ball sensor detects the ball
    • Drive straight for TBD distance (to get closer to goal)
    • Kick ball (Score!!!)
    • Backup TBD distance (to get out of the way of other robots so they can kick balls into goal)
    • Tilt camera
  • Option 2 - camera guided
    • Delay based on control's setting
    • Turn on beater brush
    • Set kicking force to amount needed for the near zone
    • Drive straight for TBD distance until Ball sensor detects the ball
    • Drive towards goal, up to TBD distance, guided by the camera (e.g. turn at an angle)
    • Kick ball (Score!!!)
    • Backup TBD distance (to get out of the way of other robots so they can kick balls into goal)
    • Tilt camera down
  • Option 3 - if camera can see balls(this is low priority)
    • Do option 1 or 2
    • Search for more balls (ones kicked into near zone from other zones)
      • Tip camera down
      • Drive back-n-forth/side-to-side to see ball
      • Drive to ball, until Ball sensor detects the ball
      • Drive towards goal, guided by the camera
      • Kick ball
      • Repeat by looking for next ball


Middle Zone

  • Placement on field:
    • Ball 1's 9x9 grid position: Next to center line, Near the bump with the robot (corner of grid)
    • Ball 2's 9x9 grid position: center
    • Robot goes against bump and angled so there is a straight line from the middle of the robot to Ball 1 to the goal (approx TBD feet from the side of the field)
  • Option 1 - dead reckoning
    • Delay based on control's setting
    • Turn on beater brush
    • Set kicking force to amount needed for the middle zone
    • Drive straight for TBD distance until Ball sensor detects the ball
    • Kick ball (Score!!!)
    • Turn TBD degrees towards Ball 2
    • Drive straight for TBD distance until Ball sensor detects the ball
    • Turn -TBD degrees to align with goal
    • Kick ball (Score!!!)
    • Backup TBD distance (to get out of the way of other robots)
    • Title camera down
  • Option 2 - camera guided
    • Delay based on control's setting
    • Turn on beater brush
    • Set kicking force to amount needed for the middle zone
    • Drive straight for TBD distance until Ball sensor detects the ball
    • Use camera to make sure we are aligned with the goal
    • Kick ball (Score!!!)
    • Turn TBD degrees towards Ball 2
    • Drive straight for TBD distance until Ball sensor detects the ball
    • Turn using camera to find the target
    • Kick ball (Score!!!)
    • Backup TBD distance (to get out of the way of other robots)
    • Tilt camera down
  • Alternate endings (low priority)
    • Be in position to block tunnel (would need a sensor to make sure we don't go over the center line)
    • Look for additional balls (would need to be able to detect balls with the camera)


Far Zone

  • Placement on field:
    • Ball 1's 9x9 grid position: near the edge of the field, near robot
    • Ball 2's 9x9 grid position: near the edge of the field, middle
    • Ball 3's 9x9 grid position: near the edge of the field, near bump
    • Robot goes against bump, not angled, so there is a straight line from the middle of the robot to all three balls(next to ramp in front of goal)


  • Option 1 - dead reckoning
    • Delay based on control's setting
    • Turn on beater brush
    • Set kicking force to amount needed for the far zone
    • Drive straight for TBD distance until Ball sensor detects ball 1
    • Kick ball
    • Drive straight for TBD distance until Ball sensor detects ball 2
    • Kick ball
    • Drive straight for TBD distance until Ball sensor detects ball 3
    • Kick ball
    • Title camera down
  • Option 2 - camera guided (if we can kick the entire length of the field)
    • Delay based on control's setting
    • Turn on beater brush
    • Set kicking force to amount needed for the far zone
    • Drive straight for TBD distance until Ball sensor detects the ball 1
    • Turn/rotate using camera to find target
    • Kick ball
    • 'Reverse' Turn/rotate the same amount it took to find the target (to be aligned with Ball 2)
    • Drive straight for TBD distance until Ball sensor detects the ball 2
    • Turn/rotate using camera to find target
    • Kick ball
    • 'Reverse' Turn/rotate the same amount it took to find the target (to be aligned with Ball 3)
    • Drive straight for TBD distance until Ball sensor detects the ball 3
    • Turn/rotate using camera to find target
    • Kick ball
    • Tilt camera down
  • Alternate endings (low priority)
    • Block the opposing goal (this can be done by doing nothing)
    • Drive to the bump get ready to go over (this can be done by driving straight for TBD distance)