Isi kandungan:

Halloween Cheerlights: 4 Langkah (dengan Gambar)
Halloween Cheerlights: 4 Langkah (dengan Gambar)

Video: Halloween Cheerlights: 4 Langkah (dengan Gambar)

Video: Halloween Cheerlights: 4 Langkah (dengan Gambar)
Video: ESP32 Tutorial 47 - WS2812 CheerLights using MQTT over Internet | SunFounder's ESP32 IoT Learnig kit 2024, November
Anonim
Ceria Halloween
Ceria Halloween

Pada halloween terakhir saya memutuskan untuk membuat projek untuk musim ini. Dengan menggunakan model hantu 3D yang saya cetak di Prusa i3 dan projek Cheerlights, saya membuat hiasan Halloween yang berubah warna secara rawak.

Projek Cheerlight adalah projek sumber terbuka yang menyegerakkan semua peranti cahaya yang menggunakannya. Melalui Twitter, menggunakan hashtag #cheerlight, kami memilih warna dari palet warna projek Cheerlights. Semua peranti yang disambungkan ke projek Cheerlights membaca warnanya melalui api dan menukar warnanya menjadi. Melalui tweet adalah mungkin untuk mengubah warna semua peranti planet yang disambungkan ke projek.

Langkah 1: Bahan dan Alat

Bahan

  • ESP-01
  • Kabel Awg 22
  • Cincin dipimpin WS2812
  • Pemegang bateri
  • Bateri
  • Pin Rok Soket Wanita
  • Papan Protob
  • Pateri

Alat

  • Pencetak 3D
  • Besi pematerian

Model 3D

Cute Hug Me Ghost

Langkah 2: Perhimpunan

perhimpunan
perhimpunan
perhimpunan
perhimpunan
perhimpunan
perhimpunan

Pertama, perlu dibuat sokongan untuk sambungan. Ini dibuat menggunakan protoboard, soket wanita untuk ESP-01 dan solder. Soket wanita membolehkan mengeluarkan ESP-01 dengan mudah untuk digunakan dalam projek lain atau menggantinya sekiranya gagal. Pateri digunakan untuk memperbaiki komponen dan membuat trek penghubung. Protoboard dilengkapi pra-bor dan dengan sambungan di sekitar setiap lubang. Hanya perlu memperbaiki komponen dan bergabung dengan pelbagai lubang untuk membuat trek.

Kemudian pemegang bateri disolder. Pada masa yang sama, pangkalan yang menempatkan komponen dicetak. Ini terdiri dari dasar persegi, dengan ruang yang cukup untuk menempatkan pelbagai komponen, bukaan cincin yang dipimpin dan ruang yang cukup untuk hantu yang dicetak.

Setelah pangkalan siap, cincin dipimpin dipasang dan disambungkan ke sokongan komponen yang tinggal. Sokongan dan pemegang bateri dipasang ke dasar dengan gam termal.

Langkah 3: Kod

Kod tersebut akan menghubungkan ESP-01 ke rangkaian tanpa wayar dan kemudian menyambung ke projek lampu sorot dan memeriksa warna semasa. Ia kemudian mengubah warnanya menjadi warna projek lampu sorak.

Agar kod berfungsi, tiga perpustakaan diperlukan:

  • ThingSpeak - untuk menyambung ke projek Cheerlights
  • ESP8266WiFi - untuk menggunakan ESP-01
  • Adafruit_NeoPixel - untuk menggunakan cincin dipimpin

Kod (anda boleh mendapatkannya di Akaun GitHub saya)

#sertakan

#include #include #define PixelPin 2 #define PixelNum 12 const char * ssid = "dev"; const char * kata laluan = "RatoRoeuRolha"; sorakan panjang yang tidak ditandatanganiLightsChannelNumber = 1417; int delayval = 500; String colorName = {"none", "red", "pink", "green", "blue", "cyan", "white", "warmwhite", "oldlace", "ungu", "magenta", "kuning", "oren"};

// Peta nilai RGB untuk setiap nama warna Cheerlight

int colorRGB [3] = {0, 0, 0, // "none" 255, 0, 0, // "red" 255, 192, 203, // "pink" 0, 255, 0, // "hijau" 0, 0, 255, // "biru" 0, 255, 255, // "sian", 255, 255, 255, // "putih", 255, 223, 223, // "warmwhite", 255, 223, 223, // "oldlace", 128, 0, 128, // "ungu", 255, 0, 255, // "magenta", 255, 255, 0, // "kuning", 255, 165, 0}; // "oren"}; Adafruit_NeoPixel piksel = Adafruit_NeoPixel (PixelNum, PixelPin, NEO_GRB + NEO_KHZ800); Pelanggan WiFiClient; batal persediaan () {Serial.begin (9600); WiFi.begin (ssid, kata laluan); WiFi.mode (WIFI_STA); Serial.println ("."); sementara (WiFi.status ()! = WL_CONNECTED) {kelewatan (500); Cetakan bersiri ("."); } Serial.println (""); Serial.print ("Ligado a"); Serial.println (ssid); Serial.print ("Endereço IP:"); Serial.println (WiFi.localIP ()); piksel.begin (); ThingSpeak.begin (pelanggan); } gelung void () {String color = ThingSpeak.readStringField (cheerLightsChannelNumber, 1); setColor (warna); //Serial.println(warna); kelewatan (5000); } void setColor (String color) {untuk (int iColor = 0; iColor <= 12; iColor ++) {if (color == colorName [iColor]) {untuk (int i = 0; i <PixelNum; i ++) {

pixels.setPixelColor (i, pixels. Color (colorRGB [iColor] [0], colorRGB [iColor] [1], colorRGB [iColor] [2])); // Warna hijau terang yang sederhana.

piksel.show (); // Ini menghantar warna piksel yang dikemas kini ke perkakasan. } kembali; }}}

Langkah 4: Langkah Akhir

Langkah Akhir
Langkah Akhir
Langkah Akhir
Langkah Akhir
Langkah Akhir
Langkah Akhir
Langkah Akhir
Langkah Akhir

Hantu itu dicetak pada Prusa i3 menggunakan PLA lutsinar untuk membenarkan cahaya.

Akhirnya bateri dipasang dan hantu diletakkan.

Kirimkan tweet dengan "#cheerlight red" menukar warna menjadi merah.

Disyorkan: