Mündəricat:
- Addım 1: Eynəklər
- Addım 2: Çaplı Devre Kartı
- Addım 3: Kəsmə
- Addım 4: Zımpara və ya Döşəmə
- Addım 5: İncə Ayarlama
- Addım 6: Sensoru əlavə edin
- Addım 7: Şematik
- Addım 8: Komponentlərin Yerləşdirilməsi
- Addım 9: Zəmin
- Addım 10: Tellər
- Addım 11: Batareya Mötərizəsi
- Addım 12: Proqramlaşdırma
- Addım 13: Çərçivələri bitirmək
- Addım 14: Son Düşüncələr
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Keçən yay Maine şəhərində tətildə olarkən başqa bir cütlüklə tanış olduq: Mike və Linda. Linda kor idi və ilk uşaqlarının (məncə) doğulmasından bəri kor idi. Həqiqətən çox gözəl idilər və birlikdə çox gülürdük. Evə gəldikdən sonra kor olmağın nə olacağını düşünə bilmədim. Korların göz köpəkləri və qamışları var və əminəm ki, onlara kömək edəcək bir çox şey var. Ancaq yenə də bir çox çətinliklər olmalıdır. Nə olacağını təsəvvür etməyə çalışdım və edə biləcəyim bir şey varsa, bir elektronik meraklı olaraq düşündüm.
Təxminən 20 yaşımda bir qaynaqçı ilə gözlərimi yandırdım (uzun hekayə … lal uşaq). Heç vaxt unutmayacağım bir şeydir. Hər halda gözlərimi bir gün yamaqladım. Anamın məni küçədən keçməyə çalışdığını xatırlayıram. Maşının dayandığını soruşdum. "Mən sənin ananam … səni trafikə çıxarmağı düşünürsən?" Kimi bir şey söylədi. Yeniyetmə ikən necə bir dweeb olduğumu xatırlayaraq düşündüm. Amma gedərkən üzümə vuracaq bir şey olub -olmadığını bilmədən ağlımdan çıxa bilmədim. Yamaqları götürəndə çox sevindim və rahatladım. Həyatımda korluqla bağlı yaşadığım 'təcrübəyə' yaxın olan tək şey budur.
Bu yaxınlarda sağ gözündə görmə qabiliyyətini itirən gənc bir iş yoldaşı və sağ tərəfində bir şey olub olmadığını söyləmək üçün hazırladığım bir cihaz haqqında başqa bir Təlimat yazdım. Oxumaq istəyirsinizsə buradadır. Bu cihaz ST Electronics tərəfindən Uçuş Vaxtı sensoru istifadə etdi. Layihəni bitirdikdən təxminən bir dəqiqə sonra qərara gəldim ki, korlara kömək edəcək bir cihaz hazırlayım. Bu layihədə istifadə etdiyim VL53L0X sensoru, VL53L1X adlı böyük bir qardaş/bacı sensoruna malikdir. Bu cihaz VL53L0X -dən daha böyük məsafələri ölçə bilir. Adafruit -dən VL53L0X və VL53L1X üçün Sparkfun -dan bir kəsmə lövhəsi var idi. Ön tərəfdə VL53L1X olan bir eynək və burun körpüsünün yaxınlığındakı eynəklərin arxasında bir haptik geribildirim cihazı (titrəyən motor) yaratmaq qərarına gəldim. Motoru bir cismə olan məsafəyə tərs mütənasib olaraq titrədərdim, yəni cisim eynəyə nə qədər yaxın olsa, bir o qədər titrəyərdi.
Burada qeyd etməliyəm ki, VL53L1X çox dar bir Görüş Sahəsinə malikdir (15-27 dərəcə arasında proqramlaşdırıla bilər), onlar ÇOX istiqamətlidir. Yaxşı bir həll verdiyinə görə bu vacibdir. Fikir, istifadəçinin başını radar antenası kimi hərəkət etdirə bilməsidir. Bu, dar FOV ilə birlikdə istifadəçiyə fərqli məsafələrdəki cisimləri daha yaxşı tanımağa imkan verir.
VL53L0X və VL53L1X sensorlar haqqında qeyd: onlar uçuş vaxtı sensorlardır. Bu o deməkdir ki, lazer nəbzi göndərirlər (aşağı güc və infraqırmızı spektrdə təhlükəsiz olduqları üçün). Sensor, əks olunan nəbzin geri dönməsini görmək üçün nə qədər vaxt lazım olduğunu təyin edir. Beləliklə, hamımızın riyaziyyat/elm dərslərindən xatırladığımız məsafə X vaxt nisbətinə bərabərdir? Beləliklə, vaxtı yarıya bölün və işığın sürətinə vurun və məsafə əldə edin. Başqa bir Instructables üzvünün də qeyd etdiyi kimi, eynəklərə LİDAR Eynəkləri adı verilə bilərdi, çünki bu şəkildə LASER istifadə etməklə İşıq Məsafəsi və Uzaqlıq (LiDAR) istifadə olunur. Dediyim kimi, LiDAR -ın nə olduğunu hamı bilmir, amma düşünürəm ki, insanların çoxu RADAR -ı bilir. İnfraqırmızı işıq və radio hamısı elektromaqnit spektrinin bir hissəsi olsa da, mikrodalğalı tezliklərdə olduğu kimi işıq da radio dalğası hesab edilmir. Başlığı RADAR olaraq tərk edəcəyəm, amma indi başa düşürsən.
Bu layihə, əsasən digər layihə ilə eyni sxemdən istifadə edir … görəcəyimiz kimi. Bu layihə üçün ən böyük suallar elektronikanı eynəklərə necə bağlayırıq və hansı eynəklərdən istifadə edirik?
Addım 1: Eynəklər
Qərara aldım ki, yəqin ki, sadə bir eynək dizayn edib 3D printerimlə çap edə bilərəm. Eynəklərin skeletini və ya çərçivəsini yalnız 3D çap etməyim lazım olduğuna qərar verdim. Komponentlərdə lehim üçün çap edilmiş bir lövhə əlavə edərdim. Çap edilmiş elektron lövhə (protoboard) bütün quruluşa güc qatacaq çərçivələrə bərkidiləcəkdir. Çərçivələrin 3D göstərilməsi yuxarıda göstərilmişdir.
STL sənədləri də bu addıma əlavə olunur. Üç fayl var: left.stl, right.stl (qulaqlıq/qol) və eynək.stl (çərçivələr).
Addım 2: Çaplı Devre Kartı
Adafruit Perma-Proto Tam Ölçülü Breadboard istifadə etdim. Çörək taxtasını eynəklərin önünə yerləşdirdim və ortaladım. Eynəklərin üst kənarı hətta protoboardın üstü ilə düzəltdim. Eynəklərin yuxarıdan uzanan düzbucaqlı hissəsi, Uçuş Vaxtı sensorunun sonda quraşdırılacağı yerdir. Çərçivələrin bu hissəsinin yuxarı hissəsinin yaxşı bir hissəsi protobonun üstünə yapışır. Sensorun üstünə, sadəcə altına heç bir şey lehimləməyimizə ehtiyac olmadığı üçün bu yaxşıdır.
Çörək taxtasının ortasında, demək olar ki, burun körpüsünün eynəklərdə yerləşəcəyi bir çuxur var. İncə bir uc markerindən istifadə edərək çərçivədəki 4 çuxuru protoboya taxdım. Sonra çörək taxtasında deliklər qazdım.
Sonra, çərçivələri M2.5 vintlərindən istifadə edərək çörək taxtasına quraşdırdım. Mənimki neylondur və bu məqsədlə Adafruit -dən bütün vintlər dəsti aldım. Vintlər bağlandıqdan sonra bir marker götürdüm və çörək taxtasına çərçivələrin ətrafında bir xətt çəkdim. Mənim üçün, qulaq parçalarının yerləşəcəyi çərçivələrin kənarındakı girintiləri düz aşağı qeyd etdim. Bu mənim seçimimdir … amma bəlkə də çərçivənin qulaq hissələrinin görünməsini istəyəcəksiniz.
Addım 3: Kəsmə
Sonra çərçivələri çörək taxtasına tutaraq 4 vintini geri çəkdim. İşarələdiyimiz xəttin xaricində materialı kobud şəkildə sildim. Xətlərdən bir az uzaqlaşmaq üçün ehtiyatlı idim, çünki bunu daha sonra əlimdəki stolüstü kəmər zımpara ilə təmizləyərdim. Bir fayldan istifadə edə bilərsiniz … amma biz özümüzü qabaqlayırıq.
Əlinizdə olan hər şeyi istifadə edərək xətti kobud şəkildə kəsə bilərsiniz. Bəlkə bir bandsaw? Yaxşı, məndə yoxdur. Çaplı elektron lövhələr üçün 'nibbler' var, buna görə istifadə etdim. Əslində kifayət qədər vaxt aldı və bunu etmək çox çətindir. Ancaq çap lövhəsi materialı parçalana və çatlaya bilər, buna görə yavaş getmək istədim. Ətrafımı və burnumun ucunu yuvarladım … ancaq təxminən. Nə etdiyimi yuxarıdakı şəkildən görə bilərsiniz.
Addım 4: Zımpara və ya Döşəmə
Materialı, masa üstü kəmər zımpara istifadə edərək xəttə çox yaxınlaşdırdım. Başqa bir şeyiniz yoxdursa, yenə də bir fayldan istifadə edə bilərsiniz. Zımpara ilə bağlı burada deyə biləcəyim şey, zımpara zımpara materialının cızılmasından asılı olaraq, nə qədər material çıxarmağa çalışdığınıza diqqət yetirin. Geriyə yol yoxdur. Bəzən tək bir sürüşmə lövhəni poza bilər (və ya heç olmasa asimmetrik və ya ləkəli görünə bilər). Beləliklə, vaxtınızı ayırın.
Yuxarıdakı və sonrakı şəkillərimi görə bilərsiniz.
Addım 5: İncə Ayarlama
4 vida ilə çərçivələri yenidən bağladım və yenidən kəmər zımpara maşınına getdim. Çərçivələrin kənarına qədər çox diqqətlə zımparaladım. Burun hissəsində yuvarlaq bir fayl istifadə etməliyəm, çünki zımpara maşınımda o qədər kəskin dönüş edə bilmədim. Yekun nəticələrimə baxın.
Addım 6: Sensoru əlavə edin
Bu nöqtədə VL53L1X sensor qırılma lövhəsini əlavə etdim. Əvvəlcə onları çərçivədəki deliklərdən və VL53L1Xdəki deliklərdən itələyən iki uzun M2.5 neylon vint əlavə etdim. Hər vidaya bir neylon qoz əlavə etdim və çox yumşaq bir şəkildə sıxdım. Hər bir qozun üstünə iki (dörd ədəd) neylon yuyucusu əlavə etdim. Bunlar, VL53L1X sensorunun protoboya paralel yerləşməsini təmin etmək üçün lazımdır.
VL53L1X -in üst hissəsindəki deliklər, çərçivələrin yuxarısına qoyduğum iki vida ilə düzülüb (neylon yuyucularla), lövhəyə 6 mövqedən bir terminal zolağı qoydum. Vintlərin uclarına neylon qoz -fındıq əlavə etdim və yenidən yumşaq bir şəkildə sıxdım. Yuxarıdakı şəkillərə baxın.
Addım 7: Şematik
Daha əvvəl dediyim kimi, sxem təxminən Periferik Radar layihəsi ilə eynidir. Bir fərq, bir düyməni (pullu əlaqə açarı) əlavə etməyimdir. Təsəvvür edirəm ki, bir anda rejimləri dəyişdirmək və ya bir xüsusiyyəti tətbiq etmək üçün birinə ehtiyacımız olacaq…
10K potensiometr də əlavə etdim. Qazan, proqramın cavab vermək üçün maksimum məsafə olaraq düşünəcəyi məsafəni tənzimləmək üçün istifadə olunur. Bir həssaslıq nəzarəti olaraq düşünün.
Sxem yuxarıda göstərilmişdir.
Parça siyahısı (əvvəllər verməli idim) aşağıdakı kimidir:
SparkFun Distance Sensor Breakout - 4 Metre, VL53L1X - SEN -14722 Adafruit - Titrəyən Mini Motor Diski - ÜRÜN ID: 1201Adafruit - Lityum İon Polimer Batareya - 3.7v 150mAh - ÜRÜN ID: 1317Adafruit Perma -Proto Tam Ölçülü Çörək Paneli - ID: 1606 Dokunmatik keçid düymələri (6mm incə) x 20 paket - MƏHSUL ID: 1489Sparkfun - JST Düz Açılı Konnektor - 2 Delikli 2 Delikli - PRT -0974910K ohm müqavimətçi - Junkbox (zəminə baxın) 10K -100K ohm müqavimətçi - Junkbox (10K rezistorların yanındakı yerə baxın) 2N3904 NPN Transistor - Junkbox (və ya bir dostunuza zəng edin) Bəzi bağlama teli (22 ölçülü qapalı istifadə etdim)
LiPo batareyasını doldurmaq üçün də götürdüm: Adafruit - Micro Lipo - USB LiIon/LiPoly şarj cihazı - v1 - MƏHSUL ID: 1304
Addım 8: Komponentlərin Yerləşdirilməsi
Komponentləri yerləşdirərkən bacardığım qədər ağıllı olmağa çalışırdım. Mən ümumiyyətlə güc və torpaq kimi müəyyən sancaqlar düzməyə çalışıram … bacarsam. Ən azı tel uzunluğunu minimuma endirməyə çalışıram. Burun körpüsünün titrəmə mühərriki üçün üstündə bir boşluq buraxdığımdan əmin olmalıydım. Sonda yuxarıdakı şəkildə görə biləcəyiniz yerə gəldim.
Addım 9: Zəmin
Əvvəlcə qərar verdiyim vəzifələrdə bütün komponentləri lövhəyə lehimlədim. Sonra, yer əlaqələrini əlavə etdim. PWB üzərindəki böyük uzun zolaqlardan biri hələ də açıq qaldı, buna görə ümumi bir zolaq etdim.
Yuxarıdakı şəkil torpaq əlaqələrini və 10K müqavimətini göstərir. Hər bir telin haraya yerləşdiriləcəyini sizə söyləməyəcəyəm, çünki insanların çoxunun necə edəcəyinə dair öz fikirləri var. Sadəcə nə etdiyimi sizə göstərəcəyəm.
Addım 10: Tellər
Qalan telləri yuxarıdakı şəkildə göstərildiyi kimi əlavə etdim. Yerində qalmasını təmin etmək üçün vibrasiya motorunun altına bir cüt yapışqan bant əlavə etdim. Artıq motorun altına gələn yapışqan material mənim üçün kifayət qədər güclü hiss etmirdi.
Əlaqələrim üçün 22 ölçü teli istifadə etdim. Daha kiçik bir şey varsa, istifadə edin. 22 ölçü istifadə etdim, çünki əlimdə olan ən kiçikdir.
Addım 11: Batareya Mötərizəsi
Mən 3D LiPo batareyasını tutmaq üçün bir mötərizə çap etdim (onun göstərilməsi yuxarıda göstərilmişdir). Mötərizəni yuxarıda göstərildiyi kimi komponentlərdən şüşələrin əks tərəfinə quraşdırmaq üçün protoborddakı delikləri qeyd etdim və qazdım.
Burada qeyd etməliyəm ki, mötərizə çox incə və çürükdür və onu dəstəkləyici materialla çap etməliyəm (bu layihə üçün bütün hissələr üçün ABS plastik istifadə etdim). Dəstək materialını çıxarmaq üçün mötərizəni asanlıqla qıra bilərsiniz, buna görə də asanlaşın.
Parçalarımı gücləndirmək üçün etdiyim bir şey, onları asetona batırmaqdır. Təbii ki, bunu edərkən çox diqqətli olmalısınız. Yaxşı havalandırılan bir yerdə edirəm və əlcək və göz qoruyucu vasitələrdən istifadə edirəm. Dəstək materialını çıxardıqdan sonra bunu edirəm (əlbəttə). Bir konteyner asetonum var və cımbızdan istifadə edərək hissəni asetona batıra bilərəm, bəlkə də bir -iki saniyə. Dərhal çıxarıram və qurutmaq üçün kənara qoyuram. Mən hissələri toxunmadan bir saat və ya daha çox vaxt tərk edirəm. Aseton ABS -ni kimyəvi olaraq 'əridir'. Bu, plastik təbəqələrin möhürlənməsinə təsir göstərir.
Mötərizə üçün STL faylı bu addıma əlavə olunur.
Addım 12: Proqramlaşdırma
Bütün əlaqələrimi iki dəfə yoxladıqdan sonra Trinket M0 proqramlaşdırmaq üçün USB kabelini bağladım.
Proqramı qurmaq və/və ya dəyişdirmək üçün (bu addıma əlavə olunur) Arduino IDE və Trinket M0 üçün lövhə sənədlərinə, həmçinin Sparkfun VL53L1X üçün kitabxanalara ehtiyacınız olacaq. Bütün bunlar burada və burada.
Yeni təcrübəniz varsa, burada öyrənmə saytında Adafruit M0 istifadə etmək üçün təlimatları izləyin. Proqram yükləndikdən sonra (bu addıma əlavə olunur) lövhə işə salınmalı və USB serial bağlantısı ilə işləməlidir. VL53L1X ilə lövhənin yan tərəfini divara və ya əlinizə yaxınlaşdırın və motorun titrədiyini hiss etməlisiniz. Titrəmə, bir cisim cihazdan uzaqlaşdıqca amplituda aşağı düşməlidir.
Vurğulamaq istəyirəm ki, bu proqram bu işin ilk keçididir. İki cüt eynək düzəltdim və dərhal ikisini düzəldəcəyəm. Biz (mən və bunun üzərində işləyən ən azı bir nəfər) proqramı təkmilləşdirməyə və hər hansı bir yeniləməni burada yerləşdirməyə davam edəcəyik. Ümid edirəm ki, başqaları da bunu sınayacaq və etdikləri dəyişiklikləri/təkmilləşdirmələri (bəlkə də GitHub -a) göndərəcəklər.
Addım 13: Çərçivələri bitirmək
Qulaq parçalarını eynəklərin hər iki tərəfindəki çentiklərə qoydum və bir ipucu istifadə edərək aseton tətbiq etdim. Asetonu uduram ki, künclərə sıxsam yaxşı bir məbləğ alım. Sıx bir şəkildə bağlansalar, aseton kapilyar cazibə vasitəsi ilə gəzər. Düz yerləşdirildiklərindən əminəm və lazım gələrsə onları ən azı bir saat yerində saxlamaq üçün bir şey istifadə edirəm. Bəzən yenidən müraciət edib bir saat daha gözləyərəm. Aseton əla bir əlaqə yaradır və gözlüklərim çərçivə sərhədində olduqca güclü görünür.
Əlbəttə ki, bu eynəklər sadəcə bir prototipdir, buna görə dizaynı sadə saxladım və buna görə də eynəklərin qolları üçün heç bir menteşə yoxdur. Hər halda olduqca yaxşı işləyirlər. Ancaq istəsəniz, onları hər zaman menteşələrlə yenidən dizayn edə bilərsiniz.
Addım 14: Son Düşüncələr
Günəş işığında sensorun yaxşı işləmədiyini gördüm. Sensorun günəşdən İR ilə doymuş olduğuna əmin olduğum üçün bu məna kəsb edir ki, bunu sensorun buraxdığı nəbzdən ayırmaq mümkün deyil. Yenə də içəridə, gecələrdə və bəlkə də buludlu günlərdə yaxşı eynəklər hazırlayardılar. Əlbəttə ki, daha çox test etməliyəm.
Dizaynı dəyişdirmək üçün edəcəyim bir şey, burun körpüsünə toxunan çentiklərə bir növ rezin əlavə etməkdir. Başınızı aşağı əysəniz, eynəklər cazibə qüvvəsi altında dəridən bir qədər qalxdıqca titrəməni hiss etmək çətindir. Düşünürəm ki, sürtünmə yaratmaq üçün bəzi rezin eynəkləri buruna sabit saxlayacaq ki, titrəyiş ona keçsin.
Eynəklə bağlı fikirlərimi öyrənmək istəyirəm. Eynəklərin insanlara faydalı olacağını bilmirəm, ancaq görməliyik. Prototiplərin hamısı budur: fizibilite, öyrənmə və təkmilləşdirmələr.
Dizayna daha çox sensorlar əlavə edilə bilərdi. Bu prototip üçün birini istifadə etməyi seçdim, çünki düşünürəm ki, birdən çox vibrasiya motorunun istifadəçinin fərq etməsi daha çətin olacaq. Ancaq gözlərdən çıxan iki sensorun olması yaxşı bir fikir ola bilər. Sonra iki mühərrikdən istifadə edərək eynəklərin hər tərəfini titrədə bilərsiniz. Titrəmə yerinə hər qulağa verilən səsdən də istifadə edə bilərsiniz. Yenə də fikir bir prototip sınamaq və bir az təcrübə əldə etməkdir.
Bu günə qədər keçmisinizsə, oxuduğunuz üçün təşəkkürlər!