Satura rādītājs:

Sonāra, Lidara un datora redzes izmantošana mikrokontrolleros, lai palīdzētu redzes invalīdiem: 16 soļi
Sonāra, Lidara un datora redzes izmantošana mikrokontrolleros, lai palīdzētu redzes invalīdiem: 16 soļi

Video: Sonāra, Lidara un datora redzes izmantošana mikrokontrolleros, lai palīdzētu redzes invalīdiem: 16 soļi

Video: Sonāra, Lidara un datora redzes izmantošana mikrokontrolleros, lai palīdzētu redzes invalīdiem: 16 soļi
Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024, Jūlijs
Anonim
Sonāra, Lidara un datora redzes izmantošana mikrokontrolleros, lai palīdzētu redzes invalīdiem
Sonāra, Lidara un datora redzes izmantošana mikrokontrolleros, lai palīdzētu redzes invalīdiem

Es vēlos izveidot saprātīgu “nūju”, kas var palīdzēt cilvēkiem ar redzes traucējumiem daudz vairāk nekā esošie risinājumi. Spieķis varēs paziņot lietotājam par objektiem priekšā vai sānos, radot troksni telpiskās skaņas tipa austiņās. Spieķim būs arī neliela kamera un LIDAR (gaismas noteikšana un diapazons), lai tā varētu atpazīt telpā esošos objektus un cilvēkus un paziņot lietotājam, izmantojot austiņas. Drošības apsvērumu dēļ austiņas nenoslēgs visu troksni, jo būs mikrofons, kas var filtrēt visas nevajadzīgās skaņas un noturēt automašīnas signālus un cilvēkus runāt. Visbeidzot, sistēmai būs GPS, lai tā varētu sniegt norādes un parādīt lietotājam, kurp doties.

Lūdzu, balsojiet par mani mikrokontrolleru un āra fitnesa konkursos!

1. darbība: projekta pārskats

Projekta pārskats
Projekta pārskats
Projekta pārskats
Projekta pārskats
Projekta pārskats
Projekta pārskats

Saskaņā ar World Access for the Blind, fiziskā kustība ir viens no lielākajiem izaicinājumiem neredzīgajiem. Ceļot vai vienkārši staigāt pa pārpildītu ielu var būt ļoti grūti. Tradicionāli vienīgais risinājums bija plaši pazīstamā “baltā spieķa” izmantošana, ko galvenokārt izmanto apkārtnes skenēšanai, trāpot šķēršļus lietotāja tuvumā. Labāks risinājums būtu ierīce, kas var aizstāt redzīgo palīgu, sniedzot informāciju par šķēršļu atrašanās vietu, lai neredzīgais cilvēks varētu iziet nezināmā vidē un justies droši. Šī projekta laikā tika izstrādāta neliela ar baterijām darbināma ierīce, kas atbilst šiem kritērijiem. Ierīce var noteikt objekta lielumu un atrašanās vietu, izmantojot sensorus, kas mēra objektu stāvokli attiecībā pret lietotāju, pārsūta šo informāciju mikrokontrolleram un pēc tam pārveido to par audio, lai sniegtu informāciju lietotājam. Ierīce tika uzbūvēta, izmantojot pieejamos komerciālos LIDAR (gaismas noteikšanas un diapazona noteikšanas), SONAR (skaņas navigācijas un diapazona) un datora redzes tehnoloģijas, kas saistītas ar mikrokontrolleriem un ieprogrammētas, lai nodrošinātu nepieciešamo skaņas informācijas izvadi, izmantojot austiņas vai austiņas. Noteikšanas tehnoloģija tika iestrādāta “baltajā spieķī”, lai citiem norādītu lietotāja stāvokli un nodrošinātu papildu drošību.

2. darbība. Vispārīga izpēte

Fona izpēte
Fona izpēte
Fona izpēte
Fona izpēte
Fona izpēte
Fona izpēte
Fona izpēte
Fona izpēte

Gadā Pasaules Veselības organizācija ziņoja, ka pasaulē ir 285 miljoni cilvēku ar redzes traucējumiem, no kuriem 39 miljoni ir pilnīgi neredzīgi. Lielākā daļa cilvēku nedomā par problēmām, ar kurām redzes invalīdi saskaras katru dienu. Saskaņā ar World Access for the Blind, fiziskā kustība ir viens no lielākajiem izaicinājumiem neredzīgajiem. Ceļot vai vienkārši staigāt pa pārpildītu ielu var būt ļoti grūti. Šī iemesla dēļ daudzi cilvēki ar redzes traucējumiem dod priekšroku redzīga drauga vai ģimenes locekļa uzņemšanai, lai palīdzētu orientēties jaunā vidē. Tradicionāli vienīgais risinājums bija plaši pazīstamā “baltā spieķa” izmantošana, ko galvenokārt izmanto apkārtnes skenēšanai, trāpot šķēršļus lietotāja tuvumā. Labāks risinājums būtu ierīce, kas var aizstāt redzīgo palīgu, sniedzot informāciju par šķēršļu atrašanās vietu, lai neredzīgais cilvēks varētu iziet nezināmā vidē un justies droši. IBM un Carnegie Mellon University sadarbībā esošais uzņēmums NavCog ir mēģinājis atrisināt problēmu, izveidojot sistēmu, kas palīdz izmantot Bluetooth bākas un viedtālruņus. Tomēr risinājums bija apgrūtinošs un izrādījās ļoti dārgs liela mēroga ieviešanai. Mans risinājums to risina, novēršot nepieciešamību pēc ārējām ierīcēm un izmantojot balsi, lai vadītu lietotāju visas dienas garumā (3. attēls). Tehnoloģijas priekšrocība ir tā, ka tā ir iestrādāta “baltajā spieķī”, jo tā signalizē pārējai pasaulei par lietotāja stāvokli, kas izraisa izmaiņas apkārtējo cilvēku uzvedībā.

3. darbība. Prasības projektēšanai

Dizaina prasības
Dizaina prasības

Pēc pieejamo tehnoloģiju izpētes apspriedu iespējamos risinājumus ar redzes speciālistiem par labāko pieeju, lai palīdzētu vājredzīgajiem orientēties vidē. Tālāk esošajā tabulā ir uzskaitītas vissvarīgākās funkcijas, kas nepieciešamas, lai kāds varētu pāriet uz manu ierīci.

Motīvs - apraksts:

  • Skaitļošana - sistēmai jānodrošina ātra informācijas apmaiņa starp lietotāju un sensoriem. Piemēram, sistēmai jāspēj informēt lietotāju par priekšā esošajiem šķēršļiem, kas atrodas vismaz 2 m attālumā.
  • Pārklājums - sistēmai ir jāsniedz pakalpojumi telpās un ārpus tām, lai uzlabotu redzes invalīdu dzīves kvalitāti.
  • Laiks - Sistēmai jādarbojas tikpat labi dienā kā naktī.
  • Diapazons - diapazons ir attālums starp lietotāju un objektu, kas jānosaka sistēmai. Ideāls minimālais diapazons ir 0,5 m, bet maksimālais diapazons ir lielāks par 5 m. Turpmākie attālumi būtu vēl labāki, bet grūtāk aprēķināmi.
  • Objekta tips - sistēmai vajadzētu noteikt pēkšņu objektu parādīšanos. Sistēmai vajadzētu spēt noteikt atšķirību starp kustīgiem objektiem un statiskiem objektiem.

4. solis: inženiertehniskais dizains un aprīkojuma izvēle

Inženiertehniskais dizains un aprīkojuma izvēle
Inženiertehniskais dizains un aprīkojuma izvēle
Inženiertehniskais dizains un aprīkojuma izvēle
Inženiertehniskais dizains un aprīkojuma izvēle
Inženiertehniskais dizains un aprīkojuma izvēle
Inženiertehniskais dizains un aprīkojuma izvēle

Pēc daudzu dažādu komponentu aplūkošanas es nolēmu daļas, kas atlasītas no dažādām zemāk esošajām kategorijām.

Izvēlēto detaļu cena:

  • Zungle Panther: 149,99 ASV dolāri
  • LiDAR Lite V3: 149,99 ASV dolāri
  • LV-MaxSonar-EZ1: 29,95 ASV dolāri
  • Ultraskaņas sensors - HC -SR04: 3,95 ASV dolāri
  • Raspberry Pi 3: 39,95 ASV dolāri
  • Arduino: 24,95 ASV dolāri
  • Kinect: 32,44 ASV dolāri
  • Floureon 11.1v 3s 1500mAh: 19,99 ASV dolāri
  • LM2596HV: 9,64 ASV dolāri

5. solis: aprīkojuma izvēle: mijiedarbības metode

Aprīkojuma izvēle: mijiedarbības metode
Aprīkojuma izvēle: mijiedarbības metode
Aprīkojuma izvēle: mijiedarbības metode
Aprīkojuma izvēle: mijiedarbības metode

Es nolēmu izmantot balss vadību kā metodi, lai mijiedarbotos ar ierīci, jo vairākas pogas uz spieķa var būt izaicinājums cilvēkiem ar redzes traucējumiem, it īpaši, ja dažām funkcijām ir vajadzīgas pogu kombinācijas. Izmantojot balss vadību, lietotājs var izmantot iepriekš iestatītas komandas, lai sazinātos ar spieķi, kas samazina iespējamās kļūdas.

Ierīce: plusi-mīnusi:

  • Pogas: Nospiežot labo pogu, nav komandu kļūdu --- Var būt grūti nodrošināt pareizo pogu nospiešanu
  • Balss vadība: viegli, jo lietotājs var izmantot iepriekš iestatītas komandas --- Nepareiza izruna var izraisīt kļūdas

6. solis: aprīkojuma izvēle: mikrokontrolleris

Aprīkojuma izvēle: mikrokontrolleris
Aprīkojuma izvēle: mikrokontrolleris
Aprīkojuma izvēle: mikrokontrolleris
Aprīkojuma izvēle: mikrokontrolleris
Aprīkojuma izvēle: mikrokontrolleris
Aprīkojuma izvēle: mikrokontrolleris

Ierīce izmantoja Raspberry Pi zemo izmaksu un pietiekamās apstrādes jaudas dēļ, lai aprēķinātu dziļuma karti. Intel Joule būtu bijusi vēlamā iespēja, taču tās cena būtu dubultojusi sistēmas izmaksas, kas nebūtu ideāli piemērota šai ierīcei, kas izstrādāta, lai lietotājiem piedāvātu zemākas izmaksas. Arduino tika izmantots sistēmā, jo tas var viegli iegūt informāciju no sensoriem. BeagleBone un Intel Edison netika izmantoti zemās cenas un veiktspējas attiecības dēļ, kas ir slikti šai zemo izmaksu sistēmai.

Mikrokontrolleris: plusi-mīnusi:

  • Raspberry Pi: ir pietiekami daudz apstrādes jaudas, lai atrastu šķēršļus, un tam ir integrēts WiFi/Bluetooth --- nav daudz iespēju datu saņemšanai no sensoriem
  • Arduino: Viegli saņemt datus no maziem sensoriem. ti. LIDAR, ultraskaņas, SONAR uc --- Nepietiek apstrādes jaudas, lai atrastu šķēršļus
  • Intel Edison: var ātri apstrādāt šķēršļus, izmantojot ātru procesoru --- Sistēmai ir nepieciešami papildu izstrādātāja elementi
  • Intel Joule: ir dubultā apstrādes ātrums jebkuram līdz šim patērētāju tirgū esošajam mikrokontrollerim --- Ļoti augstas šīs sistēmas izmaksas un grūti mijiedarboties ar GPIO sensoru mijiedarbībai
  • BeagleBone Black: kompakts un savietojams ar projektā izmantotajiem sensoriem, izmantojot vispārējas nozīmes ievades izvadi (GPIO) --- Nepietiek apstrādes jaudas, lai efektīvi atrastu objektus

7. solis: aprīkojuma izvēle: sensori

Aprīkojuma izvēle: sensori
Aprīkojuma izvēle: sensori
Aprīkojuma izvēle: sensori
Aprīkojuma izvēle: sensori
Aprīkojuma izvēle: sensori
Aprīkojuma izvēle: sensori

Lai iegūtu augstu atrašanās vietas precizitāti, tiek izmantota vairāku sensoru kombinācija. Kinect ir galvenais sensors, jo tas var vienlaikus meklēt šķēršļus. LIDAR, kas apzīmē LIght Detection and Ranging, ir tālvadības metode, kurā tiek izmantota gaisma impulsa lāzera veidā, lai ātri izmērītu attālumus no vietas, kur sensors atrodas līdz objektiem; šis sensors tiek izmantots, jo tas var izsekot līdz pat 40 metru (m) attālumā esošajai zonai un, tā kā tas var skenēt dažādos leņķos, tas var noteikt, vai soļi iet uz augšu vai uz leju. Skaņas navigācijas un diapazona (SONAR) un ultraskaņas sensori tiek izmantoti kā rezerves izsekošana gadījumā, ja Kinect palaiž zemē stabu vai triecienu, kas varētu apdraudēt lietotāju. Deviņu brīvības pakāpju sensors tiek izmantots, lai izsekotu, kādā virzienā lietotājs ir vērsts, lai ierīce varētu uzglabāt informāciju augstākai precizitātei, norādot nākamreiz, kad persona iet tajā pašā vietā.

Sensori: plusi-mīnusi:

  • Kinect V1: var izsekot 3D objektus ar --- tikai vienu kameru, lai noteiktu apkārtni
  • Kinect V2: ir 3 infrasarkanās kameras un sarkana, zaļa, zila, dziļuma (RGB-D) kamera augstas precizitātes 3D objektu noteikšanai --- var sakarst un var būt nepieciešams dzesēšanas ventilators, un tā ir lielāka par citiem sensoriem
  • LIDAR: staru kūlis, kas var izsekot līdz 40 m attālumā esošajām vietām --- jānovieto pret objektu un var skatīties tikai šajā virzienā
  • SONAR: stars, kas var izsekot 5 m attālumā, bet tālu diapazonā --- mazi priekšmeti, piemēram, spalvas, var iedarbināt sensoru
  • Ultraskaņa: diapazons ir līdz 3 m, un tā ir ļoti lēta --- attālumi dažkārt var būt neprecīzi
  • 9 brīvības pakāpes sensors: piemērots lietotāja orientācijas un ātruma noteikšanai --- Ja kaut kas traucē sensoriem, attāluma aprēķinus var nepareizi aprēķināt

8. solis: aprīkojuma izvēle: programmatūra

Aprīkojuma izvēle: programmatūra
Aprīkojuma izvēle: programmatūra
Aprīkojuma izvēle: programmatūra
Aprīkojuma izvēle: programmatūra
Aprīkojuma izvēle: programmatūra
Aprīkojuma izvēle: programmatūra

Izvēlētā programmatūra pirmajiem prototipiem, kas būvēti ar Kinect V1 sensoru, bija Freenect, taču tā nebija ļoti precīza. Pārejot uz Kinect V2 un Freenect2, izsekošanas rezultāti tika ievērojami uzlaboti, pateicoties uzlabotajai izsekošanai, jo V2 ir HD kamera un 3 infrasarkanās kameras, nevis viena Kinect V1 kamera. Kad es izmantoju OpenNi2 ar Kinect V1, funkcijas bija ierobežotas, un es nevarēju kontrolēt dažas ierīces funkcijas.

Programmatūra: plusi-mīnusi:

  • Freenect: ir zemāks kontroles līmenis visu kontrolei --- atbalsta tikai Kinect V1
  • OpenNi2: var viegli izveidot punktu mākoņa datus no informācijas plūsmas no Kinect --- atbalsta tikai Kinect V1 un neatbalsta zema līmeņa kontroli
  • Freenect2: ir zemāks sensoru joslas vadības līmenis --- darbojas tikai ar Kinect V2
  • ROS: operētājsistēma, kas ideāli piemērota kameras funkciju programmēšanai --- Jāinstalē ātrā SD kartē, lai programmatūra darbotos

9. solis: aprīkojuma izvēle: citas detaļas

Aprīkojuma izvēle: citas detaļas
Aprīkojuma izvēle: citas detaļas
Aprīkojuma izvēle: citas detaļas
Aprīkojuma izvēle: citas detaļas

Litija jonu baterijas tika izvēlētas, jo tās ir vieglas, tām ir liela jauda un tās ir uzlādējamas. Litija jonu akumulatora 18650 variantam ir cilindriska forma un tas lieliski iekļaujas niedru prototipā. Pirmais niedru prototips ir izgatavots no PVC caurules, jo tas ir dobs un samazina spieķa svaru.

10. darbība. Sistēmas izstrāde: aparatūras 1. daļas izveide

Sistēmas izstrāde: aparatūras 1. daļas izveide
Sistēmas izstrāde: aparatūras 1. daļas izveide
Sistēmas izstrāde: aparatūras 1. daļas izveide
Sistēmas izstrāde: aparatūras 1. daļas izveide
Sistēmas izstrāde: aparatūras 1. daļas izveide
Sistēmas izstrāde: aparatūras 1. daļas izveide

Vispirms mums ir jāizjauc Kinect, lai tas būtu vieglāks un iederētos spieķa iekšpusē. Es sāku, noņemot no Kinect visu ārējo apvalku, jo izmantotā plastmasa sver DAUDZ. Tad man vajadzēja pārgriezt kabeli, lai pamatni varētu noņemt. Es paņēmu vadus no attēlā redzamā savienotāja un pielodēju tos pie USB kabeļa ar signāla vadiem un pārējie divi savienojumi bija paredzēti 12 V ieejas jaudai. Tā kā es vēlējos, lai nūjas iekšpusē esošais ventilators darbotos ar pilnu jaudu, lai atdzesētu visas pārējās sastāvdaļas, es pārtraucu ventilatora savienotāju no Kinect un pievienoju vadu 5 V no Raspberry Pi. Es arī izveidoju nelielu adapteri LiDAR vadam, lai to varētu savienot tieši ar Raspberry Pi bez jebkādām citām sistēmām.

Es nejauši pielodēju balto vadu pie melnā, tāpēc neskaties uz elektroinstalācijas shēmu attēliem

11. darbība. Sistēmas izstrāde: aparatūras 2. daļas izveide

Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide
Sistēmas izstrāde: aparatūras 2. daļas izveide

Es izveidoju regulatora gabalu, lai nodrošinātu enerģiju visām ierīcēm, kurām nepieciešams 5 V, piemēram, Raspberry Pi. Es noregulēju regulatoru, uz izejas uzliekot skaitītāju un noregulējot rezistoru tā, lai regulators nodrošinātu 5.05V. Es to ievietoju nedaudz augstāk par 5 V, jo laika gaitā akumulatora spriegums samazinās un nedaudz ietekmē izejas spriegumu. Es arī izveidoju adapteri, kas ļauj barot līdz 5 ierīcēm, kurām no akumulatora ir nepieciešams 12V spriegums.

12. solis: Sistēmas izstrāde: Sistēmas programmēšana 1. daļa

Sistēmas izstrāde: sistēmas programmēšana 1. daļa
Sistēmas izstrāde: sistēmas programmēšana 1. daļa
Sistēmas izstrāde: sistēmas programmēšana 1. daļa
Sistēmas izstrāde: sistēmas programmēšana 1. daļa
Sistēmas izstrāde: sistēmas programmēšana 1. daļa
Sistēmas izstrāde: sistēmas programmēšana 1. daļa

Viena no sarežģītākajām šīs sistēmas daļām ir programmēšana. Kad es pirmo reizi saņēmu Kinect, lai ar to spēlētu, es instalēju programmu ar nosaukumu RTAB Map, kas ņem datu plūsmu no Kinect un pārvērš to punktu mākonī. Izmantojot punktu mākoni, tas izveidoja 3D attēlu, kuru var pagriezt, lai redzētu visu objektu dziļumu. Kādu laiku spēlējoties ar to un pielāgojot visus iestatījumus, es nolēmu Raspberry Pi instalēt kādu programmatūru, lai es varētu redzēt datu plūsmu no Kinect. Pēdējie divi iepriekš redzamie attēli parāda, ko Raspberry Pi var radīt ar ātrumu aptuveni 15-20 kadri sekundē.

Ieteicams: