Mündəricat:

DAHA ÇOX BAHAR YOXDUR: 5 addım
DAHA ÇOX BAHAR YOXDUR: 5 addım

Video: DAHA ÇOX BAHAR YOXDUR: 5 addım

Video: DAHA ÇOX BAHAR YOXDUR: 5 addım
Video: Röya - Bahar 2024, Noyabr
Anonim
İLƏ BAXIŞ YAZ
İLƏ BAXIŞ YAZ
İLƏ BAXIŞ YAZ
İLƏ BAXIŞ YAZ

Alternativ Başlıq: IP Saat Saatı 3 -cü hissə

İstəsəniz, bunu Saat Yarışmasına qatıram.

İrəli Bahar etməkdən yoruldunuzmu?

Geri dönməkdən yoruldunuzmu?

Yaxşı, mən. Bunu düzəltmiş bu köhnə zəngli saatım var (bir müddət) (Şəkilə baxın) Avtomatik olaraq Yaz Saatına uyğunlaşacaq və (zənnimcə) enerjinizi itirməyiniz üçün batareya ehtiyatı var. Təəssüf ki, bir neçə il əvvəl ABŞ zaman dəyişdirmək üçün günləri dəyişdirmək qərarına gəldi. Beləliklə, indi bu saatı ildə dörd dəfə əl ilə dəyişdirmək lazımdır! Bunu yalnız ehtiyat olaraq istifadə edirəm.

Beləliklə, bu Lazy Old Geek (LOG) mükəmməl bir saat istədi. Hər kəs fərqlidir və zaman dəyişir (Ha! Ha!) Və ideallar dəyişir. Budur mənim ideal yataq saatım.

Həmişə gecə görünür. CAVEAT: Gecələr yanıb -sönən saniyələr yoxdur, bu çox diqqəti yayındırır.

Avtomatik DST (Yaz Saatı). İldə iki dəfə saat vaxtını dəyişməkdən nifrət edirəm.

Həftənin gününü göstərir. Qoca olduğumdan və xatırlamadığımdan.

Elə bilirəm ki, səhər saatlarında reklamda 30 saniyə qarqara deyilir, buna görə saniyələri göstərən saatı bəyənirəm.

Mavi işıq yoxdur. Mavi işığın sizin üçün pis olduğunu hamımız bilirik. Həmişə doğru deyil, buna baxın:

www.instructables.com/id/Blue-Light-Proje…

Tamam, bu olduqca sadədir. Bir çox saat gecə görünür və bir çoxu mavi deyil. Bəziləri DST -ni tənzimləyən 'atom' saatlardır. Əslində bəzi "atom" saatlarımda DST dəyişikliyi ilə məşğul olmalıyam.

İndi saniyə vəziyyəti daha konkretdir. Əslində bu Təlimat kitabında bunu etmək üçün özümü tərtib etdim (baxmayaraq ki, bunu çox yaxşı izah etmədiyimi fərq etdim):

www.instructables.com/id/IP-Time-Clock-Par…

Bu saat təxminən dörd il davam etdi, bir neçə ay əvvəl işləməyini dayandırana qədər nisbətən baxımsız idi.

Addım 1: Bərkitmə, İlk addım

Düzəltmə, ilk addım
Düzəltmə, ilk addım
Düzəltmə, ilk addım
Düzəltmə, ilk addım
Düzəltmə, ilk addım
Düzəltmə, ilk addım

Ölümün mavi ekranı, IP Saatı (əslində qara).

Technobabble:

IP saatının qısa təsviri. ESP-03 mikro nəzarətçisindən istifadə edir, WiFi ilə internetə qoşulur. ESP-03-də 2 mm-lik iki kişi başlıq zolağını lehimlədim, beləliklə PCB-də bir yuvaya bağlanacaq.

İki yeddi seqmentdən ibarət 3 rəqəmli ekrandan istifadə edir:

Bunların ümumi katot və ya anod olduğunu xatırlamıram.

Həftənin günlərində displeyləri və fərdi LEDləri idarə etmək üçün Max7219.

Daha ətraflı məlumat üçün zəhmət olmasa IP Saatımın 2 -ci hissəsinə baxın.

Yaxşı, sınadığım ilk şey ESP-03-ü (mikrokontrolör) yenidən proqramlaşdırmaq idi, buna görə Təlimatçılığa baxdım və cəhd etdim, amma proqramlaşdırmama icazə vermədi.

İRLEVANSIZ TARİX: Tamam, mən qoca bir adamam, buna görə ağlım gəzir. Instructables.com saytına girməyimin səbəblərindən biri də Arduinoda əla Təlimatların olması idi. Arduinos -a girməyimin və onlardan necə istifadə edəcəyimi öyrənməyimin əsas səbəblərindən biri idi. Təlimatlandırıla bilən yazarlar müxtəlif səviyyələrdə və bacarıqlarda olurlar, amma bəzən başa düşə biləcəyim səviyyədə olanları tapa bilərəm. İllər boyu mənə kömək etdiyiniz üçün Instructables -a təşəkkür edirəm.

Lütfü qaytarmaq üçün başqalarına kömək edəcəyinə ümid etdiyim Təlimatlar yazıram.

Instructables yazmağımın ikinci səbəbi, layihələri necə etdiyimi xatırlamağımdır. Təlimat yazarkən yazdığımı etmək üçün bütün detalları verməyə çalışıram. Mənə elə gəlir ki, həmişə yaxşı iş görmürəm.

Yaxşı, IP Saatı bir arxa brülörə qoydum.

Mənim nəzəriyyəm budur ki, daha çox mavi işıq mənə daha çox enerji verdi (yuxarıda Instructable layihəsinə baxın) və bu problemi yenidən nəzərdən keçirməyə diqqət yetirin. Nəhayət başa düşdüyüm şey, ESP-03 proqramlaşdırmaq üçün istifadə etdiyim metodun artıq işləməməsidir. Bunu başqa bir təlimatda yazdım:

www.instructables.com/id/2020-ESP8266/

Problem 1 həll edildi, indi ESP-03-ləri Arduino eskizləri ilə proqramlaşdıra bilərəm.

Addım 2: Növbəti problemi həll edin

Növbəti Problemin Düzəldilməsi
Növbəti Problemin Düzəldilməsi
Növbəti Problemin Düzəldilməsi
Növbəti Problemin Düzəldilməsi
Növbəti Problemin Düzəldilməsi
Növbəti Problemin Düzəldilməsi

Yaxşı, köhnə Arduino eskizimlə bir ESP-03 proqramlaşdırdım, IP Saatıma qoydum, hələ də işləmədi. Eskiz yazmışdım, İnternetə və NTP serverinə (İnternetdə dəqiq vaxt təmin edən) uğurlu bir əlaqə qurulana qədər heç bir şey göstərilmədi, buna görə boş bir ekrana sahib oldum.

Arduino Serial monitorundan istifadə edərək NTP serverinə qoşulmadığını görə bildim.

Qeyd: ESP-03 ESP8266 mikro nəzarətçisindən istifadə edir. ESP8266 -nın gözəl cəhətlərindən biri də WiFi -də qurulmasıdır. Texniki baxımdan, bir çox evin, o cümlədən mənimki olduğu bir WiFi qaynar nöqtəsinə və ya WiFi yönləndiricisinə qoşula bilər.

Burada olduqca texniki cəhətdən yeni WiFi yönləndiricilərinin 2.4GHz və 5.0GHz iki bant genişliyi var. (Routerim üçün şəkilə baxın) Onları AM və FM radioları arasındakı fərq kimi düşünməyi sevirəm. (Bunları xatırlayırsan?)

ESP8266 -nın bir məhdudiyyəti, yalnız 2.4GHz bant genişliyi istifadə etmələridir.

Daha çox texniki şey, WiFi -yə qoşulduqda SSID adlı bir identifikatora ehtiyacınız var. Fərdi bir radio stansiyası K Earth 101 kimidir. Təhlükəsizlik baxımından da bir şifrə ehtiyacınız var.

Yaxşı, bir çox WiFi cüt bandlı marşrutlaşdırıcılar (2.4GHz və 5GHz) hər iki bant üçün eyni SSID istifadə edir.

Nədənsə, ESP-03-ü yönləndiricimlə qoşa bilmədim. Oxşar problemləri olan digər insanları xatırlayıram.

Aşağı xətt: 2.4 və 5 GHz diapazonu üçün ayrı SSID -ləri olan başqa bir router qurdum, məsələn, "mtslink24" və "mtslink50" və İnternetdə danışa bildim. (Şəkilə baxın)

XƏBƏRDARLIQ: Hər iki bantda eyni SSID -lərə malik ikili bant yönləndiriciniz varsa, ESP8266s ilə işləməyə bilər.

Addım 3: Son problemi həll edin

Son problemi həll etmək
Son problemi həll etmək

Gördüyüm şey hələ də NTP serverinə qoşula bilməməyim idi. İnternetdən istifadə edib -edə bilməyəcəyimi öyrənmək üçün başqa bir Sketch tapdım və buna görə də növbəti problem NTP serverinə qoşulmaq kimi görünürdü.

Orijinal eskizimdə NTP serverinə qoşulmaq üçün bir IP ünvanı istifadə etdim:

tf.nist.gov/tf-cgi/servers.cgi

Beləliklə, olduğum yerə olduqca yaxın olan Boulder və FT. Collins -dən bir neçə IP sınadım. Heç biri işləmədi. Bəziləri ətrafında oynadı və əslində işləmək üçün qlobal bir eskiz aldı, ancaq bəlkə də beşdə bir dəfə kilidlənərdi. Bir az araşdırma aparıb pool.ntp.org adlı bir şey tapdı. Göründüyü kimi, bir çox IP ünvanı ilə fırlanır, buna görə heç bir ünvan çox yüklənmir və hamısı aktiv olmalıdır.

Yaxşı, bu WiFi proqramlaşdırmasını o qədər də yaxşı başa düşmürəm, ancaq eskizimə uyğunlaşa biləcəyim və işə düzəltdiyim bir nümunə tapmağı bacardım. Yippee!

Addım 4: Arduino Sketch

Arduino eskiz
Arduino eskiz

İşlədiyim eskiz, Special.ino əlavə olunur

Bununla əlaqədar bəzi şərhlər:

Bura öz SSID və şifrənizi qoyduğunuz yerdir. (Bu 2.4 GHz olmalıdır.)

char ssid = "YourSSID"; // şəbəkə SSID (adı)

char pass = "SSID Şifrəniz"; // şəbəkə şifrəsi

Pool.ntp.org server siyahısından istifadə.

IPAddressServerIP; // time.nist.gov NTP server ünvanı

const char* ntpServerName = "pool.ntp.org";

// WiFi.hostByName (ntpServerName, timeServerIP) havuzundan təsadüfi bir server əldə edin;

İki DST funksiyası:

void findChangeDates (); // Bahar/Payız dəyişiklik tarixlərini tapın

boD IsDST (); // DST olub olmadığını yoxlayın

findChangeDates (); cari ili alır və mart və noyabr aylarının hansı günlərin dəyişmə tarixləri olduğunu müəyyənləşdirir

boD IsDST (); cari günün DST olub olmadığını müəyyən edir

boş digitalClockDisplay ()

Təəssüf ki, köhnə beynim artıq bunu anlaya bilmir. Düşünürəm ki, saat 21: 00 -dan sonra saniyə ekranını söndürməkdir. və onları səhər saat 5 radələrində yenidən işə salır. Yataqdaykən saata baxmaq və saniyələrin necə keçdiyini görmək çox zəhlətökəndir. Ancaq səhər yuxudan duranda sanki sanki görməyi xoşlayıram ki, qarqara etməyimə "vaxt ayırım".

Addım 5: ESP-03 və Nəticələrin Proqramlaşdırılması

ESP-03 və Nəticələrin Proqramlaşdırılması
ESP-03 və Nəticələrin Proqramlaşdırılması

Hal -hazırda Arduino1.8.12 versiyasından istifadə edirəm.

ESP8266 materiallarını quraşdırmağın ən asan yolu bu metoddan istifadə edərək Board Manager -dən istifadə etməkdir:

github.com/esp8266/Arduino#installing-with…

Quraşdırıldıqdan sonra, Board seçərkən "Ümumi ESP8266 modulu" nu seçirəm.

XƏBƏRDARLIQ: Kompüterimdə "Ümumi ESP8266 modulu" nun iki versiyası var. "ESP8266 lövhələri" kateqoriyasına aid olanlar işləyir, Sparkfun altında olanlar işləmir.

Yaxşı, mən tənbələm. Əslində etdiyim şey bir ESP-03 almaq və dəyişdirilmiş ESP adapterimdə proqramlaşdırmaq idi:

www.instructables.com/id/2020-ESP8266/

Nə edə bilərdimsə, IP Clock 2 PCB -ni bu sxemə uyğun olaraq bir neçə atlayıcı əlavə edərək dəyişdirmək olar.

Əlavə olaraq, GTS -in yanındakı pinə RTS -in qoşulması üçün CP2102 USB adapterini dəyişdirdim.

Bu dəyişikliklərlə heç bir düyməyə basmadan adi bir Arduino eskizini yükləmək kimidir.

NƏTİCƏLƏR: Yaxşı, IP saatımı sevirəm. Bütün meyarlara cavab verir. Şəkildə göstərildiyinə baxmayaraq, LEDlər qırmızı deyil, ağ deyil, mavi də yoxdur.

Tövsiyə: