Visie-gebaseerde Obstakel-Vermijdende Mobiele Robot op Raspberry Pi
Samenvatting
Dit rapport presenteert het ontwerp en de implementatie van een goedkope mobiele robot die computer vision gebruikt om obstakels te detecteren en te vermijden. Aangedreven door een Raspberry Pi en een USB-webcam, toont het systeem aan hoe goedkope hardware autonoome navigatie in binnenomgevingen, zoals magazijnen, zonder menselijke operators kan mogelijk maken.
Inleiding
Commerciële autonome robots zijn vaak duur en op één omgeving afgestemd, gebaseerd op passieve sensoren zoals ultrasone of infrarode modules voor botsvermijding (Wang et al., 2011). Recente vooruitgang in embedded computing stelt het gebruik van high-performance visie-algoritmen op goedkope platforms toe. Een visie-gebaseerde benadering kan obstakels detecteren voordat ze in nabijheid komen, wat een robuustere oplossing biedt voor binnennavigatie.
Voorgestelde Oplossing & Artefact
Het doel is een autonoom robot te bouwen dat obstakels detecteert via een USB-webcam aangesloten op een Raspberry Pi. Het ontwikkelingsproces omvatte:
- Een computer-vision algoritme ontwerpen met SimpleCV om obstakels te identificeren.
- Het algoritme naar de Raspberry Pi porte<|vq_11361|>rten.
- DC-motor besturing implementeren via Python GPIO.
- Systeemprestaties testen en evalueren op de Pi.
Belangrijkste doelen zijn bereikt:
- Detectiebereik instelbaar via algoritmeparameters.
- Obstakels gemarkeerd met een constant-grootte cirkel voor eenvoudige identificatie.
- SimpleCV interfaceert met de Pi om twee DC-motoren aan te sturen.
- Systeemprestaties gevalideerd bij verschillende obstakelafstanden.
Hardware en Software Stack
Hardware
- Raspberry Pi Kit
- USB-webcam
- Twee DC-motoren
- H-brug motordriver
- Chassis en wiring
- Breadboard en kabels
Software
- SimpleCV Python bibliotheek
- Ubuntu / Raspberry OS (Raspbian)
- Python 2.7
Computer-Vision Algoritme Overzicht
Het algoritme werd eerst ontwikkeld op een Ubuntu-laptop en later naar de Pi geport, gebruikmakend van Linux-compatibiliteit. Het identificeert een cirkelvormige marker op obstakels, binariseert de afbeelding om de vorm te isoleren, en berekent de straal om de afstand te schatten. Het scherm wordt verdeeld in drie verticale zones; de horizontale positie van de cirkel bepaalt de stuuractie van de robot.
Omdat de Raspberry Pi's 700 MHz processor en 512 MB RAM high-resolutie verwerking beperken, werd een 320×240 resolutie gekozen om detectienauwkeurigheid en framerate-stabiliteit te balanceren.
Experimentele Opzet
Een experimentele opstelling meet de relatie tussen de cirkel's pixeloppervlakte en de fysieke afstand van de robot. Door het obstakel dichterbij of verder weg te bewegen, werd de algoritme's pixel-naar-afstand mapping gekalibreerd, wat nauwkeurige afstandsschatting vanuit een enkel camerabeeld mogelijk maakt.
Systeem Flowchart
In de operationele flow streamt de USB-webcam frames naar de Pi. SimpleCV scant elk frame naar de cirkelvormige marker. Bij detectie berekent de Pi de markerpositie en stuurt de H-brug aan om de motoren links, rechts of vooruit te rijden.
Conclusie
Het project demonstreert dat een Raspberry Pi, een USB-webcam en SimpleCV een haalbare, kosteneffectieve obstakel-vermijdingssysteem kunnen vormen geschikt voor indoor robotica-toepassingen. Toekomstig werk kan het algoritme uitbreiden naar ongemarkeerde obstakels en sensorfusie integreren voor verbeterde betrouwbaarheid.
Productieproces
- Mobile samenwerking: Onderhoudsdowntime reduceren en wereldwijde operaties boosten
- Bouw een Muur-Vermijdende Robot met Raspberry Pi – Stap-voor-Stap Gids
- gatoBot: Raspberry Pi Zero W Web-gecontroleerde Robot met Live Videostreaming
- Recycling Sorteerrobot Aangedreven door Google Coral Edge TPU
- AI-gestuurd obstakelvermijdingssysteem met Arduino en ultrasone sensoren
- UV-desinfectierobot met Arduino Mega: Op afstand bestuurd germicidaal systeem
- Servo-gestuurde obstakelvermijdende robot: Bouw met Arduino & HC-SR04
- Een eenvoudige obstakelsensor bouwen met Arduino – IR LED & Fotodiodo Tutorial
- AI-gestuurde lijnvolgende robot op Arduino Nano
- KUKA KMR iiwa: Mobiele Collaboratieve Robotarm voor Industry 4.0
- Robotvisie in de Industrie: Van Visie naar Zelf-Programmering