2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
U posljednjoj Noći vještica odlučio sam stvoriti projekt za sezonu. Pomoću 3D modela duha koji sam ispisao na Prusa i3 i projekta Cheerlights stvorio sam ukras za Noć vještica koji nasumično mijenja boju.
Cheerlight projekt je projekt otvorenog koda koji sinkronizira sve svjetlosne uređaje koji ga koriste. Putem Twittera, koristeći #cheerlight hashtag, odabrali smo boju iz palete boja projekta Cheerlights. Svi uređaji koji su povezani s projektom Cheerlights čitaju boju kroz api i mijenjaju svoju boju u tu. Putem tvita moguće je promijeniti boje svih uređaja planeta povezanih s projektom.
Korak 1: Materijali i alati
Materijali
- ESP-01
- Kabel AWG 22
- Led prsten WS2812
- Držač baterije
- Baterija
- Ženske igle s utičnicom
- Protoboard
- Lem
Alati
- 3D pisač
- Lemilica
3D model
Slatki Hug Me Ghost
Korak 2: Montaža
Prvo je bilo potrebno stvoriti podršku za veze. Ovo je stvoreno pomoću protoboarda, ženskih utičnica za ESP-01 i lemljenja. Ženske utičnice omogućuju jednostavno uklanjanje ESP-01 za upotrebu u drugom projektu ili zamjenu u slučaju kvara. Lemljenje je korišteno za popravljanje komponenti i stvaranje spojnih tragova. Protoboard dolazi unaprijed izbušen i ima veze oko svake rupe. Potrebno je samo popraviti komponente i spojiti različite rupe za stvaranje tragova.
Zatim je lemljen držač baterije. Istodobno je ispisana baza u kojoj će se nalaziti komponente. Sastoji se od četvrtaste osnove, s dovoljno prostora za smještaj različitih komponenti, otvorom za LED diodu i dovoljno prostora za ispisani duh.
Nakon što je baza spremna, LED prsten je instaliran i spojen na nosač preostalih komponenti. Nosač i držač baterije pričvršćeni su na podlogu pomoću toplinskog ljepila.
Korak 3: Kodirajte
Kôd će spojiti ESP-01 na bežičnu mrežu, a zatim se povezati s projektom cheerlight i provjeriti trenutnu boju. Zatim mijenja boju u boju projekta cheerlight.
Za rad koda potrebne su tri knjižnice:
- ThingSpeak - za povezivanje s Cheerlights projektom
- ESP8266WiFi - za korištenje ESP -01
- Adafruit_NeoPixel - za korištenje LED prstena
Kôd (možete ga pronaći na mom GitHub računu)
#uključi
#include #include #define PixelPin 2 #define PixelNum 12 const char* ssid = "dev"; const char* lozinka = "RatoRoeuRolha"; bez potpisa dugi cheerLightsChannelNumber = 1417; int delayval = 500; Naziv colorName = {"nema", "crveno", "ružičasto", "zeleno", "plavo", "cijan", "bijelo", "toplo bijelo", "staro", "ljubičasto", "magenta", "žuto", "narančasto"};
// Karta RGB vrijednosti za svaki od naziva boja Cheerlight
int colorRGB [3] = {0, 0, 0, // "nema" 255, 0, 0, // "crveno" 255, 192, 203, // "ružičasto" 0, 255, 0, // "zeleno" 0, 0, 255, // "plavo" 0, 255, 255, // "cijan", 255, 255, 255, // "bijelo", 255, 223, 223, // "toplo bijelo", 255, 223, 223, // "oldlace", 128, 0, 128, // "purpurno", 255, 0, 255, // "magenta", 255, 255, 0, // "žuto", 255, 165, 0}; // "naranča"}; Adafruit_NeoPixel pikseli = Adafruit_NeoPixel (PixelNum, PixelPin, NEO_GRB + NEO_KHZ800); WiFiClient wclient; void setup () {Serial.begin (9600); WiFi.započni (ssid, lozinka); WiFi.mode (WIFI_STA); Serial.println ("."); while (WiFi.status ()! = WL_CONNECTED) {odgoda (500); Serial.print ("."); } Serial.println (""); Serial.print ("Ligado a"); Serijski.println (ssid); Serial.print ("Endereço IP:"); Serial.println (WiFi.localIP ()); pikseli.begin (); ThingSpeak.begin (wclient); } void loop () {Boja niza = ThingSpeak.readStringField (cheerLightsChannelNumber, 1); setColor (boja); //Serial.println(boja); kašnjenje (5000); } void setColor (Boja niza) {for (int iColor = 0; iColor <= 12; iColor ++) {if (color == colorName [iColor]) {for (int i = 0; i <PixelNum; i ++) {
pixels.setPixelColor (i, pixels. Color (colorRGB [iColor] [0], colorRGB [iColor] [1], colorRGB [iColor] [2])); // Umjereno svijetlo zelena boja.
pikseli.show (); // Ovo šalje ažuriranu boju piksela na hardver. } return; }}}
Korak 4: Završni koraci
Duh je ispisan na Prusi i3 pomoću prozirnog PLA -a kako bi se omogućio prolaz svjetlosti.
Konačno je baterija instalirana i duh postavljen.
Pošaljite tweet s "#cheerlight red" prebacite boju u crvenu.