Talaan ng mga Nilalaman:

Peripheral Radar para sa May Kapansanan sa Paningin: 14 Mga Hakbang
Peripheral Radar para sa May Kapansanan sa Paningin: 14 Mga Hakbang

Video: Peripheral Radar para sa May Kapansanan sa Paningin: 14 Mga Hakbang

Video: Peripheral Radar para sa May Kapansanan sa Paningin: 14 Mga Hakbang
Video: Buck Rogers (S1 E6) Return of the Fighting 69th: My Jaw Dropping Reaction! #buckrogers #scifi 2024, Nobyembre
Anonim
Peripheral Radar para sa May Kapansanan sa Paningin
Peripheral Radar para sa May Kapansanan sa Paningin

Bilang isang resulta ng isang kakila-kilabot na aksidente, isang kaibigan ko na kamakailan lamang nawala sa paningin sa kanyang kanang mata. Wala siyang trabaho sa mahabang panahon at nang siya ay bumalik sinabi niya sa akin na ang isa sa mga pinaka nakakainis na bagay na dapat niyang harapin ay ang kawalan ng pag-alam kung ano ang nasa kanang bahagi. Ang hindi gaanong peripheral vision ay nangangahulugang pagbangga sa mga bagay at tao. Inabala ako nito. Napagpasyahan kong kailangang may isang bagay na magagawa natin.

Nais kong bumuo ng isang aparato na maaaring sukatin ang distansya sa mga bagay sa kanang bahagi ng aking kaibigan. Ang aking plano ay gumamit ng isang haptic motor upang i-vibrate ang aparato nang proporsyonal sa distansya sa isang bagay. Pagkatapos kung ang mga bagay ay malayo ang motor ay hindi mag-vibrate at habang ang isang bagay ay mas malapit, magsisimulang mag-vibrate sa isang mababang antas. Kung ang bagay ay malapit na ito ay mag-vibrate sa isang mas mataas na antas (o anumang antas na nais mo). Ang aparato ay dapat na sapat na maliit upang mag-hang sa gilid ng baso na may sensor na tumuturo sa kanan. Ilalagay ng aking kaibigan ang aparato sa kanang bahagi ng kanyang baso ngunit syempre para sa ibang tao, maaaring ito ang kaliwang bahagi.

Naalala ko na mayroon akong ilang mga acoustic distance sensor sa bahay. Ngunit, ang mga ito ay medyo malaki at malaki, hindi gaanong tumpak at malamang na masyadong mabigat para magamit sa baso. Nagsimula na akong maghanap ng iba pa.

Ang nahanap ko ay ang sensor ng Time-of-Flight na ST Electronics VL53L0X. Ito ay isang infrared laser at infrared detector sa iisang package. Nagpapalabas ito ng pulso ng ilaw ng laser sa labas ng saklaw na nakikita ng tao (940 nm) at itinatala ang lumipas na oras na kinakailangan upang makita ang nakalantad na pulso. Hinahati nito ang oras na ito ng 2 at pinaparami ng bilis ng ilaw na gumagawa ng tumpak na distansya sa millimeter. Ang sensor ay maaaring makakita ng distansya hanggang sa 2 metro ngunit tulad ng nakita ko, 1 metro ay mas mahusay.

Tulad ng nangyari, ang Adafruit ay mayroong VL53L0X breakout board. Kaya't kailangan ko ng isang vibrating motor, na mayroon din sila, at isang microcontroller upang patakbuhin ang lahat. Nagkaroon ako ng isang PJRC Teensy 3.2 sa kamay. Habang mas malaki kaysa sa gusto ko ito ay may kakayahang mai-orasan sa isang mabagal na bilis. Nais kong ibaba ang bilis ng orasan upang makatipid ng kuryente. At hanggang sa napupunta ang isang mapagkukunan ng kuryente, nagkaroon ako ng isang Sparkfun boost regulator sa aking junk box kasama ang isang may-ari ng baterya ng AAA. Mayroon lamang ako tungkol sa lahat ng kailangan ko.

Hakbang 1: Unang Prototype

Unang Prototype
Unang Prototype
Unang Prototype
Unang Prototype

Kinuha ko ang mga bahaging mayroon ako nang manu-mano at gumawa ng isang prototype ng handheld ng aparato na aking naisip. Nag-print ako ng 3D sa hawakan at mounting plate at na-solder ang lahat ng mga electronics sa isang protokolard ng Adafruit. Ikinonekta ko ang nanginginig na motor sa Teensy sa pamamagitan ng isang 2N3904 NPN transistor. Nagdagdag ako ng isang potensyomiter na gagamitin upang maitakda ang maximum na distansya na tutugon sa aparato.

Pinatakbo ko ito sa susunod na katapusan ng linggo (tingnan ang larawan sa itaas). Hindi ito maganda ngunit ipinakita nito ang prinsipyo. Maaaring hawakan ng aking kaibigan ang aparato sa kanyang kanang bahagi at subukan kung magiging kapaki-pakinabang ang aparato o hindi at upang makatulong na pinuhin kung ano ang gusto niya para sa mga tampok.

Hakbang 2: Prototype # 2

Prototype # 2
Prototype # 2
Prototype # 2
Prototype # 2
Prototype # 2
Prototype # 2

Matapos ang unang hand-holding prototype nagsimula akong gumawa ng isang mas maliit na bersyon. Nais kong lumapit sa aking layunin na gumawa ng isang bagay na maaaring magkasya sa baso. Ang Teensy na ginamit ko sa bersyon ng handheld ay pinapayagan akong mabagal ang orasan upang makatipid ng kuryente. Ngunit ang laki ay magiging isang kadahilanan at sa gayon lumipat ako sa isang Adafruit Trinket M0. Habang ang rate ng orasan ay 48 MHz, ang ARM processor na batay dito ay maaaring ma-relo ng mas mabagal. Sa pamamagitan ng paggamit ng panloob na oscillator ng RC maaari itong tumakbo sa 8, 4 2 at kahit sa 1 MHz.

Ang Prototype # 2 ay magkakasama nang napakabilis nang magkasama ako sa susunod na katapusan ng linggo. Ang circuitry ay kapareho ng prototype # 1 maliban sa ARM M0. Nag-print ako ng 3D ng isang maliit na enclosure at naglalagay ng mga gabay sa likuran upang maaari itong mai-slide sa mga baso. Tingnan ang larawan sa itaas. Sa una ito ay nai-orasan sa rate na 48 MHz.

Hakbang 3: Prototype # 3

Prototype # 3
Prototype # 3

Kaya, ang Instructable na ito ay talagang nagsisimula dito. Nagpasya akong gumawa ng huling prototype. Napagpasyahan kong pisilin ito nang maliit hangga't maaari kong maikli sa paggamit ng isang pasadyang PWB (na kung saan ay sigurado akong papunta kami). Ang natitirang tagubilin na ito ay tungkol sa pagpapakita sa iyo kung paano gumawa ng isa. Tulad ng mga taong gumagawa ng 3D na naka-print na kamay para sa mga batang may kapansanan, ang aking pag-asa ay ang mga tao ay gumawa ng mga ito para sa sinumang may katulad na pagkawala ng paningin sa isang mata.

Iningatan ko ang listahan ng mga bahagi ng pareho sa prototype # 2 ngunit nagpasya akong alisin ang potensyomiter. Matapos makipag-usap sa aking kaibigan nagpasya kaming gawin ang maximum na itinakdang distansya gamit ang software. Dahil may kakayahan akong gumamit ng isang touch sensor gamit ang Teensy, maaari naming palaging gawin ang max na distansya sa isang setting sa pamamagitan ng pagpindot. Ang isang ugnayan ay nagtatakda ng isang maikling distansya, o higit pa na hawakan ang isang mas mahabang distansya, isa pang hawakan ang pinakamahabang distansya at pagkatapos para sa isa pang paghawak, balutin pabalik sa simula. Ngunit sa una, gagamitin namin ang isang nakapirming distansya upang makapunta.

Hakbang 4: Mga Bahagi

Mga Bahagi
Mga Bahagi

Para sa prototype na ito kailangan ko ng isang mas maliit na board. Sumama ako sa isang Sparkfun protoboard (PRT-12702) sapagkat maliit na sukat (tungkol sa 1.8 "X 1.3") ay isang mahusay na sukat upang kunan ng larawan.

Kailangan ko ring gumamit ng ibang bagay bukod sa isang baterya ng AAA bilang isang mapagkukunan ng kuryente. Ang isang LiPo ay tila tulad ng tamang pagpipilian dahil magkakaroon ito ng kapasidad sa pag-iimbak at magaan na timbang. Sinubukan ko ang isang coin cell ngunit wala itong sapat na lakas upang mahawakan ang motor nang napakahabang. Pinili ko ang isang maliit na LiPo na may kapasidad na 150 mAH.

Manatili ako sa Trinket M0 at syempre, ang breakout board ng VL53L0X.

Ngayon na napunta kami sa mga detalye, narito ang isang listahan ng mga bahagi para sa prototype na ito:

Adafruit VL53L0X Oras ng Flight Distance Sensor - PRODUCT ID: 3317 Adafruit - Vibrating Mini Motor Disc - PRODUCT ID: 1201 Adafruit - Lithium Ion Polymer Battery - 3.7v 150mAh - PRODUCT ID: 1317 SparkFun - Solder-able Breadboard - Mini - PRT-12702 Sparkfun - JST Right-Angle Connector - Through-Hole 2-Pin - PRT-09749 10K ohm resistor - Junkbox (tumingin sa iyong sahig) 2N3904 NPN Transistor - Junkbox (o telepono ang isang kaibigan) Ilang hookup wire (Gumamit ako ng 22 gauge na maiiwan)

Upang singilin ang baterya ng LiPo ay sumama din ako:

Adafruit - Micro Lipo - USB LiIon / LiPoly charger - v1 - PRODUCT ID: 1304

Hakbang 5: Skematika

Skematika
Skematika

Ang eskematiko para sa aparatong ito ay ipinapakita sa itaas. Ang pag-input ng ugnayan ay para sa isang hinaharap na bersyon ngunit ipinakita rin ito sa eskematiko. Gayundin, ang risistor ng 10K sa pagitan ng Trinket M0 at ang base ng 2N3904 ay nagbibigay ng sapat na base upang i-on ang motor nang hindi masyadong hinampas ito.

Ang sumusunod ay isang sunud-sunod na paglalarawan ng pagpupulong.

Hakbang 6: Ang Protoboard

Ang Protoboard
Ang Protoboard

Marami sa inyo na may karanasan ang nakakaalam nito ngunit, ito ay para sa mga maaaring bago sa paghihinang ng mga protoboard:

Ang Sparkfun protoboard (PRT-12702) na ipinakita sa itaas ay may 17 mga haligi (mga grupo) ng 5 mga pin sa bawat panig ng isang threesampu ng isang pulgada na puwang. Ang bawat patayong haligi ng 5 mga pin sa magkabilang panig ng puwang ay karaniwan sa bawat isa. Sa pamamagitan nito ay nangangahulugan ako na ang anumang koneksyon sa isang pin sa pangkat ay isang koneksyon sa bawat iba pang mga pin sa pangkat. Para sa board na ito, mukhang hindi halata ngunit maaari mo itong i-verify kung gagamit ka ng isang DVM (Digital Volt Meter). Kung titingnan mo ang likuran maaari mo lamang malaman ang mga bakas na kumokonekta sa mga pangkat.

Hakbang 7: Paglalagay ng Component

Paglalagay ng Component
Paglalagay ng Component
Paglalagay ng Component
Paglalagay ng Component

Marahil ay kailangang maghinang ka ng mga piraso ng pin sa parehong Trinket M0 at VL53L0X. Parehas na kasama ang mga ito ng strips ngunit kailangan nilang maghinang. Ang Adafruit ay may mga tagubilin sa kanilang Learning Center para sa pareho ng mga bahaging ito. Kung bago ka sa ito, mangyaring pumunta doon (dito at dito) bago maghinang ng mga piraso sa mga board. Ang mga pin strip ay nagbibigay ng isang mas mababang profile kaysa sa gagawin ng isang socket.

Ang unang bagay na dapat isaalang-alang kapag ang paghihinang ng isang bagay sa isang protoboard na may limitadong espasyo ay ang paglalagay ng bahagi. Inilagay ko ang Trinket at ang VL53L0X sa mga posisyon na ipinakita sa figure sa itaas. Ang Trinket ay may mga pin sa magkabilang gilid ng board ngunit ang VL53L0X ay may 7 pin lahat sa isang gilid ng board nito. Ang gilid ng VL53L0X na walang mga pin na gagamitin namin upang ikonekta ang ilang mga bahagi … tulad ng makikita natin.

Naghinang din ako ng slide switch sa posisyon at hinanginan ko ang 2N3904. Pinadilim ko ang mga butas kung saan nakalagay ang mga bahaging iyon at, para sa 2N3904, napansin ko kung aling mga pin ang Collector, Base at Emitter. Kapag ka unang naghinang ito ay dapat mong iwanan ito patayo sa board upang maaari kang maghinang ng iba pang mga koneksyon. Mamaya maaari mong yumuko ito (maingat) kaya't malapit na itong mapula gamit ang pisara.

TANDAAN: Ang JST Battery Breakout ay HINDI na-solder sa board sa oras na ito. Ito ay solder sa likod ng board ngunit MATAPOS lamang na maghinang kami ng aming iba pang mga koneksyon. Ito ang magiging huling bagay na maghinang kami.

Hakbang 8: Mga wire

Mga wire
Mga wire

Ipinapakita muli ng diagram sa itaas ang protoboard na may mga nagdidilim na butas kung saan matatagpuan ang mga bahagi. Naidagdag ko ang mga label para sa kanila sa mga gilid upang mas madali itong mag-wire. Tandaan na ang motor na panginginig ay ipinapakita ngunit makikita ito sa likurang bahagi ng board at makakonekta halos huling kaya sa ngayon, huwag nalang pansinin ito. Ipinapakita ko rin ang JST Battery Breakout na may isang dash line. Tulad ng nakilala sa nakaraang hakbang, huwag ikonekta ito ngunit mangyaring iwanang bukas ang 4 na butas sa tuktok ng board (ibig sabihin, huwag maghinang sa kanila).

Ipinapalagay ko sa puntong ito na alam mo kung paano ialis ang pagkakabukod mula sa isang kawad, tin ang mga dulo ng panghinang at panghinang sa isang board. Kung hindi mangyaring pumunta tingnan ang isa sa mga Instructable sa paghihinang.

Para sa hakbang na ito, ang mga wire ng panghinang tulad ng ipinakita sa dilaw. Ang mga punto ng pagtatapos ay ang mga butas na dapat mong solder sa kanila. Dapat mo ring panghinang ang 10K ohm risistor sa pisara bilang palabas. Ang mga koneksyon na ginagawa ay:

1. Isang koneksyon mula sa positibong terminal ng baterya sa terminal ng COMmon (gitna) ng slide switch. Ang isang bahagi ng slide switch ay makikipag-ugnay sa input ng BAT sa Trinket. Ang on-board regulator ng Trinket ay bumubuo ng 3.3V mula sa boltahe ng input ng BAT.

2. Isang koneksyon mula sa negatibong (ground) terminal ng baterya patungo sa lupa ng Trinket.

3. Isang koneksyon mula sa negatibong (ground) terminal ng baterya sa emitter ng 2N3904

4. Isang koneksyon mula sa 3.3 volt (3V) na pin ng Trinket sa VIN ng VL53L0X. Ang VL53L0X ay karagdagang aayos nito sa 2.8 volts para sa sarili nitong paggamit. Dinadala din nito ang boltahe na ito sa isang pin ngunit hindi namin ito kailangan kaya maiiwan itong walang koneksyon.

Hakbang 9: Higit pang mga Wires

Marami pang Mga Wires
Marami pang Mga Wires

Kaya't idinagdag namin ang susunod na pangkat ng mga wire tulad ng ipinakita sa itaas. Narito ang isang listahan ng bawat koneksyon:

1. Isang koneksyon mula sa pin ng Trinket na may label na 2 sa VL53L0X SCL pin. Ito ang signal ng orasan ng I2C. Ang serial protocol ng I2C ay ang ginagamit ng Trinket upang makipag-usap sa VL53L0X.

2. Isang koneksyon mula sa pin ng Trinket na may label na bilang isang 0 (zero) saVL53L0X SDA pin. Ito ang signal ng data ng I2C.

3. Isang koneksyon mula sa VL53L0X GND pin sa kabuuan ng puwang sa protoboard sa Emitter ng 2N3904. Nagbibigay ito ng lupa sa VL53L0X.

4. Isang koneksyon mula sa pin ng Trinket na may label na 4 sa resistor na 10K. Ito ang drive para sa motor na panginginig. Ang kawad na ito ay dapat na talagang solder sa likod na bahagi ng board kung pipiliin mo ang punto ng aking koneksyon.

Tandaan na, ang anumang patayong pangkat ng 5 mga pin ay karaniwan sa isa't isa upang maaari kang kumonekta saanman sa pangkat na ito na maginhawa. Mapapansin mo sa mga larawan ng aking board binago ko ang ilan sa aking mga point ng koneksyon. Hangga't ang mga ito ay ang tamang koneksyon, kung alinman ang pad na pinili mo ay mabuti.

Hakbang 10: Vibration Motor

Vibration Motor
Vibration Motor

Ang motor na panginginig ay may sticker na may peal sa likuran. Kinukuha mo ito upang ipakita ang isang malagkit na materyal na nagpapahintulot sa motor na ma-stuck sa likod ng board (ngunit, tingnan ang puna sa ibaba bago mo idikit ito). Inilagay ko ito sa kaliwa (nakatingin sa likod ng board) ng board ng JST Battery Breakout na hindi pa namin nakakabit. Kaya, mag-iwan ng ilang puwang para sa JST Battery Breakout board. Nais ko ring tiyakin na ang kaso ng metal ng motor ay hindi maikli ang anumang mga pin sa pagitan ng puwang ng protoboard. Kaya, pinutol ko ang isang maliit na piraso ng dobleng panig na tape at dinikit iyon sa likuran ng malagkit na bahagi ng motor na panginginig. Pagkatapos ay itinulak ko iyon sa likod ng board. Nakakatulong ito upang mapanatili ang mataas na kaso ng metal at malayo sa anumang mga pin. Ngunit pa rin, mag-ingat na ilagay ito sa isang paraan na HINDI maikli ang anumang mga pin.

Paghinang ng pulang kawad ng motor na panginginig sa 3V pin ng Trinket. Ang itim na kawad ng motor na panginginig ay solder sa kolektor ng 2N3904. Kapag pulso ng software ang 2N3904 (nagbibigay ng isang lohika 1 bilang 3.3V) binabago ng transistor ang pagkonekta sa itim na kawad ng panginginig na motor sa lupa (o malapit dito). Ginagawa nitong mag-vibrate ang motor.

Maaari akong magdagdag ng ilang kapasidad sa puntong koneksyon ng red wire ng Vibration Motor. Ngunit may kapasidad sa linya ng Trinket '; s 3.3V kaya't sigurado akong mabuti ito ngunit kung nais mong magdagdag ng iba pang capacitance maaari kang … hangga't maaari mo itong pisilin. Sa bagay na iyon ang pulang kawad ay maaaring konektado direkta sa positibong panig ng LiPo na baterya. Pinili ko ang panig na 3.3V upang mapanatili ang boltahe na pare-pareho. Sa ngayon, mukhang maayos itong gumana.

Hakbang 11: Huling Ngunit Hindi Kaunti …

Huling Ngunit Hindi Maunti …
Huling Ngunit Hindi Maunti …
Huling Ngunit Hindi Maunti …
Huling Ngunit Hindi Maunti …

Huling ikinonekta namin ang breakout board ng JST Battery sa likurang bahagi ng protoboard. Nag-solder ako ng mga pin papunta sa board at inilagay ang breakout board ng JST Battery na may tuktok na gilid na nakaharap sa protoboard tulad ng ipinakita sa itaas. Tiyaking na-solder mo ang mga wire para sa positibong baterya at ground sa mga tamang pin kapag inilagay mo ang bahaging ito. Kung mali ka ay babaliktarin mo ang polarity sa mga bahagi at malamang na sirain ang lahat ng mga ito. Kaya't mangyaring, suriin at suriin ulit bago maghinang at i-plug ang baterya.

Hakbang 12: Software

Software
Software

Upang mai-install at / o baguhin ang software kakailanganin mo ang Arduino IDE at ang mga board file para sa Trinket M0 pati na rin ang mga aklatan para sa VL53L0X. Lahat ng iyon ay narito, narito, at narito.

Sundin ang mga tagubilin para sa paggamit ng Adafruit M0 sa kanilang site ng pag-aaral dito.

Kapag na-load na ang software dapat magsimula ang board at patakbuhin ang koneksyon sa serial na USB. Ilipat ang gilid ng pisara gamit ang VL53L0X malapit sa isang pader o sa iyong kamay at dapat mong pakiramdam ang panginginig ng motor. Ang panginginig ng boses ay dapat na mas mababa sa amplitude ang layo mula sa aparato ang isang bagay ay.

Ang isang pag-uugali na nakikita sa aparato ay medyo ipinaliwanag sa mga komento sa source code. Ngunit ang naka-attach na grap ay dapat na gawing maayos ang puntong ito. Ang aparato ay hindi dapat magsimulang mag-vibrate hanggang sa halos 863 mm mula sa isang bagay. Maaabot nito ang maximum na antas ng panginginig ng boses sa 50 mm mula sa isang bagay. Kung ilipat mo ang anumang mas malapit sa isang bagay kaysa sa 50 mm ang aparato ay hindi makagawa ng anumang higit pang panginginig ng boses kaysa sa ito ay sa 50 mm.

Hakbang 13: Enclosure

Enclosure
Enclosure
Enclosure
Enclosure
Enclosure
Enclosure
Enclosure
Enclosure

Dinisenyo ko ang isang enclosure at na-print ito ng 3D sa plastik ng ABS. Maaari mo itong mai-print sa PLA o ABS o anumang materyal na nais mo. Gumagamit ako ng ABS dahil maaari kong acetone mga piraso ng las sa board kung kinakailangan. Ang board na dinisenyo ko ay simple at may butas para sa USB port sa Trinket at isang butas para sa power switch. Ginawa ko ang dalawang board na iglap kasama ang mga maliit na bisig sa mga gilid ng kahon. Ayoko ng sobra kaya malamang na baguhin ko ito. Siyempre, maaari kang gumawa ng anumang mga pagbabagong nais mong makita.

Sa ngayon para sa bersyon na ito, kailangang buksan ang kahon upang idiskonekta ang baterya ng LiPo upang muling magkarga ito. Kung gumawa ako ng isang circuit board para sa proyektong ito magdaragdag ako ng isa pang konektor upang ma-access ang baterya nang hindi binubuksan ang kahon. Maaaring posible na gawin iyon sa disenyo ng protoboard na ito at gumawa ng isang butas para sa konektor para sa singilin. Kung nais mong subukan ito mangyaring ibahagi ang iyong mga resulta.

Nagawa kong magdisenyo ng isang kahon na hindi ko kinamumuhian. Gagamitin namin ang isang ito upang subukan ang system. Inilakip ko ang tuktok at ibaba ng kahon bilang mga STL file pati na rin ang bracket / gabay na idinagdag ko ang ilalim. Nagdagdag ako ng isang pares ng mga gabay na gumagamit ng acetone upang magkasama ng kemikal ang mga bahagi. Kung gagawin mo ito, mag-ingat. Maaari mong makita ang pagpupulong sa itaas.

Hakbang 14: Ngayon Ano?

Ano ngayon?
Ano ngayon?

Suriin mo ako … Matanda na ako at maaaring may nakalimutan o nagulo. Binabasa ko ulit at sinusuri ito ngunit, nakakaligtaan ko pa rin ang mga bagay. Huwag mag-atubiling sabihin sa akin ang anumang nagawa / maling nagawa.

At, ngayong naitayo mo ang board ng Peripheral Radar at na-load ito at ang baterya ng LiPo ay nasa isang magandang naka-print na kaso ng 3D (kapag natapos ko ito o, kung ginawa mo ang iyong sarili), ano ang susunod mong gagawin? Sa palagay ko dapat kang makakuha ng karanasan sa kung paano ito gumagana at gumawa ng mga pagbabago sa software. Nakasaad sa kasunduan sa lisensya sa software na maaari mo itong magamit ngunit kung gumawa ka ng anumang mga pagbabago kinakailangan mong ibahagi ang mga ito. Hindi ko sinasabi na ang software para sa proyektong ito ay kumplikado o kamangha-mangha sa ilang paraan. Natutupad nito ang mga layunin ngunit may puwang para sa pagpapabuti. Tumulong na gawing mas mahusay ang aparatong ito at ibahagi sa amin lahat. Tandaan, ang proyektong ito ay tungkol sa pagtulong sa mga tao. Kaya, tulong!

Inirerekumendang: