Isi kandungan:

Lampu Malam Neopixel: 14 Langkah (dengan Gambar)
Lampu Malam Neopixel: 14 Langkah (dengan Gambar)

Video: Lampu Malam Neopixel: 14 Langkah (dengan Gambar)

Video: Lampu Malam Neopixel: 14 Langkah (dengan Gambar)
Video: TESTING LED RGB WS2812B DENGAN MENGGUNAKAN ARDUINO 2024, November
Anonim
Lampu Malam Neopixel
Lampu Malam Neopixel

Oleh joshua.brooksMengikuti Lagi oleh pengarang:

Penyambung pengaturcaraan pin pogo
Penyambung pengaturcaraan pin pogo
Penyambung pengaturcaraan pin pogo
Penyambung pengaturcaraan pin pogo
Arca Zoetrope genggam
Arca Zoetrope genggam
Arca Zoetrope genggam
Arca Zoetrope genggam
Jam NeoPixel Desktop
Jam NeoPixel Desktop
Jam NeoPixel Desktop
Jam NeoPixel Desktop

Saya akan memberikan beberapa bengkel elektronik dalam beberapa minggu, yang berpusat pada projek dunia nyata yang murah tetapi berguna. Semasa mencuba sesuatu yang boleh dibuat, saya mahu ia melibatkan mikrokontroler, NeoPixel LED (kerana, mereka hebat), dapat dikawal dari jarak jauh, dan membenarkan pilihan membina yang berbeza. Itu juga harus disimulasikan sepenuhnya di Tinkercad. Ini adalah projek yang berkembang.

Ia membungkus beberapa ciri yang sangat keren ke dalam peranti kecil, dapat disesuaikan dan cukup mudah dibina.

Senarai bahagian:

  • Papan litar bercetak (OSHPARK)
  • Cincin NeoPixel 12 (Adafruit)
  • Mikrokontroler ATtiny85 (DigiKey)
  • Kawat teras pepejal 22 tolok (DigiKey, Amazon, Radio Shack, dll.)
  • (pilihan) Penerima inframerah (DigiKey)
  • (pilihan, tetapi sangat disyorkan) Kapasitor elektrolitik 1μF (DigiKey)
  • (pilihan) Butang tekan (Jameco)
  • (pilihan) 2 x Header 3 pin lelaki (DigiKey)
  • (pilihan) 2 x pelompat Shunt (DigiKey)
  • (pilihan) Soket DIP 8-pin (DigiKey)
  • (pilihan) Tajuk sudut kanan 4-pin (DigiKey)
  • (pilihan) Alat kawalan jauh IR (Amazon)
  • Pita Gorilla (Amazon)
  • Bekalan kuasa dinding USB (Amazon)

Senarai alat:

  • Pateri besi & pateri
  • Pemotong wayar
  • Pelucut wayar
  • Tang
  • Gunting

Langkah 1: Reka Bentuk dan Simulasi

Seperti yang saya nyatakan sebelumnya, saya ingin menggunakan Tinkercad percuma untuk projek ini. Saya memutuskan untuk merancang sepenuhnya, dan mengujinya di sana sebelum menyentuh elektronik sebenar. Ini membolehkan saya memastikan bahawa semuanya (termasuk firmware ATtiny85) akan berfungsi. Inilah litar maya. Anda boleh menekan "Mula Simulasi" di bawah untuk mencubanya.

Langkah 2: Bahagian Yang Diperlukan

Bahagian Yang Perlu
Bahagian Yang Perlu

Projek ini dirancang untuk memberi kelonggaran bagaimana ia dibina. Jadi, bergantung pada apa yang anda mahu lakukan dengannya, anda mungkin tidak memerlukan semua bahagiannya. Terdapat tiga bahagian (dan wayar) yang benar-benar diperlukan. Adalah mungkin untuk membina sesuatu yang berfungsi hanya dengan ini.

Neopixel Ring 12 - cincin ini mempunyai dua belas NeoPixels yang dapat dikawal secara individu untuk hampir semua warna.

ATtiny85 - ini adalah mikrokontroler (komputer kecil) yang membuat NeoPixels menari, dan berinteraksi dengan beberapa komponen pilihan (penerima inframerah, butang tekan, dll.).

Papan litar bercetak - papan litar bercetak (PCB) menyediakan semua sambungan elektrik antara bahagian yang digunakan, dan merupakan tulang belakang peranti yang kaku. Fail gerber zip yang dihantar ke pengeluar PCB ada di halaman ini. Terdapat banyak pengeluar papan di luar sana. Inilah pautan untuk menempah papan dari OSHPARK.

Kawat teras pepejal 22 gauge - wayar digunakan untuk menyambungkan gelang NeoPixel ke PCB.

Langkah 3: Bahagian Pilihan

Bahagian Pilihan
Bahagian Pilihan

Terdapat sebilangan bahagian pilihan yang mungkin ingin anda pertimbangkan termasuk. Inilah sebabnya mengapa anda menginginkannya.

Penerima inframerah - penerima inframerah adalah komponen tunggal yang membolehkan peranti dikendalikan oleh alat kawalan jauh IR genggam standard (kira TV jauh). Alat kawalan jauh dari pelbagai kilang mengeluarkan isyarat yang berbeza, jadi firmware mungkin perlu diubah suai untuk mengenali alat kawalan jauh anda, jika bukan salah satu yang saya gunakan.

Kapasitor elektrolitik 1μF - kapasitor bertindak sebagai sejenis bateri sementara yang dapat memberikan kuasa tambahan apabila arus elektrik yang diperlukan dalam peranti berubah secara tiba-tiba (misalnya, NeoPixels beralih dari penuh ke aktif, misalnya). Ia juga dapat mengeluarkan voltan ke peranti semasa menggunakan bekalan kuasa USB yang murah. Sekiranya anda menggunakan sumber kuasa USB yang baik, maka ini boleh ditinggalkan.

Tombol tekan - butang tekan membolehkan anda mengawal peranti dengan (meneka apa?) Dengan menekan butang.

Header 3-pin lelaki dan jumper shunt - ini boleh dipasang dan bukannya tombol tekan untuk membolehkan peranti dikonfigurasi, berdasarkan bagaimana kedudukan jumper shunt. Header 3-pin lelaki disambungkan secara kekal (disolder) ke papan, dan jumper shunt dipasangkan pada header dan dapat dengan mudah dikeluarkan dan ditempatkan semula. Sekiranya satu header digunakan, maka pelompat dapat memilih antara dua mod yang berbeza. Sekiranya kedua-dua header digunakan, maka empat mod boleh dilakukan.

Soket DIP 8-pin - soket membolehkan mikrokontroler (ATtiny85) dikeluarkan dan diganti sehingga dapat diprogramkan semula kemudian jika anda ingin mengubah cara peranti berfungsi. Sekiranya anda tahu bahawa anda tidak perlu memprogram ulang mikrokontroler, maka ini tidak diperlukan.

Header sudut kanan 4-pin - header sudut kanan digunakan jika anda mahu penyambung USB melekat lurus dari bahagian belakang peranti, bukan dari sisi.

Langkah 4: Programkan Pengawal Mikro

Saya tidak akan terlalu terperinci mengenai pengaturcaraan mikrokontroler, kerana arahan mudah dijumpai di tempat lain (saya sertakan pautan di bawah). Saya menggunakan papan Arduino UNO untuk bertindak sebagai alat pengaturcaraan untuk pengawal menggunakan kaedah yang dijelaskan dalam Instructable ini. Di dalamnya, ini menunjukkan pemetaan berikut dari pin Arduino ke pin ATtiny untuk pengaturcaraan:

  • Arduino + 5V → ATtiny Pin 8
  • Arduino Ground → ATtiny Pin 4
  • Arduino Pin 10 → ATtiny Pin 1
  • Arduino Pin 11 → ATtiny Pin 5
  • Arduino Pin 12 → ATtiny Pin 6
  • Arduino Pin 13 → ATtiny Pin 7

Kod sumber untuk cahaya malam boleh didapati di sini (https://github.com/cacklestein/led-night-light).

Langkah 5: Pasang Papan (Langkah Awal pilihan)

Pasang Papan (Langkah Awal pilihan)
Pasang Papan (Langkah Awal pilihan)
Pasang Papan (Langkah Awal pilihan)
Pasang Papan (Langkah Awal pilihan)
Pasang Papan (Langkah Awal pilihan)
Pasang Papan (Langkah Awal pilihan)

Bahagian mesti ditambahkan ke papan dalam urutan tertentu untuk memudahkan sesuatu. Sekiranya anda baik-baik saja dengan kedudukan penyambung USB di papan, anda boleh melewatkan langkah selebihnya dan beralih ke bahagian pemasangan seterusnya. Walau bagaimanapun, jika anda mahu penyambung melekat di bahagian belakang papan, sekarang adalah masa untuk menambahkan tajuk sudut kanan.

Mulakan dengan mematikan penyambung USB dengan berhati-hati dari papan litar bercetak yang lain. Pegang bahagian papan yang lebih besar dengan satu tangan dan gunakan tang dengan satu tepi tepat di sebelah garisan lubang kecil untuk mengeluarkan tab dengan berhati-hati. Ketepikan tab. anda memerlukannya pada langkah seterusnya.

Posisikan tajuk sudut kanan di bahagian belakang papan seperti yang ditunjukkan dalam gambar. Bahagian belakang papan adalah sisi dengan sutera "123D CIRCUITS" di atasnya (atau mungkin saya harus mengatakan "123D CIRC", kerana anda baru sahaja melepaskan "UITS").

Solder header di tempatnya, pasangkan solder ke bahagian atas papan.

Dengan menggunakan pemotong wayar yang baik, hentakkan ujung kepala yang menonjol dari bahagian atas papan sedekat mungkin ke papan. Ini penting kerana petunjuk tersebut sakit di suatu tempat di mana akhirnya ATtiny85 akan pergi.

Langkah 6: Tambahkan Soket Mikrokontroler

Tambahkan Soket Mikrokontroler
Tambahkan Soket Mikrokontroler
Tambahkan Soket Mikrokontroler
Tambahkan Soket Mikrokontroler
Tambahkan Soket Mikrokontroler
Tambahkan Soket Mikrokontroler

Sekarang masanya untuk menyolder soket DIP 8-pin-ATAU ATtiny85 di tempatnya. Saya sangat mengesyorkan menggunakan soket, kerana ia membolehkan ATtiny85 mudah dilepaskan dan dipasang semula sekiranya anda ingin membuat perubahan pada program kemudian. Pasangkan soket (atau ATtiny85 dengan pin 1 yang paling dekat dengan tepi papan) melalui 8 lubang yang sesuai di bahagian atas papan. Bahagian atasnya adalah bahagian tanpa "Litar 123D" yang dicetak di atasnya. Balikkan papan dan letakkan rata di atas meja atau ruang kerja lain untuk menahan soket di tempatnya. Pateri pin ke papan. Sekiranya anda menambahkan header sudut kanan 4-pin pada langkah sebelumnya, maka pin-pin tersebut mungkin akan terhalang. Sudut seterika ke solder di bawahnya.

Langkah 7: Tambah Lebih Banyak Bahan

Tambah Lagi Bahan!
Tambah Lagi Bahan!
Tambah Lagi Bahan!
Tambah Lagi Bahan!
Tambah Lagi Bahan!
Tambah Lagi Bahan!

Sekarang masanya untuk menambah butang atau jumper header, penerima IR, dan kapasitor.

Sekiranya anda ingin mempunyai butang tekan, pasangkan 4 pin melalui lubang di bawah soket mikrokontroler di bahagian atas papan. Anda akan melihat bahawa terdapat 6 lubang. Jangan risau tentang perkara ini. Kedua-dua lubang di tengah tidak akan digunakan. Balikkan papan ke atas dan pasangkan butang tekan di tempatnya.

Sekiranya anda ingin menggunakan pelompat shunt, masukkan dua kepala 3-pin (sisi pin yang lebih pendek ke bawah) ke dalam lubang-lubang di bahagian atas. Sekali lagi, balikkan papan, dan pasangkan pin di tempatnya.

Seterusnya, pasangkan penerima inframerah melalui 3 lubang di bahagian atas papan. Padankan orientasi dengan garis besar pada skrin silks. masukkan sejauh mungkin, dan bengkokkan ke belakang sehingga sisi gelembung kecil menghadap ke atas dari papan. Balikkan papan dan pasangkannya di tempatnya. Gunakan pemotong wayar untuk mengeluarkan panjang pin yang berlebihan dari bahagian bawah selepas pematerian.

Akhirnya, tambahkan kapasitor. Pinnya masuk melalui baki dua lubang di atas penerima inframerah. Jalur putih di sisi kapasitor ('-' sisi negatif) menghadap jauh dari soket ATtiny85. Sekali lagi, balikkan papan, pasangkan plag di tempatnya, dan potong lebihan dengan pemotong wayar.

Langkah 8: Tambahkan Cincin NeoPixel

Tambahkan Cincin NeoPixel
Tambahkan Cincin NeoPixel
Tambahkan Cincin NeoPixel
Tambahkan Cincin NeoPixel
Tambahkan Cincin NeoPixel
Tambahkan Cincin NeoPixel

Cincin NeoPixel dilampirkan menggunakan 4 kepingan dawai pepejal 22 gauge, dengan penebat dikeluarkan. Mulakan dengan memotong bahagian dawai sekurang-kurangnya 4 inci. Gunakan pelucut wayar untuk mengeluarkan SEMUA penebat.

Potong wayar ini menjadi 4 sama panjang. Bengkokkan setiap wayar ke bentuk "L" kira-kira 1/4 inci dari satu hujung.

Dengan bahagian bawah papan menghadap ke atas, masukkan wayar ini ke dalam lubang di 4 penjuru papan. Bahagian yang bengkok akan menghindarkan mereka dari meluncur sepanjang jalan. Pateri di tempatnya, dan potong lebihan bengkok dari bahagian bawah dengan pemotong wayar.

Balik papan ke atas, dan masukkan kabel dengan berhati-hati melalui 4 lubang cincin NeoPixel dengan NeoPixel menghadap jauh dari papan litar. Berhati-hati untuk memadankan lubang cincin NeoPixel dengan lubang di papan litar. Nama-nama lubang dicetak pada masing-masing. Padankan PWR, GND, IN dan OUT.

Tekan cincin ke bawah sedekat mungkin ke papan litar. Perkara mungkin sedikit ketat, terutama di sekitar kapasitor dan sensor IR. Sekiranya cincin tidak akan turun, jangan berpeluh.

Pegang cincin sedekat mungkin ke papan litar, bengkokkan kabel untuk menahan barang di tempat.

Pateri cincin ke wayar dan potong lebihan wayar dengan pemotong wayar.

Langkah 9: Tambahkan Tab Penyambung USB (Langkah pilihan)

Tambahkan Tab Penyambung USB (Langkah pilihan)
Tambahkan Tab Penyambung USB (Langkah pilihan)
Tambahkan Tab Penyambung USB (Langkah pilihan)
Tambahkan Tab Penyambung USB (Langkah pilihan)

Sekiranya anda memilih untuk meletakkan penyambung USB terus dari belakang, sekarang adalah masa untuk memasangkannya ke tajuk sudut kanan 4-pin yang anda tambahkan sebelumnya.

Pasang lubang tab yang anda keluarkan sebelumnya ke header sudut kanan sehingga 4 kenalan USB tembaga menghadap sisi papan "CIRC", dan sisi "UITS" tab menghadap sisi "123D".

Selesaikan ini di tempat.

Langkah 10: Tambahkan ATtiny85

Tambah ATtiny85
Tambah ATtiny85

Sekiranya anda memasangkan soket DIP 8-pin di tempatnya, sekarang adalah masa untuk meletakkan ATtiny85 di dalamnya.

Sejajarkan ATtiny85 sehingga sudut dengan titik paling dekat dengan titik putih pada papan litar. Tekan ATtiny85 dengan teliti di tempatnya, pastikan semua pin pergi ke tempat yang sepatutnya.

Langkah 11: Ketebalan Penyambung USB

Ketatkan Penyambung USB
Ketatkan Penyambung USB

Biasanya, papan litar bercetak yang anda perolehi akan menjadi lebih nipis daripada apa yang diharapkan daripada penyambung USB. Penyelesaian mudah untuk ini adalah memotong kotak kecil Gorilla Tape dan menambahkannya ke bahagian belakang penyambung USB (sebelah tanpa kenalan tembaga USB!). Pita Gorilla adalah kira-kira dua kali lebih tebal daripada pita saluran biasa, dan berfungsi dengan sempurna untuk saya.

Langkah 12: Cubalah

Cubalah
Cubalah
Cubalah
Cubalah
Cubalah
Cubalah
Cubalah
Cubalah

Pasang lampu malam baru anda ke penyesuai dinding USB berkuasa, atau soket USB lain yang tersedia (di komputer anda, dll.). Sekiranya semuanya berjalan lancar, ia mesti menyala! Sekiranya anda menambahkan penerima IR pilihan, dan mempunyai alat kawalan jauh yang berfungsi dengan firmware (seperti alat kawalan jauh Apple TV dalam gambar), anda boleh menukar mod paparan.

Sebagai alternatif, jika anda memasang butang, anda boleh menekannya untuk menukar mod.

Sekiranya sebaliknya, anda memasang header shunt jumper, maka jumper shunt dapat diposisikan untuk mengubah mod paparan permulaan.

Langkah 13: Tetapan Shunt Jumper

Tetapan Shunt Jumper
Tetapan Shunt Jumper

Sekiranya anda memilih untuk memasang header shunt jumper, anda boleh menetapkan mod permulaan, berdasarkan di mana kedudukan jumper shunt:

Kedudukan kiri A + Kedudukan kanan A: Mod pelangi berputar

Kedudukan kiri B + Kedudukan kanan A: Mod perubahan warna

Kedudukan kiri A + Kedudukan kanan B: Mod kilauan rawak

Kedudukan kiri B + Kedudukan kanan B Tidak berubah mod warna pepejal

Langkah 14: Menggunakan Alat Kawalan Jauh

Menggunakan Alat Kawalan Jauh
Menggunakan Alat Kawalan Jauh
Menggunakan Alat Kawalan Jauh
Menggunakan Alat Kawalan Jauh

Saya menjumpai alat kawalan jauh yang murah di EBay yang direka untuk berfungsi dengan pencahayaan LED warna. Ia kelihatan sesuai. Saya mencatatkan kod yang dihasilkan oleh setiap butang dan menetapkan firmware untuk bertindak sewajarnya. Gambar di atas menunjukkan apa yang dilakukan oleh butang yang berbeza.

Sekiranya anda tidak mempunyai alat kawalan jauh ini, anda boleh menemui kod yang berkaitan dengan kebanyakan alat kawalan jauh lain dengan menggunakan kod sumber Arduino yang sama, tetapi pada Arduino yang sebenarnya, bukannya ATtiny85. Program ini mengeluarkan kod yang berkaitan dengan sebilangan tekan butang pada kebanyakan remote pada konsol bersiri. Untuk melakukan ini, sambungkan modul penerima IR di slot header pin digital 2, 3, & 4, dengan lensa menghadap ke bahagian lain papan.

Dalam gambar di atas, kod 0xFD00FF sesuai dengan butang kuasa jauh DFRobot IR. Inilah kod yang berjalan di Tinkercad. Untuk mencubanya, klik "Code", diikuti oleh "Serial Monitor", diikuti dengan "Start Simulation". Pada ketika itu, anda boleh mula menekan butang pada alat kawalan jauh maya untuk melihat output teks konsol bersiri:

Catat ini untuk setiap butang alat kawalan jauh anda. Anda kemudian boleh mengubah kod sumber untuk menambahkan kod butang untuk alat kawalan jauh anda.

Disyorkan: