Mündəricat:

IFTTT ilə IoT Dizayn Lampası: 7 Addım (Şəkillərlə)
IFTTT ilə IoT Dizayn Lampası: 7 Addım (Şəkillərlə)

Video: IFTTT ilə IoT Dizayn Lampası: 7 Addım (Şəkillərlə)

Video: IFTTT ilə IoT Dizayn Lampası: 7 Addım (Şəkillərlə)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Iyul
Anonim
IFTTT ilə IoT Dizayn Lampası
IFTTT ilə IoT Dizayn Lampası
IFTTT ilə IoT Dizayn Lampası
IFTTT ilə IoT Dizayn Lampası

Bu Təlimat kitabında, həm funksional, həm də şık bir İnternetə bağlı LED lampa hazırlamağınızda sizə yol göstərəcəyəm.

Bu əyləncəli dizayn obyekti bir veb tətbiq və ya IFTTT onlayn xidməti ilə idarə olunur. Sonuncusu, lampanı Google Assistant, Alexa, Android Bildirişləri, Saat və Tarix, Hava proqnozu və s. Kimi hər cür xarici xidmətlərə bağlamağa imkan verir. Bu layihə ESP8266 və Arduino redaktoru haqqında əsas bilikləri ehtiva edir.

Addım 1: Elektronikanı toplayın

Elektronika toplayın!
Elektronika toplayın!
Elektronika toplayın!
Elektronika toplayın!

Bu layihə üçün aşağıdakılara ehtiyacınız olacaq:

  • NodeMCU və ya digər ESP8266 mikro nəzarətçi
  • Neopixel/WS2812B LED şeridi (1m 60LED/m)
  • Səviyyə dəyişdirici*
  • Atlama telləri (kişidən qadına)
  • Mikro USB kabel
  • USB Divar Fişi (5V)

LED şeridinin üç kabeli var: 5V (qırmızı), GND (ağ) və DATA (yaşıl). ESP8266 3.3V -də işləyir, lakin VU pininə malikdir. Bu pin birbaşa USB gücünə bağlıdır, buna görə lövhənizi USB üzərindən 5V ilə gücləndirsəniz, bu gərginlik VU pinində də mövcud olacaq. LED şeridini gücləndirmək üçün bu pindən istifadə edəcəyik. Beləliklə, qısaca:

  • Zəmini Zəminə Bağlayın (GND TO G)
  • Vu -ya 5V+ qoşun
  • Din -i D2 -yə qoşun

* = Xüsusi avadanlıqdan asılı olaraq, bu kabel işləməyə bilər. ESP8266 3.3V -də işlədiyindən təmin etdiyi məlumat siqnalı da 3.3V -də olacaq. WS2812B 5V ilə təchiz edildiyindən, məlumat siqnalı zolaq tərəfindən düzgün qəbul edilməyəcək qədər zəif ola bilər. Yuxarıdakı kabellər işləmirsə, məlumat siqnalını 3.3V -dən 5V -ə dəyişən bir Səviyyə dəyişdiricisinə ehtiyacınız olacaq. Əlavə edilmiş kabel sxeminə baxın.

Qeyd! Bəzi LED şeritləri digərlərindən daha çox qırılmağa meyllidir. Heç vaxt bu zolaqlar ilə işləməmisinizsə, Neopixel LED şeridinin etibarlı şəkildə bağlanması ilə bağlı məsləhətlər üçün Neopixel Überguide kitabını oxumağı şiddətlə məsləhət görürəm.

Addım 2: FastLED

FastLED
FastLED

LEDləri idarə etmək üçün FastLED kitabxanasından istifadə edə bilərik. Hələ etməmisinizsə, bu kitabxananı Arduino mühitinizə əlavə edin (Sketch> Kitabxana daxil et> Kitabxanaları idarə et> 'FastLED').

Kablolarınızın işlədiyinə əmin olmaq üçün FastLED kitabxanası ilə birlikdə gələn bir çox nümunədən birini sınamaq istəyə bilərsiniz (Fayl> Nümunələr> FastLED). Lövhənizə yükləməzdən əvvəl hər bir nümunədəki parametrləri dəyişdirdiyinizə əmin olun (LED sayı = 60, Məlumat pin = 2).

Lövhə kompüterə qoşulduqda LED -lərin çox parlaq olmasına diqqət yetirin. 500 mA -dan çox çəkərkən, kompüteriniz portu bağlaya bilər. Şeridi tam parlaqlıqda istifadə etmək istəyirsinizsə, kifayət qədər yüksək amper təmin edə bilən USB divar fişi ilə gücləndirin.

Addım 3: Proqram təminatı

Proqram təminatı
Proqram təminatı

İndi xüsusi proqram təminatının vaxtıdır. Proqram GitHub -da mövcuddur:

github.com/dpkn/lamp/tree/master/software

Proqram faylını yükləyin, açın və Arduino redaktorunda software.ino faylını açın. Bu faylda göstərilən bütün kitabxanaların quraşdırıldığından əmin olun.

Config sekmesine keçin və WiFi şəbəkənizin adını və şifrənizi bu sətirlərə əlavə edin:

const char* ssid = "";

const char* parol = "";

Routerinizdən asılı olaraq aşağıdakıları da dəyişə bilərsiniz:

const IPAddress staticIp (192, 168, 178, 101); // Cihazın istədiyiniz statik yerli IP

const IPAddress ağ geçidi (192, 168, 178, 1); // constIPAddress alt şəbəkəsinin (255, 255, 255, 0) yönləndiricisinin Gateway IP; // Routerin alt şəbəkəsi

MacOS -da bu parametrləri Sistem Tercihləri> Şəbəkə> Qabaqcıl> TCP/IP altında tapa bilərsiniz

Faylları lövhənizə yükləyin. Hər şey yaxşı olarsa, WiFi şəbəkənizə qoşulduqda zolaq ağ rəngdə yanacaq. Əlavə məlumat üçün 115200 baudda Serial Monitoru açın.

Addım 4: Yerli olaraq nəzarət edin

Lampanın işini nümayiş etdirmək üçün https://lamp-app.surge.sh (Codepen-dəki mənbə) ünvanında olan kiçik bir veb tətbiq etdim. Bu tətbiq JSON sorğularını birbaşa ESP8266 -ya göndərir, bu da LEDləri yeniləyir.

Yuxarıda göstərilənlər yalnız lampanız və telefonunuz eyni WiFi şəbəkəsinə qoşulduqda işləyəcək, çünki lampaya yerli IP ünvanı ilə müraciət edirsiniz. Lampanı hər hansı bir yerdən idarə edə bilmək üçün yönlendiricinizin parametrlərini araşdırmalısınız.

Addım 5: Hər yerdən idarə edin

Çırağınızı World Wide Web olan sehrli bir işə açmaq üçün liman yönləndirmə adlı bir şey etməliyik. Əsasən, bu, ümumi IP ünvanınızda (provayderiniz tərəfindən verilən) və port nömrəsini (bu nümunədə özbaşına olaraq 300 olaraq təyin olunmuş) ünvanlanan istəkləri ESP8266 -nın ünvanlandığı daxili, yerli IP ünvanına yönləndirəcəkdir.

Bu proses hər cihaz üçün fərqlidir, buna görə də bunu xüsusi marşrutlaşdırıcınızda necə edəcəyinizi bilmirsinizsə, google 'port yönləndirmə' + yönlendiricinizin adından əmin olun. Lazım olan parametrlər bunlardır:

Xarici Başlanğıc/Bitiş Limanı: 300

Daxili Başlanğıc/Bitiş Limanı: 300

Daxili IP ünvanı: 192.168.178.101 (Serial Monitorda göstərilən ünvan)

Protokol: TCP/UDP

Xəbərdarlıq! Bunu etdikdən sonra, lampanız ictimai IP -nizi və lampanın işlədiyi portu bilən hər kəs tərəfindən idarə oluna bilər. Bunun əla bir fikir olduğunu düşünmürsənsə, bəzi təhlükəsizlik qatını tətbiq etmək məsləhətdir

Hər şeyin düzgün qurulduğunu yoxlamaq üçün brauzerinizə aşağıdakıları daxil edin: (Ümumi IP ünvanınızı bilmirsinizsə, bu veb saytına daxil olun.)

[İctimai IP'niz]: 300

Bir JSON təsdiq mesajı görməlisiniz. İndi ümumi IP ünvanınızla tətbiqdən istifadə edə bilərsiniz.

Addım 6: IFTTT

IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT

Əsl əyləncənin başladığı yer budur. Artıq lampamız ~~ internet ~~ 'a qoşulduğundan, IFTTT veb saytından istifadə edərək onu hər cür xidmətə bağlaya bilərik.

Bu nümunədə, işıqları qırmızıya çevirən bir Google köməkçisi əmri quracağıq, ancaq təsəvvürünüzü qığılcımlayan başqa bir xidmət seçə bilərsiniz.

  1. IFTTT.com saytına daxil olun və hələ yoxsa hesab yaradın
  2. 'Tətbiqlərim'> 'Yeni Tətbiq' bölməsinə keçin.
  3. Tətik xidməti üçün 'Google köməkçisi' axtarın
  4. 'Sadə bir söz deyin' seçin
  5. Bir neçə bənzərsiz ifadə ilə gəlin
  6. Fəaliyyət xidməti üçün 'Webhooks' axtarın
  7. Aşağıdakı parametrləri istifadə edin:

URL: https:// [SİZİN-İctimai-IP]: 300/api

Metod: POST məzmun növü: application/json

Və bədən üçün:

İndi seçdiyimiz cümləni söylədikdə, Google köməkçisi IFTTT -ə bir sorğu göndərəcək, bu da öz növbəsində lampamız üçün JSON sorğusu göndərəcək. Bunu sınadığınızdan əmin olun! Şeridi başqa nə edə biləcəyinizi görmək üçün kodu daxil edin.

Addım 7: Çox gözəl etmək

Çox gözəl etmək
Çox gözəl etmək
Çox gözəl etmək
Çox gözəl etmək
Çox gözəl etmək
Çox gözəl etmək

Bu layihənin ən bahalı hissəsi LED şeridinin yerləşdiyi korpusdur. Bu layihəni çox pul xərcləmədən sınamaq istəyirsinizsə, başqa formaları da nəzərdən keçirə və ya sadəcə ağ printer kağızından boru hazırlaya bilərsiniz. Əlavə olaraq, yuxarıdakı şəkillərdə göstərildiyi kimi borunun bəzi dayaqlarını qatlamaq üçün kağız üzərində çap edə biləcəyiniz bir tel çərçivə tapacaqsınız.

Daha möhkəm bir örtük üçün aşağıdakı maddələrdən istifadə etdim:

  • Buzlu akril boru (uzunluq = 1160 mm, diametri = 40 mm, divar qalınlığı = 2 mm)
  • 2x Plastik Qapaq
  • 20x2x30 mm yumşaq ağac bloku
  • 10x1160x2mm metal zolaq

LED şeridi 1000 mm -dir, elektronikanı gizlətmək üçün borunun hər iki ucunda 80 mm buraxır. Şəffaf olmaması üçün hər iki ucunda boruya yuvarlanan printer kağızından istifadə etdim. Daxil etməyi asanlaşdırmaq üçün LED şeridini uzun bir metal zolağa yapışdırdım

Stendləri bir yumşaq ağac blokundan biçdim. Eyni şeyi etmək istəyirsinizsə,.stl faylı aşağıda verilmişdir. Stendin 3D çapını da düşünə bilərsiniz.

Tövsiyə: