Sadržaj:

Korištenje sonara, Lidara i računalnog vida na mikrokontrolerima za pomoć slabovidnim osobama: 16 koraka
Korištenje sonara, Lidara i računalnog vida na mikrokontrolerima za pomoć slabovidnim osobama: 16 koraka

Video: Korištenje sonara, Lidara i računalnog vida na mikrokontrolerima za pomoć slabovidnim osobama: 16 koraka

Video: Korištenje sonara, Lidara i računalnog vida na mikrokontrolerima za pomoć slabovidnim osobama: 16 koraka
Video: Выучите 60 ОЧЕНЬ ПОЛЕЗНЫХ английских фразовых глаголов в прошедшем времени + фразы-примеры 2024, Studeni
Anonim
Korištenje Sonara, Lidara i Računalnog vida na mikrokontrolerima za pomoć slabovidnim osobama
Korištenje Sonara, Lidara i Računalnog vida na mikrokontrolerima za pomoć slabovidnim osobama

Želim stvoriti inteligentni 'štap' koji može pomoći ljudima s oštećenjem vida mnogo više od postojećih rješenja. Štap će moći obavijestiti korisnika o objektima ispred ili sa strane stvaranjem buke u slušalicama tipa surround zvuk. Štap će također imati malu kameru i LIDAR (otkrivanje svjetla i domet) tako da može prepoznati objekte i ljude u prostoriji te obavijestiti korisnika pomoću slušalica. Iz sigurnosnih razloga, slušalice neće blokirati svu buku jer će postojati mikrofon koji može filtrirati sve nepotrebne zvukove i zadržati sirene i ljude u razgovoru. Na kraju će sustav imati GPS kako bi mogao davati upute i pokazati korisniku kamo treba ići.

Molimo vas da glasate za mene na natjecanjima za mikrokontroler i vanjski fitness!

Korak 1: Pregled projekta

Pregled projekta
Pregled projekta
Pregled projekta
Pregled projekta
Pregled projekta
Pregled projekta

Prema Svjetskom pristupu slijepima, fizičko kretanje jedan je od najvećih izazova za slijepe osobe. Putovati ili jednostavno hodati prepunom ulicom može biti jako teško. Tradicionalno jedino rješenje bilo je korištenje općepoznatog "bijelog štapa" koji se prvenstveno koristi za skeniranje okoline udarajući u prepreke u blizini korisnika. Bolje rješenje bio bi uređaj koji može zamijeniti vidovitog pomoćnika pružanjem informacija o lokaciji prepreka tako da slijepa osoba može izaći u nepoznato okruženje i osjećati se sigurno. Tijekom ovog projekta razvijen je mali uređaj na baterije koji zadovoljava ove kriterije. Uređaj može otkriti veličinu i mjesto objekta pomoću senzora koji mjere položaj objekata u odnosu na korisnika, prenose te podatke u mikrokontroler, a zatim ih pretvaraju u zvuk kako bi pružili informacije korisniku. Uređaj je izrađen pomoću dostupnih komercijalnih LIDAR -a (Detekcija svjetla i dometa), SONAR -a (Zvučna navigacija i domet) i tehnologija računalnog vida povezanih s mikrokontrolerima i programiranih za pružanje potrebnog zvučnog izlaza pomoću slušalica ili slušalica. Tehnologija otkrivanja ugrađena je u "bijeli štap" kako bi drugima ukazala na stanje korisnika i pružila dodatnu sigurnost.

Korak 2: Istraživanje pozadine

Pozadinsko istraživanje
Pozadinsko istraživanje
Pozadinsko istraživanje
Pozadinsko istraživanje
Pozadinsko istraživanje
Pozadinsko istraživanje
Pozadinsko istraživanje
Pozadinsko istraživanje

Svjetska zdravstvena organizacija je 2017. godine izvijestila da u svijetu postoji 285 milijuna osoba oštećenog vida, od čega je 39 milijuna potpuno slijepih. Većina ljudi ne razmišlja o problemima s kojima se osobe s oštećenjem vida svakodnevno suočavaju. Prema Svjetskom pristupu slijepima, fizičko kretanje jedan je od najvećih izazova za slijepe osobe. Putovanje ili jednostavno hodanje prepunom ulicom može biti vrlo teško. Zbog toga mnogi ljudi s oštećenjem vida radije dovode vidovitog prijatelja ili člana obitelji koji će im pomoći u snalaženju u novim sredinama. Tradicionalno jedino rješenje bilo je korištenje općepoznatog "bijelog štapa" koji se prvenstveno koristi za skeniranje okoline udarajući u prepreke u blizini korisnika. Bolje rješenje bio bi uređaj koji može zamijeniti vidovitog pomoćnika pružanjem informacija o lokaciji prepreka tako da slijepa osoba može izaći u nepoznato okruženje i osjećati se sigurno. NavCog, suradnja između IBM -a i Sveučilišta Carnegie Mellon, pokušali su riješiti problem stvaranjem sustava koji koristi Bluetooth svjetionike i pametne telefone za pomoć pri vođenju. Međutim, rješenje je bilo nezgrapno i pokazalo se vrlo skupim za velike implementacije. Moje rješenje rješava ovo uklanjanjem bilo kakve potrebe za vanjskim uređajima i glasom za usmjeravanje korisnika tijekom dana (slika 3). Prednost što je tehnologija ugrađena u "bijeli štap" je ta što signalizira ostatku svijeta stanje korisnika što uzrokuje promjenu u ponašanju ljudi u okruženju.

Korak 3: Zahtjevi za dizajn

Zahtjevi za projektiranje
Zahtjevi za projektiranje

Nakon što sam istražio dostupne tehnologije, razgovarao sam sa stručnjacima za vid o mogućim rješenjima o najboljem pristupu pomaganju slabovidnim osobama u snalaženju u njihovom okruženju. U donjoj tablici navedene su najvažnije značajke potrebne za prijelaz na moj uređaj.

Značajka - opis:

  • Računanje - Sustav mora omogućiti brzu obradu razmjene informacija između korisnika i senzora. Na primjer, sustav mora biti u mogućnosti obavijestiti korisnika o preprekama ispred koje su udaljene najmanje 2 m.
  • Pokrivenost - Sustav mora pružati svoje usluge u zatvorenom i na otvorenom kako bi poboljšao kvalitetu života osoba s oštećenjem vida.
  • Vrijeme - Sustav bi trebao raditi jednako dobro i danju i noću.
  • Raspon - raspon je udaljenost između korisnika i objekta koje sustav mora otkriti. Idealni minimalni raspon je 0,5 m, dok maksimalni raspon treba biti veći od 5 m. Daljnje udaljenosti bile bi još bolje, ali izazovnije za izračunavanje.
  • Vrsta objekta - Sustav bi trebao otkriti iznenadnu pojavu objekata. Sustav bi trebao moći razlikovati pokretne i statičke objekte.

Korak 4: Inženjerski dizajn i odabir opreme

Inženjerski dizajn i odabir opreme
Inženjerski dizajn i odabir opreme
Inženjerski dizajn i odabir opreme
Inženjerski dizajn i odabir opreme
Inženjerski dizajn i odabir opreme
Inženjerski dizajn i odabir opreme

Nakon što sam pogledao mnoge različite komponente, odlučio sam se za dijelove odabrane iz različitih kategorija u nastavku.

Cijena odabranih dijelova:

  • Zungle Panther: 149,99 USD
  • LiDAR Lite V3: 149,99 USD
  • LV-MaxSonar-EZ1: 29,95 USD
  • Ultrazvučni senzor - HC -SR04: 3,95 USD
  • Malina Pi 3: 39,95 USD
  • Arduino: 24,95 USD
  • Kinect: 32,44 USD
  • Floureon 11.1v 3s 1500mAh: 19,99 USD
  • LM2596HV: 9,64 USD

Korak 5: Odabir opreme: Metoda interakcije

Odabir opreme: način interakcije
Odabir opreme: način interakcije
Odabir opreme: način interakcije
Odabir opreme: način interakcije

Odlučio sam se koristiti glasovnom kontrolom kao metodom za interakciju s uređajem jer imati više gumba na štapu može biti izazov za osobe s oštećenjem vida, pogotovo ako su neke funkcije zahtijevale kombinaciju gumba. Uz glasovno upravljanje, korisnik može koristiti unaprijed postavljene naredbe za komunikaciju s štapom što smanjuje potencijalne pogreške.

Uređaj: Prednosti --- Nedostaci:

  • Gumbi: Nema pogreške u naredbi kada se pritisne desna tipka --- Osigurati da se pritisnu ispravni gumbi može biti izazov
  • Glasovno upravljanje: Jednostavno jer korisnik može koristiti unaprijed postavljene naredbe --- Neispravan izgovor može izazvati pogreške

Korak 6: Odabir opreme: Mikrokontroler

Izbor opreme: Mikrokontroler
Izbor opreme: Mikrokontroler
Izbor opreme: Mikrokontroler
Izbor opreme: Mikrokontroler
Izbor opreme: Mikrokontroler
Izbor opreme: Mikrokontroler

Uređaj je koristio Raspberry Pi zbog niske cijene i dovoljne procesorske snage za izračun karte dubine. Intel Joule bi bio preferirana opcija, ali njegova cijena bi udvostručila cijenu sustava što ne bi bilo idealno za ovaj uređaj koji je razvijen kako bi korisnicima omogućio nižu cijenu. Arduino je korišten u sustavu jer može lako dobiti informacije od senzora. BeagleBone i Intel Edison nisu korišteni zbog niskog omjera cijene i performansi što je loše za ovaj jeftini sustav.

Mikrokontroler: Prednosti --- Nedostaci:

  • Raspberry Pi: Ima dovoljno procesorske snage za pronalaženje prepreka i ima integriran WiFi/Bluetooth --- Nema mnogo opcija za primanje podataka sa senzora
  • Arduino: Lako primajte podatke s malih senzora. tj. LIDAR, Ultrasonic, SONAR, itd. --- Nema dovoljno procesorske snage za pronalaženje prepreka
  • Intel Edison: Može brzo obraditi prepreke s brzim procesorom --- Za funkcioniranje sustava potrebni su dodatni dijelovi programera
  • Intel Joule: Ima dvostruku brzinu obrade od bilo kojeg mikrokontrolera na potrošačkom tržištu do sada --- Vrlo visoka cijena za ovaj sustav i teška interakcija s GPIO-om za interakciju senzora
  • BeagleBone Black: Kompaktan i kompatibilan sa senzorima koji se koriste u projektu pomoću općenitog ulaznog izlaza opće namjene (GPIO) --- Nema dovoljno procesorske snage za učinkovito pronalaženje objekata

Korak 7: Odabir opreme: Senzori

Izbor opreme: Senzori
Izbor opreme: Senzori
Izbor opreme: Senzori
Izbor opreme: Senzori
Izbor opreme: Senzori
Izbor opreme: Senzori

Kombinacija nekoliko senzora koristi se za postizanje visoke točnosti lokacije. Kinect je glavni senzor zbog količine područja koje može istovremeno skenirati radi pronalaska prepreka. LIDAR, što znači LIght Detection and Ranging, je metoda daljinskog mjerenja koja koristi svjetlo u obliku impulsnog lasera za mjerenje udaljenosti od mjesta na kojem se senzor nalazi do objekata brzo; taj se senzor koristi jer može pratiti područje udaljeno do 40 metara (m) i budući da može skenirati pod različitim kutovima, može otkriti idu li neki koraci prema gore ili prema dolje. Zvučni navigacijski i daljinski senzori (SONAR) i ultrazvučni senzori koriste se kao rezervno praćenje u slučaju da Kinect promaši stup ili udarac u tlo koji bi predstavljao opasnost za korisnika. Senzor 9 stupnjeva slobode koristi se za praćenje u kojem je smjeru korisnik okrenut tako da uređaj može pohraniti podatke radi veće točnosti usmjeravajući sljedeći put kada osoba hoda na istom mjestu.

Senzori: Prednosti --- Protiv:

  • Kinect V1: Može pratiti 3D objekte sa --- samo jednom kamerom za otkrivanje okoline
  • Kinect V2: Ima 3 infracrvene kamere i crvenu, zelenu, plavu, dubinsku (RGB-D) kameru za preciznu detekciju 3D objekata --- Može se zagrijati i možda će trebati ventilator za hlađenje, a veći je od ostalih senzora
  • LIDAR: Snop koji može pratiti lokacije udaljene i do 40 m --- Potrebno ga je postaviti prema objektu i može gledati samo u tom smjeru
  • SONAR: Snop koji može pratiti 5 m dalje, ali u velikom dometu --- Mali predmeti poput perja mogu aktivirati senzor
  • Ultrazvučni: ima domet do 3 m i vrlo je jeftin --- udaljenosti ponekad mogu biti netočne
  • Senzor 9 stupnjeva slobode: Dobar za prepoznavanje orijentacije i brzine korisnika --- Ako nešto ometa senzore, izračunavanje udaljenosti može se pogrešno izračunati

Korak 8: Odabir opreme: Softver

Izbor opreme: softver
Izbor opreme: softver
Izbor opreme: softver
Izbor opreme: softver
Izbor opreme: softver
Izbor opreme: softver

Odabrani softver za prvih nekoliko prototipova izgrađenih sa senzorom Kinect V1 bio je Freenect, ali nije bio vrlo točan. Prilikom prelaska na Kinect V2 i Freenect2, rezultati praćenja značajno su poboljšani zbog poboljšanog praćenja jer V2 ima HD kameru i 3 infracrvene kamere, za razliku od jedne kamere na Kinect V1. Kad sam koristio OpenNi2 s Kinect V1, funkcije su bile ograničene i nisam mogao kontrolirati neke od funkcija uređaja.

Softver: Prednosti --- Nedostaci:

  • Freenect: Ima nižu razinu kontrole za kontrolu svega --- Podržava samo Kinect V1
  • OpenNi2: Može jednostavno stvoriti podatke oblaka točaka iz informacijskog toka iz Kinecta --- Podržava samo Kinect V1 i nema podršku za kontrolu niske razine
  • Freenect2: Ima nižu razinu kontrole za senzorsku traku --- Radi samo za Kinect V2
  • ROS: Operacijski sustav idealan za programiranje funkcija kamere --- Potrebno ga je instalirati na brzu SD karticu kako bi softver radio

Korak 9: Odabir opreme: Ostali dijelovi

Izbor opreme: Ostali dijelovi
Izbor opreme: Ostali dijelovi
Izbor opreme: Ostali dijelovi
Izbor opreme: Ostali dijelovi

Litij -ionske baterije odabrane su zbog toga što su lagane, imaju veliki kapacitet napajanja i mogu se puniti. Varijanta litij -ionske baterije 18650 ima cilindrični oblik i savršeno se uklapa u prototip trske. Prvi prototip štapa izrađen je od PVC cijevi jer je šupalj i smanjuje težinu štapa.

Korak 10: Razvoj sustava: Stvaranje hardvera 1. dio

Razvoj sustava: Stvaranje hardvera 1. dio
Razvoj sustava: Stvaranje hardvera 1. dio
Razvoj sustava: Stvaranje hardvera 1. dio
Razvoj sustava: Stvaranje hardvera 1. dio
Razvoj sustava: Stvaranje hardvera 1. dio
Razvoj sustava: Stvaranje hardvera 1. dio

Prvo moramo rastaviti Kinect kako bi bio lakši i kako bi stao unutar štapa. Počeo sam uklanjanjem cijelog vanjskog kućišta s Kinecta jer je korištena plastika PUNO teška. Zatim sam morao presjeći kabel kako bi se baza mogla ukloniti. Uzeo sam žice iz konektora prikazanog na slici i lemio ih na USB kabel sa signalnim žicama, a druga dva priključka služila su za ulaz 12V. Budući da sam želio da ventilator unutar štapa radi punom snagom da ohladi sve ostale komponente, odrezao sam priključak ventilatora s Kinecta i ožičio 5V s Raspberry Pi. Napravio sam i mali adapter za žicu LiDAR tako da se može spojiti izravno na Raspberry Pi bez ikakvih drugih sustava između.

Slučajno sam lemio bijelu žicu na crnu pa nemojte gledati slike za dijagrame ožičenja

Korak 11: Razvoj sustava: Stvaranje hardvera 2. dio

Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio
Razvoj sustava: Stvaranje hardvera 2. dio

Napravio sam dio regulatora za napajanje svih uređaja koji zahtijevaju 5V poput Raspberry Pi. Regulator sam podesio tako što sam stavio mjerač na izlaz i podesio otpornik tako da regulator daje 5,05V. Stavio sam ga malo više od 5V jer s vremenom napon baterije pada i blago utječe na izlazni napon. Također sam napravio adapter koji mi omogućuje napajanje do 5 uređaja koji zahtijevaju 12V iz baterije.

Korak 12: Razvoj sustava: Programiranje sustava Dio 1

Razvoj sustava: Programiranje sustava 1. dio
Razvoj sustava: Programiranje sustava 1. dio
Razvoj sustava: Programiranje sustava 1. dio
Razvoj sustava: Programiranje sustava 1. dio
Razvoj sustava: Programiranje sustava 1. dio
Razvoj sustava: Programiranje sustava 1. dio

Jedan od najizazovnijih dijelova ovog sustava je programiranje. Kad sam prvi put dobio Kinect da se poigra s njim, instalirao sam program pod nazivom RTAB Map koji uzima tok podataka iz Kinecta i pretvara ga u oblak točaka. S oblakom točaka stvorio je 3D sliku koja se može rotirati pa se vidi dubina gdje se nalaze svi objekti. Nakon što sam se neko vrijeme poigrao s njim i prilagodio sve postavke, odlučio sam instalirati neki softver na Raspberry Pi kako bih mogao vidjeti tok podataka iz Kinecta. Posljednje dvije gornje slike pokazuju što Raspberry Pi može proizvesti pri približno 15-20 sličica u sekundi.

Preporučeni: