Daftar Isi:

LED Raksasa - Pelacakan Adam Savage: 13 Langkah (dengan Gambar)
LED Raksasa - Pelacakan Adam Savage: 13 Langkah (dengan Gambar)

Video: LED Raksasa - Pelacakan Adam Savage: 13 Langkah (dengan Gambar)

Video: LED Raksasa - Pelacakan Adam Savage: 13 Langkah (dengan Gambar)
Video: Женщина-лев - Драма - Полный английский фильм - HD 2024, Juli
Anonim
LED Raksasa - Melacak Adam Savage
LED Raksasa - Melacak Adam Savage
LED Raksasa - Melacak Adam Savage
LED Raksasa - Melacak Adam Savage
LED Raksasa - Melacak Adam Savage
LED Raksasa - Melacak Adam Savage

Di sini Anda akan menemukan tampilan LED Raksasa, yang dirancang ulang untuk berfungsi sebagai lampu peringatan Twitter, YouTube, dan Twitch. Tujuan utamanya bagi saya adalah untuk memberikan peringatan ketika ada tweet, video, atau aliran kedutan oleh Adam Savage dan tim yang diuji, dan agar adil, beberapa orang lain yang saya ikuti seperti Robert Cowan, Marty the Mechanic, dan lainnya.

Jelas saya bisa menggunakan twitter, twitch dll, di ponsel atau laptop saya, tetapi ada begitu banyak peringatan dari begitu banyak layanan dan notifikasi yang pada dasarnya saya matikan semuanya, ditambah telepon masuk ke mode senyap setelah jam 10 malam Karena itu juga akan berfungsi dengan Webhook Saya juga memiliki satu yang dikonfigurasi untuk menerima pembaruan dari beberapa tabel Biq Query yang terkait dengan pekerjaan sehingga memberi tahu saya jika mereka telah diperbarui OK dengan jumlah catatan yang cukup setiap hari.

Adafruit memiliki layanan bernama Adafruit IO yang ingin saya coba dan saya bermaksud sepanjang tahun untuk mencoba dan menangani kembali ESP8266 setelah mendengar beberapa kata bagus di Wemos D1 Mini rilis 3. Semuanya mulai menyatu ketika saya menemukan desain untuk LED di thingiverse oleh Astro73. Saya mulai dengan itu dan mengerjakannya sedikit untuk skala dan juga menambahkan tombol tekan ke dasar dan beberapa perubahan kosmetik lainnya. Anda dapat menemukan remixnya di sini

Plus itu dapat dikontrol suara melalui Alexa sekarang juga dengan munculnya kata pemicu alexa IFTTT.

Langkah 1: Bahan

Jika Anda ingin membuat salah satu dari daftar suku cadang ini cukup kecil dan juga relatif murah. Jika Anda tidak keberatan menunggu, Anda dapat mencari suku cadang utama dari luar negeri serta mengurangi biaya lebih banyak lagi. Bahan utamanya adalah casing dan alas LED Raksasa. Jika Anda memiliki printer 3D maka Anda sudah siap, jika tidak ada beberapa perusahaan printer online yang akan mencetak suku cadangnya. Hanya ada 3 jadi itu juga harus cukup murah.

1. Wemos D1 Mini R3

2. Neopiksel 8 LED

3. Basis dan kaki tercetak dalam PETG hitam

4. Lensa cetak dan dudukan lampu di PLA transparan

5. Saklar Tombol Tekan 12mm persegi x1

6. Tutup Tombol Tekan Bulat x1

7. Kabel USB dan adaptor untuk daya

8. Kepala tombol M3x20

9. Kacang M3

10. Baut M2x8mm x2

11. M2 Kacang x2

12. Beberapa kabel Hitam, Merah dan Kuning

13. Resistor 300-500 Ohm

14. Sepotong kecil heatshrink

Anda dapat menggunakan perangkat ESP lain, atau bahkan Huzzah, tetapi kasing dirancang untuk mini yang memiliki lubang pemasangan dan tidak perlu merekatkannya.

Langkah 2: Alat

Untuk membuat dan membangun ini, Anda memerlukan yang berikut:

1. pencetak 3D

2. Kunci Allen 1,5mm dan 2mm

3. Besi Solder dan solder

4. Wirecutter

5. Tang

6. Selera humor

7. Pisau bedah untuk pemangkasan

Langkah 3: Persyaratan Kode

Jadi sebelum kita masuk ke dalam build, saya akan menguraikan beberapa persyaratan yang ingin saya sertakan ke dalam ini. Sebagian besar dari ini ada dalam pikiran saya sebelum memulai dan saya telah membuat sketsa beberapa alur untuk mengetahui apa yang akan saya coba. Seiring berjalannya waktu, saya menemukan beberapa masalah dengan layanan yang ingin saya atasi.

Persyaratan.

Saya ingin LED menunjukkan kepada saya ketika tweet atau video baru diposting dan juga ternyata ketika saluran Twitch tertentu dimulai. Saya juga ingin peringatan itu terus berjalan sampai saya membatalkannya sehingga jika saya pergi sebentar, saya akan tahu apa yang terjadi selama saya pergi. Saya juga ingin itu dapat dikonfigurasi untuk akses Wi-Fi tanpa harus me-reflash perangkat lunak juga. Satu hal terakhir yang muncul juga adalah selain menanggapi acara secara langsung, saya membutuhkannya untuk memeriksa setiap 15 menit status data yang diumpankan ke sana

Jadi dengan dasar-dasarnya, hal berikutnya adalah mencari tahu bagaimana setiap bagian akan dieksekusi. Anda dapat melihat ide saya di bawah ini tentang bagian mana yang akan ditangani oleh jenis perangkat lunak atau platform apa.

1. Adafruit IO, ini digunakan untuk mengatur feed untuk peringatan, Anda bisa mendapatkan akun di sini

Saya akan menggunakan ini sebagai layanan antrian pesan di mana saya akan mengirimnya pesan dari IFTTT dan kemudian LED Raksasa menerima pesan-pesan itu sehingga dapat menindaklanjutinya.

2. IFTTT, https://ifttt.com/ dan ini digunakan untuk memindai saluran Twitter, YouTube dan Twitch yang dipilih dan kemudian mengirimkan acara ke Adafruit IO

3. Kode ESP8266 untuk membaca feed ini dan ini dibakar ke dalam ESP8266 dengan menggunakan standar Arduino IDE (v1.8.8)

4. Kode Arduino, dimuat ke ESP8266 untuk membaca umpan Adafruit IO dan menyalakan Neopixel

5. Kode Arduino untuk membaca tombol tekan untuk menghapus peringatan

6. Dapat mengkonfigurasi adaptor WiFi tanpa harus mem-reburn ESP, dan untuk ini saya menggunakan perpustakaan WiFi Manager oleh Tzapu, https://github.com/tzapu/WiFiManager meskipun opsi pengaturan memerlukan sedikit perubahan untuk mengakomodasi Adafruit IO perpustakaan.

Langkah 4: Menyiapkan Adafruit IO

Menyiapkan Adafruit IO
Menyiapkan Adafruit IO

Ini adalah langkah pertama karena Anda akan memerlukan kunci akses yang Anda buat di sini dan juga perlu membuat umpan yang akan dikirimi acara oleh IFTTT. Anda dapat mengatur akun ini dan akun IFTTT dan cukup banyak mengatur dan bekerja sebelum Anda pindah ke bagian Arduino dari proyek ini.

Daripada menyalin contoh adafruit, Anda dapat menemukan dasar-dasarnya di sini https://learn.adafruit.com/gmailbox/adafruit-io-se… yang akan membantu Anda menyiapkannya.

Kemudian untuk LED GIANT Anda juga perlu menambahkan feed berikut ke saluran default

1. warna - ini memungkinkan kita mengubah warna dari jarak jauh dengan sesuatu seperti Alexa

2. kedutan

3. penggemar twitter

4. youtubefan

Kemudian Anda juga perlu membuat grup baru jika Anda belum memanggil input, kemudian ke grup ini juga membuat umpan yang disebut digital. Ini akan memungkinkan kita juga melihat efek menekan tombol jika kita ingin memperluas penggunaan perangkat ini untuk tujuan lain.

Jika Anda juga ingin pada saat ini adalah bermain dengan dasbor sehingga Anda dapat menambahkan umpan ini ke dalamnya untuk tujuan informasi dan pencarian kesalahan.

Langkah 5: Menyiapkan IFTTT

Menyiapkan IFTTT
Menyiapkan IFTTT
Menyiapkan IFTTT
Menyiapkan IFTTT

Anda juga dapat mengikuti panduan Adafruit di sini, https://learn.adafruit.com/gmailbox/ifttt-setup. Anda kemudian dapat memilih tindakan Twitter, youtube, dan twitch untuk mengatur daftar tontonan Anda dan kemudian mengirimkannya ke feed yang relevan. Saya telah melampirkan video sederhana sehingga Anda dapat melihat seberapa cepatnya.

Selain itu jika Anda ingin mengontrol suara warna LED Anda oleh Alexa, sekarang ada applet Amazon Alexa. Untuk mengatur salah satunya pilih aplikasi dan pilih kata biru, lalu hubungkan ke umpan Adafruit yang telah Anda atur bernama warna dan masukkan 0000ff sebagai data untuk dikirim ke saluran itu. Anda juga dapat meneruskan perintah tambahan dengan cara ini ke LED GIANT seperti reset atau reboot jika Anda mau.

Saat Anda menyiapkan pemicu IFTTT, Anda harus memilih data yang dikirim dan ini disebut "Bahan" di IFTTT. Bagian pertama yang kita butuhkan adalah "UserName" lalu spasi dan kemudian "CreatedAt"

Kami memilih kedua item sehingga ketika data tiba di ESP8266, kami kemudian dapat mendeteksi apakah itu tweet baru dan itu berbeda dari tweet sebelumnya oleh pengguna yang sama. Anda dapat melihat seperti apa ini dari gambar terlampir.

Langkah 6: Memasang Papan ESP8266 Ke Arduino IDE

Di sinilah segala sesuatunya sedikit lebih rumit dan mungkin membutuhkan sedikit lebih banyak waktu untuk diselesaikan. Selain ESP8266 Anda juga memerlukan perpustakaan Adafruit IO dan Anda dapat mengikuti panduan ini untuk itu.

learn.adafruit.com/gmailbox/arduino-setup

Ada penjelasan sederhana tentang cara menambahkan papan ESP8266 di sini juga

Jangan lupa untuk memastikan Arduino IDE Anda juga sudah versi terbaru dan saya menggunakan 1.8.8 pada saat menulis ini.

Pustaka lain yang kami gunakan adalah SimpleTimer karena ini akan memungkinkan kami untuk mengatur pengatur waktu latar belakang sehingga kami dapat memeriksa umpan secara berkala, petunjuk untuk ini dapat ditemukan di using simpletimer https://playground.arduino.cc/Code/SimpleTimer# Unduh

Langkah 7: Memasang Perpustakaan Manajer WiFi

Untuk memungkinkan kami mendapatkan konfigurasi jarak jauh dari pengaturan WiFi, kami akan menggunakan Tzapu Wifi Manger, detail tentang ini dan cara menginstal perpustakaan dapat ditemukan di sini, github.com/tzapu/WiFiManager

Ini adalah pemasangan pustaka eksternal yang cukup sederhana dan opsinya sudah ada di bagian Kelola pustaka di bagian alat Arduino IDE Anda.

Langkah 8: Kode ESP8266 - Dengan Pencetakan Debug

// Kode ini berisi pernyataan cetak sehingga Anda dapat memantau operasinya melalui monitor Serial

// Berdasarkan Contoh Output LED RGB IO Adafruit // Adafruit menginvestasikan waktu dan sumber daya untuk menyediakan kode sumber terbuka ini. // Tolong dukung Adafruit dan perangkat keras open source dengan membeli // produk dari Adafruit! // // Ditulis oleh Todd Treece untuk Adafruit Industries // Hak Cipta (c) 2016-2017 Adafruit Industries // Dilisensikan di bawah lisensi MIT. // // Semua teks di atas harus disertakan dalam redistribusi apa pun. // menggunakan simpletimer https://playground.arduino.cc/Code/SimpleTimer#Do… // https://playground.arduino.cc/Code/SimpleTimer#Do… // sisa kode oleh Ajax Jones https:// playground.arduino.cc/Code/SimpleTimer#Lakukan // https://playground.arduino.cc/Code/SimpleTimer#Lakukan… // ******************* ******* Konfigurasi ***********************************/ #define IO_USERNAME "IO Anda Nama pengguna" #define IO_KEY "Kunci IO Anda" // biarkan kosong karena kami akan mendapatkannya melalui Manajer Wifi, tampaknya berfungsi dengan baik dengan cara ini #define WIFI_SSID "" #define WIFI_PASS "" // kami tidak menyertakan ini karena AdafruitIO akan sertakan versinya //#include //https://github.com/esp8266/Arduino //diperlukan untuk library #include #include #include "WiFiManager.h" //https://github.com/tzapu/WiFiManager # termasuk pengatur waktu SimpleTimer; #sertakan "AdafruitIO_WiFi.h" AdafruitIO_WiFi io(IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS); //************************ Konfigurasi NeoPixel ********************** *********// #include "Adafruit_NeoPixel.h" #define PIXEL_PIN 5 #define PIXEL_COUNT 8 int NUM_LEDS = PIXEL_COUNT; #define PIXEL_TYPE NEO_GRB + NEO_KHZ800 Adafruit_NeoPixel piksel = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE); // Warna utama dan warna default panjang default_color = 865554; panjang RED_color = 2689027; // merah #290803 panjang GREEN_color = 865554; // hijau #0d3512 panjang BLUE_color = 856117; // biru #0d1035 panjang PURPLE_color = 2364968; // ungu #241628 panjang BRIGHTRED_color = 15990784; // merah terang #f400000 // ------------------------------------------ ----------------------------------------------- //waktu ide diambil dari https://www.safaribooksonline.com/library/view/arduino-cookbook-2nd/9781449321185/ch12.html https://playground.arduino.cc/Code/SimpleTimer#Do… https://playground. arduino.cc/Code/SimpleTimer#Lakukan… const long oneSecond = 1000; // satu detik adalah seribu milidetik const long oneMinute = oneSecond * 60; const long fiveMinutes = oneMinute * 5; const panjang lima belasMenit = limaMenit * 3; const long oneHour = lima belasMenit * 4; // Pengguna Twitter yang paling kami sukai dan ini akan berkedip dan semua tweet lain yang kami pilih hanya akan berubah warna String SuperTweet = { "ajaxjones", "donttrythis", "prodnose", "testedcom"}; String SuperTuber = {"diuji", "sapi", "marty"}; // mengatur status peringatan sehingga kita dapat terus mem-flash LED di loop utama bool WHIZZY_TWEET = false; bool WHIZZY_TUBER = salah; bool WHIZZY_TWITCH = salah; // Menyimpan tweet dan youtube terakhir sehingga kami dapat menyodok layanan untuk memeriksa ulang setiap saat String lasttweet =""; String tabung terakhir =""; String lasttwitch =""; // pin digital 5, ini adalah tombol yang kami gunakan untuk mengatur ulang warna peringatan #define BUTTON_PIN 4 // status tombol, tidak benar-benar digunakan karena kami mencari tombol pada interupt bool current = false; bool terakhir = salah; // mengatur feed 'warna', agar kami dapat menguji dan mengirim warna sesuai permintaan atau menggunakan pemicu Alexa AdafruitIO_Feed *color = io.feed("color"); // mengatur umpan 'twitterfan' - AdafruitIO_Feed Biru *twitter = io.feed("twitterfan"); // siapkan umpan 'youtubefan' - AdafruitIO_Feed Merah *youtube = io.feed("youtubefan"); // atur feed 'twitch' - AdafruitIO_Feed Ungu *twitch = io.feed("twitch"); // set up feed 'digital' AdafruitIO_Feed *digital = io.feed("input.digital"); // ------------------------------------------------ ----------------------------------------- void setup() { // set the pin tombol sebagai input, kami menggunakan INPUT_PULLUP karena kami tidak harus menggunakan resistor eksternal pinMode(BUTTON_PIN, INPUT_PULLUP); // Melampirkan interupsi ke vektor ISR untuk tombol attachInterrupt(digitalPinToInterrupt(BUTTON_PIN), handleInterrupt, FALLING); // Mulai serial dan tunggu serial monitor terbuka lalu sambungkan ke io.adafruit.com Serial.begin(115200); sementara (! Seri); // neopiksel mulai piksel.begin(); // Atur status awal menjadi merah sehingga kita tahu bahwa kita sedang offline dan bekerja setAll(0xf4, 0x00, 0x00); // merah // untuk pengujian, ini akan menunjukkan status WiFi WiFi.printDiag(Serial); WiFiManager wifiManager; //set callback yang dipanggil saat koneksi ke WiFi sebelumnya gagal, dan masuk ke mode Access Point wifiManager.setAPCallback(configModeCallback); //reset pengaturan yang disimpan, hapus komentar pada baris berikutnya untuk memaksa pengujian Pengelola WiFi sehingga Anda dapat terhubung //menggunakan ponsel atau tablet Anda untuk mencari jaringan LED Raksasa yang akan muncul //wifiManager.resetSettings(); //menyetel batas waktu hingga portal konfigurasi dimatikan //berguna untuk membuat semuanya coba lagi atau tidur //dalam detik wifiManager.setTimeout(240);if (!wifiManager.autoConnect("GIANT LED")) { Serial.println (F("gagal terhubung dan mencapai batas waktu")); //reset dan coba lagi delay(3000); ESP.reset(); penundaan (1000); } // untuk pengujian kita dapat melihat apakah kita memiliki kredensial yang tepat untuk menghubungkan //Serial.println(WiFi. SSID()); //Serial.println(WiFi.psk());//WiFi.begin(WIFI_SSID, WIFI_PASS); //sementara (WiFi.status() != WL_CONNECTED) { //delay(500); //Serial.print("."); //} Serial.println(); Serial.println(F("WiFi terhubung")); Serial.println(F("Alamat IP: ")); Serial.println(WiFi.localIP()); // sekarang kita terhubung ke layanan IO Serial.print(F("Connecting to Adafruit IO")); io.koneksi(); // siapkan pengendali pesan untuk umpan 'warna'. warna->onMessage(handleMessage); // mengatur penangan pesan untuk umpan 'twitterfan'. twitter->onMessage(twitterMessage); // siapkan pengendali pesan untuk umpan 'youtubefan'. youtube->onMessage(youtubeMessage); // siapkan pengendali pesan untuk umpan 'twitch'. kedutan->onMessage(twitchMessage); // menunggu koneksi sementara (io.status() < AIO_CONNECTED) { Serial.print(F(".")); penundaan (500); } // kita terhubung Serial.println(); Serial.println(io.statusText()); //Serial.println(sizeof(SuperTweet)); //Serial.println(sizeof(SuperTweet[0])); // Cetak daftar akun Twitter yang kita tunggu (byte idx = 0; idx < sizeof(SuperTweet) / sizeof(SuperTweet[0]); idx++) { Serial.print(F("SuperTweet[")); Serial.print(idx); Serial.print("] = '"); Serial.print(SuperTweet[idx]); Serial.println("'"); } // Cetak daftar akun YouTube yang kami tunggu (byte idx = 0; idx get(); // minta status feed yang ada, jadi Anda perlu menekan reset saat memulai youtube ->get(); twitter->get(); twitch->get(); for (int i = 0; i get(); twitter->get(); twitch->get(); Serial.print("mendapatkan beberapa tweet"); Serial.print(" uptime (s): "); Serial.println(millis() / 1000); } // ---------------- -------------------------------------------------- ----------------------- void loop() { // io.run(); diperlukan untuk semua sketsa. io.run(); timer. run(); if (WHIZZY_TWEET == true) { RunningLights(0x0d, 0x10, 0x35, 250); } if (WHIZZY_TUBER == true) { RunningLights(0x29, 0x08, 0x03, 250); } if (WHIZZY_TWITCH == true) { RunningLights(0x24, 0x16, 0x28, 250); } } // --------------------------------- -------------------------------------------------- ------ // atur interupt untuk menghapus peringatan saat tombol ditekan dan periksa internet void handleInterrupt() { WHIZZY_TWEET = Salah; WHIZZY_TUBER = salah; WHIZZY_TWITCH = salah; saat ini = benar; // kirim status saat ini ke feed 'input.digital' di adafruit io sehingga kita dapat melihatnya digital->save(current); for (int i = 0; i ")); Serial.print(current); Serial.print(F(" and default color")); Serial.println(default_color); current = false; digital->save(current); while (WiFi.status() != WL_CONNECTED) { delay(500); setAll(0xeb, 0xfb, 0x03); // ebfb03 kuning } } // -------------- -------------------------------------------------- ------------------------- // ini dipanggil setiap kali pesan 'twitter' tiba - setel LED ke Blue void twitterMessage(AdafruitIO_Data *data) { String tweeter = (data->toString()); tweeter.toLowerCase(); if ((lasttweet != tweeter) && (tweeter != "")) { lasttweet = tweeter; setAll(0x0d, 0x10, 0x35); // Setel tweet warna biru Serial.print(F("Tweet: ")); Serial.print(tweeter); // periksa tweeter favorit untuk (byte idx = 0; idx = 0) { // Mari kita buat tweet mereka tweets whizzy #0d1035 WHIZZY_TWEET = true; Serial.print(" by "); Serial.print(SuperTweet[idx]); } } Serial.println(""); } } // --------- -------------------------------------------------- ---------------------------- -- // ini dipanggil setiap kali pesan 'youtube' tiba - setel LED ke RED void youtubeMessage(AdafruitIO_Data *data) { String tuber = (data->toString()); tuber.toLowerCase(); if ((lasttube != umbi) && (tuber !="")) { lasttube = umbi; setSemua(0x29, 0x08,0x03); // Atur warna merah youtube 290803 Serial.print(F("Youtube: ")); Serial.println(umbi); // cek Youtuber favorit untuk (byte idx = 0; idx = 0) { // Ayo buat video mereka jagoan #0d1035 WHIZZY_TUBER = true; Serial.print(" oleh "); Serial.print(SuperTuber[idx]); } } Serial.println(""); } } //---------------------------------------------- ------------------------------------------------------- // ini dipanggil setiap kali a pesan 'twitch' tiba - setel LED ke UNGU void twitchMessage(AdafruitIO_Data *data) { String twitch = (data->toString()); twitch.toLowerCase(); if ((kedutan terakhir != kedutan) && (kedutan !="")) { kedutan terakhir = kedutan; setSemua(0x24, 0x16, 0x28); // Atur warna ungu kedutan #241628 Serial.print(F("Kedutan: ")); Serial.println(berkedut); // Tidak ada centang untuk Twitcher favorit kami hanya mengikuti satu WHIZZY_TUBER = true; Serial.println(""); } } //---------------------------------------------- ------------------------------------------------------- // fungsi ini dipanggil kapanpun pesan 'warna' diterima // yang akan mengatur warna default saat startup berdasarkan nilai umpan warna terakhir void handleMessage(AdafruitIO_Data *data) { // mencetak nilai RGB dan nilai hex Serial.print(F("Received HEX value: ")); Serial.println(data->nilai()); warna panjang = data->toNeoPixel(); //warna_default = warna; Serial.print(F("Panjang HEX yang diterima: ")); Serial.println(warna); for (int i = 0; i < PIXEL_COUNT; ++i) { pixels.setPixelColor(i, color); } showStrip(); } // ----------------------------------------------- ------------------------------------------ void RunningLights (byte merah, byte hijau, byte biru, int WaveDelay) { int Posisi = 0; for (int j = 0; j < NUM_LEDS; j++) { Posisi++; // = 0; //Posisi + Nilai; for (int i = 0; i < NUM_LEDS; i++) { setPixel(i, ((sin(i + Posisi) * 127 + 128) / 255)*merah, ((sin(i + Posisi) * 127 + 128) / 255)*hijau, ((sin(i + Posisi) * 127 + 128) / 255)*biru); } showStrip(); penundaan (Penundaan Gelombang); } } //---------------------------------------------- ------------------------------------------------------- // Rutinitas neopiksel membatalkan setAll(byte merah, byte hijau, byte biru) { for (int i = 0; i getConfigPortalSSID()); //masuk ke mode konfigurasi, setel Neo Pixel ke ungu #241628 = 2364968 // setAll(0x24, 0x16, 0x28); setAll(0xeb, 0xfb, 0x03); // ebfb03 kuning }

Langkah 9: Menyolder Semuanya Bersama

Menyolder Semuanya Bersama-sama
Menyolder Semuanya Bersama-sama
Menyolder Semuanya Bersama-sama
Menyolder Semuanya Bersama-sama
Menyolder Semuanya Bersama-sama
Menyolder Semuanya Bersama-sama

Segala sesuatu dalam desain ini disolder bersama dan harus cukup mudah dikelola. Saya telah menggunakan 3 kabel berwarna berbeda untuk mempermudah dan hal pertama adalah mengukur kabel untuk neopixel ke WEMOS. Saya menganyamnya dan meletakkan sepotong kecil heat-shrink dan kemudian menyoldernya seperti yang ditunjukkan sehingga akan rata di lensa.

Tombol berikutnya dan akan pas ke dasar. Satu sisi tombol mengarah ke Gnd dan ini dipelintir bersama dengan kabel Ground neopixel. Saya kemudian menyegelnya dan menyoldernya menjadi satu ke pin ground WEMOS.

Kabel daya untuk Neopixel menuju ke 5v PIN. Kabel sinyal, atau Di (data masuk) dari neopiksel disolder ke pin Wemos sebagai D1. Ada beberapa situs yang menyarankan memasukkan resistor 300-500 Ohm secara seri dengan ini, tetapi sampai sekarang saya tidak punya masalah jadi untuk saat ini hanya koneksi langsung.

Untuk memastikan praktik yang baik, dan atas saran dari situs seperti Adafruit, saya telah memasang resistor 330R secara seri dengan garis Di ke neopiksel. Ini untuk mencegah LED pertama di ring mengeluarkan pixies ajaib dan cukup dilakukan dengan memotong kabel dan memasang resistor. Sepotong kecil heatshrink akan menghentikan celana pendek yang tidak patuh. Anda dapat memotong resistor cukup pendek dan hanya meletakkan lingkaran di setiap ujungnya dan melakukan hal yang sama dengan kawat.

Kabel lain untuk tombol langsung ke pin D2. Tidak perlu resistor pullup karena ini ditangani dalam perangkat lunak dengan meletakkan perintah PULLUP terhadap pin itu.

Itu pada dasarnya semua ada untuk itu.

Langkah 10: 3D Cetak

Terlampir di sini adalah file STL yang kami gunakan untuk LED Raksasa. File-file tersebut adalah remix/rework dari astro73 dan Anda juga dapat mengambil semua file dari

Untuk kaki dan alas saya menggunakan filamen Sunlu PETG+ yang bekerja sangat baik pada Prusa i3 dan saya menggunakan pengisi gyroid 10 atau 20%.

Untuk LED itu sendiri saya telah menggunakan PLA transparan Sunlu dan menggunakan pengisi sekitar 10% dengan lapisan atas dan bawah yang konsentris.

Dengan masing-masing saya hanya menggunakan pengaturan saham Prusa PET dan Prusa PLA di Slic3r dan semuanya bekerja dengan baik. Saya mendapatkan sedikit tali di kaki, tetapi saya hanya mengembuskan obor di atasnya dan tali itu hilang:)

Langkah 11: Rakitan LED Raksasa

Rakitan LED Raksasa
Rakitan LED Raksasa
Rakitan LED Raksasa
Rakitan LED Raksasa
Rakitan LED Raksasa
Rakitan LED Raksasa

Semua bagian menyatu dengan sangat mudah, Anda harus menekan mur M3 ke dasar untuk memungkinkan sekrup menahan benda itu bersama-sama. Anda juga perlu menghubungkan NeoPixel ke WEMOS melalui kaki terlebih dahulu. Saya sedang mempertimbangkan bagaimana memasang beberapa konektor, tetapi memutuskan bahwa itu tidak akan terlepas di masa depan.

Lensa hanya pas di kaki dan pada gilirannya dibaut ke dasar dengan baut M3x20mm tunggal. Anda mungkin perlu mengayunkan pisau di sekitar bagian dalam lubang kancing agar bisa bergerak dengan baik dan bebas. Wemos ditahan di tempatnya dengan 2 baut soket M2x8 yang disekrup dari bawah.

Untuk menyelesaikannya, Anda bisa merekatkan sepotong kain kempa ke alasnya untuk menghentikan selip jika diperlukan.

Langkah 12: Petunjuk Penyiapan dan Pengoperasian

Image
Image
Petunjuk Penyiapan dan Pengoperasian
Petunjuk Penyiapan dan Pengoperasian
Petunjuk Penyiapan dan Pengoperasian
Petunjuk Penyiapan dan Pengoperasian

Dengan semuanya siap dan perangkat lunak yang diunggah, terapkan daya ke usb dan LED GIANT akan muncul dan LED akan menjadi MERAH dan kemudian berubah menjadi warna kuning. Ini menunjukkan itu off line dan menunggu konfigurasi wifi. Menggunakan telepon atau tampilan serupa untuk jaringan wifi LED GIANT dan hubungkan dan Anda akan mendapatkan layar WiFi Manager. Ini akan memindai area lokal Anda dan Anda cukup memasukkan detail wifi Anda, ESP akan reboot dan Anda sekarang akan online dengan lampu hijau. Ini juga akan terhubung pada titik ini ke IO dan lampu peringatan akan muncul karena belum melihat pesan sebelumnya. Tekan tombol beberapa kali dan LED GIANT sekarang siap untuk pembaruan yang akan datang.

Anda dapat masuk ke dasbor Adafruit IO pada titik ini dan menambahkan beberapa data ke setiap umpan dan melihat lampu masuk ke mode peringatan.

Selamat bersenang-senang !

Langkah 13: Apa Lagi yang Bisa Dilakukan Raksasa LED

Apa Lagi Yang Bisa Dilakukan LED Raksasa?
Apa Lagi Yang Bisa Dilakukan LED Raksasa?
Apa Lagi Yang Bisa Dilakukan LED Raksasa?
Apa Lagi Yang Bisa Dilakukan LED Raksasa?

Setelah Anda memiliki dasar-dasar desain seperti ini dan dengan IFTTT Anda dapat menggunakannya untuk banyak hal. Peringatan kotak masuk Gmail adalah salah satu yang mudah, dan karena Adafruit juga bekerja dengan Webhooks, program lain juga dapat mengirim data ke sana. Saya memiliki satu yang sedang disiapkan saat ini untuk melacak beberapa unggahan data Big Query sebagai bagian dari proyek kerja.

Juga dengan tombol, Anda dapat menggunakannya untuk memberi sinyal pada LED RAKSASA lainnya, Anda dapat memilikinya di rumah yang berbeda dan menggunakannya sebagai indikator jarak jauh untuk membuat pihak lain menekan tombol untuk membatalkan lampu.

Berikut ini tautan berguna tentang metode webhook untuk mengirim data ke umpan. Dalam hal ini menggunakan applet IFTTT tetapi Anda dapat dengan mudah menggunakan metode CURL dengan python.

io.adafruit.com/blog/notebook/2018/11/26/f…

Bahkan dimungkinkan untuk memasukkan OLED 128x32 ke dasar untuk melengkapi LED dengan beberapa konten tekstual dan saat ini saya sedang mengerjakannya dan akan memperbarui STL dan menyediakan kode untuk memanfaatkan IO dengan ini juga.

Direkomendasikan: