Mündəricat:

Parlaq İdarə Edilə bilən Gündoğumu Lambası: 6 addım
Parlaq İdarə Edilə bilən Gündoğumu Lambası: 6 addım

Video: Parlaq İdarə Edilə bilən Gündoğumu Lambası: 6 addım

Video: Parlaq İdarə Edilə bilən Gündoğumu Lambası: 6 addım
Video: JOALI Maldiv adaları, Ultra-Lüks Island Resort, $3,700/gecə (4K-da tam tur) 2024, Iyul
Anonim
Parlaq Nəzarət Edilə bilən Günəş İşığı
Parlaq Nəzarət Edilə bilən Günəş İşığı
Parlaq Nəzarət Edilə bilən Günəş İşığı
Parlaq Nəzarət Edilə bilən Günəş İşığı

İş üçün oyanmaq üçün lazım olan adi vaxt olan 7 -də oyandınızmı və özünüzü qaranlıqda gördünüzmü? Qış dəhşətli bir vaxtdır, elə deyilmi? Gecə yarısı yuxudan oyanmalısan (əks halda niyə bu qədər qaranlıqdır?), Özünü yataqdan qoparıb yarı şüurlu bədənini duşa göndərməlisən.

Bu layihə, problemlərdən birini - səhər qaranlığını həll etməyi hədəfləyir.

Ətrafında çoxlu ucuz günəş çıxan lampalar var, amma hamısı aşağı gücə və solğunluğa malikdir. Daha çox yuxuya getməyiniz lazım olan bir gecə lampasına bənzəyirlər. İstədiyim kimi deyil.

Eyni zamanda, parlaq işığı yandırmaq sizi dərhal oyandıracaq, ancaq kifayət qədər yumşaq deyil. İstədiyim hər iki yanaşmanın birləşməsidir - aşağı parlaqlıqla işıqlandırın, yavaş -yavaş tam sürətə çatın, sonra əsl bir həyəcan sönür və artıq o qədər yuxulu deyilsiniz. Ona bir az da quş mahnısı əlavə edək və hər səhər cənnətdə oyanırsan!

Addım 1: Lamp Dizisi

Lamp Dizisi
Lamp Dizisi
Lamp Dizisi
Lamp Dizisi

Əvvəlcə lampanın özünə ehtiyacımız var. Ağ divarları və tavanı olan olduqca geniş bir otağım var, buna görə də hər biri 6W, 40W -dan çox təmiz gücə sahib 7 GU10 LED lampa getdim! Artıq gündüz olduğunu hiss etmək üçün bu kifayətdir. Həm də gün ərzində adi bir otaq işıqlandırması kimi istifadə edilə bilər.

Onu necə yığacağınızın, hansı prizlərlə hansı lampaları istifadə etdiyinizin əhəmiyyəti yoxdur. Önəmli olan hər şey - sönən lampalar olmalıdır!

Mənim vəziyyətimdə, hamısı birlikdə bağlanmış 7 GU10 prizli bir taxta taxtam var. Daha sonra plastik bir qutuya qoyacağam.

Addım 2: Qaranlıq nəzəriyyəsi

Qaranlıq nəzəriyyəsi
Qaranlıq nəzəriyyəsi

Teoriyada nəzəriyyə ilə praktika arasında heç bir fərq yoxdur. Praktikada var.

ESP32/Arduino -dan bir dimmerə nəzarət etmək təsəvvür etdiyim qədər sadə görünmədi. RobotDyn AC Light Dimmer modullarından birini aldım. İstehsalçı bunun üçün bir kitabxana təklif edir. ESP32-də işləmir (və uyğunlaşmaq həqiqətən çətindir, çünki bir çox aşağı səviyyəli ATMega xüsusi reyestr girişindən istifadə edir), Arduino Nano üzərində işləyən, aşağı orta parlaqlıqda dəhşətli bir titrəmə verir. Bu səbəbdən hər şeyin necə işlədiyini araşdırmaq və öz yolumu qurmaq üçün bir az vaxt sərf etdim.

Bir az nəzəriyyə

Seçilmiş dimmer modulu çox məşhur bir TRIAC: BTA16 istifadə edir. Bununla bağlı çoxlu məqalələr var. Burada ümumiləşdirməyə çalışacağam.

TRIAC, girişə müsbət və ya mənfi gərginliyi ötürə bilən və ya blok edə bilən bir moduldur. Varsayılan olaraq hər şeyi bloklayır. Açmaq üçün, 100 nəfər üçün qapı girişində yüksək bir siqnal verməliyik. Sonra cərəyan sıfıra düşənə qədər açıq qalacaq ki, bu da giriş gərginliyi işarəni dəyişəndə sıfır gərginliyi keçər. Sonrakı dövrdə başqa 100 nəbz etməliyik və s. Nəbzin nə vaxt veriləcəyini seçərək parlaqlığı idarə edirik: bunu ən başında edin və 100% enerji ötürülməsinə yaxın olacaq. Daha sonra et, qaralacaq. Yuxarıdakı diaqrama baxın, izah edin.

Dövrün eyni nöqtəsində nəbzlər yaratmaq üçün onun nə vaxt başladığını dəqiq bilmək lazımdır. Bu səbəbdən dimmer modulunda Zero-Cross detektoru quraşdırılmışdır. Hər dəfə gərginlik sıfırdan keçəndə bir siqnal (Arduinoda aparat kəsilməsi olaraq tutacağıq) qaldırır.

Addım 3: Qarartma Təcrübəsi

Karartma Təcrübəsi
Karartma Təcrübəsi

Bəli, lampanızın qaranlığı yoxdursa və bütün 40W gücünü yuxulu gözlərinizə qoysanız, belə oyanardınız.

Ümumi məsələlər

Həll etməli olduğumuz bir çox problem var.

Titrəmə.

Qapı çıxışını açmaq və söndürmək üçün mikrokontrolörün vaxtı həqiqətən dəqiq olmalıdır. RobotDyn kitabxanasının təklif etdiyi kimi, hər 100usda bir taymer fasiləsi var və yalnız taymerdəki qapı səviyyəsini dəyişir. Bu, optimal dəyərdən +/- 50 mikrosaniyəyə qədər azalma deməkdir. Yüksək parlaqlıqda yaxşı nəticə verir, ancaq aşağı parlaqlıqda çox titrəyir. Mikro nəzarətçi çox şey edərsə, vaxt dəqiqliyini azaldır, buna görə ideal olaraq dimmer üçün xüsusi bir mikro nəzarətçi istifadə edilməlidir.

Minimal parlaqlıq. LED-lərdə kifayət qədər gücü olmayan işdən imtina edəcək bir daxili güc çeviricisi var. Lampalarım 10-11%-dən başlayaraq yaxşı işləyirdi.

Bu dəyərə baxmayaraq, bəzi lampalarım başlanğıcda yanmaqdan imtina etdi. Daha sonra parlaqlığı artırsalar belə, qaranlıq qalırlar. Bu səbəbdən, OFF vəziyyətindən bir qədər müsbət parlaqlığa keçdiyimiz zaman, lampalara tam güc verdiyimiz zaman 5 dövrün bir istiləşmə dövrü ilə başlayırıq. Sonra istədiyiniz parlaqlığa davam edirik. Demək olar ki, hiss olunmur, amma həqiqətən kömək edir.

Şəbəkə tezliyi 50/60 Hz. Növbəti sıfırdan əvvəl nə qədər gözləmək lazım olduğunu bilməlisiniz. Bu olduqca sadədir - yalnız son iki fasilə arasındakı vaxt fərqinə baxırıq.

Tədricən parlaqlıq dəyişikliyi. ESP32 olduqca yavaşdır, əhəmiyyətsiz bir HTTP və ya hətta WebSocket sorğusunun işlənməsi 0,5 saniyə çəkir, buna görə də parlaqlığın parlaq keçidini gözləməyin, bir şəkildə dimmer səviyyəsində tətbiq olunmalıdır. Məhz bu səbəbdən serial portundan yeni bir parlaqlıq alanda hədəfi təyin edir və sonra zamanla yavaş -yavaş ona yaxınlaşır.

Həll

İşdə dimmer üçün sadə Arduino kodum. Serial girişdən bir komanda (yeni parlaqlıq ilə bir bayt) gözləyir, Zero-Cross kəsilmələrini idarə edir, yuxarıdakı bütün problemləri həll edərək TRIAC-ı idarə edir.

Addım 4: Lampa Nəzarətçisi (ESP32)

Lampa Nəzarətçisi (ESP32)
Lampa Nəzarətçisi (ESP32)
Lampa Nəzarətçisi (ESP32)
Lampa Nəzarətçisi (ESP32)

Məndə olan bütün komponentlərin əlaqə sxemi budur. ESP32 lövhəsi istifadə etdiyimdən (Heltec) çox fərqlidir, buna görə seçilmiş sancaqlar bir az qəribə görünür, amma yenə də yaxşı işləməlidir. Layihənizdə fərqli sancaqlar istifadə etməkdən çekinmeyin.

İşdə hər şeyi idarə edən kod. Olduqca düzdür.

Əsas xüsusiyyətlər

