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

Visualiser Musik Pita EL

Komponen dan persediaan

Arduino UNO
× 1
EL Shield untuk Arduino
× 1
EL Tape - Hijau 1m
× 1
EL Tape - Merah 1m
× 1
EL Tape - Biru 1m
× 1

Tentang proyek ini

Perisai EL dan konektornya

EL Tape dengan EL Shield dari SeeedStudio digunakan dengan Arduino UNO. Kaset itu terhubung ke pelindung di 3 dari 4 saluran.


Setelah selesai, cukup unggah kode dan mulai mainkan musik Anda!


Kode menggunakan Processing serta perpustakaan Processing Arduino. Anda harus menjalankan keduanya agar dapat menggunakannya.


Ambil perpustakaan untuk Arduino di sini.

Dapatkan Pemrosesan di https://processing.org/


Setelah semua terinstal, pindahkan perpustakaan arduino ke dalam folder perpustakaan folder buku sketsa pemrosesan Anda dan buka kode di editor Pemrosesan.


Ubah baris:

song =minim.loadFile("/home/paul/Music/dope.mp3", 2048);

pada baris 38 BeatWrite ke file MP3 lokal di komputer Anda dan klik play!

Kode

  • BeatWrite
  • Penyanyi Pemukul
BeatWriteJava
Sketsa BeatWrite untuk Pemrosesan 2
/** * Sketsa ini menunjukkan cara menggunakan objek BeatDetect dalam mode FREQ_ENERGY.
* Anda dapat menggunakan isKick, isSnare , isHat, isRange, * dan isOnset(int) untuk melacak ketukan apa pun yang ingin Anda lacak, mereka akan melaporkan * true atau salah berdasarkan keadaan analisis. Untuk "mencentang" analisis, Anda harus memanggil detect * dengan buffer audio yang berurutan. Anda dapat melakukan ini di dalam draw, tetapi Anda mungkin kehilangan beberapa * buffer audio jika Anda melakukan ini. Sketsa mengimplementasikan AudioListener yang disebut BeatListener * sehingga dapat memanggil detect pada setiap buffer audio yang diproses oleh sistem tanpa mengulang buffer * atau hilang satu. *

* Sketsa ini memainkan seluruh lagu sehingga mungkin agak lambat untuk dimuat. */import processing.serial.*;import ddf.minim.*;import ddf.minim.analysis.*;import cc.arduino.*;Minim minim;Lagu AudioPlayer;BeatDetect beat;BeatListener bl;Arduino arduino;int ledPin =1; // LED terhubung ke saluran EL 1int ledPin2 =2; // LED terhubung ke saluran EL 2int ledPin3 =3; // LED terhubung ke saluran EL 3float kickSize, snareSize, hatSize;void setup() { size(512, 200, P3D); minim =baru Minim(ini); arduino =Arduino baru(ini, "/dev/ttyACM1", 57600); lagu =minim.loadFile("/home/paul/Music/dope.mp3", 2048); lagu.play(); // objek pendeteksi ketukan yaitu mode FREQ_ENERGY yang // mengharapkan buffer sepanjang ukuran buffer lagu // dan sampel yang diambil pada laju sampel lagu beat =new BeatDetect(song.bufferSize(), song.sampleRate()); // setel sensitivitas ke 300 milidetik // Setelah detak terdeteksi, algoritme akan menunggu 300 milidetik // sebelum mengizinkan detak lain untuk dilaporkan. Anda dapat menggunakan ini untuk meredam algoritma // jika memberikan terlalu banyak positif palsu. Nilai default adalah 10, // yang pada dasarnya tidak ada redaman. Jika Anda mencoba mengatur sensitivitas ke nilai negatif, // kesalahan akan dilaporkan dan akan disetel ke 10 sebagai gantinya. beat.setSensitivity(100); kickSize =snareSize =hatSize =16; // buat pendengar beat baru, sehingga kita tidak akan melewatkan buffer untuk analisis bl =new BeatListener(beat, song); textFont(createFont("Helvetica", 16)); textAlign(PUSAT); arduino.pinMode(ledPin+3, Arduino.OUTPUT); arduino.pinMode(ledPin2+3, Arduino.OUTPUT); arduino.pinMode(ledPin3+3, Arduino.OUTPUT); }kosongkan draw() { background(0); isi(255); if(beat.isKick()) { arduino.digitalWrite(ledPin+3, Arduino.HIGH); // atur LED pada kickSize =32; } if(beat.isSnare()) { arduino.digitalWrite(ledPin2+3, Arduino.HIGH); // setel LED pada snareSize =32; } if(beat.isHat()) { arduino.digitalWrite(ledPin3+3, Arduino.HIGH); // atur LED pada hatSize =32; } arduino.digitalWrite(ledPin+3, Arduino.LOW); // matikan LED arduino.digitalWrite(ledPin2+3, Arduino.LOW); // matikan LED arduino.digitalWrite(ledPin3+3, Arduino.LOW); // matikan LED textSize(kickSize); teks("KICK", lebar/4, tinggi/2); ukuran teks(ukuran snare); teks("SNARE", lebar/2, tinggi/2); ukuran teks(ukuran topi); teks("TOPI", 3*lebar/4, tinggi/2); kickSize =kendala (kickSize * 0.95, 16, 32); snareSize =kendala(SnareSize * 0.95, 16, 32); ukuran topi =batasan (ukuran topi * 0.95, 16, 32); }void stop() { // selalu tutup Minim kelas audio ketika Anda selesai dengan mereka song.close(); // selalu hentikan Minim sebelum keluar dari minim.stop(); // ini menutup sketsa super.stop();}

BeatListenerJava
kelas BeatListener mengimplementasikan AudioListener{ private BeatDetect beat; sumber AudioPlayer pribadi; BeatListener(BeatDetect beat, AudioPlayer source) { this.source =source; this.source.addListener(ini); this.beat =ketukan; } void sampel(float[] samps) { beat.detect(source.mix); } void sampel(float[] sampsL, float[] sampsR) { beat.detect(source.mix); }}

Proses manufaktur

  1. Apa itu Pegas Kawat Musik?
  2. Panduan Desain UX untuk Lansia
  3. Mengapa digital?
  4. Stape
  5. Jukebox
  6. Sheet Music
  7. Pemindai Kode Batang
  8. Komentar C++
  9. Kode Matriks Data vs. Kode QR
  10. Pengenalan Kode G CNC