Chapter 5: Tactile Navigation With Whiskers
description
Transcript of Chapter 5: Tactile Navigation With Whiskers
1
Chapter 5: Tactile Navigation With Chapter 5: Tactile Navigation With WhiskersWhiskers
Presentation based on:"Robotics with the Boe-Bot"By Andy LindsayParallax, Inc
Presentation developed by:Presentation developed by:Martin A. HebelMartin A. HebelSouthern Illinois University CarbondaleSouthern Illinois University CarbondaleCollege of Applied Sciences and ArtsCollege of Applied Sciences and ArtsElectronic Systems TechnologiesElectronic Systems Technologies7/6/04
2
Tactile Whiskers as switchesTactile Whiskers as switches
3
4
5
6
Whisker "switch" open and closedWhisker "switch" open and closed
7
Code to View Whisker Switch Code to View Whisker Switch StatesStatesCode:
DO: DEBUG CLS, ? IN5, ? IN7 Pause 100LOOP
See "TestWhisker.bs2"
8
Adding LED IndicationAdding LED Indication
9
Code using IF…THENCode using IF…THEN
10
AI – Escaping CornersAI – Escaping Corners' --- Detect Consecutive Alternate Corners ------------------------' See the "How EscapingCorners.bs2 Works" section that follows this
program.
IF (IN7 <> IN5) THEN ' One or other is pressed. IF (Old7 <> IN7) AND (Old5 <> IN5) THEN ' Different from previous. counter = counter + 1 ' Alternate whisker count + 1. old7 = IN7 ' Record this whisker press old5 = IN5 ' for next comparison. IF (counter > 4) THEN ' If alternate whisker count = 4, counter = 1 ' reset whisker counter GOSUB Back_Up ' and execute a U-turn. GOSUB Turn_Left GOSUB Turn_Left ENDIF ' ENDIF counter > 4. ELSE ' ELSE (old7=IN7) or (old5=IN5), counter = 1 ' not alternate, reset counter. ENDIF ' ENDIF (old7<>IN7) and ' (old5<>IN5). ENDIF ' ENDIF (IN7<>IN5).
11
Moving ForwardMoving Forward
12
Simplifying Navigation with Simplifying Navigation with SubroutinesSubroutinesGOSUB – Used to temporarily
branch to another a section of code.Return – Used to return to where it
jumped from.See program "OneSubroutine.bs2"
13
Roaming with WhiskersRoaming with WhiskersSee "RoamingWithWhiskers.bs2"