Obsah:
- Krok 1: Přehled projektu
- Krok 2: Průzkum pozadí
- Krok 3: Požadavky na design
- Krok 4: Engineering Design a výběr zařízení
- Krok 5: Výběr zařízení: Způsob interakce
- Krok 6: Výběr zařízení: Mikrokontrolér
- Krok 7: Výběr zařízení: Senzory
- Krok 8: Výběr zařízení: Software
- Krok 9: Výběr vybavení: Ostatní díly
- Krok 10: Vývoj systému: Vytvoření hardwaru Část 1
- Krok 11: Vývoj systému: Vytvoření hardwaru Část 2
- Krok 12: Vývoj systému: Programování systému Část 1
Video: Použití sonaru, lidaru a počítačové vize na mikrokontrolérech k pomoci zrakově postiženým: 16 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Chci vytvořit inteligentní „hůl“, která může lidem se zrakovým postižením pomoci mnohem více než stávající řešení. Hůl bude schopna upozornit uživatele na objekty vpředu nebo po stranách vydáním zvuku ve sluchátkách typu prostorového zvuku. Hůl bude mít také malou kameru a LIDAR (detekce světla a dosah), aby dokázala rozpoznat předměty a lidi v místnosti a upozornit uživatele pomocí sluchátek. Z bezpečnostních důvodů nebudou sluchátka blokovat veškerý hluk, protože bude existovat mikrofon, který dokáže odfiltrovat všechny nepotřebné zvuky a udržet rohy auta a lidi mluvit. Nakonec bude mít systém GPS, aby mohl dávat pokyny a ukazovat uživateli, kam má jít.
Hlasujte prosím pro mě v soutěžích o mikrokontrolér a venkovní fitness!
Krok 1: Přehled projektu
Podle World Access for the Blind je fyzický pohyb jednou z největších výzev pro nevidomé. Cestování nebo jen procházení přeplněnou ulicí může být velmi obtížné. Tradičně jediným řešením bylo použití běžně známé „bílé hůlky“, která se primárně používá ke skenování okolí zasažením překážek v blízkosti uživatele. Lepším řešením by bylo zařízení, které může nahradit zrakově postiženého asistenta poskytováním informací o umístění překážek, aby nevidomý mohl vyjít ven v neznámém prostředí a cítit se bezpečně. Během tohoto projektu bylo vyvinuto malé zařízení napájené baterií, které splňuje tato kritéria. Zařízení může detekovat velikost a umístění objektu pomocí senzorů, které měří polohu objektů ve vztahu k uživateli, přenášejí tyto informace do mikrokontroléru a poté je převádějí na zvuk, aby poskytovaly informace uživateli. Zařízení bylo postaveno pomocí dostupných komerčních technologií LIDAR (Light Detection and Ranging), SONAR (Sound Navigation and Ranging) a technologií počítačového vidění propojených s mikrokontroléry a naprogramovaných tak, aby poskytovaly požadovaný zvukový informační výstup pomocí sluchátek nebo sluchátek. Detekční technologie byla integrována do „bílé hůlky“, aby ostatním indikovala stav uživatele a poskytla dodatečnou bezpečnost.
Krok 2: Průzkum pozadí
V roce 2017 Světová zdravotnická organizace uvedla, že na celém světě je 285 milionů zrakově postižených, z nichž 39 milionů je zcela slepých. Většina lidí nemyslí na problémy, se kterými se zrakově postižení lidé potýkají každý den. Podle World Access for the Blind je fyzický pohyb jednou z největších výzev pro nevidomé. Cestování nebo jen procházení přeplněnou ulicí může být velmi obtížné. Z tohoto důvodu mnoho lidí se zrakovým postižením upřednostňuje přivedení vidícího přítele nebo člena rodiny, který jim pomůže procházet se novým prostředím. Tradičně jediným řešením bylo použití běžně známé „bílé hůlky“, která se primárně používá ke skenování okolí zasažením překážek v blízkosti uživatele. Lepším řešením by bylo zařízení, které může nahradit zrakově postiženého asistenta poskytováním informací o umístění překážek, aby nevidomý mohl vyjít ven v neznámém prostředí a cítit se bezpečně. NavCog, spolupráce mezi IBM a Carnegie Mellon University, se pokusila tento problém vyřešit vytvořením systému, který k vedení pomůže pomocí Bluetooth majáků a chytrých telefonů. Řešení však bylo těžkopádné a ukázalo se, že je velmi nákladné pro rozsáhlé implementace. Moje řešení to řeší tak, že eliminuje potřebu externích zařízení a pomocí hlasu vede uživatele po celý den (obrázek 3). Výhoda technologie vložené do „bílé hůlky“spočívá v tom, že signalizuje zbytku světa stav uživatele, který způsobuje změnu v chování okolních lidí.
Krok 3: Požadavky na design
Po prozkoumání dostupných technologií jsem s odborníky na vidění diskutoval o možných řešeních ohledně nejlepšího přístupu k pomoci zrakově postiženým orientovat se ve svém prostředí. V následující tabulce jsou uvedeny nejdůležitější funkce, které někdo potřebuje k přechodu na mé zařízení.
Funkce - Popis:
- Výpočet - systém musí zajistit rychlé zpracování vyměněných informací mezi uživatelem a senzory. Systém například musí být schopen informovat uživatele o překážkách vpředu, které jsou vzdáleny alespoň 2 m.
- Pokrytí - Systém musí poskytovat své služby uvnitř i venku, aby zlepšil kvalitu života zrakově postižených lidí.
- Čas - Systém by měl fungovat stejně dobře ve dne, jako v noci.
- Dosah - rozsah je vzdálenost mezi uživatelem a objektem, který má systém detekovat. Ideální minimální dosah je 0,5 m, zatímco maximální dosah by měl být více než 5 m. Další vzdálenosti by byly ještě lepší, ale náročnější na výpočet.
- Typ objektu - Systém by měl detekovat náhlý výskyt objektů. Systém by měl být schopen rozpoznat rozdíl mezi pohybujícími se objekty a statickými objekty.
Krok 4: Engineering Design a výběr zařízení
Poté, co jsem se podíval na mnoho různých komponent, rozhodl jsem se pro díly vybrané z níže uvedených různých kategorií.
Cena vybraných dílů:
- Zungle Panther: 149,99 $
- LiDAR Lite V3: 149,99 $
- LV-MaxSonar-EZ1: 29,95 $
- Ultrazvukový senzor - HC -SR04: 3,95 $
- Raspberry Pi 3: 39,95 $
- Arduino: 24,95 $
- Kinect: 32,44 $
- Floureon 11,1 v 3 s 1500 mAh: 19,99 $
- LM2596HV: 9,64 USD
Krok 5: Výběr zařízení: Způsob interakce
Rozhodl jsem se použít hlasové ovládání jako metodu interakce se zařízením, protože mít více tlačítek na hůlce může být pro zrakově postiženého člověka náročné, zvláště pokud některé funkce vyžadují kombinaci tlačítek. Pomocí hlasového ovládání může uživatel používat přednastavené příkazy ke komunikaci s hůlkou, což snižuje potenciální chyby.
Zařízení: Klady --- Nevýhody:
- Tlačítka: Žádná chyba příkazu při stisknutí pravého tlačítka --- Zajistit stisknutí správných tlačítek může být náročné
- Hlasové ovládání: Snadné, protože uživatel může používat přednastavené příkazy --- Nesprávná výslovnost může způsobit chyby
Krok 6: Výběr zařízení: Mikrokontrolér
Zařízení používalo Raspberry Pi kvůli jeho nízkým nákladům a dostatečnému výpočetnímu výkonu pro výpočet hloubkové mapy. Intel Joule by byl upřednostňovanou volbou, ale jeho cena by zdvojnásobila náklady na systém, což by nebylo ideální zařízení, které bylo vyvinuto tak, aby poskytovalo uživatelům nižší náklady. Arduino bylo použito v systému, protože může snadno získávat informace ze senzorů. BeagleBone a Intel Edison nebyly použity kvůli nízkému poměru ceny a výkonu, což je pro tento nízkonákladový systém špatné.
Mikrokontrolér: Klady --- Nevýhody:
- Raspberry Pi: Má dostatečný výpočetní výkon pro hledání překážek a má integrované WiFi/Bluetooth --- Není mnoho možností pro příjem dat ze senzorů
- Arduino: Snadný příjem dat z malých senzorů. tj. LIDAR, Ultrazvuk, SONAR atd. --- Nedostatečný výpočetní výkon pro hledání překážek
- Intel Edison: Dokáže rychle zpracovat překážky s rychlým procesorem --- Pro fungování systému vyžaduje další vývojářské kousky
- Intel Joule: Má dvojnásobnou rychlost zpracování než kterýkoli z mikrokontrolérů na spotřebitelském trhu k dnešnímu dni --- Velmi vysoké náklady na tento systém a obtížná interakce s GPIO pro interakci senzorů
- BeagleBone Black: Kompaktní a kompatibilní se senzory používanými v projektu pomocí vstupního výstupu pro obecné účely (GPIO) --- Nedostatek výpočetního výkonu k efektivnímu hledání objektů
Krok 7: Výběr zařízení: Senzory
K dosažení vysoké přesnosti polohy se používá kombinace několika senzorů. Kinect je hlavním senzorem, protože dokáže najednou vyhledat překážky. LIDAR, což je zkratka pro LIght Detection and Ranging, je metoda dálkového snímání, která využívá světlo ve formě pulzního laseru k měření vzdáleností od místa, kde je senzor k objektům rychle; tento senzor se používá, protože dokáže sledovat oblast až 40 metrů (m) a protože dokáže skenovat pod různými úhly, dokáže detekovat, zda nějaké kroky směřují nahoru nebo dolů. Sonarové a sonarové sondy SOund a ultrazvukové senzory se používají jako záložní sledování pro případ, že by Kinect minul tyč nebo náraz do země, který by pro uživatele představoval nebezpečí. Senzor 9 stupňů svobody se používá ke sledování směru, kterému je uživatel otočen, aby zařízení mohlo ukládat informace pro vyšší přesnost nasměrování příště, když osoba jde na stejné místo.
Senzory: Klady --- Nevýhody:
- Kinect V1: Může sledovat 3D objekty pomocí --- Pouze jedna kamera pro detekci okolí
- Kinect V2: Má 3 infračervené kamery a červenou, zelenou, modrou a hloubkovou (RGB-D) kameru pro vysoce přesnou detekci 3D objektů --- Může se zahřívat a může vyžadovat chladicí ventilátor a je větší než ostatní senzory
- LIDAR: Paprsek, který dokáže sledovat umístění až do vzdálenosti 40 m --- Musí být umístěn k objektu a může se dívat pouze tímto směrem
- SONAR: Paprsek, který může sledovat 5 m daleko, ale ve velkém dosahu --- Malé předměty, jako je peří, mohou spustit senzor
- Ultrazvuk: Má dosah až 3 m a je velmi levný --- Vzdálenosti mohou být občas nepřesné
- 9 stupňů volnosti Senzor: Dobré pro snímání orientace a rychlosti uživatele --- Pokud něco narušuje senzory, výpočty vzdálenosti mohou být nesprávně vypočítány
Krok 8: Výběr zařízení: Software
Vybraný software pro prvních pár prototypů postavených na senzoru Kinect V1 byl Freenect, ale nebyl příliš přesný. Při přechodu na Kinect V2 a Freenect2 byly výsledky sledování výrazně zlepšeny díky vylepšenému sledování, protože V2 má HD kameru a 3 infračervené kamery oproti jedné kameře na Kinect V1. Když jsem používal OpenNi2 s Kinect V1, funkce byly omezené a nemohl jsem ovládat některé funkce zařízení.
Software: Klady --- Nevýhody:
- Freenect: Má nižší úroveň ovládání pro ovládání všeho --- Podporuje pouze Kinect V1
- OpenNi2: Může snadno vytvářet data mračna bodů z informačního toku z Kinectu --- Podporuje pouze Kinect V1 a nemá podporu pro ovládání nízké úrovně
- Freenect2: Má nižší úroveň ovládání senzorové lišty --- Funguje pouze pro Kinect V2
- ROS: Operační systém ideální pro programování funkcí kamery --- Je třeba jej nainstalovat na rychlou kartu SD, aby software fungoval
Krok 9: Výběr vybavení: Ostatní díly
Lithium -iontové baterie byly vybrány kvůli tomu, že jsou lehké, mají vysokou výkonovou kapacitu a jsou dobíjecí. Varianta 18650 lithium -iontové baterie má válcový tvar a perfektně zapadá do prototypu hůlky. 1. prototyp hůlky je vyroben z PVC trubky, protože je dutý a snižuje hmotnost hůlky.
Krok 10: Vývoj systému: Vytvoření hardwaru Část 1
Nejprve musíme Kinect rozebrat, aby byl lehčí a aby se vešel do hůlky. Začal jsem odstraněním veškerého vnějšího pláště z Kinectu, protože použitý plast váží SPOUSTU. Poté jsem musel kabel přestřihnout, aby bylo možné odstranit základnu. Vzal jsem vodiče z konektoru zobrazeného na obrázku a připájel je k USB kabelu se signálními vodiči a další dvě připojení byla pro vstupní napětí 12V. Protože jsem chtěl, aby ventilátor uvnitř hůlky běžel na plný výkon, aby ochladil všechny ostatní komponenty, odpojil jsem konektor od ventilátoru z Kinectu a zapojil 5V z Raspberry Pi. Také jsem vytvořil malý adaptér pro vodič LiDAR, aby se mohl připojit přímo k Raspberry Pi bez dalších systémů mezi nimi.
Omylem jsem připájel bílý vodič k černému, takže se nedívejte na obrázky pro schémata zapojení
Krok 11: Vývoj systému: Vytvoření hardwaru Část 2
Vytvořil jsem kus regulátoru, který napájí všechna zařízení, která vyžadují 5 V, jako je Raspberry Pi. Regulátor jsem vyladil tak, že jsem na výstup umístil měřič a nastavil odpor tak, aby regulátor poskytoval 5,05V. Dal jsem to trochu vyšší než 5V, protože v průběhu času napětí baterie klesá a mírně ovlivňuje výstupní napětí. Také jsem vytvořil adaptér, který mi umožňuje napájet až 5 zařízení, která vyžadují 12 V z baterie.
Krok 12: Vývoj systému: Programování systému Část 1
Jednou z nejnáročnějších částí tohoto systému je programování. Když jsem poprvé dostal Kinect k hraní, nainstaloval jsem program s názvem RTAB Map, který odebírá datový proud z Kinectu a převádí jej do mračna bodů. S mračnem bodů vytvořil 3D obraz, který lze otáčet, abyste viděli hloubku všech objektů. Poté, co jsem si s tím chvíli pohrával a upravil všechna nastavení, rozhodl jsem se nainstalovat na Raspberry Pi nějaký software, který mi umožní vidět datový proud z Kinectu. Poslední dva obrázky výše ukazují, co dokáže Raspberry Pi produkovat přibližně 15–20 snímků za sekundu.
Doporučuje:
Vybudujte počítačové rozhraní Stephena Hawkinga za pouhých 1 000 Rs (15 $) pomocí Arduina: 5 kroků
Vybudujte počítačové rozhraní Stephena Hawkinga za pouhých 1 000 Rs (15 $) pomocí Arduina: Všechno to začalo otázkou „Jak mluví Stephen Hawking?“, Po přečtení o jeho počítačovém systému mě napadlo, že bych měl poskytnout levnější verzi systému, aniž by bylo příliš ohroženo mnoho funkcí. Toto zařízení
Skutečně fungující hůlka Harryho Pottera pomocí počítačové vize: 8 kroků (s obrázky)
Skutečně fungující hůlka Harryho Pottera využívající počítačovou vizi: " Jakákoli dostatečně pokročilá technologie je k nerozeznání od magie " - Arthur C. Clarke Před několika měsíci můj bratr navštívil Japonsko a měl skutečnou kouzelnickou zkušenost v Čarodějném světě Harryho Pottera v Universal Studios, který získal
Duální 7segmentové displeje ovládané potenciometrem v CircuitPython - ukázka perzistence vize: 9 kroků (s obrázky)
Duální 7segmentové displeje ovládané potenciometrem v CircuitPython-Demonstrace perzistence vidění: Tento projekt používá potenciometr k ovládání displeje na několika 7segmentových LED displejích (F5161AH). Otáčením knoflíku potenciometru se zobrazené číslo mění v rozsahu 0 až 99. V každém okamžiku svítí pouze jedna LED, velmi krátce, ale
Cenově dostupné řešení vize s robotickým ramenem založeným na Arduinu: 19 kroků (s obrázky)
Cenově dostupné řešení vize s robotickým ramenem založeným na Arduinu: Když mluvíme o strojovém vidění, vždy nám to připadá tak nedosažitelné. Zatímco jsme vytvořili demo vize s otevřeným zdrojem, které by bylo super snadné udělat pro každého. V tomto videu s kamerou OpenMV robot bez ohledu na to, kde je červená kostka
Jak úhledně pájet (bez zatížení vodičů!) Oddělování čepiček na mikrokontrolérech SMT .: 9 kroků (s obrázky)
Jak úhledně pájet (bez zatížení vodičů!) Oddělování čepiček na mikrokontrolérech SMT .: Tento návod je napsán tak, aby vás naučil používat úhlednou a upravenou metodu prototypování s mikrokontroléry SMT (nebo jinými zařízeními) na desce adaptéru. Poté, co jsem se snažil udělat úhlednou práci efektivního oddělení napájecích kolíků na mém PIC18F, jsem