Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

RGB Backlight + MSGEQ7 Audio Visualizer

Komponen dan persediaan

Arduino Nano R3
× 1
Strip LED Beralamat WS2812 Digilent
× 1
MSGEQ7
Equalizer Grafis Tujuh Pita untuk Analisis Spektrum Audio
× 1
Suplai Daya Sakelar 5V 2.5A yang Digilent
× 1

Alat dan mesin yang diperlukan

Besi solder (generik)

Aplikasi dan layanan online

Arduino IDE

Tentang proyek ini

Ini adalah Impor dari Instructables asli saya ( klik di sini )

Selamat datang di tutorial saya tentang cara membuat Lampu latar LED RGB untuk misalnya bagian belakang TV atau meja Anda.

Skema itu sendiri sangat sederhana karena WS2812 LED Strips sangat mudah untuk berinteraksi dengan misalnya Arduino Nano .

Catatan: bahwa Anda tidak perlu menggunakan rangkaian MSGEQ7 Audio Analyzer tambahan jika Anda hanya menginginkan Lampu Latar LED tanpa visualisasi audio.

Saya memberikan daftar rinci bagian yang digunakan dan di mana Anda dapat membelinya:

  • Arduino Nano/Uno ( Amazon / AliExpress )
  • Strip LED RGB WS2812 ( Amazon/ AliExpress ), perhatikan bahwa IP adalah singkatan dari perlindungan (misalnya tahan air jika Anda membutuhkannya) dan nomor tersebut menunjukkan berapa banyak LED per Meter yang dimiliki strip (penting untuk catu daya)
  • Pasokan Daya 5V ( Amazon ) (tergantung berapa banyak strip LED yang dimiliki) -> setiap LED membutuhkan ~ 20mA, strip yang digunakan dalam tutorial ini memiliki 45 LED (30 per Meter) jadi saya membutuhkan 45*20mA ~ 1, pasokan 5Ampere (Arduino, MSGEQ7 perlu beberapa juga), saya menautkan catu daya yang menyediakan 3A yang tentunya cukup untuk kita sekarang
  • Soket Audio 3,5mm ( Amazon / AliExpress )
  • Potensiometer 10kOhm ( Amazon / AliExpress )
  • Tombol Tekan ( Amazon / AliExpress )
  • Resistor (1x 10kOhm, 1x 220Ohm, untuk MSGEQ7:2x100kOhm)
  • Kapasitor (1x 1000yF Elektrolitik ( Amazon / AliExpress ), 2x 10nF, untuk MSGEQ7:2x 0.1yF, 1x33pF ( Amazon / AliExpress )
  • Sederhana Dioda (Amazon / AliExpress)
  • Jack DC ( Amazon / AliExpress )

Persediaan:

Langkah 1:Buat Skema

Skema Utama:

Jadi untuk menghubungkan WS2812 Strip dengan Arduino cukup mudah menggunakan library Adafruit_NeoPixel.

Strip LED memiliki 3 Pin:VCC, DATA, GND . VCC terhubung ke 5V, GND ke Ground dan Pin DATA di tengah terhubung ke LED_DATA Pin D6 di Arduino. Sekarang setiap LED di Strip memiliki chip WS2812 di dalamnya yang mengambil Data yang diterimanya dari Arduino dan meneruskannya ke LED berikutnya, oleh karena itu kita hanya perlu memasukkan data Led sekali ke LED pertama di strip.

Logika Tombol Tekan untuk mengubah mode dan Potensiometer untuk mengontrol Kecerahan dijelaskan di Langkah berikutnya.

Skema yang tepat dapat ditemukan di Screenshot file fritzing yang juga tersedia untuk diunduh.

Catatan bahwa itu sangat penting hanya sambungkan Pin Arduino 5V ke Catu Daya melalui dioda , agar Arduino tidak rusak jika kita mencolokkan Kabel USB untuk memprogramnya. 10nF dan 1000uF juga untuk alasan keamanan, sehingga tidak akan ada kekurangan daya.

Untuk Sirkuit MSGEQ7 :

Ini adalah Sirkuit yang paling umum untuk menghubungkan MSGEQ7 ke Arduino. Di sinilah Anda membutuhkan Jack audio 3,5 mm . Pin tengah dari sebagian besar Jack audio adalah GND, pin di kiri/kanan adalah saluran stereo yang terhubung melalui kapasitor 10nF ke Pin Sinyal Masuk MSGEQ7 seperti yang ditunjukkan pada skema. Anda juga dapat menambahkan potensiometer ke Signal In Pin untuk mengontrol sensitivitas Sinyal Audio, tetapi sebenarnya tidak perlu. MSGEQ7 terhubung ke Arduino dengan pin Analog Out terhubung ke A1 (MSGEQ_OUT), Strobe Sematkan ke H2 (STROBE), Setel Ulang Sematkan ke D5 (SETEL ULANG).

rgb_controller.fzz

Langkah 2:Kode

GitHub Tautan ke sketsa lengkap :RGBstripe_Control_WS2812

Catatan pada kode:

Dalam kode kami mendeklarasikan objek Strip WS2812 dengan objek Adafruit_NeoPixel baru, meneruskan jumlah Led (ubah NUM_LEDS untuk pengaturan Anda ), Pin Arduino terhubung ke pin LED_DATA, dan tipe pengkodean + kecepatan transmisi nilai warna.

Setelah ini selesai, kami mengatur Brightness default di setup() melalui setBrightness(0-255) dan nyalakan Strip dengan begin() . Sekarang kita dapat menyetel setiap Piksel/LED ke Warna RGB tertentu dengan setPixel(LED, Color) . Setelah selesai mengatur semua LED ke nilai baru, kami memperbarui strip dengan strip.show() . Itu pada dasarnya semua logika kode yang kita butuhkan untuk memprogram animasi apa pun yang kita inginkan. Sekarang untuk benar-benar mengontrol Animasi/Mode, kami menambahkan Tombol Tekan / Taktil Beralih ke Arduino. Oleh karena itu, kami menghubungkan satu ujung Tombol ke VCC dan ujung lainnya ke Pin Arduino D3 dan dengan resistor 10kOhm ke GND. Kami melampirkan Interrupt ke Pin ini di setup() , yang memicu panggilan ke changeMode() metode setiap kali kita menekan tombol. Dalam changeMode() kami sederhana beralih ke mode berikutnya dan beri tahu animasi saat ini untuk dihentikan. Setelah itu terjadi, loop() baru dieksekusi dan akan memainkan Animasi/Mode baru.

Animasi yang disediakan meliputi:Warna pelangi memudar, Merah, Hijau, Biru, Warna Putih, Mode penganalisis musik

Selain itu saya menambahkan 10kOhm Potensiometeruntuk mengontrol kecerahan Strip . metode checkBrightness() memeriksa output Potensiometer yang terhubung ke Pin A2 (Pin tengah Potensiometer) dan memperbarui kecerahan Strip yang sesuai.

Untuk mode musicAnalyzer() melalui MSGEQ7 :

Mode ini memvisualisasikan Sinyal Audio terhubung ke Signal In dari MSGEQ7. MSGEQ mengeluarkan Sinyal analog yang menampilkan satu pita audio (8 Band, dari frekuensi Rendah ke Tinggi). musicAnalyzer() metode mendapatkan nilai pita audio saat ini dengan mengatur ulang MSGEQ dan kemudian buffer nilai analog yang disediakan. Band yang dikeluarkan dapat diubah dengan menempatkan sayap tinggi pada Pin Strobo. Setelah semua 8 Band disangga, metode menggeser semua nilai Piksel LED satu ke belakang dan menghitung Nilai baru untuk LED 0 . Warna terdiri dari :Frekuensi Rendah(Bass) Warna Merah, Frekuensi Menengah Warna Hijau dan Frekuensi Tinggi Warna Biru. Pergeseran nilai sebelum memuat nilai baru memberi kita animasi waktu yang bagus dan mulus.

Langkah 3:Atur Audio di PC

Untuk memasukkan musik/audio Anda ke MSGEQ7 tetapi musik Anda tetap diputar di speaker Anda, Anda harus menggunakan fitur RealtekHD Stereomix atau menghubungkan Input Audio MSGEQ ke mis. output speaker belakang dari kartu suara/motherboard Anda.

Untuk mengaktifkan Stereomix di Win10, klik kanan ikon speaker di kanan bawah dan klik "Suara", di sini Anda dapat mengaktifkan Stereomix di Tab "Rekaman" (klik kanan -> aktifkan). Jika Stereomix tidak terlihat, klik kanan dan pilih "Tampilkan perangkat yang dinonaktifkan". Sekarang buka pengaturan untuk Stereomix dan minta untuk mendengarkan dan menyalin audio Speaker utama Anda.

Jika Anda ingin menggunakan output speaker belakang, buka pengaturan speaker utama Anda di menu "Sounds", Tab "Improvements", lalu pilih "Environment" dari daftar dan pilih "Room" di menu dropdown di bawah.

Ini sekarang memungkinkan output audio paralel dari speaker Anda dan MSGEQ7.

Langkah 4:Catatan

Karena skemanya tidak terlalu rumit dan ukurannya tidak terlalu besar, saya berhasil memasukkan seluruh rangkaian ke dalam kotak kecil yang berlubang untuk konektor USB, Audio Jack, DC Jack, Potensiometer, dan Push Button. Anda cukup menggunakan header pin male/female dan menghubungkan 3 Kabel ke WS2812 Strip melalui kabel Jumper.

Kode

Unduhan Sketsa Arduino
https://github.com/PhilKes/RGBStripe_Control_WS2812

Skema

Skema breaboard untuk menghubungkan Arduino ke WS2812 Strip dengan Kontrol Kecerahan melalui Potensiometer fvwp3zyjs5c4z851_12HuWgZiDT.fzzStandalone MSGEQ7 Schematic hanya digunakan untuk Mode Audio Visualizer
Hubungkan Sinyal Masuk ke Jack Audio 3.5mm Saluran Kiri/Kanan dan pin Kontrol lainnya seperti yang ditunjukkan pada Skema lainnya

Proses manufaktur

  1. Sensor cahaya berdenyut
  2. DIY LUMAZOID Arduino Music Visualizer
  3. Detektor Frekuensi Audio
  4. Arduino dengan Bluetooth untuk Mengontrol LED!
  5. Putar audio di Arduino
  6. Arduino Quadruped
  7. Pencampur Warna RGB Arduino
  8. DIY Arduino RADIONICS Treatment MMachine
  9. DMX RGB LED Luar Ruangan
  10. Game Roulette LED