Mündəricat:
- Addım 1: Hər şeyi sökün
- Addım 2: Rəqəmsal Ayarlar üçün Düymələr
- Addım 3: Motor üçün kondansatör
- Addım 4: Saat üçün Yeni Üz
- Addım 5: Köhnə Cib Telefonundan Rəqəmsal Ekran
- Addım 6: Dövrləri birləşdirmək
- Addım 7: Asan Bağlantılar üçün Bağlantı Kartı
- Addım 8: Gücün qurulması
- Addım 9: Firmware -ni doldurmaq və yeniləmək üçün mikro USB
- Addım 10: Son Quraşdırma
- Addım 11: Kod
- Addım 12: Addım-addım Video
- Addım 13: Son sözlər
Video: Köhnə Alarm və Arduino istifadə edərək hava proqnozu saatı: 13 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Ətrafımda uzanan qırıq bir zəngli saatım vardı və onu saat və hava proqnoz stansiyasına çevirmək fikri gəldi.
Bu layihə üçün sizə lazım olacaq:
- Köhnə dairəvi zəngli saat
- Arduino Nano
- BME280 sensor modulu (temperatur, rütubət, təzyiq)
- Nokia 5110 -dan LCD ekran modulu
- DS1307 RTC saatı
- TP4056 Lityum batareya şarj cihazı
- Köhnə Li-ion batareyası cib telefonundan xilas edildi
- Kiçik 3.7V -dən 5V -a qədər gücləndirici modul
- İşıqdan Rezistor (LDR - işıq sayğacı)
- Buzzer (köhnə kompüterdən xilas olan istifadə olunur)
- 3 düymə
- Bir dəstə rezistor (2x10k, 270 ohm) və bir tranzistor (2N2222A və ya bənzəri)
- Bəzi geniş büzülmə borusu
- Ön plaka bəzəyi kimi istifadə etmək üçün PCB hurda
- Micro-USB uzatma kabeli (qadın və kişi tərəfləri Micro-USB-dir)
- 2x8cm prototip lövhəsi və bəzi tellər
Addım 1: Hər şeyi sökün
Əvvəlcə köhnə saatı sökdüm. Zənglər, motor, pozulmuş saat mexanizmi …
Addım 2: Rəqəmsal Ayarlar üçün Düymələr
Yeni saat içərisində mini kompüterlə tam rəqəmsal olacağından yan tərəfə 3 sadə gözəl görünüşlü düymə əlavə etdim.
Alüminiumdan bir parça istifadə edərək etiket yaratmaq üçün örtüyü kəsdim. Etiketlər üçün hərflər qara zolaqlar və qara işarələrdən istifadə etməklə yaradılmışdır.
Addım 3: Motor üçün kondansatör
Mühərriklə həyəcanı gücləndirmək üçün köhnə zəngləri saxlayacağam. Köhnə qırıq saat mexanizmində 104 etiketli bir keramika kondansatörü var idi. Mən onu lövhədən çıxarıb birbaşa mühərrikə lehimləmişəm - bu, həyəcan zamanı mühərriki işə salanda elektrik sıçrayışlarının qarşısını almağa kömək edəcək. Mühərrikin tranzistor vasitəsilə idarə ediləcəyini də qeyd etmək vacibdir, lakin bu barədə daha sonra.
Addım 4: Saat üçün Yeni Üz
Saat üçün yeni bir üz düzəltmək qərarına gəldiyim üçün - zibil qutusundan bir dövrə lövhəsi götürdüm və bütün komponentləri tez bir zamanda çıxarmaq üçün inşaatçı tüfəngdən istifadə etdim. Ortadakı çuxur yeni saatın rəqəmsal ekranı üçün hazırlanmışdır.
Addım 5: Köhnə Cib Telefonundan Rəqəmsal Ekran
Bu layihə üçün köhnə Nokia 5110 cib telefonundan LCD ekran istifadə etmək qərarına gəldim. Bu ekranlar bir modul olaraq çox satılır, çox az güc çəkirlər və Arduino üçün yaxşı kitabxanalar var. 5110 ekranlı yeni bir modul alırsınızsa - bütün yeni modullar xilas edilmiş 5110, 3110 və 3210 telefonlarından yaradıldığı üçün planeti xilas edirsiniz!
Addım 6: Dövrləri birləşdirmək
Bu saatı idarə etmək üçün Arduino lövhəsindən istifadə etməyi planlaşdırdığımı əvvəlcədən təxmin etmiş ola bilərsiniz. Layihə, hətta Arduino pərəstişkarları üçün də asanlıqla təkrarlana bilər, çünki öz elektron lövhələrimi yaratmamışam. Arduino Nano lövhəsi, modulları - BME280 temperatur, təzyiq və rütubət sensoru, DS1307 RTC saatı, TP4056 Lityum batareya şarj cihazı, kiçik 3.7v -5v gücləndirici modulu, İşıqdan Asılı Rezistor (LDR - işıq sayğacı) və səs siqnalı (köhnə kompüterdən götürülmüşdür).
Eskizlərə də baxın - bütün əlaqələri göstərirlər. Düşünürəm ki, hər şeyi oxumaq və başa düşmək çox asandır, amma suallarınız varsa aşağıdakı şərhlərdə soruşun.
Quraşdırma haqqında bir neçə qeyd:
- Motor birbaşa batareyadan tranzistor vasitəsilə bağlanır. Arduino, tranzistoru rezistor və PWM pin D5 vasitəsilə idarə edir.
- D7-12 pinləri LCD konnektoru üçün istifadə olunur. Torpaq və VCC qovşaq lövhəsindəki dəmir yolu ilə əlaqələndirilir.
- Saat üzünə LDR quraşdırılmış və rezistor + 3 gedən tel saatın arxa tərəfində lehimlənmişdir.
- Düymə bağlantısı üçün Arduino içərisində daxili PULLUP funksiyasından istifadə etdim. Menyu düyməsi kəsilməyə bağlıdır və yalnız sonra başa düşdüm ki, fasilə üçün daxili PULLUP da istifadə edə bilərsiniz. Menyu düyməsini kəsmək kodun düymələrin vəziyyətini hər zaman taramaması üçün tələb olunur.
- Saat batareyanın vəziyyətini izləyəcək və göstərəcək, buna görə batareya A0 pininə birbaşa bağlıdır. Batareya gərginliyi heç vaxt 4.2V -dən yüksək deyil, buna görə batareyanı birbaşa Arduino analog pininə bağlamaq təhlükəsizdir.
- Buzzer, PWM pin D6 ilə birbaşa bağlıdır. Bu yaxşı bir təcrübə olmasa da, Arduino Nano qeyd edildiyindən daha yüksək spesifikasiyanı idarə edə bildiyi üçün və zil fasiləsiz işləməyəcəyindən də qaçdım. Eyni quruluş ESP lövhələrindəki sancaqları asanlıqla yandıracaq, buna görə də bu hallarda tranzistor nəzarətindən istifadə etməyi məsləhət görürəm.
- Saatın artıq bir açarı var idi, buna görə də istifadə etməyə qərar verdim. Arxada təbii görünür.
Addım 7: Asan Bağlantılar üçün Bağlantı Kartı
Bütün modullar pozitiv və torpaq əlaqələri tələb edir, buna görə 2x8 sm ölçüdə prototip lövhəsi və 5V və Zəmin raylarını lehimləməyə qərar verdim. I2C interfeysindən istifadə edən bir neçə modulu olduğu üçün orada da kiçik bir I2C dəmir yolu düzəltdim.
Digər tərəfdən, standart pinləri lehimlədim ki, lazım olduqda modulları bağlaya və ayırım.
Əlavə komponentlərdən bəziləri də orada mühərrikin idarə edilməsi üçün tranzistor və rezistor və Interrupt istifadə edən Menyu düyməsi üçün bir rezistor kimi lehimlənmişdir. Əvvəlki hissədə sxemləri göstərdim.
btw İlk şəkildəki saat üzünə artıq quraşdırılmış LDR sensorunu görə bilərsinizmi?
Addım 8: Gücün qurulması
Bu saatı gücləndirmək üçün cib telefonumdan köhnə Lityum-ion batareyadan istifadə etdim. Adətən dəyişdirilən cib telefonu batareyaları hələ də yaxşı tutuma malikdir (yeni olanda ən azı yarısı). Onların üstünlüyü, daxili boşaltma qoruma sxeminin olmasıdır və çox incədirlər, buna görə də kiçik kosmik ssenarilərdə istifadə oluna bilər.
Batareyanı bağlamaq üçün telləri batareyanın + və - pinlərinə lehimləmək kifayətdir. Endişelenmeyin, hüceyrəyə zərər verməyəcəksiniz, çünki nəzarətçi və sancaqlar ilə hüceyrənin kimyəvi maddələri arasında bir az boş yer var.
Bu şəkildə batareyanı, həmçinin TP4056 şarj tənzimləyicisini, 5V gücləndiricini birlikdə və batareyaya qoşulduğunu görə bilərsiniz. Hər şeyi təcrid olunmuş və yığcam etmək üçün büzülmə borusundan istifadə etdim.
Addım 9: Firmware -ni doldurmaq və yeniləmək üçün mikro USB
Hər şeyi lehimlədikdən sonra səs siqnalını və arxa paneldəki temp/təzyiq/rütubət sensorunu yapışdırdım. Hamısı köhnə saat düymələrindən olan mövcud yuvalara gözəl bir şəkildə quraşdırılmışdır.
İndi mikro USB portunu arxaya quraşdırmağın vaxtı gəldi. Nano Mini USB istifadə edirsə niyə Micro USB? Sadəcə, ev şəraitində əksər USB kabelləri cib telefonlarından alınır və saatın da bunu qəbul etməsi rahat olardı.
Həm şarj etmək, həm də saat və hava stansiyası funksiyalarını yeniləmək üçün istifadə etmək istədiyim üçün - USB kabelini soydum, elektrik tellərini TP4056 şarj cihazı və Data+/Məlumat telləri vasitəsilə birbaşa Arduino Nanonun USB yuvasına yönləndirdim. Bunu əvvəlki hissələrdə göstərdiyim sxemdə görə bilərsiniz.
Addım 10: Son Quraşdırma
İndi hər şeyi orijinal saata yığmağın vaxtı gəldi. Komponentləri və modulları təcrid etmək üçün büzülmə borusundan istifadə etdim. Hətta Arduino büzüşmə borusuna bükülmüşdü.
Hər bir komponentin harada yerləşdirildiyini görmək üçün birinci fotoşəkilin üzərinə gedin.
Addım 11: Kod
Gördüyünüz kimi, saat içəridə tam doludur. Əlbəttə ki, bəzi proqramlaşdırma bacarıqları olduğunu nəzərə alaraq, əlimdəki köhnə saatdan daha mürəkkəb bir şey yaratmağa imkan verdi. İlkin kodu yazdım, amma dostumdan içəri girib mənə kömək etməsini istədim.
İndiyə qədər, saatın özündən başqa, bu layihənin artıq dəstəklədiyi funksiyalar bunlardır:
- Saat və tarix göstəricisi (eyni ekranda həyəcan siqnalının vaxtı və aktivləşdirilməsi)
- Ekran qaranlıq şəraitdə və ya hərəkət aşkar edildikdə yanır (işığın dəyişməsinə əsaslanaraq)
- Hava proqnozu (Günəşli, Buludlu, Yağışlı)
- Temperatur, təzyiq və rütubətin göstərilməsi (rütubət üçün çox quru olub olmadığını göstərəcək)
- Ayarlar üçün menyu: həyəcan, vaxtın dəyişdirilməsi, tarixin göstərilməsini aktivləşdirmək/söndürmək, hava dəyişikliyinin səs bildirişlərini aktiv etmək/söndürmək və imperiya və metrik vahidlər arasında keçid
- Siqnal parametrləri - yandırmaq/söndürmək, vaxtı təyin etmək, melodiya və/və ya bildirişlər üçün zəngləri təyin etmək
Ən son kod:
Kod gələcəkdə yeni xüsusiyyətlərlə yenilənəcək, buna görə də firmware yeniləmələrini yenidən yoxlayın:-)
Arduino dünyasında yeni birisinizsə, bunları etməyi məsləhət görürəm:
- Kartınız üçün USB sürücüsü quraşdırın (məsələn, CH340)
- Arduino IDE quraşdırın
- Bu layihədə istifadə olunan kitabxanaları quraşdırın
- GitHub -dan yükləyin və Micro USB kabelindən istifadə edərək ən son Layihə kodunu saata yükləyin (cib telefonunuzdan istifadə edə bilərsiniz)
Proqnozlaşdırma alqoritmi belədir:
Arduino Nano, hər 12 dəqiqədə BME280 sensorundan yeni məlumatlar alır. Ölçmə dövrü 3 saatdır. 3 saatdan sonra təzyiq monitorinqi diapazonu (3 saat ərzində maksimum və minimum dəyər) cari aralıq və cari təzyiq dəyəri zamanı orta dəyərlərə nisbətən dəyişir. Hər saat təzyiqin cari təzyiq dəyəri ilə dəyişmə istiqaməti saxlanılır. kPa vahidləri proqnoz hesablanması üçün istifadə olunur.
Nanonun yaddaş məhdudiyyətləri səbəbindən proqnozlaşdırma alqoritmi sadələşdirilməli idi. Sadələşdirmələrə baxmayaraq, proqnozlar indi daha bədbin olsa da, önümüzdəki 12-24 saat ərzində yağıntıları proqnozlaşdıra bilir - standart dəyər "Buludlu Hava" dır.
"Günəşli Hava" - təzyiqin cari dəyəri normadan 7 bal yüksəkdir, təzyiq düşmür və son 3 saat ərzində minimum və maksimum dəyərlər arasındakı fərq 2 baldan çox deyil.
Mümkün yağış "Yağışlı Hava" - cari təzyiq normadan 15 bal aşağıdır və minimum və maksimum dəyərlər arasındakı fərq 2 baldan çoxdur OR Təzyiq düşür və cari dəyər ilə norm arasındakı fərq 3 - 30 baldır.
Proqnozlaşdırmanın keyfiyyətini artırmaq üçün əsas kod faylındakı "yüksəkliyinizi" dəyişdirmək tövsiyə olunur. Yüksəkliyinizi burada əldə edə bilərsiniz, məsələn:
Addım 12: Addım-addım Video
Yuxarıda etdiyimi izləmək çətindirsə, burada göstərilən bütün addımları əks etdirən bir video versiyası da var.
Addım 13: Son sözlər
Ümumiyyətlə, mənim fikrimcə, bu layihənin çətinlik səviyyəsi yüksək deyil və hər kəs edə bilər. Köhnə bir saatınız yoxdursa, yerli bir bazarda ucuz birini tapa bilərsiniz.
Bütün komponentlər aşağı qiymətə malikdir və Sparkfun/Aliexpress/eBay/Amazon -da mövcuddur.
Ümid edirəm ki, bu dərslik sizin üçün maraqlı idi və Saatdakı ilk Təlimatçılığa dəstək verə bilsəniz minnətdar olardıq.
Saat Yarışmasında 2 -ci yeri tutdu
Tövsiyə:
Art Deco Hava Proqnozu Ekranı: 9 Addım (Şəkillərlə birlikdə)
Art Deco Hava Proqnozu Ekranı: Salam Dostlar, bu Təlimatlandırmada bu Hava Proqnozu Ekranını qurmaq üçün isti görəcəyik. Hava proqnozunu göstərmək üçün 1.8 düymlük rəngli TFT ekranı ilə birlikdə Wemos D1 mini lövhəsindən istifadə edir. Mən də bir korpus hazırladım və 3d çap etdim
Hava proqnozu mayak: 4 addım (şəkillərlə)
Hava Proqnozu Beacon: Bu layihədə, növbəti günün hava proqnozunu əldə etmək üçün 3D çap, LED şeritləri, enerji təchizatı və wifi bağlantısı olan bir Arduino lövhəsi istifadə edərək hazırladığım yerli bir hava mayakından bir model təqdim edirəm. Tədbirin əsas məqsədi
İnternet Saatı: NTP Protokolu ilə ESP8266 NodeMCU istifadə edərək OLED ilə Tarixi və Saatı Göstərin: 6 Addım
İnternet Saatı: NTP Protokolu ilə ESP8266 NodeMCU istifadə edərək OLED ilə Tarixi və Saatı Göstərin: Salam uşaqlar, bu təlimatlarda internetdən vaxt alacaq bir internet saatı quracağıq, bu layihənin işləməsi üçün heç bir RTC lazım olmayacaq, yalnız işləyən internet bağlantısı Və bu layihə üçün bir esp8266 ehtiyacınız olacaq
Hava proqnozu buludu: 11 addım (şəkillərlə)
Hava Proqnozu Buludu: Bu layihə, Raspberry Pi Zero W. istifadə edərək hava buludu yaradır, Yahoo Weather API -yə qoşulur və növbəti gün üçün proqnozdan asılı olaraq rəngləri dəyişir. Damında dəyişən alov olan Viskonsin Qaz Binasından ilham aldım
Raspberry Pi və Weewx istifadə edərək Acurite 5 -də 1 Hava İstasyonu (digər Hava İstasyonları Uyğundur): 5 Addım (Şəkillərlə)
Raspberry Pi və Weewx istifadə edərək Acurite 5 -də 1 Hava İstasyonu (digər Hava İstasyonları Uyğundur): Acurite 5 -i 1 hava stansiyasından alanda evdən kənarda olduğum zaman havanı yoxlamaq istəyirdim. Evə gəlib qurduqda ya ekranı kompüterə bağlamalı olduğumu, ya da ağıllı mərkəzini almalı olduğumu başa düşdüm