Omni Directional Vision Tracking Denise Fancher Kyle Hoelscher Michael Layton Eric Miller.

Slides:



Advertisements
Similar presentations
Robot Convoy Anees Elhammali Michael Malluck John Parsons Namrata Sopory.
Advertisements

Project Title Here IEEE UCSD Overview Robo-Magellan is a robotics competition emphasizing autonomous navigation and obstacle avoidance over varied, outdoor.
Greg Beau SerajAnanya. Outline  Project overview  Project-specific success criteria  Block diagram  Component selection rationale  Packaging design.
Boe-bots and STEM Boe-bots and STEM – This sectional will introduce participants to a programmable robot that is useful for engaging students in building.
Senior Computer Engineering Project
Autonomous Quadrocopter Proposal Brad Bergerhouse, Nelson Gaske, Austin Wenzel Dr. Malinowski.
OutLine Overview about Project Wii Robot Escaper Robot Problems and Solutions Demo.
ECE 4006 Final Presentation Group Members – John Sellers - Doug Messick - Kelvin Bunn - Sean James Group Name: Altera NIOS Robot Group School of Electrical.
Omni-Directional Vision System for Mobile Robots Critical Design Review Denise Fancher Kyle Hoelscher Michael Layton Eric Miller.
Omni-Directional Vision System Team Members: Denise Fancher Kyle Hoelscher Michael Layton Eric Miller.
Capstone Design Project Plan Team SAUSAGES Ryan Campbell Anne Carrier Gonzalo Gonzalez Bryan Grider Steve Kerkmaz Ziad Mohieddin EE 401 – EE Design I Instructor.
Efficient Path Determining Robot RIT Computer Engineering Senior Design Project Jamie Greenberg Jason Torre October 26, 2004 A motorized robot will navigate.
ECE Department: University of Massachusetts, Amherst ECE 354 Spring 2006 Lab 2: Capturing and Displaying Digital Image.
CMUcam Tom Kneeland. CMUcam – What is it? Digital Camera with an onboard microcontroller Track a blob based on programmable color thresholds Calculate.
Hide-n-seek Robot Ivan See & Karen Tsang Presentation Date: 9/18/03.
Sensors Material taken from Robotics with the Boe-Bot.
Design and Implementation of Metallic Waste Collection Robot
ECE 477 F INAL P RESENTATION T EAM 10  S PRING 2013 Ruiyang Lin Vipul Bhat Julia Liston Krithika Iyer.
Internet Piloted Blimp Alfredo Guevara, Jr. Advisor: Professor Spinelli March 1, 2008.
The CarBot Project Group Members: Chikaod Anyikire, Odi Agenmonmen, Robert Booth, Michael Smith, Reavis Somerville ECE 4006 November 29 th 2005.
Electromechanical Systems “Robotic Sorting System” Brent GuyJonathan Penney.
Fuzzy control of a mobile robot Implementation using a MATLAB-based rapid prototyping system.
Autonomous Surface Navigation Platform Michael Baxter Angel Berrocal Brandon Groff.
Program ultrasonic range sensor in autonomous mode
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class 2.
“Little Homie” Presentation Jesse Martin 12/04/02 Intelligent Machine Design Lab.
Control Some Material taken from RobotSubsumption.pdf.
Anees Elhammali Michael Malluck John Parsons Namrata Sopory
Team Members: Ruichen Zhao Xhoua Lor Jen-Yuan Hsiao John Marion.
Autonomous Robot Project Lauren Mitchell Ashley Francis.
Assembling the CheapBot Line Follower In 8 easy steps.
Today’s Agenda 1.Scribbler Program Assignment 1.Project idea due next class 2.Program demonstration due Wednesday, June 3 2.Attendance & lab pair groupings.
Sensors Material taken from Robotics with the Boe-Bot.
Multi-Vehicles Formation Control Exploring a Scalar Field Polytechnic University Department of Mechanical, Aerospace, and Manufacturing Engineering Polytechnic.
Phong Le (EE) Josh Haley (CPE) Brandon Reeves (EE) Jerard Jose (EE)
20 pt 30 pt 40 pt 50 pt 10 pt 20 pt 30 pt 40 pt 50 pt 10 pt 20 pt 30 pt 40 pt 50 pt 10 pt Review 1Review 2Review 3Review 4Review 5 10 pt 20 pt 30 pt 40.
Juan David Rios IMDL FALL 2012 Dr. Eric M. Schwartz – A. Antonio Arroyo September 18/2012.
CMUcam for µCHIP (Micro-Controlled High-tech Independent Putter)
Material taken from Robotics with the Boe-Bot
RoboNova 1.
Daredevil Robot Direction Module (DRDM) Senior Design II Midterm Presentation.
Digital Electronics The Boe-Bot and Servo Motors.
PHY 235 Robotics Workshop Day 5 Distance Sensing Using The Ultrasonic Ping Sensor.
Prime Mobility Group Group Members: Fredrick Baggett William Crick Sean Maxon Advisor: Dr. Elliot Moore.
Final Presentation Prime Mobility Group Group Members: Fredrick Baggett William Crick Sean Maxon Project Advisor: Dr. Elliot Moore.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class3/Lab 2.
TechKnowTone Contents: Sensor Features Sensor Connections Sample Sketch Questions …Sensor Features… Arduino Coding – Distance Sensors.
GraffitiBot Sensor Report Andy Kobyljanec EEL 5666C March 25, 2008.
Software Narrative Autonomous Targeting Vehicle (ATV) Daniel Barrett Sebastian Hening Sandunmalee Abeyratne Anthony Myers.
Preliminary Design Review By: Alireza Veiseh Anh-Thu Thai Luai Abou-Emara Peter Tsang.
Obstacle Detection. In the previous program the robot moves forward and then checks for something in the way. As we observed it only checks for things.
Bullfighting Autonomous Robot “BULL” IMDL Spring 2010 Aminatu Oyebanjo April 8, 2010.
Final Design Review By: Alireza Veiseh Anh-Thu Thai Luai Abou-Emara Peter Tsang.
DEPARTMENT OF EEE IFET COLLEGE OF ENGINEERING VILLUPURAM,TAMIL NADU,INDIA Project proposal For IEEE CS 70 th Anniversary Student Challenge On PATHLINE.
Vision Controlled Nios Robot ViCoN-Bot™ Team Members Jeff Vickers (gte613i) Andre Moore (gt6875a) Kevin Walker (gte143x) K. Bosompem (gte616r) July 23,
CORDLESS MOUSE FEATURES BY TV REMOTE USING PIC MICROCONTROLLER
Obstacle avoiding robot { pixel }
ULTRASONIC DISTANCE METER USING 8051
ECE Computer Engineering Design Project
OEM BASIC Stamp 2sx 220 Ohm.
Some Material taken from RobotSubsumption.pdf
Remote Controlled Smart Socket
Material taken from Robotics with the Boe-Bot
Sasha Popov November 16, 2018 iRobot Create.
Eddie Chan Behnaz Ghouchani Golnaz Ghouchani
Some Material taken from RobotSubsumption.pdf
ECE 477 Design Review Group 10  Spring 2005 I, Robotic Waitress
Fevzi Ozaydin & Violet Mwaffo
Eddie Chan Behnaz Ghouchani Golnaz Ghouchani
Presentation transcript:

Omni Directional Vision Tracking Denise Fancher Kyle Hoelscher Michael Layton Eric Miller

Project Objectives Design and integrate an omni-directional vision system for mobile robot navigation and image tracking with the following requirements: 360° field of view 360° field of view Track bright objects and respond to movement Track bright objects and respond to movement Housed on mobile robot Housed on mobile robot Collision avoidance Collision avoidance

Hardware – Vision System Modified CMUcam for use with Boebot Modified CMUcam for use with Boebot SX28 micro-controller SX28 micro-controller Interfaced with OV6620 Omnivision CMOS camera Interfaced with OV6620 Omnivision CMOS camera Basic tracking information is transmitted via TTL logic Basic tracking information is transmitted via TTL logic

Features of Camera Track user defined color blobs Track user defined color blobs Find the centroid of the color blob Find the centroid of the color blob 80 x 143 Resolution 80 x 143 Resolution Arbitrary window sizing via the SW command 9600 Baud Communication

Board Additions To make an image viewable we added the following components: To make an image viewable we added the following components: MAX232 chip MAX232 chip 4 – 50 mV Capacitors 4 – 50 mV Capacitors 5 x pin header 5 x pin header Serial cable Serial cable Pin headers for jumper settings Pin headers for jumper settings

Getting an Image First add the MAX232 chip, caps, header, and break the solder on the jumper connections and add those headers, remove all jumpers housings First add the MAX232 chip, caps, header, and break the solder on the jumper connections and add those headers, remove all jumpers housings Wire the serial cable to connect to the 10 pin header Wire the serial cable to connect to the 10 pin header Note: the image in the documentation is from the back side of the female DB9 Note: the image in the documentation is from the back side of the female DB9

Camera Results: Note that the image is upside down, this must be taken into acct when coding With the hemispherical mirror the horizon is very close in the picture

Requirements for Bot Comm. Set both jumpers so baud is 9600 Set both jumpers so baud is 9600 Remove capacitors and MAX232 chip Remove capacitors and MAX232 chip Issue SERIN/SEROUT commands to pull data Issue SERIN/SEROUT commands to pull data To lock on to the side, use a SW command and then TW to lock color To lock on to the side, use a SW command and then TW to lock color

Obsacle Avoidance - HW We added sonar for the front object detection We added sonar for the front object detection Larger range Larger range More dependable, less likely to be absorbed by reflective material More dependable, less likely to be absorbed by reflective material Will not be interfered with by foreign radio frequency Will not be interfered with by foreign radio frequency Set bit object detection bit when object within 4 inches Set bit object detection bit when object within 4 inches

Obsacle Avoidance - HW We used the infrared sensors for the sides of the robot We used the infrared sensors for the sides of the robot Transmitter/Receiver Transmitter/Receiver Set object detection bit when obstacle near side Set object detection bit when obstacle near side

Software Implementation Download object coordinates and confidence level from camera to BOE-BotDownload object coordinates and confidence level from camera to BOE-Bot Perform collision detectionPerform collision detection If collision eminent, issue appropriate movement to avoid collision then return to mainIf collision eminent, issue appropriate movement to avoid collision then return to main If no sensors detect objects, calculate SpinFactor based on object coordinatesIf no sensors detect objects, calculate SpinFactor based on object coordinates Based on object coordinates: spin to face object, do nothing, or move forwardBased on object coordinates: spin to face object, do nothing, or move forward Return to mainReturn to main

Software Implementation Download object coordinates and confidence level from camera to BOE-Bot Download object coordinates and confidence level from camera to BOE-Bot serout 10, Baud, ["TC",CR] serin 9, Baud, [STR RcvData\10] Confid = RcvData(9)

Software Implementation Perform collision detection Perform collision detection PulseWidth=0 PulseWidth=0 PULSOUT SonarTrigger, 9'10 uS trigger pulse PULSOUT SonarTrigger, 9'10 uS trigger pulse PULSIN SonarEcho, 1, PulseWidth'measure distance to target PULSIN SonarEcho, 1, PulseWidth'measure distance to target Distance = PulseWidth ** 8886 'divide by Distance = PulseWidth ** 8886 'divide by IF Distance <= SOnarComfortDistance THEN BitZero IF Distance <= SOnarComfortDistance THEN BitZero IF Distance > SOnarComfortDistance THEN BitOne IF Distance > SOnarComfortDistance THEN BitOne BitOne: BitOne: 'set state.bit0 to 1 'set state.bit0 to 1 State.bit0=1 State.bit0=1 goto afterSonar goto afterSonar BitZero: BitZero: 'set state.bit0 to 0 'set state.bit0 to 0 State.bit0=0 State.bit0=0 goto afterSonar goto afterSonar

Software Implementation Perform collision detection Cont… Perform collision detection Cont…afterSonar: 'check_IR 'check_IR FREQOUT LeftIROutputPin, 1, 10212'Check left IR FREQOUT LeftIROutputPin, 1, 10212'Check left IR State.bit2 = in7 State.bit2 = in7 FREQOUT RightIROutputPin, 1, 'Check right IR FREQOUT RightIROutputPin, 1, 'Check right IR State.bit1 = in0 State.bit1 = in0 IF ( (State.bit2=1) AND (State.bit1=1) AND (State.bit0=1)) THEN CalcSpinFactor IF ( (State.bit2=1) AND (State.bit1=1) AND (State.bit0=1)) THEN CalcSpinFactor 'if previous staement not taken, then must avoid obstacle 'if previous staement not taken, then must avoid obstacle goto collisionAVOID goto collisionAVOID

Software Implementation Collision Avoidance Collision Avoidance '-----State Cases----- '-----State Cases----- '0=000=blocked left, right, front '0=000=blocked left, right, front IF ( (State.bit2=0) AND (State.bit1=0) AND (State.bit0=0)) THEN Backup IF ( (State.bit2=0) AND (State.bit1=0) AND (State.bit0=0)) THEN Backup '1=001=blocked left, right '1=001=blocked left, right IF ( (State.bit2=0) AND (State.bit1=0) AND (State.bit0=1)) THEN Backup IF ( (State.bit2=0) AND (State.bit1=0) AND (State.bit0=1)) THEN Backup '2=010=blocked left, front '2=010=blocked left, front IF ( (State.bit2=0) AND (State.bit1=1) AND (State.bit0=0)) THEN Right90 IF ( (State.bit2=0) AND (State.bit1=1) AND (State.bit0=0)) THEN Right90 '3=011=blocked left only '3=011=blocked left only IF ( (State.bit2=0) AND (State.bit1=1) AND (State.bit0=1)) THEN GradualRight IF ( (State.bit2=0) AND (State.bit1=1) AND (State.bit0=1)) THEN GradualRight '4=100=blocked right, front '4=100=blocked right, front IF ( (State.bit2=1) AND (State.bit1=0) AND (State.bit0=0)) THEN Left90 IF ( (State.bit2=1) AND (State.bit1=0) AND (State.bit0=0)) THEN Left90 '5=101=blocked right only '5=101=blocked right only IF ( (State.bit2=1) AND (State.bit1=0) AND (State.bit0=1)) THEN GradualLeft IF ( (State.bit2=1) AND (State.bit1=0) AND (State.bit0=1)) THEN GradualLeft '6=110=blocked front only '6=110=blocked front only IF ( (State.bit2=1) AND (State.bit1=1) AND (State.bit0=0)) THEN BackLeftAvoid IF ( (State.bit2=1) AND (State.bit1=1) AND (State.bit0=0)) THEN BackLeftAvoid '7=111=clear -- no change in direction '7=111=clear -- no change in direction

Software Implementation Calculate SpinFactor based on object coordinates Calculate SpinFactor based on object coordinates If ((RCVData(3) 20)) Then BigSpin If ((RCVData(3) 20)) Then BigSpin If (RCVData(2) 20)) Then CalcFactorLow If (RCVData(2) 20)) Then CalcFactorLow If (RCVData(2)>40 AND (Confid > 20)) Then CalcFactorHigh If (RCVData(2)>40 AND (Confid > 20)) Then CalcFactorHighBigSpin: SpinFactor = (76 - RCVData(3)) SpinFactor = (76 - RCVData(3)) goto IfStatements CalcFactorLow: SpinFactor = 40-RCVData(2) SpinFactor = 40-RCVData(2) goto IfStatements CalcFactorHigh: SpinFactor = RCVData(2)-40 SpinFactor = RCVData(2)-40 goto IfStatements

Software Implementation Based on object coordinates: spin to face object, do nothing, or move forward Based on object coordinates: spin to face object, do nothing, or move forward If ((RCVData(3) > 75) And (RCVData(3) 35) And (Confid > 20)) Then NoSpin If ((RCVData(2) 20)) Then RightSpin If ((RCVData(2) >= 45) And (Confid > 20)) Then LeftSpin If ((RCVData(3) > 116) And (Confid > 20)) Then Forward LeftSpin: debug "Left spin",CR for pulse_timer = 0 to SpinFactor pulsout rtwheel, 1450 pulsout lftwheel, 1456 pause 20 next goto main RightSpin: debug "right spin",CR for pulse_timer = 0 to SpinFactor pulsout rtwheel, 2250 pulsout lftwheel, 2256 pause 20 next goto main

Challenges Camera image dump to PC Camera image dump to PC Lock on issues Lock on issues Coding the basic stamp Coding the basic stamp

Gantt Chart

Questions ?