Lampa WiFi -yə qoşulur, 81 -ci portda WebSocket serverini işə salır, əmrləri gözləyir.

Hələlik cəmi iki əmr dəstəklənir: "set_brightness" və "update_settings", hansı ki … olduqca özünü təsvir edir.

NTP-dən vaxt əldə etmək. Hər şeyi çox çətinləşdirmək və sxemə real vaxt saatı əlavə etmək istəmirəm. İnternetə çıxışımız var, yəni bəzi NTP serverlərindən real vaxt ala bilərik və sonra sistem taymerlərindən istifadə edərək cari vaxtı izləyə bilərik.

Gündoğumu Siqnalı Bir siqnalizasiya qura bilərsiniz. Əslində nə edir: minimal parlaqlıqla başlayır və tədricən 10 dəqiqədən sonra tam parlaqlığa keçir. Sonra bir -iki saat qalır. Sonra tədricən 60 saniyə ərzində sönür.

Yuxarıdakı bütün parametrlər konfiqurasiya edilə bilər.

Quşlar oxuyur. DFPlayer mini musiqi çalmaq üçün istifadə olunur. Bunun üçün bir çox bələdçi var, amma əslində yalnız 0001.mp3 adlı bir fayl ilə FAT32 formatında bir MicroSD kartı bağlamanız kifayətdir. Bu fayl istədiyiniz hər şeyə sahib ola bilər, mənim vəziyyətimdə 15 dəqiqəlik quşların mahnı oxuması (döngə olacaq) və səhərimi heyrətləndirir. Gücdə böyük bir kondansatörün olduğunu və aralarındakı serial xəttində 1 kOhm rezistor olduğunu unutmayın. ESP32 və DFplayer - isteğe bağlıdır, lakin səs -küyü azaltmağa kömək edir.

Bütün parametrlər EEPROM -da yazılır və başlanğıcda yüklənir. Lampanın ən azı bir siqnalizasiya funksiyası olan bir nəzarətçi bağlanmadan istifadə edilməsini mümkün edir.

OLED ekrana bəzi məlumatların verilməsi. Heltec ESP32-in daxili SSD1306 128X64 I2C ekranı var. Bütün zəruri məlumatlar üzərində göstərilir. Bilirəm, qutu çirkin görünür, mən sadəcə 3D materialları çap etmişəm və delikləri və pəncərələri matkapla kəsmişəm. Tez, çirkli, amma işləyir!

Addım 5: İdarəetmə Paneli

İdarə paneli
İdarə paneli
İdarə paneli
İdarə paneli

Layihənin əsası budur. Orijinal 7 ekranı olan bir Raspberry Pi, bir qədər Kivy ön tərəfi ilə işləyir.

İşdə tam mənbə kodu.

Xüsusiyyətlər

Python -da yazılıb. Kivy -ni sevirəm, istifadəçi interfeysləri üçün bir Python çərçivəsidir. Çox sadə, eyni zamanda çevik və səmərəli (yüksək performans və hardware sürətlənməsi üçün içərisində çoxlu C kodu istifadə edir).

Hava. Çöldəki mövcud temperatur və təzyiqi göstərin. Uzaqdan bir sensoru bağlasanız - daxili temperatur da eyni zamanda aşağıdakı 12 saatlıq hava proqnozunu soruşur və təhlil edir və yağış ehtimalına dair bir məsləhət verir.

SunriseLamp nəzarətçisi. Başqa bir panel həyəcan haqqında bəzi əsas məlumatları göstərir və parlaqlığı tənzimləməyə imkan verir. Ayarlara girsəniz, lampanın hər hansı bir parametrini, o cümlədən həyəcan cədvəli, maksimum səs həcmi və s.

Bir müddət hərəkətsizlikdən sonra ekranda Həyat Oyunu göstərilir.

Əvvəllər daha çox şey var idi, amma digər şeylər yararsız görünürdü.

Quraşdırma

Hər şeyi Raspbian -da əl ilə qurdum və indi deyə bilərəm: səhvlərimi təkrarlama. KivyPie istifadə edin, hər şey əvvəlcədən quraşdırılmışdır.

Bundan əlavə, kod anbarındakı quraşdırma təlimatına əməl edin.

Addım 6: Zövq alın

Şəxsən cihazdan məmnunam. Gündüz evdə əsas işıqlandırma olaraq istifadə edirəm və səhər oyanmağımı təmin edir, heyrətamizdir.

Təlimatların çox detallı və izahlı olmadığını bilirəm. Kimsə eyni şeyi edərsə və problemləri varsa - kömək etməkdən məmnunam!

Tövsiyə: