Satura rādītājs:

Perifērais radars vājredzīgajiem: 14 soļi
Perifērais radars vājredzīgajiem: 14 soļi

Video: Perifērais radars vājredzīgajiem: 14 soļi

Video: Perifērais radars vājredzīgajiem: 14 soļi
Video: МЕТАСТАЗЫ в легких (рак) и ЭМФИЗЕМА легких на РАСШИФРОВКЕ КТ грудной клетки 2024, Novembris
Anonim
Perifērais radars vājredzīgajiem
Perifērais radars vājredzīgajiem

Šausmīgas avārijas rezultātā mans draugs nesen zaudēja redzi labajā acī. Viņš ilgu laiku bija bez darba, un, atgriezies, viņš man teica, ka viena no satraucošākajām lietām, ar ko viņam jātiek galā, ir trūkums zināt, kas atrodas viņa labajā pusē. Mazāk perifēra redze nozīmē sadursmi ar lietām un cilvēkiem. Tas mani satrauca. Es nolēmu, ka ir kaut kas, ko mēs varam darīt.

Es gribēju izveidot ierīci, kas varētu izmērīt attālumu līdz objektiem mana drauga labajā pusē. Mans plāns ir izmantot haptisko motoru, lai vibrētu ierīci apgriezti proporcionāli attālumam līdz objektam. Tad, ja objekti būtu tālu, motors nevibrētu un, kad objekts būtu tuvāk, tas sāktu vibrēt zemā līmenī. Ja objekts būtu tuvu, tas vibrētu daudz augstākā līmenī (vai jebkurā līmenī, kuru vēlaties). Ierīcei vajadzētu būt pietiekami mazai, lai to varētu pakārt pie brilles sāniem ar sensoru pa labi. Mans draugs liktu ierīci brilles labajā pusē, bet, protams, kādam citam tā varētu būt kreisā puse.

Es atcerējos, ka man mājās bija daži attāluma sensori. Bet tie ir nedaudz lieli un apjomīgi, mazāk precīzi un, iespējams, būtu pārāk smagi lietošanai brillēs. Sāku meklēt ko citu.

Es atklāju ST Electronics VL53L0X lidojuma laika sensoru. Šis ir infrasarkanais lāzers un infrasarkanais detektors vienā iepakojumā. Tas izstaro lāzera gaismas impulsu ārpus cilvēka redzamā diapazona (940 nm) un reģistrē laiku, kas nepieciešams, lai noteiktu atstaroto impulsu. Šis laiks tiek dalīts ar 2 un reizināts ar gaismas ātrumu, radot ļoti precīzu attālumu milimetros. Sensors var noteikt attālumu līdz 2 metriem, bet, kā redzēju, 1 metrs ir optimālāks.

Kā tas notiek, Adafruit ir VL53L0X sadalīšanas dēlis. Tāpēc man vajadzēja vibrējošu motoru, kas viņiem arī bija, un mikrokontrolleru, lai to visu darbinātu. Man pa rokai bija PJRC Teensy 3.2. Lai gan tas bija lielāks nekā es gribēju, tam bija iespēja griezties lēni. Es gribēju samazināt pulksteņa ātrumu, lai taupītu enerģiju. Un, ciktāl tas attiecas uz barošanas avotu, manā atkritumu kastē bija Sparkfun pastiprināšanas regulators kopā ar AAA bateriju turētāju. Man bija gandrīz viss nepieciešamais.

Pirmais prototips

Pirmais prototips
Pirmais prototips
Pirmais prototips
Pirmais prototips

Es paņēmu detaļas, kas man bija pa rokai, un izveidoju rokas prototipu ierīcei, kuru es iedomājos. Es 3D izdrukāju rokturi un montāžas plāksni un lodēju visu elektroniku uz Adafruit protoboarda. Es savienoju vibrējošo motoru ar Teensy, izmantojot 2N3904 NPN tranzistoru. Es pievienoju potenciometru, kas jāizmanto, lai iestatītu maksimālo attālumu, uz kuru ierīce reaģēs.

Man tas tika palaists nākamajā nedēļas nogalē (skatiet attēlu iepriekš). Tas nebija skaisti, bet parādīja principu. Mans draugs varēja turēt ierīci labajā pusē un pārbaudīt, vai ierīce būtu noderīga, un lai palīdzētu precizēt, ko viņš vēlas attiecībā uz funkcijām.

2. solis: 2. prototips

2. prototips
2. prototips
2. prototips
2. prototips
2. prototips
2. prototips

Pēc pirmā rokas prototipa es sāku veidot mazāku versiju. Es gribēju tuvināties savam mērķim - izgatavot kaut ko tādu, kas varētu ietilpt brillēs. Teensy, ko izmantoju rokas versijā, ļāva man palēnināt pulksteņa darbību, lai taupītu enerģiju. Bet izmērs bija faktors, un tāpēc es pārgāju uz Adafruit Trinket M0. Lai gan tā takts frekvence ir 48 MHz, ARM procesoru, uz kura tas ir balstīts, var pulksteņot lēnāk. Izmantojot iekšējo RC oscilatoru, tas var darboties ar frekvenci 8, 4 2 un pat 1 MHz.

Prototips Nr. 2 sanāca diezgan ātri, jo man bija viss kopā jau nākamajā nedēļas nogalē. Shēma bija tāda pati kā 1. prototips, izņemot ARM M0. Es 3D izdrukāju nelielu korpusu un aizmugurē ievietoju vadotnes, lai to varētu slīdēt uz brillēm. Skatiet attēlu iepriekš. Sākotnēji tas tiek atskaņots ar frekvenci 48 MHz.

3. solis: 3. prototips

Prototips #3
Prototips #3

Tātad, šī pamācība patiešām sākas šeit. Es nolēmu izveidot pēdējo prototipu. Es nolemju to saspiest pēc iespējas mazāk, izmantojot pielāgotu PWB (kur es esmu pārliecināts, ka mēs virzāmies). Pārējā šīs pamācības daļa būs paredzēta, lai parādītu, kā to izveidot. Tāpat kā cilvēki, kas veido 3D drukātas rokas bērniem ar invaliditāti, es ceru, ka cilvēki tos izgatavos ikvienam, kam ir līdzīgs redzes zudums acī.

Es saglabāju detaļu sarakstu tādu pašu kā 2. prototipu, bet es nolēmu noņemt potenciometru. Pēc sarunas ar draugu mēs nolēmām veikt maksimālo attālumu, izmantojot programmatūru. Tā kā man ir iespēja izmantot skārienjūtīgo sensoru, izmantojot Teensy, mēs vienmēr varētu noteikt maksimālo attālumu par iestatījumu, pieskaroties. Viens pieskāriens nosaka īsu attālumu vai vairāk pieskaras lielākam attālumam, otrs pieskaras visgarākajam attālumam un pēc tam vēl vienam pieskārienam aptiniet atpakaļ uz sākumu. Bet sākumā mēs izmantosim noteiktu attālumu, lai dotos ceļā.

4. solis: detaļas

Daļas
Daļas

Šim prototipam man vajadzēja mazāku dēli. Es devos ar Sparkfun protoboardu (PRT-12702), jo tā mazie izmēri (apmēram 1,8 "X 1,3") būtu piemērots šaušanai.

Man arī vajadzēja kā barošanas avotu izmantot kaut ko citu, nevis AAA bateriju. LiPo šķita pareizā izvēle, jo tam būtu ietilpība un viegls svars. Es mēģināju monētu elementu, bet tam nebija pietiekami daudz jaudas, lai ļoti ilgi darbotos ar motoru. Es izvēlējos nelielu LiPo ar 150 mAH ietilpību.

Es gribēju palikt pie Trinket M0 un, protams, ar VL53L0X sadalīšanas paneli.

Tagad, kad esam nonākuši pie detaļām, šeit ir šī prototipa detaļu saraksts:

Adafruit VL53L0X Lidojuma laika attāluma sensors - PRODUKTA ID: 3317 Adafruit - vibrējošs mini motoru disks - PRODUKTA ID: 1201 Adafruit - litija jonu polimēru akumulators - 3.7v 150mAh - PRODUKTA ID: 1317 SparkFun - lodēšanas panelis - Mini - PRT -12702 Sparkfun - JST taisnleņķa savienotājs - caur 2 caurumu caurumu - PRT -09749 10K omu rezistors - Junkbox (skatieties uz grīdas) 2N3904 NPN tranzistors - Junkbox (vai zvaniet draugam)

Lai uzlādētu LiPo akumulatoru, es arī ieguvu:

Adafruit - Micro Lipo - USB LiIon/LiPoly lādētājs - v1 - PRECES ID: 1304

5. solis: shematisks

Shematisks
Shematisks

Šīs ierīces shēma ir parādīta iepriekš. Pieskāriena ievade būs paredzēta turpmākai versijai, taču tā jebkurā gadījumā ir parādīta shematiski. Arī 10K rezistors starp Trinket M0 un 2N3904 pamatni nodrošina tieši tik daudz pamatnes, lai ieslēgtu motoru, nesitot to pārāk stipri.

Tālāk ir sniegts soli pa solim montāžas apraksts.

6. solis: Protoboard

Protoboards
Protoboards

Daudzi no jums, kuri ir pieredzējuši, to zina, bet tas ir domāts tiem, kas, iespējams, ir jauni protoboutu lodēšanai:

Iepriekš parādītajā Sparkfun protoboardā (PRT-12702) ir 17 kolonnas (grupas) ar 5 tapām katrā trīs desmitdaļas collas atstarpes pusē. Katra vertikālā kolonna ar 5 tapām abās spraugas pusēs ir kopīga. Ar to es domāju, ka jebkurš savienojums ar grupas tapu ir savienojums ar katru citu grupas tapu. Šai plāksnei tas nešķiet acīmredzams, taču to varat pārbaudīt, ja izmantojat DVM (digitālo voltu mērītāju). Ja paskatās uz aizmuguri, jūs varat vienkārši noteikt pēdas, kas savieno grupas.

7. darbība: komponentu izvietošana

Komponentu izvietojums
Komponentu izvietojums
Komponentu izvietojums
Komponentu izvietojums

Jums, iespējams, jāpielīmē tapas sloksnes gan pie Trinket M0, gan pie VL53L0X. Abiem ir sloksnes, bet tie ir jāpielodē. Adafruit mācību centrā ir norādījumi par abām šīm daļām. Ja esat iesācējs, lūdzu, dodieties tur (šeit un šeit), pirms lodējat sloksnes uz dēļiem. Tapas sloksnes nodrošina zemāku profilu nekā kontaktligzda.

Pirmā lieta, kas jāņem vērā, lodējot kaut ko protoboardā ar ierobežotu vietu, ir komponentu izvietojums. Es novietoju piekariņu un VL53L0X pozīcijās, kas parādītas attēlā. Pieklājībai ir tapas abās tāfeles malās, bet VL53L0X vienā plāksnes malā ir 7 tapas. VL53L0X pusi, kurai nav tapas, mēs izmantosim, lai savienotu dažus komponentus … kā redzēsim.

Es arī lodēju slīdņa slēdzi pozīcijā un lodēju 2N3904. Esmu aptumšojis caurumus, kur šīs detaļas ir ievietotas, un 2N3904 gadījumā esmu atzīmējis, kuras tapas ir savācējs, pamatne un emitētājs. Pirmoreiz to pielodējot, atstājiet to perpendikulāri plāksnei, lai varētu lodēt citus savienojumus. Vēlāk jūs varēsiet to noliekt (uzmanīgi), lai tas būtu tuvāk tam, lai tas būtu vienā līmenī ar dēli.

PIEZĪME: JST akumulatora izlaušanās šobrīd NAV pielodēts pie tāfeles. Tas tiks pielodēts tāfeles aizmugurē, bet tikai PĒC tam, kad mēs pielodēsim citus savienojumus. Tā būs pēdējā lieta, ko mēs pielodēsim.

8. solis: vadi

Vadi
Vadi

Iepriekš redzamajā diagrammā atkal parādīts protoboards ar aptumšotiem caurumiem, kur tiks izvietoti komponenti. Esmu pievienojis tiem etiķetes gar malām, lai būtu vieglāk vadu. Ņemiet vērā, ka vibrācijas motors ir parādīts, taču tas atradīsies plāksnes aizmugurē un tiks pievienots gandrīz pēdējais, tāpēc pagaidām vienkārši ignorējiet to. Es arī parādīju JST akumulatora izlaušanos ar pārtrauktu līniju. Kā norādīts iepriekšējā solī, nepievienojiet to, bet, lūdzu, atstājiet 4 caurumus plāksnes augšpusē atvērtus (t.i., nelodējiet pie tiem).

Es pieņemu, ka šajā brīdī jūs zināt, kā no stieples izņemt izolāciju, galus ar lodmetālu un lodēt līdz plāksnei. Ja nē, lūdzu, skatiet vienu no lodēšanas instrukcijām.

Šim solim pielodējiet vadus, kā parādīts dzeltenā krāsā. Gala punkti ir caurumi, pie kuriem jums vajadzētu pielodēt. Jums vajadzētu arī pielodēt 10K omu rezistoru pie tāfeles, kā parādīts. Tiek veidoti savienojumi:

1. Savienojums no akumulatora pozitīvā kontakta ar bīdāmā slēdža COMmon (centrālo) spaili. Bīdāmā slēdža viena puse saskarēsies ar piekariņu ar LPTP ievadi. Trinket iebūvētais regulators ģenerē 3,3 V no LPTP ieejas sprieguma.

2. Savienojums no akumulatora negatīvā (zemējuma) spailes līdz piekariņa zemei.

3. Savienojums no akumulatora negatīvās (zemes) spailes ar 2N3904 emitētāju

4. Savienojums no Trinket 3,3 voltu (3V) tapas ar VL53L0X VIN. VL53L0X turpmāk regulēs to līdz 2,8 voltiem savām vajadzībām. Tas arī rada šo spriegumu līdz tapai, bet mums tas nav vajadzīgs, tāpēc tas paliks nesavienots.

9. solis: vairāk vadu

Vairāk vadu
Vairāk vadu

Tāpēc tagad mēs pievienojam nākamo vadu grupu, kā parādīts iepriekš. Šeit ir saraksts ar katru savienojumu:

1. Savienojums no piekariņa tapas, kas apzīmēta kā 2, ar VL53L0X SCL tapu. Tas ir I2C pulksteņa signāls. I2C sērijas protokols ir tas, ko Trinket izmanto, lai sazinātos ar VL53L0X.

2. Savienojums no Trinket tapas, kas apzīmēta kā 0 (nulle), ar VL53L0X SDA tapu. Tas ir I2C datu signāls.

3. Savienojums no VL53L0X GND tapas pāri protoborda spraugai ar 2N3904 izstarotāju. Tas nodrošina pamatu VL53L0X.

4. Savienojums no Trinket tapas, kas apzīmēts kā 4, ar 10K rezistoru. Šī ir vibrācijas motora piedziņa. Šo vadu noteikti vajadzētu pielodēt tāfeles aizmugurē, ja izvēlaties manu savienojuma punktu.

Atcerieties, ka jebkura vertikāla 5 tapu grupa ir kopīga, lai jūs varētu izveidot savienojumu jebkurā vietā šajā grupā. Jūs pamanīsit mana dēļa fotoattēlos, ka esmu mainījis dažus savienojuma punktus. Kamēr tie ir pareizie savienojumi, izvēlētais spilventiņš ir piemērots.

10. solis: vibrācijas motors

Vibrācijas motors
Vibrācijas motors

Vibrācijas motoram aizmugurē ir uzlīmējama uzlīme. Jūs to noņemat, lai atklātu lipīgu materiālu, kas ļauj motoru piestiprināt pie tāfeles aizmugures (bet pirms pievienošanas skatiet komentāru zemāk). Es to novietoju pa kreisi (skatoties tāfeles aizmugurē) no JST Battery Breakout plates, kuru mēs vēl neesam pievienojuši. Tātad, atstājiet nedaudz vietas JST akumulatora pārtraukuma plāksnei. Es arī vēlējos pārliecināties, vai motora metāla korpusā nav īsu tapu pāri protoborda spraugai. Tātad, es izgriezu nelielu divpusējas lentes gabalu un pielīmēju to vibrācijas motora lipīgās puses aizmugurē. Tad es to uzspiedu uz tāfeles aizmugures. Tas palīdz turēt metāla korpusu augstu un prom no tapām. Bet tomēr esiet uzmanīgs, lai to novietotu tā, lai NETĪKOTU tapas.

Lodējiet vibrācijas motora sarkano vadu pie piekariņa 3V tapas. Vibrācijas motora melnais vads ir pielodēts pie 2N3904 kolektora. Kad programmatūra impulsē 2N3904 (nodrošina loģiku 1 kā 3.3V), tranzistors ieslēdz vibrācijas motora melnā stieples pievienošanu zemei (vai tuvu tai). Tas liek motoram vibrēt.

Es varēju pievienot nelielu kapacitāti vibrācijas motora sarkanā stieples savienojuma vietā. Bet Trinket 3.3V līnijā ir kapacitāte, tāpēc esmu pārliecināts, ka tas ir labi, bet, ja vēlaties pievienot citu kapacitāti, varat … ja vien jūs varat to saspiest. Šajā gadījumā sarkano vadu var pieslēgt tieši uz LiPo akumulatora pozitīvo pusi. Es izvēlējos 3.3V pusi, lai saglabātu nemainīgu spriegumu. Līdz šim šķiet, ka tas darbojas labi.

11. solis: pēdējais, bet ne mazāk…

Pēdējais bet ne sliktākais…
Pēdējais bet ne sliktākais…
Pēdējais bet ne sliktākais…
Pēdējais bet ne sliktākais…

Visbeidzot, mēs savienojam JST akumulatora sadalīšanas paneli protoboarda aizmugurē. Es pielodēju tapas uz tāfeles un novietoju JST akumulatora sadalīšanas paneli ar augšējo malu pret protoboardu, kā parādīts iepriekš. Ievietojot šo detaļu, pārliecinieties, ka akumulatora vadi un zemējums ir pielodēti pareizajās tapās. Ja jūs kļūdāties, jūs mainīsit detaļu polaritāti un, iespējams, visas tās iznīcināsit. Tāpēc, lūdzu, pārbaudiet un vēlreiz pārbaudiet pirms akumulatora lodēšanas un pievienošanas.

12. solis: programmatūra

Programmatūra
Programmatūra

Lai instalētu un/vai modificētu programmatūru, jums būs nepieciešami Arduino IDE un Trinket M0 tāfeles faili, kā arī VL53L0X bibliotēkas. Tas viss ir šeit, šeit un šeit.

Izpildiet norādījumus par Adafruit M0 lietošanu viņu mācību vietnē šeit.

Kad programmatūra ir ielādēta, tāfelei vajadzētu sākt darboties un darboties ar USB seriālo savienojumu. Pārvietojiet dēļa malu ar VL53L0X tuvu sienai vai rokai, un jums vajadzētu sajust motora vibrāciju. Vibrācijas amplitūda jāsamazina, jo tālāk no ierīces atrodas objekts.

Ierīcē novērotā uzvedība ir nedaudz izskaidrota avota koda komentāros. Bet pievienotajai diagrammai vajadzētu labi uzsvērt šo punktu. Ierīcei vajadzētu sākt vibrēt tikai aptuveni 863 mm attālumā no objekta. Tas sasniegs maksimālo vibrācijas līmeni 50 mm attālumā no objekta. Ja pārvietojaties tuvāk objektam nekā 50 mm, ierīce neradīs vairāk vibrāciju nekā 50 mm.

13. darbība: iežogojums

Korpuss
Korpuss
Korpuss
Korpuss
Korpuss
Korpuss
Korpuss
Korpuss

Es izveidoju korpusu un 3D izdrukāju to no ABS plastmasas. Jūs to varat izdrukāt PLA vai ABS vai jebkurā citā materiālā, kuru vēlaties. Es izmantoju ABS, jo, ja nepieciešams, uz plāksnes varu metināt gabalus. Plāksne, kuru es izstrādāju, ir vienkārša, un tai ir caurums piekariņa USB portam un caurums barošanas slēdzim. Es liku abiem dēlīšiem salikt kopā ar mazām rokām kastītes malās. Man tas ļoti nepatīk, tāpēc es, iespējams, to mainīšu. Protams, jūs varat veikt jebkādas izmaiņas, kuras vēlaties redzēt.

Šobrīd šai versijai kārba ir jāatver, lai atvienotu LiPo akumulatoru, lai to uzlādētu. Ja es šim projektam izveidoju shēmas plati, es pievienošu citu savienotāju, lai padarītu akumulatoru pieejamu, neatverot kastīti. Iespējams, to var izdarīt šajā protoboard konstrukcijā un izveidot caurumu savienotājam uzlādēšanai. Ja vēlaties to izmēģināt, lūdzu, dalieties savos rezultātos.

Man izdevās noformēt kastīti, kuru es pilnībā neienīstu. Mēs to izmantosim, lai pārbaudītu sistēmu. Kastes augšdaļu un apakšdaļu esmu pievienojis kā STL failus, kā arī kronšteinu/vadotni, kurai pievienoju apakšējo. Es pievienoju vadotņu pāri, izmantojot acetonu, lai detaļas ķīmiski sametinātu kopā. Ja to darāt, esiet piesardzīgs. Jūs varat redzēt montāžu iepriekš.

14. solis: ko tagad?

Ko tagad?
Ko tagad?

Pārbaudiet mani … Esmu vecs un, iespējams, kaut ko esmu aizmirsis vai sajaucis. Es to vēlreiz lasu un pārbaudu, bet es joprojām varu palaist garām lietas. Jūtieties brīvi pateikt man visu, ko esmu darījis/darījis nepareizi.

Un tagad, kad esat izveidojis perifēro radaru plāksni un ielādējis to, un LiPo akumulators atrodas jaukā 3D drukātā korpusā (kad es to pabeidzu vai, ja jūs to izdarījāt pats), ko jūs darāt tālāk? Es domāju, ka jums vajadzētu iegūt pieredzi, kā tā darbojas, un veikt izmaiņas programmatūrā. Programmatūras licences līgumā ir norādīts, ka varat to izmantot, taču, ja veicat izmaiņas, jums tās ir jādala. Es nesaku, ka šī projekta programmatūra ir sarežģīta vai kaut kādā veidā pārsteidzoša. Tas sasniedz savus mērķus, taču ir iespējas to uzlabot. Palīdziet uzlabot šo ierīci un dalieties tajā ar mums visiem. Atcerieties, ka šī projekta mērķis ir palīdzēt cilvēkiem. Tātad, palīdziet!

Ieteicams: