Tartalomjegyzék:

A Sonar, a Lidar és a Computer Vision használata a mikrokontrollereken a látássérültek megsegítésére: 16 lépés
A Sonar, a Lidar és a Computer Vision használata a mikrokontrollereken a látássérültek megsegítésére: 16 lépés

Videó: A Sonar, a Lidar és a Computer Vision használata a mikrokontrollereken a látássérültek megsegítésére: 16 lépés

Videó: A Sonar, a Lidar és a Computer Vision használata a mikrokontrollereken a látássérültek megsegítésére: 16 lépés
Videó: What is Application of computer vision? what is Related fields of computer vision? 2024, Július
Anonim
A Sonar, a Lidar és a Computer Vision használata a mikrokontrollereken a látássérültek megsegítésére
A Sonar, a Lidar és a Computer Vision használata a mikrokontrollereken a látássérültek megsegítésére

Intelligens „vesszőt” szeretnék létrehozni, amely sokkal jobban segíthet a látássérülteknek, mint a meglévő megoldások. A vessző képes lesz értesíteni a felhasználót az elülső vagy oldalsó tárgyakról, ha zajt ad a surround hangzású fejhallgatóban. A vesszőnek lesz egy kis fényképezőgépe és LIDAR -ja (fényérzékelés és hatótávolság) is, hogy felismerje a helyiségben lévő tárgyakat és embereket, és értesítse a felhasználót a fejhallgató használatával. Biztonsági okokból a fejhallgató nem fogja elzárni az összes zajt, mivel lesz egy mikrofon, amely kiszűri az összes felesleges hangot, és megtartja az autó kürtjét és az embereket. Végül a rendszer rendelkezik GPS -szel, hogy iránymutatást adjon, és megmutassa a felhasználónak, merre kell mennie.

Kérem, szavazzon rám a mikrokontroller és a szabadtéri fitnesz versenyeken!

1. lépés: A projekt áttekintése

A projekt áttekintése
A projekt áttekintése
A projekt áttekintése
A projekt áttekintése
A projekt áttekintése
A projekt áttekintése

A World Access for Blind szerint a fizikai mozgás az egyik legnagyobb kihívás a vakok számára. Nagyon nehéz lehet utazni vagy egyszerűen sétálni egy zsúfolt utcán. Hagyományosan az egyetlen megoldás az általánosan ismert „fehér vessző” volt, amelyet elsősorban a környezet letapogatására használnak a felhasználó közelében lévő akadályok ütésével. Jobb megoldás lenne egy olyan eszköz, amely helyettesítheti a látó asszisztenst azáltal, hogy információt szolgáltat az akadályok elhelyezkedéséről, így a vak ember kimehet ismeretlen környezetbe, és biztonságban érezheti magát. A projekt során kifejlesztettek egy kis elemmel működő eszközt, amely megfelel ezeknek a kritériumoknak. Az eszköz érzékelők segítségével képes érzékelni az objektum méretét és helyét, amelyek mérik az objektumok helyzetét a felhasználóhoz viszonyítva, továbbítják ezt az információt egy mikrokontrollernek, majd hanggá alakítják át, hogy információt nyújtsanak a felhasználónak. A készüléket a kereskedelmi forgalomban kapható LIDAR (Fényérzékelés és -csengés), SONAR (Hangnavigáció és -csengés), valamint a mikrovezérlőkhöz kapcsolódó számítógépes látástechnológiák felhasználásával építették fel, és úgy voltak programozva, hogy a szükséges hallható információ kimenetet biztosítsák fülhallgató vagy fejhallgató segítségével. Az érzékelési technológiát egy „fehér vesszőbe” építették be, hogy jelezzék másoknak a felhasználó állapotát, és további biztonságot nyújtsanak.

2. lépés: Háttérkutatás

Háttérkutatás
Háttérkutatás
Háttérkutatás
Háttérkutatás
Háttérkutatás
Háttérkutatás
Háttérkutatás
Háttérkutatás

Az Egészségügyi Világszervezet 2017-ben arról számolt be, hogy világszerte 285 millió látássérült ember él, ebből 39 millió teljesen vak. A legtöbb ember nem gondol azokra a problémákra, amelyekkel a látássérültek nap mint nap szembesülnek. A World Access for Blind szerint a fizikai mozgás az egyik legnagyobb kihívás a vakok számára. Nagyon nehéz lehet utazni vagy egyszerűen sétálni egy zsúfolt utcán. Emiatt sok látássérült inkább látó barátot vagy családtagot hoz magával, hogy segítsen eligazodni az új környezetben. Hagyományosan az egyetlen megoldás az általánosan ismert „fehér vessző” volt, amelyet elsősorban a környezet szkennelésére használnak a felhasználó közeli akadályok ütközésével. Jobb megoldás lenne egy olyan eszköz, amely helyettesítheti a látó asszisztenst azáltal, hogy információt szolgáltat az akadályok elhelyezkedéséről, így a vak ember kimehet ismeretlen környezetbe, és biztonságban érezheti magát. Az IBM és a Carnegie Mellon Egyetem együttműködésében működő NavCog megkísérelte megoldani a problémát egy Bluetooth -jelzőfényeket és okostelefonokat használó rendszer létrehozásával. A megoldás azonban nehézkes volt, és nagyon költségesnek bizonyult a nagyszabású megvalósítások esetében. Megoldásom ezt úgy oldja meg, hogy nincs szükség külső eszközökre, és hanggal irányítom a felhasználót egész nap (3. ábra). A technológia „fehér vesszőbe” ágyazott előnye, hogy jelzi a világ többi részének a felhasználó állapotát, ami megváltoztatja a környező emberek viselkedését.

3. lépés: Tervezési követelmények

Tervezési követelmények
Tervezési követelmények

Miután megvizsgáltam a rendelkezésre álló technológiákat, megbeszéltem a lehetséges megoldásokat a látásszakemberekkel, hogy mi a legjobb megoldás a látássérültek környezetükben való eligazodására. Az alábbi táblázat felsorolja a legfontosabb funkciókat, amelyek szükségesek ahhoz, hogy valaki átállhasson az eszközömre.

Funkció - Leírás:

  • Számítás - A rendszernek gyors feldolgozást kell biztosítania a felhasználó és az érzékelők között kicserélt információkhoz. Például a rendszernek képesnek kell lennie arra, hogy tájékoztassa a felhasználót az előttük álló akadályokról, amelyek legalább 2 méterre vannak.
  • Lefedettség - A rendszernek beltéren és kültéren kell nyújtania szolgáltatásait, hogy javítsa a látássérültek életminőségét.
  • Idő - A rendszernek ugyanolyan jól kell működnie nappal, mint éjszaka.
  • Tartomány - A tartomány a felhasználó és a rendszer által észlelni kívánt objektum közötti távolság. Az ideális minimális hatótávolság 0,5 m, míg a maximális hatótávolság több, mint 5 m. A további távolságok még jobbak, de nehezebben kiszámíthatók.
  • Objektum típusa - A rendszernek észlelnie kell az objektumok hirtelen megjelenését. A rendszernek képesnek kell lennie megkülönböztetni a mozgó és a statikus objektumokat.

4. lépés: Mérnöki tervezés és berendezések kiválasztása

Mérnöki tervezés és berendezések kiválasztása
Mérnöki tervezés és berendezések kiválasztása
Mérnöki tervezés és berendezések kiválasztása
Mérnöki tervezés és berendezések kiválasztása
Mérnöki tervezés és berendezések kiválasztása
Mérnöki tervezés és berendezések kiválasztása

Miután sok különböző alkatrészt megvizsgáltam, az alábbi különböző kategóriákból kiválasztott alkatrészek mellett döntöttem.

A kiválasztott alkatrészek ára:

  • Zungle Panther: 149,99 dollár
  • LiDAR Lite V3: 149,99 USD
  • LV-MaxSonar-EZ1: 29,95 USD
  • Ultrahangos érzékelő - HC -SR04: 3,95 dollár
  • Raspberry Pi 3: 39,95 dollár
  • Arduino: 24,95 dollár
  • Kinect: 32,44 dollár
  • Floureon 11.1v 3s 1500mAh: 19,99 USD
  • LM2596HV: 9,64 dollár

5. lépés: A berendezés kiválasztása: az interakció módja

Felszerelés kiválasztása: Az interakció módja
Felszerelés kiválasztása: Az interakció módja
Felszerelés kiválasztása: Az interakció módja
Felszerelés kiválasztása: Az interakció módja

Úgy döntöttem, hogy a hangvezérlést használom az eszközzel való interakció módszereként, mert több gomb használata a vesszőn kihívást jelenthet a látássérült személy számára, különösen akkor, ha bizonyos funkciókhoz gombok kombinációja szükséges. A hangvezérléssel a felhasználó előre beállított parancsokkal kommunikálhat a vesszővel, ami csökkenti a lehetséges hibákat.

Eszköz: Előnyök --- Hátrányok:

  • Gombok: A jobb oldali gomb megnyomásakor nincs parancshiba --- Nehéz lehet a megfelelő gombok lenyomása
  • Hangvezérlés: Egyszerű, mert a felhasználó előre beállított parancsokat használhat --- A helytelen kiejtés hibákat okozhat

6. lépés: Berendezés kiválasztása: mikrokontroller

Felszerelés kiválasztása: mikrokontroller
Felszerelés kiválasztása: mikrokontroller
Felszerelés kiválasztása: mikrokontroller
Felszerelés kiválasztása: mikrokontroller
Felszerelés kiválasztása: mikrokontroller
Felszerelés kiválasztása: mikrokontroller

A készülék a Raspberry Pi -t használta alacsony ára és elegendő feldolgozási teljesítménye miatt a mélységi térkép kiszámításához. Az Intel Joule lett volna az előnyben részesített opció, de ára megduplázta volna a rendszer költségeit, ami nem lenne ideális ez az eszköz, amelyet alacsonyabb költségű opcióként fejlesztettek ki a felhasználók számára. Az arduino -t azért használták fel a rendszerben, mert könnyen információt szerezhet az érzékelőkről. A BeagleBone -t és az Intel Edisont nem használták az alacsony ár -teljesítmény arány miatt, ami rossz ennek az alacsony költségű rendszernek.

Mikrokontroller: Előnyök --- Hátrányok:

  • Raspberry Pi: Elegendő feldolgozási kapacitással rendelkezik az akadályok felkutatásához, és beépített WiFi/Bluetooth funkcióval rendelkezik --- Nincs sok lehetőség az érzékelőktől származó adatok fogadására
  • Arduino: Könnyen fogadhat adatokat a kis érzékelőkről. azaz. LIDAR, Ultrahangos, SONAR, stb --- Nincs elég feldolgozási teljesítmény az akadályok megtalálásához
  • Intel Edison: Gyors processzorral gyorsan fel tudja dolgozni az akadályokat --- A rendszer működéséhez extra fejlesztői elemekre van szükség
  • Intel Joule: Kétszeres feldolgozási sebessége van a fogyasztói piacon található mikrokontrollerek bármelyikének-Nagyon magas költségek ennek a rendszernek, és nehéz a GPIO-val való interakció
  • BeagleBone Black: Kompakt és kompatibilis a projektben használt érzékelőkkel az általános célú bemeneti kimenet (GPIO) használatával --- Nincs elég feldolgozási teljesítmény az objektumok hatékony megtalálásához

7. lépés: Berendezés kiválasztása: Érzékelők

Felszerelés kiválasztása: érzékelők
Felszerelés kiválasztása: érzékelők
Felszerelés kiválasztása: érzékelők
Felszerelés kiválasztása: érzékelők
Felszerelés kiválasztása: érzékelők
Felszerelés kiválasztása: érzékelők

