Spisu treści:
- Krok 1: Zbierz elektronikę
- Krok 2: FastLED
- Krok 3: Oprogramowanie
- Krok 4: Kontrolowanie lokalnie
- Krok 5: Kontrolowanie z dowolnego miejsca
- Krok 6: IFTTT
- Krok 7: Upiększanie
Wideo: Lampa projektowa IoT z IFTTT: 7 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
W tej instrukcji poprowadzę Cię w tworzeniu lampy LED podłączonej do Internetu, która jest zarówno funkcjonalna, jak i stylowa.
Ten modny obiekt projektowy można kontrolować za pomocą aplikacji internetowej lub usługi online IFTTT. Ta ostatnia umożliwia podpięcie lampy do wszelkiego rodzaju usług zewnętrznych, takich jak Asystent Google, Alexa, Powiadomienia Androida, Czas i Data, Prognoza pogody itp. Projekt ten zakłada podstawową znajomość ESP8266 i edytora Arduino.
Krok 1: Zbierz elektronikę
Do tego projektu będziesz potrzebować:
- NodeMCU lub inny mikrokontroler ESP8266
- Taśma LED Neopixel/WS2812B (1m 60LED/m)
- Zmieniacz poziomu*
- Przewody skokowe (męski-żeński)
- Kabel micro-USB
- Wtyczka USB (5V)
Taśma LED ma trzy przewody: 5V w (czerwony), GND (biały) i DATA (zielony). ESP8266 działa na 3,3 V, ale ma pin VU. Ten pin jest bezpośrednio podłączony do zasilania USB, więc jeśli zasilasz swoją płytę napięciem 5 V przez USB, to napięcie będzie również dostępne na pinie VU. Wykorzystamy ten pin do zasilania paska LED. W skrócie:
- Podłącz uziemienie do uziemienia (GND DO G)
- Podłącz 5V+ do Vu
- Połącz Din z D2
* = W zależności od konkretnego sprzętu to okablowanie może nie działać. Ponieważ ESP8266 działa przy napięciu 3,3 V, dostarczany przez niego sygnał danych będzie również miał napięcie 3,3 V. Ponieważ WS2812B jest zasilany napięciem 5V, sygnał danych może być zbyt słaby, aby pasek mógł prawidłowo odbierać. Jeśli powyższe okablowanie nie działa, będziesz potrzebować przełącznika poziomu, który przesuwa sygnał danych z 3,3 V na 5 V. Zobacz załączony schemat okablowania.
Notatka! Niektóre taśmy LED są bardziej podatne na pękanie niż inne. Jeśli nigdy nie pracowałeś z tymi paskami, gorąco polecam przeczytanie Neopixel Überguide, aby uzyskać wskazówki dotyczące bezpiecznego podłączania paska LED Neopixel.
Krok 2: FastLED
Do sterowania diodami LED możemy wykorzystać bibliotekę FastLED. Jeśli jeszcze tego nie zrobiłeś, dodaj tę bibliotekę do środowiska Arduino (Szkic> Dołącz bibliotekę> Zarządzaj bibliotekami> „FastLED”).
Aby upewnić się, że okablowanie działa prawidłowo, możesz wypróbować jeden z wielu przykładów dołączonych do biblioteki FastLED (Plik > Przykłady > FastLED). Pamiętaj, aby zmienić ustawienia w każdym przykładzie (liczba diod LED = 60, pin danych = 2) przed przesłaniem ich do tablicy.
Uważaj na ustawienie zbyt jasnych diod LED, gdy płyta jest podłączona do komputera. Podczas pobierania prądu powyżej 500 mA komputer może wyłączyć port. Jeśli chcesz używać paska przy pełnej jasności, zasil go za pomocą wtyczki ściennej USB, która może zapewnić wystarczająco wysoki prąd.
Krok 3: Oprogramowanie
Teraz nadszedł czas na oprogramowanie na zamówienie. Oprogramowanie jest dostępne na GitHubie:
github.com/dpkn/lamp/tree/master/software
Pobierz plik oprogramowania, rozpakuj go i otwórz plik software.ino w edytorze Arduino. Upewnij się, że masz zainstalowane wszystkie biblioteki wymienione w tym pliku.
Przejdź do zakładki Konfiguracja i dodaj nazwę sieci Wi-Fi i hasło do tych wierszy:
const char* ssid = "";
const char* hasło = "";
W zależności od routera może być również konieczna zmiana następujących elementów:
const adres IP staticIp(192, 168, 178, 101); // Pożądany statyczny lokalny adres IP urządzenia
const brama IPAddress (192, 168, 178, 1); // IP bramy routera constIPAddress subnet(255, 255, 255, 0); // Podsieć routera
W systemie MacOS te ustawienia można znaleźć w Preferencjach systemowych > Sieć > Zaawansowane > TCP/IP
Prześlij pliki na swoją tablicę. Jeśli wszystko pójdzie dobrze, pasek zaświeci się na biało, gdy będzie podłączony do sieci Wi-Fi. Otwórz Serial Monitor z prędkością 115200 bodów, aby sprawdzić dodatkowe informacje.
Krok 4: Kontrolowanie lokalnie
Aby zademonstrować działanie lampy, stworzyłem małą aplikację internetową, która jest dostępna pod adresem https://lamp-app.surge.sh (źródło na Codepen). Ta aplikacja wysyła żądania JSON bezpośrednio do ESP8266, który z kolei aktualizuje diody LED.
Powyższe zadziała tylko wtedy, gdy twoja lampa i telefon są podłączone do tej samej sieci Wi-Fi, ponieważ adresujesz lampę za pomocą jej lokalnego adresu IP. Aby móc sterować lampą z dowolnego miejsca, musisz zagłębić się w ustawienia routera.
Krok 5: Kontrolowanie z dowolnego miejsca
Aby otworzyć twoją lampę na magiczną rzecz, jaką jest sieć WWW, musimy zrobić coś, co nazywa się przekierowaniem portów. Zasadniczo przekieruje to żądania adresowane na twój publiczny adres IP (ten, który jest dostarczany przez twojego dostawcę usług internetowych) i numer portu (w tym przykładzie arbitralnie ustawiony na 300) na wewnętrzny, lokalny adres IP, na którym adresowany jest twój ESP8266.
Ten proces jest inny dla każdego urządzenia, więc jeśli nie wiesz, jak to zrobić na konkretnym routerze, upewnij się, że wpiszesz w Google „przekierowanie portów” + nazwę routera. Oto ustawienia, których będziesz potrzebować:
Zewnętrzny port początkowy/końcowy: 300
Wewnętrzny port początkowy/końcowy: 300
Wewnętrzny adres IP: 192.168.178.101 (adres wyświetlany w monitorze szeregowym)
Protokół: TCP/UDP
Ostrzeżenie! Po wykonaniu tej czynności Twoja lampa może być kontrolowana przez każdego, kto zna Twój publiczny adres IP i port, na którym działa lampa. Jeśli uważasz, że to nie jest dobry pomysł, zaleca się wdrożenie jakiejś warstwy zabezpieczeń
Aby sprawdzić, czy wszystko jest poprawnie skonfigurowane, wprowadź w przeglądarce następujące informacje: (jeśli nie znasz swojego publicznego adresu IP, przejdź do tej witryny).
[TWÓJ PUBLICZNY IP]:300
Powinieneś zobaczyć komunikat potwierdzający JSON. Możesz teraz spróbować użyć aplikacji przy użyciu swojego publicznego adresu IP.
Krok 6: IFTTT
Tu zaczyna się prawdziwa zabawa. Teraz, gdy nasza lampa jest podłączona do ~~ internetu ~~, możemy użyć strony internetowej IFTTT, aby podłączyć ją do różnych rodzajów usług.
W tym przykładzie skonfigurujemy polecenie Asystenta Google, które zaświeci na czerwono, ale możesz wybrać inną usługę, która pobudzi Twoją wyobraźnię.
- Wejdź na IFTTT.com i utwórz konto, jeśli jeszcze tego nie zrobiłeś
- Przejdź do „Moje aplety” > „Nowy aplet”
- W przypadku usługi wyzwalacza wyszukaj „Asystent Google”
- Wybierz „Powiedz proste zdanie”
- Wymyśl kilka unikalnych fraz
- W przypadku usługi akcji wyszukaj „Webhooki”
- Użyj następujących ustawień:
URL:
Metoda: Typ treści POST: application/json
A dla Ciała:
{ "jasność": 120, "state":4, "color":"red" }
Teraz, gdy wypowiemy wybrane zdanie, Asystent Google wyśle żądanie do IFTTT, który z kolei wyśle żądanie JSON do naszej lampy. Koniecznie wypróbuj to! Zanurz się w kodzie, aby zobaczyć, co jeszcze możesz zrobić z paskiem.
Krok 7: Upiększanie
Najdroższą częścią tego projektu jest obudowa, w której znajduje się taśma LED. Jeśli chcesz po prostu wypróbować ten projekt bez wydawania na niego zbyt dużych pieniędzy, możesz również rozważyć inne kształty lub po prostu zrobić tubkę z białego papieru do drukarki. W załączeniu znajdziesz szkielet, który możesz wydrukować na papierze, aby złożyć kilka stojaków na tubę, jak pokazano na powyższych zdjęciach.
Do solidniejszej obudowy użyłem następujących elementów:
- Rura akrylowa matowa (długość = 1160mm, średnica = 40mm, grubość ścianki = 2mm)
- 2x plastikowa nasadka
- Blok 20x2x30mm z drewna iglastego
- Pasek metalowy 10x1160x2mm
Sama taśma LED ma 1000 mm, pozostawiając 80 mm na obu końcach tuby, aby ukryć elektronikę. Użyłem papieru do drukarki zwiniętego w tubę na obu końcach, aby były nieprzezroczyste. Aby ułatwić wkładanie, przykleiłem taśmę LED do długiego metalowego paska
Wyfrezowałem stojaki z bloku drewna iglastego. Jeśli chcesz zrobić to samo, plik.stl znajduje się poniżej. Możesz również rozważyć wydrukowanie stoiska w 3D.
Zalecana:
Lampa mumia - inteligentna lampa sterowana przez Wi-Fi: 5 kroków (ze zdjęciami)
Lampa Mumia - Inteligentna Lampa Sterowana WiFi: Około 230 tysięcy lat temu człowiek nauczył się kontrolować ogień, co prowadzi do poważnej zmiany w jego stylu życia, ponieważ zaczął pracować w nocy również przy użyciu światła z ognia. Można powiedzieć, że to początek Oświetlenia Wewnętrznego. Teraz ja
Lampa spiralna (znana również jako lampa biurkowa Loxodrome): 12 kroków (ze zdjęciami)
Lampa spiralna (znana również jako Loxodrome Desk Lamp): Lampa spiralna (znana również jako Loxodrome Desk Lamp) to projekt, który rozpocząłem w 2015 roku. Zainspirował go Loxodrome Sconce Paula Nylandera. Moim pierwotnym pomysłem była lampa biurkowa z napędem, która rzucałaby na ścianę płynące wiry światła. Zaprojektowałem i
LAMPA BALONOWA!!!NIESAMOWITE!!! (prosta lampa Awsome Ballon)!!: 6 kroków (ze zdjęciami)
LAMPA BALONOWA!!!NIESAMOWITE!!! (prosta Awsome Ballon Lamp)!!: Prosta lampa balonowa jest wykonana z balonów i taśmy led 12 V ze sterownikiem led
Intymna lampa wideo/lampa fotograficzna z ręki: 7 kroków (ze zdjęciami)
Intymna lampa wideo/lampa fotograficzna z ręki: Wiem, o czym myślisz. Według „intymny” Miałem na myśli oświetlenie z bliska w trudnych sytuacjach oświetleniowych – niekoniecznie w „sytuacjach intymnych”. (Jednak można go również użyć do tego …) Jako filmowiec z Nowego Jorku - lub
Zasilana tablica projektowa/stacja lutownicza: 9 kroków
Zasilana tablica projektowa/stacja lutownicza: To jest moja nowa tablica projektowa/stacja lutownicza. To jest niesamowite! Do niedawna mieszkałem w domu bez warsztatu. Wszystkie moje duże projekty musiały być wykonane w wiaty, która jest do bani, gdy mieszka się w miejscu, w którym jest wietrznie i deszczowo