Mundarija:

IFTTT bilan IoT dizayn lampasi: 7 qadam (rasmlar bilan)
IFTTT bilan IoT dizayn lampasi: 7 qadam (rasmlar bilan)

Video: IFTTT bilan IoT dizayn lampasi: 7 qadam (rasmlar bilan)

Video: IFTTT bilan IoT dizayn lampasi: 7 qadam (rasmlar bilan)
Video: CS50 Live, серия 009 2024, Iyul
Anonim
IFTTT bilan IoT dizayn lampasi
IFTTT bilan IoT dizayn lampasi
IFTTT bilan IoT dizayn lampasi
IFTTT bilan IoT dizayn lampasi

Ushbu yo'riqnomada men sizga Internetga ulangan LEDni ishlab chiqarishda ham ko'rsatma beraman, ham funksional, ham zamonaviy.

Bu kulgili dizayn ob'ektini veb-ilova yoki IFTTT onlayn xizmati boshqarishi mumkin. Ikkinchisi chiroqni Google Assistant, Alexa, Android xabarnomalari, vaqt va sana, ob -havo ma'lumoti va boshqalar kabi har xil tashqi xizmatlarga ulash imkonini beradi. Bu loyiha ESP8266 va Arduino muharriri haqida asosiy bilimlarni o'z ichiga oladi.

1 -qadam: Elektronikani yig'ing

Elektronikani yig'ing!
Elektronikani yig'ing!
Elektronikani yig'ing!
Elektronikani yig'ing!

Ushbu loyiha uchun sizga quyidagilar kerak bo'ladi:

  • NodeMCU yoki boshqa ESP8266 mikrokontroller
  • Neopixel/WS2812B LED tasmasi (1m 60LED/m)
  • Darajani o'zgartirish*
  • O'tish simlari (erkak-ayol)
  • Micro-USB kabeli
  • USB devor vilkasi (5V)

LED chizig'ida uchta kabel bor: 5V (qizil), GND (oq) va DATA (yashil). ESP8266 3.3V da ishlaydi, lekin VU piniga ega. Bu pin to'g'ridan -to'g'ri USB quvvatiga ulangan, shuning uchun agar siz kartani USB orqali 5V bilan quvvatlasangiz, bu kuchlanish VU pinida ham mavjud bo'ladi. Biz bu pin yordamida LED tasmasini quvvatlaymiz. Shunday qilib, qisqasi:

  • Erni erga ulang (GND TO G)
  • 5V+ ni Vu ga ulang
  • Dinni D2 ga ulang

* = Sizning maxsus qurilmangizga qarab, bu sim ishlamasligi mumkin. ESP8266 3.3V da ishlagani uchun, u taqdim etadigan ma'lumot uzatish 3.3V da bo'ladi. WS2812B 5V bilan quvvatlanganligi sababli, ma'lumot uzatish tasmasi to'g'ri qabul qilish uchun juda zaif bo'lishi mumkin. Agar yuqoridagi simlar ishlamasa, sizga ma'lumot signalini 3,3V dan 5V ga o'tkazadigan Level Shifter kerak bo'ladi. Qo'shilgan simlar sxemasiga qarang.

Eslatma! Ba'zi LED-chiziqlar boshqalarga qaraganda ko'proq sindirishga moyil. Agar siz hech qachon bu chiziqlar bilan ishlamagan bo'lsangiz, men Neopixel LED tasmasini xavfsiz ulash bo'yicha maslahatlar uchun Neopixel Überguide-ni o'qishni tavsiya qilaman.

2 -qadam: FastLED

FastLED
FastLED

LEDlarni boshqarish uchun FastLED kutubxonasidan foydalanishimiz mumkin. Agar buni hali qilmagan bo'lsangiz, ushbu kutubxonani Arduino muhitingizga qo'shing (Sketch> Kutubxonani qo'shish> Kutubxonalarni boshqarish> 'FastLED').

Kabelingiz ishlayotganiga ishonch hosil qilish uchun FastLED kutubxonasi bilan birga kelgan ko'plab misollardan birini sinab ko'rishingiz mumkin (Fayl> Misollar> FastLED). Har bir misoldagi sozlamalarni o'zgartirganingizga ishonch hosil qiling (LEDlar soni = 60, Ma'lumot pin = 2), ularni taxtaga yuklamasdan oldin.

Kengash kompyuterga ulangan paytda LEDlarni juda yorug 'qilib qo'yishda ehtiyot bo'ling. 500 mA dan yuqori chizilgan bo'lsa, kompyuter portni o'chirib qo'yishi mumkin. Agar siz chiziqni to'liq yorqinlikda ishlatmoqchi bo'lsangiz, uni etarlicha yuqori amperlik quvvat bilan ta'minlaydigan USB devor vilkasi bilan quvvatlang.

3 -qadam: dasturiy ta'minot

Dasturiy ta'minot
Dasturiy ta'minot

Endi maxsus dasturiy ta'minotni yaratish vaqti keldi. Dastur GitHub -da mavjud:

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

Dastur faylini yuklab oling, oching va Arduino muharririda software.ino faylini oching. Bu faylda ko'rsatilgan barcha kutubxonalar o'rnatilganligiga ishonch hosil qiling.

Config yorlig'iga o'ting va Wi -Fi tarmog'ining nomi va parolini quyidagi qatorlarga qo'shing:

const char* ssid = "";

const char* parol = "";

Routerga qarab, siz quyidagilarni o'zgartirishingiz kerak bo'lishi mumkin:

const IPAddress staticIp (192, 168, 178, 101); // Qurilmaning kerakli statik mahalliy IP -si

const IPAddress shlyuzi (192, 168, 178, 1); // constIPAddress pastki tarmog'ining (255, 255, 255, 0) yo'riqnoma IP -shlyuzi; // Routerning pastki tarmog'i

MacOS -da siz ushbu sozlamalarni Tizim sozlamalari> Tarmoq> Kengaytirilgan> TCP/IP -da topishingiz mumkin

Fayllarni taxtaga yuklang. Agar hamma narsa yaxshi bo'lsa, tarmoq Wi -Fi tarmog'iga ulanganda oq rangda yonadi. Qo'shimcha ma'lumotni tekshirish uchun 115200 baud seriyali monitorni oching.

4 -qadam: Mahalliy nazorat

Chiroqning ishlashini ko'rsatish uchun men https://lamp-app.surge.sh saytida (Codepen manbasi) mavjud bo'lgan kichik veb-ilovasini yaratdim. Ushbu ilova JSON so'rovlarini to'g'ridan -to'g'ri ESP8266 ga yuboradi, bu esa o'z navbatida LEDlarni yangilaydi.

Yuqoridagilar faqat sizning chiroqingiz va telefoningiz bir xil Wi -Fi tarmog'iga ulangan bo'lsa ishlaydi, chunki siz chiroqqa mahalliy IP -manzili orqali murojaat qilasiz. Chiroqni xohlagan joydan boshqarish uchun siz yo'riqnoma sozlamalarini o'rganishingiz kerak.

5 -qadam: Har qanday joydan nazorat qilish

Chirog'ingizni World Wide Web bo'lgan sehrli narsaga ochish uchun biz portni yo'naltirish deb nomlangan ishni qilishimiz kerak. Asosan, bu sizning umumiy IP -manzilingiz (sizning provayderingiz tomonidan berilgan) va port raqami (bu misolda o'zboshimchalik bilan 300 ga o'rnatilgan) orqali yuborilgan so'rovlarni sizning ESP8266 manzilingiz ko'rsatiladigan ichki mahalliy manziliga yo'naltiradi.

Bu jarayon har bir qurilma uchun turlicha, shuning uchun agar siz marshrutizatorda buni qanday qilishni bilmasangiz, google 'port yo'naltirish' + yo'riqnoma nomiga ishonch hosil qiling. Bu sizga kerak bo'lgan sozlamalar:

Tashqi boshlanish/tugatish porti: 300

Ichki boshlanish/tugatish porti: 300

Ichki IP -manzili: 192.168.178.101 (Seriya monitorida ko'rsatilgan manzil)

Protokol: TCP/UDP

Ogohlantirish! Buni qilgandan so'ng, sizning chirog'ingizni umumiy IP -ni va chiroq ishlayotgan portni biladigan har kim boshqarishi mumkin. Agar siz bu ajoyib g'oya deb o'ylamasangiz, ba'zi xavfsizlik qatlamlarini qo'llash tavsiya etiladi

Hamma narsa to'g'ri sozlanganligini tekshirish uchun brauzeringizga quyidagilarni kiriting: (agar siz umumiy IP manzilingizni bilmasangiz, ushbu veb -saytga o'ting.)

[UMUMIY IP]: 300

Siz JSON tasdiqlash xabarini ko'rishingiz kerak. Endi siz ilovani umumiy IP -manzilingiz bilan ishlatishga urinib ko'rishingiz mumkin.

6 -qadam: IFTTT

IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT
IFTTT

Haqiqiy zavq shu erdan boshlanadi. Endi bizning chiroq ~ ~ Internetga ~ ~ ulangan bo'lsa, biz IFTTT veb -saytidan foydalanib, uni har xil xizmatlarga ulashimiz mumkin.

Bu misolda biz Google Assistant buyrug'ini o'rnatamiz, u chiroqlarni qizil rangga aylantiradi, lekin siz o'z tasavvuringizni ochadigan boshqa xizmatni tanlashingiz mumkin.

  1. IFTTT.com saytiga o'ting va hisob qaydnomangizni yarating
  2. "Mening ilovalarim"> "Yangi Applet" ga o'ting.
  3. Trigger xizmati uchun "Google Assistant" ni qidiring.
  4. "Oddiy iborani ayting" -ni tanlang
  5. Bir nechta o'ziga xos iboralarni keltiring
  6. Amallar xizmati uchun "Webhooks" ni qidiring.
  7. Quyidagi sozlamalardan foydalaning:

URL: https:// [SIZNING PUBLIK-IP]: 300/api

Usul: POST tarkibining turi: application/json

Va tana uchun:

Endi biz tanlagan jumlani aytganimizda, Google Assistant IFTTTga so'rov yuboradi, bu esa o'z navbatida chiroqimiz uchun JSON so'rovini yuboradi. Buni sinab ko'rishga ishonch hosil qiling! Kodni yana nima qilish kerakligini bilish uchun sho'ng'ing.

7 -qadam: uni chiroyli qilish

Chiroyli qilish
Chiroyli qilish
Chiroyli qilish
Chiroyli qilish
Chiroyli qilish
Chiroyli qilish

Loyihaning eng qimmat qismi - bu LED tasmasi joylashgan korpus. Agar siz bu loyihani ko'p pul sarflamasdan sinab ko'rmoqchi bo'lsangiz, boshqa shakllarni ham ko'rib chiqishingiz yoki naychani oq printer qog'ozidan yasashingiz mumkin. Qo'shilgan holda siz yuqoridagi rasmlarda ko'rsatilgandek, trubka uchun tayanchlarni buklash uchun qog'ozga chop etishingiz mumkin bo'lgan simli ramka topasiz.

Qattiq korpus uchun men quyidagi elementlardan foydalandim:

  • Muzli akril naycha (uzunligi = 1160 mm, diametri = 40 mm, devor qalinligi = 2 mm)
  • 2x plastik qopqoq
  • 20x2x30 mm yumshoq yog'och blok
  • 10x1160x2 mm o'lchamdagi metall tasma

LED chizig'ining o'zi 1000 mm bo'lib, elektronni yashirish uchun trubaning ikkala uchida 80 mm qoldiradi. Men shaffof bo'lmasligi uchun ikkita uchidan trubaga o'ralgan printer qog'ozini ishlatardim. Kirishni osonlashtirish uchun men LED tasmasini uzun metall tasmaga yopishtirdim

Yumshoq daraxtlar blokidan men stendlarni maydaladim. Agar siz ham shunday qilishni xohlasangiz,.stl fayli quyida keltirilgan. Stendni 3D bosib chiqarishni ham ko'rib chiqishingiz mumkin.

Tavsiya: