Mündəricat:

DigiLevel - İki Eksenli Rəqəmsal Səviyyə: 13 Addım (Şəkillərlə)
DigiLevel - İki Eksenli Rəqəmsal Səviyyə: 13 Addım (Şəkillərlə)

Video: DigiLevel - İki Eksenli Rəqəmsal Səviyyə: 13 Addım (Şəkillərlə)

Video: DigiLevel - İki Eksenli Rəqəmsal Səviyyə: 13 Addım (Şəkillərlə)
Video: June 24, 2010 in Runescape. A glitch on the mountain camp by Rellekka 2024, Iyul
Anonim
DigiLevel - İki Oxlu Rəqəmsal Səviyyə
DigiLevel - İki Oxlu Rəqəmsal Səviyyə
DigiLevel - İki Oxlu Rəqəmsal Səviyyə
DigiLevel - İki Oxlu Rəqəmsal Səviyyə

Bu təlimat üçün ilham, burada GreatScottLab tərəfindən tapılan DIY Rəqəmsal Ruh səviyyəsidir. Bu dizaynı bəyəndim, amma daha qrafik bir interfeysi olan daha böyük bir ekran istədim. Çantada elektronika üçün daha yaxşı montaj variantları istədim. Nəhayət, bu layihəni 3D dizayn bacarıqlarımı (Fusion 360 istifadə edərək) inkişaf etdirmək və yeni elektron komponentləri araşdırmaq üçün istifadə etdim.

DigiLevel, səthin düz olması ilə bağlı rəy verəcək-həm x oxu (üfüqi), həm də y oxu (şaquli) boyunca. Səviyyə dərəcələri, eləcə də 2 eksenli bir qrafikdə qrafik təsviri göstərilir. Bundan əlavə, batareya səviyyəsi göstərilir və Fahrenheit və ya Celsiusdakı mövcud temperatur göstərilir (akselerometr çipinin bildirdiyi kimi). Bu minimal səsli geribildirimdir - gücü yoxlamaq üçün ilkin ton, sonra səviyyənin qeyri -səviyyəli mövqedən səviyyəli mövqeyə keçirilməsində ikiqat ton.

Bu rəqəmsal səviyyəni necə edə biləcəyinizə dair ətraflı təlimatlar verdim, ancaq DIY Rəqəmsal Ruh səviyyəsində etdiyim kimi dizaynımı genişləndirmək və dəyişdirməkdən çekinmeyin.

Addım 1: Materiallar

Materiallar
Materiallar

Bu rəqəmsal səviyyəni bir araya gətirmək üçün istifadə olunan materiallar aşağıda verilmişdir. Satın alma bağlantılarının əksəriyyəti, fərdi komponentləri satın almaqdan daha ucuz olan bir neçə parça üçündür. Məsələn, TP4056 çipi 10 ədədlə birlikdə 9 dollara (1 dollardan aşağı/TP4056) gəlir və ya fərdi olaraq 5 dollara satın alınır.

  • TP4056 Li -Po batareya şarj cihazı (Amazon -
  • LSM9DS1 sürətləndirici (Amazon -
  • Arduino Nano (Amazon -
  • 128x64 OLED LCD Ekran (Amazon -
  • Piezo dinamik (Amazon -
  • 3.7V Li -Po batareyası (Amazon -

    a.co/d/1v9n7uP)

  • M2 tava başlı özünü vurma vintləri - 4 M2x4, 6 M2x6 və 6 M2x8 vintlər lazımdır (eBay -
  • Sürüşdürmə açarı (Amazon -

Vintlər istisna olmaqla, verilən bağlantılar sizi Amazon -a aparacaq. Bu maddələrin demək olar ki, hamısı eBay -də və ya Çindən birbaşa ciddi endirimlə əldə edilə bilər. Unutmayın ki, Çindən sifariş vermək uzun müddətə gətirib çıxara bilər (3-4 həftə qeyri-adi deyil).

Bu komponentlərin bir çoxu üçün alternativlərin olduğunu da unutmayın. Məsələn, LSM9DS1 (MPU-9205 kimi) üçün fərqli bir akselerometr əvəz edə bilərsiniz. Müvafiq GPIO pinləri olan hər hansı bir Arduino uyğun prosessoru istifadə edərək Arduino Nano'yu əvəz edə bilərsiniz.

Xüsusilə, LSM9DS1, Sparkfun -dan 10 dollardan aşağı qiymətə aldığım bir cihazdır, lakin normal olaraq daha yüksək qiymətə malikdir; MPU-9025 (https://a.co/d/g1yu2r1) oxşar funksiyanı daha aşağı qiymətə təmin edir.

Bir əvəz etsəniz, ehtimal ki, işi dəyişdirməlisiniz (və ya heç olmasa komponenti korpusa necə bağladığınız) və ehtimal ki, alternativ komponentə qoşulmaq üçün proqramı dəyişdirməlisiniz. Məndə bu dəyişikliklər yoxdur - uyğun olaraq araşdırmalı və yeniləməlisən.

Addım 2: Bağlama Şeması

Kabel diaqramı
Kabel diaqramı

Elektrik sxemləri, müxtəlif elektron komponentlərin bir -birinə necə bağlandığını göstərir. Qırmızı xətlər pozitiv gərginliyi, qara xətlər isə torpağı təmsil edir. Sarı və yaşıl xətlər, akselerometrdən və OLED LCD ekrandan verilən məlumat siqnalları üçün istifadə olunur. Aşağıdakı addımlarda bu komponentlərin necə bağlandığını görəcəksiniz.

Addım 3: Davanı düzəldin

Davanı düzəldin
Davanı düzəldin
Davanı düzəldin
Davanı düzəldin

Bir 3D printeriniz varsa, qutu olduqca asanlıqla çap edilə bilər. Bu Təlimata daxil olan STL faylları. 3D printeriniz yoxdursa, STL sənədlərini 3D printer bürosuna (məsələn, bu kimi) yükləyib sizin üçün çap etdirə bilərsiniz.

Mən heç bir ağız və ya sal (və heç bir dəstək olmadan) və 20% doldurma ilə çap etdim, ancaq çapa alışdığınız halda özünüzinkini çap edə bilərsiniz. Hər bir parça düz olaraq qoyularaq ayrıca çap olunmalıdır. Yazıcı yatağına uyğun olması üçün onu 45 dərəcə döndərməyiniz lazım ola bilər. Mina çapı 200 mm x 200 mm olan Monoprice Maker Select Plus istifadə edərək çap edildi - hər bir parçanın çapı təxminən 12 saat çəkdi. Kiçik bir yatağınız varsa, uyğun gələ bilməz. Ölçmələr tövsiyə edilmir, çünki elektron komponentlərin montajları uyğun ölçüdə ölçülməyəcəkdir.

Addım 4: Bağlantıyı Doğrulamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)

Bağlantıyı yoxlamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)
Bağlantıyı yoxlamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)
Bağlantıyı Doğrulamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)
Bağlantıyı Doğrulamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)
Bağlantıyı yoxlamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)
Bağlantıyı yoxlamaq üçün Komponentləri Çörək Panelinə bağlayın (isteğe bağlı)

Qutunun içərisindəki komponentlərin montajına başlamazdan əvvəl əlaqəni yoxlamaq üçün əsas komponentləri çörək taxtasına bağlamağı şiddətlə tövsiyə edirəm. Proqramı Arduino Nano'ya yükləyə bilərsiniz (növbəti addıma baxın) və OLED LCD ekranın düzgün bir şəkildə bağlandığını və işlədiyini və akselerometrin düzgün bir şəkildə bağlandığını və məlumatlarını Arduino Nanoya bildirdiyini yoxlaya bilərsiniz.. Ayrıca, bu, isteğe bağlı piezo dinamikin işini yoxlamaq üçün istifadə edilə bilər.

Batareyanı və şarj cihazını bu mərhələdə çörək taxtasına bağlamadım - açarı batareyaya nəzarət etmək üçün bağlama açarı qutuya bağladıqdan sonra edilir. Son şəkil, bu telin bağlanmasından əvvəl necə göründüyünü göstərir.

Addım 5: Proqramı Arduino Nano'ya yükləyin

Proqram, Arduino IDE istifadə edərək Arduino Nano'ya yüklənir. Bu, DigiLevel -in qurulması zamanı istənilən vaxt edilə bilər, lakin ən yaxşı şəkildə, komponentlərin elektrik naqillərinin düzgün bağlanmasını və işlədiyini yoxlamaq üçün çörək taxtasından istifadə edərək (əvvəlki addıma baxın) bağlandıqda edilir.

Proqram 2 kitabxananın quraşdırılmasını tələb edir. Birincisi, U8g2 kitabxanasıdır (oliver tərəfindən) -Arduino IDE -də 'Sketch -> Kitabxanaya Daxil Et -> Kitabxanaları İdarə et …' düyməsini basaraq onu quraşdıra bilərsiniz. U8g2 axtarın və sonra Quraşdır düyməsini basın. İkinci kitabxana Sparkfun LSM9DS1 kitabxanasıdır. Kitabxananın necə qurulacağına dair təlimatları buradan əldə edə bilərsiniz.

Kitabxana spesifikasiyalarından sonra proqramın quraşdırma bölməsi və əsas işləmə döngəsi var. Quraşdırma bölməsi, akselerometr və OLED LCD ekranı işə salır və sonra əsas ekranı göstərməzdən əvvəl bir başlanğıc ekranı göstərir. Dinamik qoşulduqda, gücün açıldığını bildirmək üçün dinamikdə bir səs siqnalı çalacaq.

Əsas işləmə döngəsi, akselerometr oxumaqdan, x və y açılarını əldə etməkdən sonra dəyərləri mütləq ədədlər dəsti olaraq və şəkil şəklində bir qrafikdə göstərməkdən məsuldur. Akselerometrdən temperaturun oxunması da göstərilir (ya Fahrenheit və ya Celsius). Səviyyə əvvəllər qeyri-səviyyəli olsaydı, səviyyəyə qayıtdıqda dinamikdə iki bip səsi çıxaracaq (bağlı olduqda).

Nəhayət, cari batareyanın səviyyəsini təyin etmək və göstərmək üçün batareyadan gələn gərginlik əldə edilir. Bu kodun nə qədər doğru olduğunu bilmirəm, amma tam bir batareyanı və istifadə zamanı batareyanın səviyyəsini tədricən aşağı çəkməyi göstərmək üçün kifayət qədər dəqiqdir.

Addım 6: OLED Ekranı və Piezo Dinamikini Qurun və Tel Edin

OLED Ekranı və Piezo Dinamikini Qurun və Tel Edin
OLED Ekranı və Piezo Dinamikini Qurun və Tel Edin
OLED Ekranı və Piezo Dinamikini Qurun və Tel Edin
OLED Ekranı və Piezo Dinamikini Qurun və Tel Edin

1,3 OLED displey (128x64), 4 M2x4 tava başlı öz-özünə vurma vintlərindən istifadə edərək korpusun yuxarı yarısına bərkidilir. Montajdan əvvəl tellərinizi ekrana bağlamağı məsləhət görürəm. Bu, sancaqların necə olduğunu görə biləcəyinizi təmin edir. telləri bağladığınız zaman etiketlənir. Ekran quraşdırıldıqdan sonra sancaqlar üçün etiketləri görə bilməyəcəksiniz. Ekranın arxa tərəfinə bir etiket əlavə etdiyimi xatırlayacaqsınız. pin dəyərləri (bunu ilk dəfə etmədiyimdən və səhv bağladığım üçün …).

Dinamik, batareyanın yaxşı olduğunu və işlək olduğunu yoxlamaq üçün Rəqəmsal Səviyyə açıldıqda qısa bir ton yaymaq üçün istifadə olunur. Səviyyə qeyri-səviyyəli mövqedən səviyyə mövqeyinə keçirildikdə də ikiqat ton yayır. Bu, səviyyəni və ya səviyyənin nə olduğunu təyin edərkən səsli bir rəy verməkdir. 2 M2x4 tava başlı özünü vurma vintlərindən istifadə edərək qutunun yuxarı yarısına quraşdırılmışdır. Dinamikə ehtiyacınız yoxdur - DigiLevel onsuz da yaxşı işləyəcək, ancaq səsli rəyləriniz olmayacaq.

Addım 7: Batareyanı, Batareya Şarj Cihazını və Anahtarı bağlayın və tel edin

Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin
Batareyanı, Batareya Şarj Cihazını və Anahtarı Qurun və Tel edin

Anahtarı batareyaya bağlamadan əvvəl qutuya quraşdırmaq lazımdır. Bunun səbəbi, əvvəlcə tel bağlasanız, açarı ayırmadan bağlaya bilməyəcəksiniz. Buna görə əvvəlcə açarı bağlayın, sonra əvvəlcədən bağlanmış TP4056 və Li-Po batareyasını quraşdırın, sonra keçid tellərini tamamlayın.

TP4056-da 4 kabel yastığı var: B+, B-, Out+, Out-. Batareyanı B+ (müsbət gərginlik) və B- (torpaq) əlaqələrinə bağlamaq istəyəcəksiniz. Çıxış bağlantısı Arduino Nanoya gedəcək torpaq üçün istifadə olunur və Çıxış+ açarın bir pininə bağlıdır. Şalterin ikinci pimi Arduino Nanonun VIN koduna bağlanır.

Lehimləmə işim ən yaxşı deyil - lehimli birləşməni örtmək və izolyasiya etmək üçün istilik büzücü borulardan istifadə etməyi sevirəm. Buradakı lehimli bağlantılardan birində, istilik büzücü boruların lehimləmə istiliyindən təsirləndiyini və onu hərəkət etdirə bilməmiş kiçildiyini görəcəksiniz.

Addım 8: Accelerometer -ı quraşdırın və tel edin

Accelerometer -i bağlayın və tel edin
Accelerometer -i bağlayın və tel edin
Accelerometer -ı bağlayın və tel edin
Accelerometer -ı bağlayın və tel edin

Akselerometr (LSM9DS1) korpusun alt yarısının ortasına quraşdırılmışdır. Kablolanacaq 4 pin var: VCC Arduino Nano üzərindəki V5 pininə gedir; GND yerə gedir; SDA, Arduino Nano'daki A5 pininə gedir; və SCL, Arduino Nano'daki A4 pininə gedir.

Kablolama üçün Dupont bağlayıcıları olan tullanan tellərdən istifadə etdim, ancaq istəsəniz teli birbaşa sancaqlara lehimləyə bilərsiniz. Telləri birbaşa sancaqlara lehimləsəniz, bunu asanlaşdırmaq üçün akselerometr çipini quraşdırmadan əvvəl bunu etmək istəyəcəksiniz.

Addım 9: Arduino Nanonu Kablolayaraq Elektronikanı Tamamlayın

Arduino Nanonu Kablolayaraq Elektronikanı tamamlayın
Arduino Nanonu Kablolayaraq Elektronikanı tamamlayın
Arduino Nanonu Kablolayaraq Elektronikanı tamamlayın
Arduino Nanonu Kablolayaraq Elektronikanı tamamlayın
Arduino Nanonu Kablolayaraq Elektronikanı tamamlayın
Arduino Nanonu Kablolayaraq Elektronikanı tamamlayın

Son kabellər bütün elektrik komponentlərini Arduino Nano'ya bağlayaraq edilir. Bu ən yaxşı şəkildə Arduino Nanonun quraşdırılmasından əvvəl edilir, beləliklə USB portu kalibrləmə və digər proqram dəyişikliyi üçün əlçatandır.

Anahtarı Nanoya bağlayaraq başlayın. Müsbət qurğuşun (qırmızı) keçiddən Nanonun VIN pininə keçir. Batareyanın mənfi qurğusu (qara) Nanonun GND pininə gedəcək. Nanoda iki GND sancağı var və dörd elektrik komponentinin hamısında torpaq teli var. Davanın altındakı iki əsası GND sancaqlarından birinə bağlanmış bir qurğuda birləşdirməyi seçdim. Davanın üstündəki iki əsas, digər GND sancaqlarına bağlanan bir qurğuda birləşdirdim.

Akselerometr (LSM9DS1), akselerometrdəki VDD pinini Nano üzərindəki 3V3 pinə bağlayaraq Nanoya qoşula bilər. Bunu 5V pininə qoşmayın, əks halda akselerometr çipini zədələyəcəksiniz. SDA -nı Nano üzərindəki A4 pininə, SCL -ni isə Nano üzərindəki A5 pininə qoşun. GND pin, Nano üzərindəki GND pininə gedir (batareyanın mənfi qurğusu ilə birlikdə).

OLED LCD displey, ekrandakı VCC pinini Nano üzərindəki 5V pininə bağlayaraq Nano -ya qoşula bilər. SDA -nı Nano üzərindəki D2 pininə, SCL -ni isə Nano üzərindəki D5 pininə bağlayın.

Nəhayət, dinamik Nano üzərindəki D7 pininə qırmızı tel (müsbət) bağlayaraq bağlana bilər. Qara tel, OLED LCD ekranın GND ilə birlikdə GND -ə gedir.

Addım 10: Kalibrləmə

Proqram yükləndikdən sonra və Arduino Nanonun quraşdırılmasından əvvəl səviyyənizi kalibr etməyiniz lazım ola bilər. Akselerometr lövhəsinin quraşdırıldığından əmin olun. Vidalarla montaj etmək, düz bir lövhə ilə nəticələnməlidir, lakin hər hansı bir səbəbdən bir qədər söndürüldükdə, kalibrləmə düzgün bir görüntü təmin edəcəkdir.

Alt kassanı düz olduğu bilinən bir səthə qoyun (köpük səviyyəsi və ya başqa vasitələrdən istifadə edərək). X və Y üçün göstərilən dəyərləri oxuyun. Əgər sıfır deyilsə, proqramı kalibrləmə miqdarı ilə yeniləməlisiniz. Bu ya xCalibration dəyişənini ya da yCalibration dəyişənini müvafiq məbləğə (nə göstərilir) təyin etməklə edilir.

// // Bu dəyişənləri ilkin dəyərlərlə uyğun olaraq təyin edin // bool displayF = true; // Fahrenheit üçün doğru, Celsius üçün yalan int xCalibration = 0; // x-ox int yCalibration = 0; // y oxlu uzun irvCalibration = 1457; // daxili istinad gərginliyi üçün kalibrləmə miqdarı

Eyni zamanda, temperaturun Fahrenheit və ya Celsiusda göstərilməsini istəməyinizə bağlı olaraq displayF dəyərini də uyğun bir ayara təyin etməlisiniz.

Proqramı Nano'ya yenidən yükləmək, bilinən bir səthdə 0/0 oxunması ilə nəticələnməlidir.

Addım 11: Arduino Nanonu quraşdırın və Çantanı yığın

Arduino Nanonu quraşdırın və Kassanı yığın
Arduino Nanonu quraşdırın və Kassanı yığın

Kalibrləmə başa çatdıqdan sonra, relslərə isti yapışqan tətbiq edərək və Arduino Nano'yu bu pinlərə, sancaqlar yuxarıya və USB portu korpusun iç tərəfinə baxaraq yerləşdirə bilərsiniz.

Bütün elektronikanı ehtiva edən korpus artıq iki yarıyı bir araya gətirərək və 4 ədəd M2x8 tava başlı öz-özünə vurma vintlərindən istifadə etməklə yığıla bilər.

Addım 12: Yeni Rəqəmsal Səviyyənizin İşini Doğrulayın

Yeni Rəqəmsal Səviyyə Əməliyyatınızı yoxlayın
Yeni Rəqəmsal Səviyyə Əməliyyatınızı yoxlayın

Li-Po batareyasının doldurulduğundan əmin olun. Kassa yığılıbsa, şarj LED göstəricilərini birbaşa görə bilməyəcəksiniz. Şarj işığını birbaşa şarj lampalarına baxaraq yoxlamaq istəsəniz, qutunu açmalısınız, ancaq qutunun bağlı olduğu halda şarjın baş verdiyini göstərən qırmızı parıltını görə bilməlisiniz.

Şarj edildikdən və yığıldıqdan sonra rəqəmsal səviyyəni yandırın və işini yoxlayın. İşə yaramırsa, iki ehtimal olunan problem nöqtəsi OLED LCD ekranın və akselerometrin naqilləridir. Ekranda heç bir şey yoxdursa, OLED LCD kabelindən başlayın. Ekran işləyirsə, lakin H və V etiketlərində həm 0 göstərilir, həm də temperatur 0 (C) və ya 32 (F) olarsa, ehtimal ki, akselerometr düzgün bağlanmamışdır.

Addım 13: Son Fikirlər …

Bu rəqəmsal səviyyəni (və Təlimatlandırıla bilən) ilk növbədə öyrənmə təcrübəsi olaraq bir araya gətirdim. Fərqli komponentləri və qabiliyyətlərini araşdırmaq və sonra dəyər qatacaq bir şəkildə bir araya gətirmək kimi işlək bir səviyyəyə çatmaq mənim üçün daha az önəmli idi.

Hansı təkmilləşdirmələri edərdim? Gələcək bir yeniləmə üçün düşündüyüm bir neçə şey var:

  • Arduino Nano'nun USB portunu quraşdırma üsulunu dəyişdirərək korpusdan çıxarın. Bu, proqram təminatını daha asan yeniləməyə imkan verərdi (bu, hər halda nadir olmalıdır).
  • Taxta bir filament istifadə edərək qutunu 3D çap edin. Hatchbox Wood filamenti ilə sınaqdan keçirmişəm və əldə etdiyim nəticələrdən çox məmnunam. Düşünürəm ki, bu, DigiLevel -ə daha yaxşı bir ümumi görünüş verəcəkdir.
  • Xərcləri azaltmaq üçün MPU-9250 akselerometrindən istifadə edərək dizaynı yeniləyin.

Bu mənim ilk təlimatımdır və rəyi xoşlayıram. Bunun qarşısını almağa çalışsam da, əminəm ki, bunun hələ ABŞ mərkəzli bir perspektivi var - bu səbəbdən ABŞ xaricində olanlar üçün üzr istəyirik.

Maraqlı görsəniz, zəhmət olmasa ilk dəfə müəllif müsabiqəsində mənə səs verin. Sona qədər oxuduğunuz üçün təşəkkürlər!

İlk dəfə Müəllif
İlk dəfə Müəllif
İlk dəfə Müəllif
İlk dəfə Müəllif

İlk dəfə Yazardır

Tövsiyə: