Mündəricat:
- Addım 1: Plastik Komponentləri 3D Çap edin
- Addım 2: İdarəetmə lövhələrini və naqillərini hazırlayın
- Addım 3: Servoları yığın
- Addım 4: Quraşdırın və Test edin
- Addım 5: Kodun Yüklənməsi
- Addım 6: Saatı arxa taxtaya yığmaq
- Addım 7: Son Quraşdırma və Əməliyyat
Video: Mexanik yeddi seqmentli ekran saatı: 7 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:42
Bir neçə ay əvvəl geri sayım sayğacına çevirdiyim iki rəqəmli mexaniki 7 seqmentli ekran qurdum. Çox yaxşı çıxdı və bir çox insan saatı düzəltmək üçün ekranda ikiqat artırmağı təklif etdi. Problem, Arduino Mega -da PWM IO -nun tükənməyim və ikinci və ya üçüncü rəqəmlər üçün kifayət qədər boş yerim olmaması idi. Daha sonra I2C interfeysi üzərində işləyən bu PCA9685 16 kanallı PWM sürücülərinin istiqamətini göstərdim. Bunlar, Arduino üzərindəki iki I2C sancağından istifadə edərək ehtiyac duyduğum 28 servo idarə etməyi mümkün etdi. Beləliklə, vaxt saxlamaq üçün DS1302 real vaxt saat modulu və ekranı düzəltmək üçün istifadə olunan 28 servo idarə etmək üçün iki 16 kanallı servo sürücüdən istifadə edən bir saat qurmaqla məşğul oldum, hamısı Arduino Uno ilə işləyir.
Bu Təlimatdan zövq alırsınızsa, Saat Müsabiqəsində ona səs verməyi düşünün
Təchizat:
Saat qurmaq üçün bəzi əsas vasitələrə əlavə olaraq aşağıdakı təchizatlara ehtiyacınız olacaq:
- Arduino Uno - Buradan Alın
- DS1302 Saat Modulu - Buradan Alın
- 2 x PCA9685 16Ch Servo Sürücüləri - Buradan Alın
- 28 x Mikro Servo - Buradan Alın
- Şerit Kabeli - Burada Alın
- Kişi Pin Başlıq Zolaqları - Buradan Alın
- Dişi Pin Başlıq Zolaqları - Buradan Alın
- 3 mm MDF - Buradan Alın
- Qara Sprey Boya - Buradan Alın
- 5V 5A Batareya Eliminasiya Dövrü - Buradan Alın
- 12V Güc Təchizatı - Burada Alın
Bu layihə üçün bəzi 3D çaplı hissələrə də ehtiyacınız olacaq. Hələ 3D printeriniz yoxdursa və bir şey etməkdən zövq alırsınızsa, mütləq satın almağı düşünməlisiniz. Burada istifadə olunan Creality Ender 3 Pro əlverişlidir və qiymətinə görə olduqca keyfiyyətli çaplar istehsal edir.
- İstifadə olunan 3D Printer - Burada Alın
- Filament - Burada Alın
Addım 1: Plastik Komponentləri 3D Çap edin
7 seqmentli displeyləri mümkün qədər sadə etmək üçün hazırladım. Servo da yuxarıdakı seqmenti tutmaq üçün dəstək dirəyidir. Hər bir seqment üçün iki ədəd 3D çaplı komponent tələb olunur, servonun alt tərəfini dəstəkləyən boşluq bloku və birbaşa servo qoluna yapışan ekran seqmenti.
3D Çap Fayllarını Yükləyin - Mexanik 7 Segment Ekran Saatı 3D Çap Faylları
Parlaq rəngli PLA istifadə edərək servo seqmentləri və nöqtələri çap edin. Şəffaf yaşıl istifadə etdim, amma qırmızı, narıncı və ya sarı da yaxşı işləməlidir. Aralıq blokları və nöqtə dayaqları üçün qara PLA istifadə etdim ki, seqmentlər söndürüldükdə görünməsinlər.
3D printerə çıxışınız yoxdursa, onlayn çap xidmətlərindən birini sınayın. Komponentləri çap edərək bir neçə gün ərzində qapınıza çatdıracaq bir çox əlverişli xidmətlər mövcuddur.
Addım 2: İdarəetmə lövhələrini və naqillərini hazırlayın
28 saatlıq servolarınızı idarə etmək üçün iki PCA9685 16 kanallı PWM sürücüsündən istifadə etməlisiniz. Servoları saat və dəqiqə rəqəmlərinə ayırdım, hər cüt rəqəm bir lövhə ilə idarə olunurdu. Beləliklə, iki saatlıq rəqəmlər üçün servoları idarə edən bir lövhəm var və ikincisi iki dəqiqəlik rəqəmlər üçün servoları idarə edir.
İkisini bir -birinə bağlamaq üçün 6 telli lentli bir kabel konnektoru düzəltməlisiniz və birinci servo idarə kartının digər ucuna ikinci bir başlıq şeridi lehimləməlisiniz. İkinci lövhədəki I2C ünvanını dəyişdirmək lazımdır ki, birincisindən fərqlənsin və bənzərsiz şəkildə tanınsın.
Üç lövhəni (iki servo lövhə və saat modulu) Arduino -ya bağlamaq üçün kabel kəmərini də düzəltməlisiniz. Hər bir lövhədə 5V və GND, həmçinin Arduino pinlərinizə A2 və A5 (Arduino Uno -da I2C) ilə I2C əlaqələri və Arduino -da 6, 7 və 8 sancaqlar üçün CLK, DAT & RST saat modul pinləri lazımdır. müvafiq olaraq.
Güc Arduino -ya birbaşa 12V enerji mənbəyindən və 5V 5A BEC -dən istifadə edərək servolara verilir, daha sonra PWM sürücüsünün üstündəki iki terminala qoşulur. Gücə yalnız bir servo sürücüsünü bağlamalısınız və 6 telli lentli kabel bağlantısı ilə ikincisini güclə təmin edəcək.
Addım 3: Servoları yığın
Segmentlərinizi çap etdikdən sonra arxa və yan tərəfləri qara rəngə səpmək lazımdır ki, 90 dərəcə söndürüldükdə daha az görünsünlər.
Sonra seqmentləri servo qollarınıza isti əriyən yapışqan ilə yapışdırmalısınız. Onları artıq servoda olan servoya yapışdırmağa kömək edir, beləliklə onları düz və düz bir şəkildə yapışdırdığınızı yoxlaya bilərsiniz.
Hər servonun altına bir boşluq bloku yapışdırmalısınız.
Kiçik bir dübel və ya kabab çubuğunu nöqtələrin arxasına, sonra da əsas bloklara yapışdıraraq nöqtələri yığın. Bu çubuqları qara rəngdə də səpdim ki, bir bucaqdan baxsanız daha az görünsünlər.
Addım 4: Quraşdırın və Test edin
Bütün servoları nömrələdim və hər bir qurğunun üzərinə nömrəni yazdım ki, onları izləmək daha asan olsun. Vahid rəqəmində yuxarı seqmentdən başladım və onlarla rəqəmdə orta seqmentə qədər çalışdım. Lövhələrdəki identifikatorların 1 -dən 14 -ə deyil, 0 -dan 13 -ə qədər olduğunu xatırlayaraq, onları servo idarəetmə lövhələrinə bağladığım qaydadır.
Daha sonra seqmentləri test üçün aralarında kifayət qədər boşluq olan bir masaya qoydum ki, səyahət məhdudiyyətləri və istiqamətləri qurularkən bir -birinə keçməsinlər. Onları bir -birinə yaxın bir şəkildə qurmağa çalışsanız, çox güman ki, bir və ya iki dəfə yanlış istiqamətdə hərəkət etməli və ya bir mərhələdə seqmentə, servo qoluna və ya servonun dişlilərinə zərər verə biləcək digərinə vura bilərsiniz.
Addım 5: Kodun Yüklənməsi
Kod ilk baxışdan mürəkkəb görünür, amma istifadə olunan iki kitabxana sayəsində əslində nisbətən sadədir. Yeniləməyə ehtiyacı olan 4 fərqli 7 seqmentli ekran olduğu üçün çoxlu təkrarlamalar da var.
Kodun qısa bir təsviri, daha ətraflı bir izahat üçün tam bələdçiyə və kodu yükləmək üçün bir linkə baxın - Mexanik 7 Segment Ekran Saatı
Saat kitabçası üçün virtuabotixRTC.h və servo sürücülər üçün Adafruit_PWMServoDriver.h adlı iki kitabxananı idxal etməklə başlayırıq. Adafruit kitabxanası birbaşa IDE -də kitabxana meneceri vasitəsi ilə endirilə və quraşdırıla bilər.
Daha sonra hər bir idarəetmə lövhəsi üçün müvafiq ünvanı olan bir saat rəqəmləri üçün və bir dəqiqə rəqəmləri üçün bir obyekt yaradırıq.
Daha sonra hər bir servo üçün açma və söndürmə mövqelərini saxlamaq üçün dörd massivimiz var. Gələn addımlarda servolarınızın dik vəziyyətdə, söndürüldükdə 90 dərəcə döndüyündən və səyahətdən artıq olmadığından əmin olmaq üçün bu nömrələrdə düzəlişlər etməlisiniz.
Rəqəmli bir sıra, göstəriləcək hər bir rəqəm üçün hər seqmentin mövqelərini saxlayır.
Daha sonra saat modulunu qururuq və cari və keçmiş fərdi rəqəmləri saxlamaq üçün dəyişənlər yaradırıq.
Quraşdırma funksiyasında PWM idarəetmə lövhələrini işə salırıq və qururuq, lazım olduqda saat vaxtını da yeniləyirik. Daha sonra ekranı 8 8: 8 8 olaraq təyin etmək üçün bir döngədən keçirik ki, bütün servoların başlanğıc mövqeyini bilək. Bu, servoların hamısını yuxarıya doğru doğru baxacaq şəkildə qurmaq üçün istifadə olunur.
Əsas döngədə, saat modulundan yenilənmiş vaxtı alırıq, dörd rəqəmə tökürük və sonra vaxtın son yoxlamadan dəyişib dəyişmədiyini yoxlayırıq. Vaxt dəyişibsə, ekranı yeniləyirik, sonra əvvəlki rəqəmləri yeniləyirik.
Yeniləmə ekran funksiyasında əvvəlcə orta seqmentləri hərəkət etdiririk. Bu, ilk növbədə edilir, çünki orta seqmentə bitişik olan iki üst seqmenti orta seqmenti hərəkət etdirməzdən əvvəl bir az kənara çıxarmaq üçün lazım olan bir məntiq var, əks halda onlara çarpacaq. Orta seqmentlər köçürüldükdən sonra qalan seqmentlər düzgün mövqelərə köçürülür.
Addım 6: Saatı arxa taxtaya yığmaq
Testi bitirdikdən sonra, yuxarıdakı düzeni bələdçi olaraq arxa taxtaya yığdım.
Ağ sahə ümumi lövhənin ölçüsüdür, açıq boz, servo seqmentlərinin hərəkət etdiyi hər bir rəqəmi əhatə edən sahədir və tünd boz sahədəki kontur hər rəqəm üçün xarici 6 seqmentin mərkəzi xəttidir.
Lövhəni kəsdim, düzeni qeyd etdim və sonra saat üzünü düzəltmək üçün rəqəmləri yerə yapışdırdım.
Daha sonra hər bir servonun yanında deliklər qazdım və telləri lövhənin arxasına keçirtdim ki, daha az görünsünlər.
Elektronikanı saatın arxasına iki tərəfli lentlə bağladım.
Addım 7: Son Quraşdırma və Əməliyyat
Servoların hamısı hazır olduqdan sonra, seqmentlərin mövqelərində son düzəlişlər etmək üçün bütün servo qollarını çıxardım. Arduino'yu bu vəziyyətdə işə salmalısınız ki, 8 8: 8 8 göstərilsin və sonra gücünü kəsəsiniz, bu servo qollarınızı yenidən şaquliə yaxın olan seqmentlər ilə yenidən taxmaq üçün yenidən mərkəzləşdirsin. mümkün qədər.
Arduino -nu ardıcıl olaraq işə salmalı və seqmentlərinizi dörd serialda açma və söndürmə mövqelərinizə düzəltməlisiniz ki, servolar açıldıqda mükəmməl şəkildə şaquli olsun və çox səyahət etmədən söndürüldükdə 90 dərəcə dönsün. Bu addım çox vaxt aparır və bir az səbr tələb edir, amma son nəticə buna dəyər!
Saat 12V enerji təchizatı və ona qoşulan 5V BEC istifadə edərək işləyə bilər. Güc azalırsa, RTC modulundakı batareya vaxtı saxlayacaq, belə ki, güc bərpa edildikdə, saat avtomatik olaraq düzgün vaxta qayıdır.
Bu Təlimatlardan zövq almısınızsa, zəhmət olmasa Saat müsabiqəsində ona səs verin və aşağıdakı şərhlər bölməsində irəli sürə biləcəyiniz təkmilləşdirmələr və ya təkliflər barədə mənə bildirin.
Saat Yarışmasında İkinci Mükafat
Tövsiyə:
Diy Yeddi Segment Ekran Saatı: 9 addım
Diy Yeddi Segment Ekran Saatı: bu dərsdə sizə yeddi seqmentli saatın necə qurulacağını göstərəcəyəm
CircuitPython -da Potansiyometr tərəfindən idarə olunan 7 -seqmentli ikili ekranlar - Görmə qabiliyyətinin nümayişi: 9 addım (şəkillərlə)
CircuitPython-da Potentiometer tərəfindən idarə olunan 7 seqmentli ikili ekranlar-Görmə qabiliyyətinin nümayişi: Bu layihə, bir neçə 7 seqmentli LED displeydə (F5161AH) ekranı idarə etmək üçün potensiometrdən istifadə edir. Potensiometr düyməsi döndükdə göstərilən nömrə 0 ilə 99 aralığında dəyişir. Hər an yalnız bir LED çox qısa müddətdə yanır, amma
Zibil qutusundan 4 rəqəmli 7 seqmentli ekran: 7 addım
Zibil qutusundan 4-Rəqəmli 7-Segmentli Ekran: Təlimat verilə bilən, çox uzun müddət yükləməyim uzun müddətdir. Beləliklə, bu gün sizə lazımsız əşyaları necə gözəl bir ekrana çevirməyi göstərəcəyəm! Bu ekran gələcəkdə öyrədəcəyim bir saat üçün istifadə edilə bilər. Gəlin qazaq! U
Təkrarlanan PVC Yeddi Segmentli Ekran: 5 Addım (Şəkillərlə birlikdə)
Yenidən işlənmiş PVC Yeddi Segment Ekranı: bir müddətdir divarımda asa biləcəyim rəqəmsal bir saat düzəltməyi planlaşdırırdım, ancaq akril almaq istəmədiyim üçün qoydum, buna görə də bir az PVC kabel kanallarından istifadə etdim. Nəticələrin yataq olmadığını söyləmək məcburiyyətindəyəm
TOD: Diode Matrix ROM Giriş (7 seqmentli Ekran): 7 addım
TOD: Diode Matrix ROM Intro (7 seqmentli Ekran): Tonlarla Diodlar Tonlarla ton diod istifadə edəcək yeni bir təlimat seriyası. Heç bir IC səsli deyil, yalnız yarı keçiricilər diodlar və tranzistorlardır. Yüksək səslə səslənən yeganə passiv komponentlər kondansatörlər, rezistorlar, açarlar, induktorlar və