Inhoudsopgave:
- Stap 1: Projectoverzicht
- Stap 2: Achtergrondonderzoek
- Stap 3: Ontwerpvereisten
- Stap 4: Engineering Design en Equipment Selection
- Stap 5: Apparatuurselectie: interactiemethode
- Stap 6: Apparatuurselectie: microcontroller
- Stap 7: Apparatuurselectie: sensoren
- Stap 8: Apparatuurselectie: Software
- Stap 9: Apparatuurselectie: andere onderdelen
- Stap 10: Systeemontwikkeling: het hardwareonderdeel maken 1
- Stap 11: Systeemontwikkeling: de hardware maken deel 2
- Stap 12: Systeemontwikkeling: het systeem programmeren Deel 1
Video: Sonar, Lidar en Computer Vision op microcontrollers gebruiken om slechtzienden te helpen: 16 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Ik wil een intelligente ‘stok’ maken die mensen met een visuele beperking veel meer kan helpen dan bestaande oplossingen. De wandelstok kan de gebruiker op de hoogte stellen van objecten aan de voorkant of aan de zijkanten door een geluid te maken in de hoofdtelefoon van het surround-geluidstype. De wandelstok zal ook een kleine camera en LIDAR (Light Detection and Ranging) hebben, zodat hij objecten en mensen in de kamer kan herkennen en de gebruiker kan waarschuwen via de koptelefoon. Om veiligheidsredenen blokkeert de hoofdtelefoon niet al het geluid, omdat er een microfoon is die alle onnodige geluiden kan filteren en de autoclaxons en mensen aan het praten houdt. Ten slotte zal het systeem een GPS hebben, zodat het aanwijzingen kan geven en de gebruiker kan laten zien waar hij heen moet.
Stem alsjeblieft op mij in de Microcontroller- en Outdoor Fitness-wedstrijden!
Stap 1: Projectoverzicht
Volgens World Access for the Blind is fysieke beweging een van de grootste uitdagingen voor blinden. Reizen of gewoon door een drukke straat lopen kan erg moeilijk zijn. Traditioneel was de enige oplossing het gebruik van de algemeen bekende "witte stok", die voornamelijk wordt gebruikt om de omgeving te scannen door obstakels in de buurt van de gebruiker te raken. Een betere oplossing zou een apparaat zijn dat de ziende assistent kan vervangen door informatie te geven over de locatie van obstakels, zodat de blinde persoon in onbekende omgevingen naar buiten kan gaan en zich veilig voelt. Tijdens dit project is een klein batterijgevoed apparaat ontwikkeld dat aan deze criteria voldoet. Het apparaat kan de grootte en locatie van objecten detecteren door middel van sensoren die de positie van objecten ten opzichte van de gebruiker meten, die informatie doorgeven aan een microcontroller en deze vervolgens omzetten in audio om informatie aan de gebruiker te verstrekken. Het apparaat is gebouwd met behulp van beschikbare commerciële LIDAR (Light Detection and Ranging), SONAR (Sound Navigation and Ranging) en computer vision-technologieën gekoppeld aan microcontrollers en geprogrammeerd om de vereiste hoorbare informatie-uitvoer te leveren met behulp van oordopjes of hoofdtelefoons. De detectietechnologie was ingebed in een "witte stok" om anderen de toestand van de gebruiker aan te geven en extra veiligheid te bieden.
Stap 2: Achtergrondonderzoek
In 2017 meldde de Wereldgezondheidsorganisatie dat er wereldwijd 285 miljoen slechtzienden waren, van wie 39 miljoen volledig blind. De meeste mensen denken niet na over de problemen waarmee visueel gehandicapte mensen elke dag worden geconfronteerd. Volgens World Access for the Blind is fysieke beweging een van de grootste uitdagingen voor blinden. Reizen of gewoon door een drukke straat lopen kan erg moeilijk zijn. Daarom geven veel mensen met een visuele beperking er de voorkeur aan een ziende vriend of familielid mee te nemen om te helpen bij het navigeren door nieuwe omgevingen. Traditioneel was de enige oplossing het gebruik van de algemeen bekende "witte stok", die voornamelijk wordt gebruikt om de omgeving te scannen door obstakels in de buurt van de gebruiker te raken. Een betere oplossing zou een apparaat zijn dat de ziende assistent kan vervangen door informatie te geven over de locatie van obstakels, zodat de blinde persoon in onbekende omgevingen naar buiten kan gaan en zich veilig voelt. NavCog, een samenwerking tussen IBM en Carnegie Mellon University, heeft geprobeerd het probleem op te lossen door een systeem te creëren dat Bluetooth-bakens en smartphones gebruikt om te helpen. De oplossing was echter omslachtig en bleek zeer kostbaar te zijn voor grootschalige implementaties. Mijn oplossing lost dit op door de noodzaak voor externe apparaten te elimineren en door een stem te gebruiken om de gebruiker de hele dag door te begeleiden (Afbeelding 3). Het voordeel van het hebben van de technologie ingebed in een "witte stok" is dat het de rest van de wereld signaleert van de toestand van de gebruiker die verandering in het gedrag van de omringende mensen veroorzaakt.
Stap 3: Ontwerpvereisten
Nadat ik de beschikbare technologieën had onderzocht, besprak ik mogelijke oplossingen met vision-professionals over de beste aanpak om slechtzienden te helpen bij het navigeren door hun omgeving. In de onderstaande tabel staan de belangrijkste functies die iemand nodig heeft om over te schakelen naar mijn apparaat.
Functie - Beschrijving:
- Berekening - Het systeem moet zorgen voor een snelle verwerking van de uitgewisselde informatie tussen de gebruiker en sensoren. Het systeem moet de gebruiker bijvoorbeeld kunnen informeren over obstakels vooraan die zich op minstens 2 meter afstand bevinden.
- Dekking - Het systeem moet zijn diensten binnen en buiten leveren om de kwaliteit van het leven van mensen met een visuele beperking te verbeteren.
- Tijd - Het systeem moet zowel overdag als 's nachts presteren.
- Bereik - Het bereik is de afstand tussen de gebruiker en het door het systeem te detecteren object. Het ideale minimale bereik is 0,5 m, terwijl het maximale bereik meer dan 5 m moet zijn. Verdere afstanden zouden nog beter zijn, maar moeilijker te berekenen.
- Objecttype - Het systeem moet het plotseling verschijnen van objecten detecteren. Het systeem moet het verschil kunnen zien tussen bewegende objecten en statische objecten.
Stap 4: Engineering Design en Equipment Selection
Na veel verschillende componenten te hebben bekeken, besloot ik onderdelen uit de verschillende categorieën hieronder te selecteren.
Prijs van geselecteerde onderdelen:
- Zungle Panther: $ 149,99
- LiDAR Lite V3: $ 149,99
- LV-MaxSonar-EZ1: $29,95
- Ultrasone sensor - HC-SR04: $ 3,95
- Raspberry Pi 3: $39,95
- Arduino: $ 24,95
- Kinect: $ 32,44
- Floureon 11.1v 3s 1500mAh: $ 19,99
- LM2596HV: $9,64
Stap 5: Apparatuurselectie: interactiemethode
Ik besloot stembesturing te gebruiken als methode om met het apparaat te communiceren, omdat het hebben van meerdere knoppen op een stok een uitdaging kan zijn voor een slechtziende, vooral als voor sommige functies een combinatie van knoppen nodig is. Met spraakbesturing kan de gebruiker vooraf ingestelde commando's gebruiken om met de wandelstok te communiceren, wat mogelijke fouten vermindert.
Apparaat: Voordelen --- Nadelen:
- Knoppen: geen opdrachtfout wanneer de rechterknop wordt ingedrukt --- Het kan een uitdaging zijn om ervoor te zorgen dat de juiste knoppen worden ingedrukt
- Spraakbesturing: gemakkelijk omdat de gebruiker vooraf ingestelde commando's kan gebruiken --- Onjuiste uitspraak kan fouten veroorzaken
Stap 6: Apparatuurselectie: microcontroller
Het apparaat gebruikte de Raspberry Pi vanwege de lage kosten en voldoende rekenkracht om de dieptekaart te berekenen. De Intel Joule zou de voorkeursoptie zijn geweest, maar de prijs zou de kosten van het systeem hebben verdubbeld, wat niet ideaal zou zijn voor dit apparaat, dat is ontwikkeld om gebruikers een goedkopere optie te bieden. De Arduino werd in het systeem gebruikt omdat het gemakkelijk informatie van sensoren kan krijgen. De BeagleBone en Intel Edison werden niet gebruikt vanwege de lage prijs-prestatieverhouding, wat slecht is voor dit goedkope systeem.
Microcontroller: Voordelen --- Nadelen:
- Raspberry Pi: heeft voldoende rekenkracht om obstakels te vinden en heeft WiFi/Bluetooth geïntegreerd --- Niet veel opties voor het ontvangen van gegevens van sensoren
- Arduino: Eenvoudig gegevens ontvangen van kleine sensoren. d.w.z. LIDAR, Ultrasoon, SONAR, enz --- Niet genoeg verwerkingskracht om obstakels te vinden
- Intel Edison: kan obstakels snel verwerken met een snelle processor --- Vereist extra ontwikkelstukken om het systeem te laten functioneren
- Intel Joule: heeft tot nu toe de dubbele verwerkingssnelheid van alle microcontrollers op de consumentenmarkt --- Zeer hoge kosten voor dit systeem en moeilijk te communiceren met GPIO voor sensorinteractie
- BeagleBone Black: compact en compatibel met sensoren die in projecten worden gebruikt door gebruik te maken van de General Purpose Input Output (GPIO) --- Niet genoeg verwerkingskracht om objecten effectief te vinden
Stap 7: Apparatuurselectie: sensoren
Een combinatie van meerdere sensoren wordt gebruikt om een hoge locatienauwkeurigheid te verkrijgen. De Kinect is de belangrijkste sensor vanwege de hoeveelheid gebied die hij in één keer op obstakels kan scannen. LIDAR, wat staat voor LIght Detection and Ranging, is een teledetectiemethode die licht in de vorm van een gepulseerde laser gebruikt om snel afstanden te meten van waar de sensor zich bevindt tot objecten; die sensor wordt gebruikt omdat hij een gebied tot 40 meter (m) afstand kan volgen en omdat hij onder verschillende hoeken kan scannen, kan hij detecteren of er stappen omhoog of omlaag gaan. De Sound Navigation And Ranging (SONAR) en ultrasone sensoren worden gebruikt als back-up tracking in het geval dat de Kinect een paal of hobbel in de grond mist die een gevaar zou kunnen vormen voor de gebruiker. De 9 Degrees of Freedom Sensor wordt gebruikt om bij te houden in welke richting de gebruiker kijkt, zodat het apparaat de informatie kan opslaan voor een hogere nauwkeurigheid bij de volgende keer dat de persoon op dezelfde plaats loopt.
Sensoren: Voordelen --- Nadelen:
- Kinect V1: kan 3D-objecten volgen met --- Slechts één camera om de omgeving te detecteren
- Kinect V2: heeft 3 infraroodcamera's en een rode, groene, blauwe, dieptecamera (RGB-D) voor zeer nauwkeurige 3D-objectdetectie --- Kan opwarmen en heeft mogelijk een koelventilator nodig, en is groter dan andere sensoren
- LIDAR: straal die locaties tot op 40 m afstand kan volgen --- Moet in de richting van een object worden geplaatst en kan alleen in die richting kijken
- SONAR: straal die op 5 m afstand kan volgen, maar in een ver bereik --- Kleine objecten zoals veren kunnen de sensor activeren
- Ultrasoon: heeft een bereik tot 3 m en is erg goedkoop --- Afstanden kunnen soms onnauwkeurig zijn
- 9 vrijheidsgradensensor: goed voor het detecteren van oriëntatie en snelheid van de gebruiker --- Als iets de sensoren verstoort, kunnen de afstandsberekeningen onjuist worden berekend
Stap 8: Apparatuurselectie: Software
De geselecteerde software voor de eerste paar prototypes gebouwd met de Kinect V1-sensor was Freenect, maar het was niet erg nauwkeurig. Bij het overschakelen naar Kinect V2 en Freenect2 waren de trackingresultaten aanzienlijk verbeterd dankzij verbeterde tracking, aangezien de V2 een HD-camera en 3 infraroodcamera's heeft in plaats van een enkele camera op de Kinect V1. Toen ik OpenNi2 met de Kinect V1 gebruikte, waren de functies beperkt en kon ik sommige functies van het apparaat niet bedienen.
Software: Voordelen --- Nadelen:
- Freenect: heeft een lager controleniveau om alles te regelen --- ondersteunt alleen de Kinect V1
- OpenNi2: kan eenvoudig de puntenwolkgegevens maken uit de informatiestroom van de Kinect --- ondersteunt alleen de Kinect V1 en heeft geen ondersteuning voor besturing op laag niveau
- Freenect2: heeft een lager controleniveau voor de sensorbalk --- Werkt alleen voor de Kinect V2
- ROS: Besturingssysteem ideaal voor het programmeren van camerafuncties --- Moet op een snelle SD-kaart worden geïnstalleerd zodat de software werkt
Stap 9: Apparatuurselectie: andere onderdelen
Er is gekozen voor lithium-ionbatterijen omdat ze licht zijn, een hoog vermogen hebben en oplaadbaar zijn. De 18650-variant van de lithium-ionbatterij heeft een cilindrische vorm en past perfect in het rietprototype. Het 1e prototype riet is gemaakt van PVC-buis omdat het hol is en het gewicht van het riet vermindert.
Stap 10: Systeemontwikkeling: het hardwareonderdeel maken 1
Eerst moeten we de Kinect demonteren om hem lichter te maken en zodat hij in de stok past. Ik begon met het verwijderen van alle buitenbehuizing van de Kinect omdat het gebruikte plastic VEEL weegt. Toen moest ik de kabel doorknippen zodat de basis kon worden verwijderd. Ik nam de draden van de connector die op de afbeelding wordt getoond en soldeerde ze aan een usb-kabel met signaaldraden en de andere twee aansluitingen waren voor de 12V-ingangsstroom. Omdat ik wilde dat de ventilator in de stok op vol vermogen zou draaien om alle andere componenten te koelen, heb ik de connector van de ventilator van de Kinect afgesneden en 5V van de Raspberry Pi aangesloten. Ik heb ook een kleine adapter gemaakt voor de LiDAR-draad, zodat deze rechtstreeks op de Raspberry Pi kan worden aangesloten zonder andere tussenliggende systemen.
Ik heb per ongeluk de witte draad aan de zwarte gesoldeerd, dus kijk niet naar de afbeeldingen voor bedradingsschema's
Stap 11: Systeemontwikkeling: de hardware maken deel 2
Ik heb een regeleenheid gemaakt om stroom te leveren aan alle apparaten die 5V nodig hebben, zoals de Raspberry Pi. Ik heb de regelaar afgesteld door een meter op de uitgang te zetten en de weerstand zo af te stellen dat de regelaar 5.05V zou leveren. Ik zet het iets hoger dan 5V omdat na verloop van tijd de batterijspanning daalt en de uitgangsspanning enigszins beïnvloedt. Ik heb ook een adapter gemaakt waarmee ik tot 5 apparaten van stroom kan voorzien die de 12V van de batterij nodig hebben.
Stap 12: Systeemontwikkeling: het systeem programmeren Deel 1
Een van de meest uitdagende onderdelen van dit systeem is de programmering. Toen ik de Kinect er voor het eerst mee had laten spelen, installeerde ik een programma met de naam RTAB Map dat de gegevensstroom van de Kinect overneemt en omzet in een puntenwolk. Met de puntenwolk creëerde het een 3D-beeld dat kan worden gedraaid, zodat je de diepte kunt zien van waar alle objecten zich bevinden. Nadat ik er een tijdje mee had gespeeld en alle instellingen had aangepast, besloot ik wat software op de Raspberry Pi te installeren zodat ik de gegevensstroom van de Kinect kon zien. De laatste twee afbeeldingen hierboven laten zien wat de Raspberry Pi kan produceren met ongeveer 15-20 frames per seconde.
Aanbevolen:
ScanUp NFC-lezer/schrijver en audiorecorder voor blinden, slechtzienden en iedereen: 4 stappen (met afbeeldingen)
ScanUp NFC-lezer/schrijver en audiorecorder voor blinden, slechtzienden en alle anderen: ik studeer industrieel ontwerp en het project is het werk van mijn semester. Het doel is om visueel gehandicapte en blinde mensen te ondersteunen met een apparaat waarmee audio in het.WAV-formaat op een SD-kaart kan worden opgenomen en die informatie kan worden opgeroepen met een NFC-tag. Dus binnen
Autonome drone met infraroodcamera om eerstehulpverleners te helpen - Ajarnpa
Autonome drone met infraroodcamera om eerstehulpverleners te helpen: Volgens een rapport van de Wereldgezondheidsorganisatie doden jaarlijks ongeveer 90.000 mensen door natuurrampen en treffen wereldwijd bijna 160 miljoen mensen. Natuurrampen zijn onder meer aardbevingen, tsunami's, vulkaanuitbarstingen, aardverschuivingen, orkanen, fl
Kinderen met speciale behoeften helpen - de magie van Makey Makey - Ajarnpa
Kinderen met speciale behoeften helpen - de magie van Makey Makey: lid Adam schrijft: Nadat we 5 Makey Makey-kits hadden ontvangen op fizzPOP: The Birmingham Makerspace, moet ik toegeven dat ik vast zat met ideeën over hoe ze te gebruiken. Dus besloot ik ze aan het werk te nemen en ze uit te proberen met enkele van de autistische jongeren die ik
Perifere radar voor slechtzienden: 14 stappen
Perifere radar voor slechtzienden: als gevolg van een gruwelijk ongeluk verloor een vriend van mij onlangs het zicht in zijn rechteroog. Hij was lange tijd werkloos en toen hij terugkwam, vertelde hij me dat een van de meest zenuwslopende dingen waarmee hij te maken heeft, is dat hij niet weet wat er aan de hand is
Apparaat voor slechtzienden: 4 stappen
Apparaat voor slechtzienden: deze tutorial is gebaseerd op een open source Arduino-project voor een Smart Cane en telefoon die blinden helpt om overal alleen te lopen met behulp van invoer via een obstakelsensor en het geven van feedback via haptiek (vibratiemotor). T