Unformatted text preview:

Omni Directional Vision TrackingProject ObjectivesHardware – Vision SystemFeatures of CameraBoard AdditionsGetting an ImageCamera Results:Requirements for Bot Comm.Obsacle Avoidance - HWSlide 10Software ImplementationSlide 12Slide 13Slide 14Slide 15Slide 16Slide 17ChallengesGantt ChartQuestions ?Omni Omni Directional Directional Vision Vision Tracking Tracking Denise FancherDenise FancherKyle HoelscherKyle HoelscherMichael LaytonMichael LaytonEric MillerEric MillerProject ObjectivesProject ObjectivesDesign and integrate an omni-directional Design and integrate an omni-directional vision system for mobile robot navigation vision system for mobile robot navigation and image tracking with the following and image tracking with the following requirements:requirements: 360360° field of view° field of view Track bright objects and respond to movementTrack bright objects and respond to movement Housed on mobile robotHoused on mobile robot Collision avoidanceCollision avoidanceHardware – Vision SystemHardware – Vision System•Modified CMUcam for use with BoebotModified CMUcam for use with Boebot•SX28 micro-controllerSX28 micro-controller•Interfaced with OV6620 Omnivision Interfaced with OV6620 Omnivision CMOS cameraCMOS camera•Basic tracking information is transmitted Basic tracking information is transmitted via TTL logicvia TTL logicFeatures of CameraFeatures of Camera•Track user defined Track user defined color blobscolor blobs•Find the centroid of Find the centroid of the color blobthe color blob•80 x 143 Resolution80 x 143 Resolution•Arbitrary window Arbitrary window sizing via the SW sizing via the SW commandcommand•9600 Baud 9600 Baud CommunicationCommunicationBoard AdditionsBoard Additions•To make an image viewable we added the To make an image viewable we added the following components:following components:•MAX232 chipMAX232 chip•4 – 50 mV Capacitors4 – 50 mV Capacitors•5 x 2 .100 pin header5 x 2 .100 pin header•Serial cableSerial cable•Pin headers for jumper settingsPin headers for jumper settingsGetting an ImageGetting an Image•First add the MAX232 chip, caps, header, First add the MAX232 chip, caps, header, and break the solder on the jumper and break the solder on the jumper connections and add those headers, remove connections and add those headers, remove all jumpers housingsall jumpers housings•Wire the serial cable to connect to the 10 Wire the serial cable to connect to the 10 pin headerpin header•Note: the image in the documentation is Note: the image in the documentation is from the back side of the female DB9from the back side of the female DB9Camera Results:Camera Results:•Note that the image is Note that the image is upside down, this must upside down, this must be taken into acct be taken into acct when codingwhen coding•With the With the hemispherical mirror hemispherical mirror the horizon is very the horizon is very close in the pictureclose in the pictureRequirements for Bot Comm.Requirements for Bot Comm.•Set both jumpers so baud is 9600Set both jumpers so baud is 9600•Remove capacitors and MAX232 chipRemove capacitors and MAX232 chip•Issue SERIN/SEROUT commands to pull Issue SERIN/SEROUT commands to pull datadata•To lock on to the side, use a SW command To lock on to the side, use a SW command and then TW to lock colorand then TW to lock colorObsacle Avoidance - HWObsacle Avoidance - HW•We added sonar for the front object detectionWe added sonar for the front object detection•Larger rangeLarger range•More dependable, less likely to be absorbed by reflective More dependable, less likely to be absorbed by reflective material material •Will not be interfered with by foreign radio frequencyWill not be interfered with by foreign radio frequency•Set bit object detection bit when object within 4 inchesSet bit object detection bit when object within 4 inchesObsacle Avoidance - HWObsacle Avoidance - HW•We used the infrared sensors We used the infrared sensors for the sides of the robotfor the sides of the robot•Transmitter/ReceiverTransmitter/Receiver•Set object detection bit when Set object detection bit when obstacle near sideobstacle near sideSoftware ImplementationSoftware Implementation•Download object coordinates and confidence Download object coordinates and confidence level from camera to BOE-Botlevel from camera to BOE-Bot•Perform collision detectionPerform collision detection•If collision eminent, issue appropriate movement If collision eminent, issue appropriate movement to avoid collision then return to mainto avoid collision then return to main•If no sensors detect objects, calculate If no sensors detect objects, calculate SpinFactor based on object coordinatesSpinFactor based on object coordinates•Based on object coordinates: spin to face Based on object coordinates: spin to face object, do nothing, or move forwardobject, do nothing, or move forward•Return to mainReturn to mainSoftware ImplementationSoftware Implementation•Download object coordinates and confidence Download object coordinates and confidence level from camera to BOE-Botlevel from camera to BOE-Botserout 10, Baud, ["TC",CR]serout 10, Baud, ["TC",CR]serin 9, Baud, [STR RcvData\10]serin 9, Baud, [STR RcvData\10]Confid = RcvData(9)Confid = RcvData(9)Software ImplementationSoftware Implementation•Perform collision detectionPerform collision detection PulseWidth=0PulseWidth=0 PULSOUT SonarTrigger, 9PULSOUT SonarTrigger, 9'10 uS trigger pulse'10 uS trigger pulse PULSIN SonarEcho, 1, PulseWidthPULSIN SonarEcho, 1, PulseWidth'measure distance to target'measure distance to target Distance = PulseWidth ** 8886 Distance = PulseWidth ** 8886 'divide by 7.3746'divide by 7.3746 IF Distance <= SOnarComfortDistance THEN BitZeroIF Distance <= SOnarComfortDistance THEN BitZero IF Distance > SOnarComfortDistance THEN BitOneIF Distance > SOnarComfortDistance THEN BitOne BitOne:BitOne: 'set state.bit0 to 1'set state.bit0 to 1 State.bit0=1State.bit0=1 goto afterSonargoto afterSonar BitZero:BitZero: 'set state.bit0 to 0'set state.bit0 to 0 State.bit0=0State.bit0=0 goto afterSonargoto afterSonarSoftware ImplementationSoftware Implementation•Perform collision detection Cont…Perform collision detection Cont…afterSonar:afterSonar: 'check_IR'check_IR FREQOUT LeftIROutputPin, 1, 10212FREQOUT LeftIROutputPin, 1, 10212'Check left IR'Check left IR State.bit2 = in7State.bit2 = in7


View Full Document

TAMU CSCE 483 - omni-final

Download omni-final
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view omni-final and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view omni-final 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?