A nagy pontosság elérése érdekében több érzékelő kombinációját használják. A Kinect a fő érzékelő, mivel nagy területet tud egyszerre keresni az akadályok után. A LIDAR, amely a LIght Detection and Ranging rövidítést jelöli, egy távérzékelési módszer, amely fényt használ pulzáló lézer formájában az érzékelő és a tárgyak közötti távolság gyors mérésére; ezt az érzékelőt azért használják, mert akár 40 méter (m) távolságra is képes nyomon követni egy területet, és mivel több szögből is képes szkennelni, érzékeli, ha bármilyen lépés felfelé vagy lefelé halad. A SOUN navigációs és hatótávolság (SONAR) és az ultrahangos érzékelők tartalékkövetésként szolgálnak arra az esetre, ha a Kinect elhibázna egy pólust vagy ütést a talajban, ami veszélyt jelenthet a felhasználóra. A 9 fok szabadságérzékelő segítségével nyomon követhető, hogy a felhasználó milyen irányba néz, hogy a készülék tárolja az információkat a nagyobb pontosság érdekében, irányítva legközelebb, amikor a személy ugyanazon a helyen sétál.

Érzékelők: Előnyök --- Hátrányok:

  • Kinect V1: 3D objektumokat tud nyomon követni --- Csak egy kamerával, hogy érzékelje a környezetet
  • Kinect V2: 3 infravörös kamerával és egy piros, zöld, kék, mélységű (RGB-D) kamerával rendelkezik a nagy pontosságú 3D-objektum-észleléshez --- Felmelegedhet, és szükség lehet hűtőventilátorra, és nagyobb, mint más érzékelők
  • LIDAR: Sugár, amely akár 40 m távolságra is képes nyomon követni a helyeket --- A tárgy felé kell elhelyezni, és csak ebbe az irányba nézhet
  • SONAR: Sugár, amely 5 m távolságra képes nyomon követni, de messze van --- Kisméretű tárgyak, például tollak, kiválthatják az érzékelőt
  • Ultrahangos: hatótávolsága akár 3 m, és nagyon olcsó --- A távolságok időnként pontatlanok lehetnek
  • 9 Szabadságfok érzékelő: Jó a felhasználó tájékozódásának és sebességének érzékeléséhez --- Ha bármi zavarja az érzékelőket, a távolságszámítások helytelenül kiszámíthatók

8. lépés: Berendezés kiválasztása: Szoftver

Felszerelés kiválasztása: Szoftver
Felszerelés kiválasztása: Szoftver
Felszerelés kiválasztása: Szoftver
Felszerelés kiválasztása: Szoftver
Felszerelés kiválasztása: Szoftver
Felszerelés kiválasztása: Szoftver

A Kinect V1 érzékelővel épített első prototípusok kiválasztott szoftvere a Freenect volt, de nem volt túl pontos. A Kinect V2 és Freenect2 készülékekre való áttéréskor a követési eredmények jelentősen javultak a jobb követésnek köszönhetően, mivel a V2 HD kamerával és 3 infravörös kamerával rendelkezik, szemben a Kinect V1 egyetlen kamerájával. Amikor az OpenNi2 -t használtam a Kinect V1 -el, a funkciók korlátozottak voltak, és nem tudtam ellenőrizni az eszköz egyes funkcióit.

Szoftver: Előnyök --- Hátrányok:

  • Freenect: Alacsonyabb szintű vezérléssel rendelkezik minden vezérléséhez --- Csak a Kinect V1-et támogatja
  • OpenNi2: Könnyen létrehozhatja a pontfelhő-adatokat a Kinect információáramából --- Csak a Kinect V1-et támogatja, és nem támogatja az alacsony szintű vezérlést
  • Freenect2: Alacsonyabb szabályozási szintje van az érzékelősávnak --- Csak a Kinect V2 esetében működik
  • ROS: A kamera funkcióinak programozására ideális operációs rendszer --- Gyors SD kártyára kell telepíteni, hogy a szoftver működjön

9. lépés: Berendezés kiválasztása: Egyéb alkatrészek

Felszerelés kiválasztása: Egyéb alkatrészek
Felszerelés kiválasztása: Egyéb alkatrészek
Felszerelés kiválasztása: Egyéb alkatrészek
Felszerelés kiválasztása: Egyéb alkatrészek

A lítium -ion akkumulátorokat azért választották, mert könnyűek, nagy teljesítményűek és újratölthetők. A lítium -ion akkumulátor 18650 -es változata hengeres alakú, és tökéletesen illeszkedik a nád prototípusába. Az első prototípus nád PVC csőből készült, mert üreges és csökkenti a vessző súlyát.

10. lépés: Rendszerfejlesztés: A hardver 1. részének létrehozása

Rendszerfejlesztés: A hardver létrehozása 1. rész
Rendszerfejlesztés: A hardver létrehozása 1. rész
Rendszerfejlesztés: A hardver létrehozása 1. rész
Rendszerfejlesztés: A hardver létrehozása 1. rész
Rendszerfejlesztés: A hardver létrehozása 1. rész
Rendszerfejlesztés: A hardver létrehozása 1. rész

Először szétszereljük a Kinect -et, hogy könnyebb legyen, és hogy elférjen a vessző belsejében. Azzal kezdtem, hogy eltávolítottam a Kinect összes külső burkolatát, mivel a felhasznált műanyag SOK. Ezután meg kellett vágnom a kábelt, hogy az alap eltávolítható legyen. A képen látható csatlakozóról levettem a vezetékeket, és jelvezetékekkel ellátott USB -kábelhez forrasztottam, a másik két csatlakozó pedig a 12 V -os bemeneti táphoz volt. Mivel azt akartam, hogy a nád belsejében lévő ventilátor teljes erővel működjön, hogy lehűtse az összes többi alkatrészt, levágtam a csatlakozót a ventilátorról a Kinectről, és bekötöttem 5V -ot a Raspberry Pi -ből. Készítettem egy kis adaptert is a LiDAR vezetékhez, hogy közvetlenül csatlakozzon a Raspberry Pi -hez, anélkül, hogy más rendszerek lennének közöttük.

Véletlenül forrasztottam a fehér vezetéket a feketéhez, így ne nézze meg a képeket a kapcsolási rajzokért

11. lépés: Rendszerfejlesztés: A hardver 2. részének létrehozása

Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész
Rendszerfejlesztés: Hardver létrehozása 2. rész

Létrehoztam egy szabályozó elemet, hogy tápellátást biztosítson az összes 5 V -ot igénylő eszközhöz, mint például a Raspberry Pi. A szabályozót úgy hangoltam, hogy egy mérőt tettem a kimenetre, és úgy állítottam be az ellenállást, hogy a szabályozó 5,05 V -ot biztosítson. Kicsit magasabbra tettem, mint 5V, mert idővel az akkumulátor feszültsége csökken, és kissé befolyásolja a kimeneti feszültséget. Készítettem egy adaptert is, amely lehetővé teszi, hogy akár 5 eszközt is tápelláthassak, amelyek 12V -ot igényelnek az akkumulátorból.

12. lépés: Rendszerfejlesztés: A rendszer programozása 1. rész

Rendszerfejlesztés: A rendszer programozása 1. rész
Rendszerfejlesztés: A rendszer programozása 1. rész
Rendszerfejlesztés: A rendszer programozása 1. rész
Rendszerfejlesztés: A rendszer programozása 1. rész
Rendszerfejlesztés: A rendszer programozása 1. rész
Rendszerfejlesztés: A rendszer programozása 1. rész

Ennek a rendszernek az egyik legnehezebb része a programozás. Amikor először kaptam a Kinectet, hogy játsszon vele, telepítettem egy RTAB Map nevű programot, amely átveszi a Kinect adatfolyamát, és pontfelhővé alakítja. A pontfelhővel létrehozott egy 3D -s képet, amely elforgatható, így láthatja az összes objektum mélységét. Miután egy ideig játszottam vele és módosítottam az összes beállítást, úgy döntöttem, hogy telepítek egy szoftvert a Raspberry Pi -re, hogy lássam a Kinect adatfolyamát. A fenti utolsó két kép azt mutatja, hogy a Raspberry Pi körülbelül 15-20 képkocka / másodperc sebességgel képes előállítani.

Ajánlott: