Mündəricat:
- Addım 1: Komponentlərin toplanması
- Addım 2: Dövrün montajı
- Addım 3: Saatı Qurmaq və Qurmaq
- Addım 4: Kodlaşdırma
- Addım 5: Karton Prototipi (isteğe bağlı)
Video: Arduino ilə Gündoğumu Zəngli Saat: 9 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Qış kədərli ola bilər. Oyanırsan, qaranlıqdır və yataqdan qalxmalısan. Eşitmək istədiyiniz son şey zəngli saatınızın gur səsidir. Mən Londonda yaşayıram və səhər oyanmaqda çətinlik çəkirəm. Təbii işığa oyanmağı da darıxıram.
Bu dərslikdə Günəşin çıxması üçün bir Zəngli Saat quracağıq. Oyanmaq istədiyiniz saatı və dəqiqəni təyin edə biləcəyiniz digər saatlar kimi bir zəngli saatdır, ancaq daha təbii bir şəkildə oyanmaq üçün günəşin doğması kimi bir müddət ərzində yataq otağınızı işıqlandırmaq üçün işığın əlavə faydası ilə.
Sunrise lampaları bazarda mövcuddur, lakin onlar bahalı ola bilər (Amazon-da sürətli axtarış 100 funt sterlinqlik məhsulları qaytarır), kövrək və olduqca kliniki görünüşlüdür. Bir şeyi daha ucuz və daha gözəl etmək niyyətindəyik.
Növbəti addımda bütün hissələr siyahıya alınacaq. Kodu Github repo gold-sunrise-saatımdan yükləyə bilərsiniz. Dava üçün bütün sxemləri və qurma fayllarını bu dərslikdən yükləmək mümkündür.
Gedək:)
Problemlərlə qarşılaşsanız və ya salam demək istəsəniz, mənə [email protected] xəttini yazın və ya məni Instagramda @celinechappert izləyin.
Addım 1: Komponentlərin toplanması
Başlamaq üçün günəşin doğuşunu simulyasiya etmək üçün giriş saatımız və çıxışımız kimi ultra parlaq bir LED istifadə edəcəyik.
Bir dövrə qurmaq üçün bizə lazım olacaq:
- saat. RTC DS3231 (5 funt) istifadə edəcəyik
- işığın parlaqlığını idarə etmək üçün MOSFET (£ 9)
- super parlaq LED (1 funt)
- LED -i gücləndirmək üçün 9V batareya (3 funt)
- asan montaj üçün çörək taxtası (3 funt)
- Arduino Uno (20 funt)
- bir düymə (isteğe bağlı - yalnız demo məqsədləri üçün)
Ümumi qiymət = 41 AZN
Evinizdə bir Arduino, bir çörək taxtası və 9V batareyanız varsa, bütün layihə sizə 15 funt sterlinqdən ucuz başa gələcək.
Akrilik qutu hazırlamaq üçün sizə lazım olacaq:
- 0.3 mm Perspex akril təbəqədən 2 təbəqə, günəş və qutu üçün rəng başına 1 təbəqə.
- lazer kəsiciyə giriş.
Məktəbimin atelyesinə daxil olduğum üçün şanslıyam, buna görə də bu xərclər çox hissəsi üçün ödənildi. Əlavə bir akril təbəqə aldım, çünki dizaynım günəş üçün narıncı bir rəng tələb edir, bu da 14 funt sterlinqə başa gəlir (Perspex bahalıdır!).
Addım 2: Dövrün montajı
Dövrəmin qara və ağ eskizinə (qarışıqlıq üçün üzr istəyirəm) və Arduinonun (Fritzing ilə işlənmiş) diaqramına müraciət edə bilərsiniz.
Əslində nəyə bağlı olanların bir dağılımı budur:
Saat:
(-) GND-yə qoşulur
NC 'Bağlanmadı' deməkdir və heç bir şeyə qoşulmur
C/SCL, Arduino üzərindəki A5 pininə bağlanır
D/SDA, Arduino üzərindəki A4 pininə qoşulur
(+) Arduino 5V -ə qoşulur
MOSFET
Gate pin, PWM olduğu üçün Arduino Uno'da ~ 9 pininə gedir
Drenaj pimi LED -in mənfi tərəfinə gedir
Mənbə pin Arduino üzərindəki GND -ə gedir
LED
Mənfi tərəfi MOSFET üzərindəki drenaj pininə bağlıdır
Müsbət tərəfi çörək lövhəsində 5V -a bağlıdır
9V batareya
Çörək lövhəsində (+)-(+), (-) ilə eyni.
Arduino Uno
Çörək taxtasında 5V-dən (+) və GND-ni (-) -ə bağlamağı unutmayın. Çörək taxtasının bir tərəfində (-) digər tərəfdə (-) bağlamağı unutmayın.
Bundan sonra DS3231 kitabxanasından istifadə edərək saatımızı quracağıq.
Addım 3: Saatı Qurmaq və Qurmaq
Bu saatı işlətmək üçün istifadə etdiyim kitabxananı Rinky-Dink Electronics-də tapa bilərsiniz (yuxarıdakı ekran görüntüləri). Linki vurun və DS3231 səhifəsində olduğunuzdan əmin olun. Zip faylını yükləyin, qeyd edin və Arduino /libraries qovluğuna yerləşdirin.
İndi saatı düzgün təyin etmək üçün Arduino'yu açın və Nümunələr/DS3231/Arduino/DS3231_Serial_Easy bölməsinə keçin.
Üç kod sətrini (ekran görüntüsündə narıncı rənglə göstərilmişdir) şərhdən çıxarın, hərbi formatdakı bu üç kod sətrində doğru vaxtı və vaxtı yoxlayın.
Yüklə düyməsini basın.
İndi bu üç sətri şərh edə və yenidən Yüklə düyməsini basa bilərsiniz.
Serial Monitorunuzu açın və vaxtınızın düzgün olub olmadığını yoxlayın.
Saatımız quruldu! Dövrümüz var, indi kodlamağa başlayaq. Yenə də repo Github -da mövcuddur.
Addım 4: Kodlaşdırma
Kodu yükləyin və DS3231 kitabxanasının düzgün qurulduğundan əmin olun.
Əvvəlcə parametrlərimizi təyin etmək istəyirik.
fadeTime, işığın 0 -dan maksimum parlaqlığa qədər neçə dəqiqə ərzində yox olacağıdır. setHour/setMin, oyanmaq istədiyimiz vaxta uyğundur (qeyd: bu hərbi formatı oxuyur, buna görə 24 saat vaxt lazımdır). Arduino -da pin 9 -u Çıxış olaraq təyin edirik.
Quraşdırmada (), SerialBegin nömrəsinin (burada 96000 baud) Serial Monitor nömrəsinə uyğun olduğundan əmin olun.
Döngədə (), if ifadəsi oyanmağın vaxtı olub olmadığını yoxlayır. Kod bir döngə üzərində işləyir və hər dəfə saatın qaytardığı saat və dəqiqə dəyərlərinin setHour/setMin dəyişənlərimizə uyğun olub olmadığını yoxlayır. Əgər belədirsə, if ifadəsi active () funksiyasını qaytarır.
Active () funksiyası iki hissədən ibarətdir. Əvvəlcə işığı tədricən söndürməyə başlayırıq: gecikmə funksiyaları LED -in fadeTime -in 'erkən' mərhələlərində çox tez parlamasının qarşısını almaq üçündür. Sonra for loop, işığın fadeTime -dan asılı olaraq daha parlaq və daha parlaq olması lazım olan sürəti idarə edir. Nəhayət, analogWrite () funksiyasında LED -ə 0 dəyər verərək işığı söndürürük.
Yuxarıdakı video, prototip akril qutulardan birində işləyən dövrəni göstərir.
Addım 5: Karton Prototipi (isteğe bağlı)
Bu layihədən əvvəl heç vaxt lazer kəsici ilə işləməmişəm. Bir karton prototip hazırlamaq, obyektin real məkanda nə qədər yaxşı göründüyünü (ölçüsü, görünüşü və s.) Sınayarkən maşınla tanış olmağıma imkan verdi. Yükləmək üçün dava planları.
Tövsiyə:
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: 10 addım (şəkillərlə)
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: Heç ağıllı bir saat istəmisinizmi? Əgər belədirsə, bu sizin üçün bir həlldir! Ağıllı Zəngli Saat hazırladım, bu veb saytına görə zəngli saatını dəyişə biləcəyiniz bir saatdır. Siqnal çalınanda bir səs (zil) olacaq və 2 işıq yanacaq
Arduino ilə Zəngli Zəngli Saat: 13 Addım (Şəkillərlə)
Arduino ilə Zəngli Zəngli Saat: Səni bilmirəm, amma sadə bir zəngli saat məni oyatmağa qadir deyil. Yuxudan oyanmaq üçün işığa, səsə və hətta yumşaq bir şilləyə ehtiyacım var. Zəngli saat məni cəlb etmir, buna görə də özümü oyatmağa layiq biri olmağa qərar verdim
LCD Ekran və Bluetooth Tətbiqi ilə Gündoğumu Zəngli Saat: 8 addım
LCD Ekran və Bluetooth Tətbiqi ilə Gündoğumu Zəngli Saat: Qış kədərli ola bilər. Oyanırsan, qaranlıqdır və yataqdan qalxmalısan. Eşitmək istədiyiniz son şey zəngli saatınızın əsəbi səsidir. Əgər mənim kimi səhər oyanmaqda çətinlik çəkirsinizsə, bu zəngli saat sizə lazım olan şeydir
LED Gündoğumu Zəngli Saat: 5 Adım (Şəkillərlə birlikdə)
LED Gündoğumu Zəngli Saat: Səhər qalxmaqda çətinlik çəkirsiniz? Siqnalın sərt pirsinq səsinə nifrət edirsiniz? Daha az pula və vaxta görə satın ala biləcəyiniz bir şeyi təkbaşına etmək istərdinizmi? Sonra bu LED Gündoğumu Zəngli Saatına baxın
Özelleştirilebilir Mahnı Siqnallı LED Gündoğumu Zəngli Saat: 7 Adım (Şəkillərlə)
LED Gündoğumu Zəngli Saat Özelleştirilebilir Mahnı Alarmı ilə: Mənim Motivasiyam Bu qışda sevgilim səhər yuxudan oyanmaqda çox çətinlik çəkdi və SAD (Mövsümi Affektiv Bozukluk) xəstəliyindən əziyyət çəkirdi. Günəş gəlmədiyi üçün qışda oyanmağın nə qədər çətin olduğunu da görürəm