Daftar Isi:

Modul Keypad Piano Dengan LED RGB: 5 Langkah (dengan Gambar)
Modul Keypad Piano Dengan LED RGB: 5 Langkah (dengan Gambar)

Video: Modul Keypad Piano Dengan LED RGB: 5 Langkah (dengan Gambar)

Video: Modul Keypad Piano Dengan LED RGB: 5 Langkah (dengan Gambar)
Video: Keyboard ini gak mempan di Mendang-Mendingin sama yang lain! 2024, Juli
Anonim
Image
Image
Bahan yang Dibutuhkan
Bahan yang Dibutuhkan

Pendahuluan

Halo tuan dan nyonya, selamat datang di instruksi pertama saya! Hari ini, saya akan mengajari Anda cara membuat piano dengan komponen utama modul keypad dan buzzer piezo dan membuatnya bisa memainkan DO-RE-MI dan sebagainya.

Modul keypad yang paling sering dimaksudkan adalah untuk menjadi keypad yang dikombinasikan dengan arduino RFID untuk membuat brankas untuk barang-barang berharga. Dalam hal ini saya mengganti keypad, alih-alih melindungi sesuatu yang saya putuskan untuk digunakan untuk berbicara tentang kegembiraan dan musik yang sederhana.

Konsep Ide

Konsep ide penciptaan ini, berkembang dari memori bahagia sederhana saat bermain gambang ketika saya masih muda di kelas musik. Jumlah kegembiraan dan kegembiraan yang mengalir di seluruh tubuh saya mencapai puncaknya, maksud saya setiap anak mudah puas dan kepuasan saya bermain gambang.

Riset

Setelah bohlam ide Anda di atas menyala, sedikit riset harus dilakukan. Setelah menjelajahi web selama beberapa waktu, saya dapat menemukan ide yang awalnya saya pikirkan! Modul keypad berubah menjadi piano, seseorang telah membuat video proyek yang sama di sini. Berpikir ke depan, saya perlu menambahkan komponen terpisah yang akan lebih meningkatkan proyek tetapi membuatnya lebih menarik dan dapat menyebutnya milik saya.

Langkah 1: Bahan yang Dibutuhkan

Bahan yang Dibutuhkan
Bahan yang Dibutuhkan
Bahan yang Dibutuhkan
Bahan yang Dibutuhkan
Bahan yang Dibutuhkan
Bahan yang Dibutuhkan

Daftar Bahan

  • Piezo Buzzer 1x
  • Modul keypad 4x4 1x
  • Arduino Uno 1x
  • Kabel USB 2.0 tipe A/B 1x
  • Modul Sensor Suara 1x
  • LED RGB 1x
  • Resistor 330 ohm 3x
  • Kawat jumper jantan ke betina 8x
  • Kawat jumper jantan ke jantan 4x
  • 3 pin Kabel jumper male to female 1x

Daftar bahan sesuai dengan gambar di atas.

Langkah 2: Membangun Waktu

Membangun Waktu!
Membangun Waktu!
Membangun Waktu!
Membangun Waktu!
Membangun Waktu!
Membangun Waktu!
Membangun Waktu!
Membangun Waktu!

Modul Keypad 4x4 & Piezo Buzzer

Teori

Karena modul keypad 4x4 dan buzzer piezo berisi begitu banyak input pin individual dan saya akan memutuskan untuk membagi komponen yang digunakan menjadi dua pasang. Berfokus pada keypad, biasanya digunakan sebagai input. The SunFounder 4*4 Matrix Keypad Module adalah matriks non-encoded keypad yang terdiri dari 16 tombol secara paralel, Tombol dari setiap baris dan kolom dihubungkan melalui pin luar – pin Y1-Y4 seperti yang berlabel di samping mengontrol baris, ketika X1- X4, kolom.

Tujuan

Tujuan dari komponen ini untuk keseluruhan proyek, adalah untuk memungkinkan pengguna menekan tombol yang diatur ke suara tertentu yang dibuat oleh buzzer piezo melalui frekuensi dalam hertz.

Pin Modul Matriks - Pin Arduino

  • 4 - 2
  • 3 - 3
  • 2 - 4
  • 1 - 5
  • 5 - 6
  • 6 - 7
  • 7 - 8
  • 8 - 13

Piezo Buzzer - Pin Arduino

Hitam - GND

Kekuatan merah

Tugas saya yang paling sulit dalam build ini adalah mencari tahu di mana setiap kabel dicolokkan. Di atas saya berikan kepada Anda cara cepat dan mudah cara lokasi kawat, asalkan mengikuti dari atas ke bawah, ujungnya luangkan waktu Anda dan pastikan setiap pin dimasukkan dengan benar ke slot yang tepat.

*Tip adalah mengikuti di mana setiap kabel berada dari satu ujung ke ujung lainnya.

Semua sketsa Tinkercad dari kabel komponen tertentu diberi kode warna dengan benar, jadi ikuti dengan cermat

Langkah 3: Modul Sensor Suara dan LED RGB

Modul Sensor Suara dan LED RGB
Modul Sensor Suara dan LED RGB
Modul Sensor Suara dan LED RGB
Modul Sensor Suara dan LED RGB
Modul Sensor Suara dan LED RGB
Modul Sensor Suara dan LED RGB

Modul Sensor Suara dan LED RGB

Teori

Modul sensor suara memungkinkan Anda mendeteksi ketika suara telah melampaui titik setel yang Anda pilih. Suara dideteksi melalui mikrofon dan dimasukkan ke dalam op amp LM393. Setelah tingkat suara melebihi titik setel, LED pada modul akan menyala dan outputnya.

Tujuan

Tujuan dari komponen ini untuk keseluruhan proyek, adalah untuk mendapatkan pembacaan suara/volume dari modul sensor suara dan melalui pembacaan itu, LED RGB akan mengaktifkan warna yang benar terkait dengan suara.

Modul Sensor Suara - Pin Arduino (Gunakan Kawat Jumper 3 Pin)

  • Keluaran - Pin Analog A0
  • GND - Setiap slot pin GND terbuka
  • VCC - 3V

RGB Common Anode (+) LED - Pin Arduino

  • Merah - 9
  • Daya - 5V
  • Hijau - 10
  • Biru - 11

Ingatlah untuk memasang kabel, masing-masing kabel melalui resistor 330 ohm. Gunakan gambar di atas sebagai referensi.

Tugas saya yang paling sulit dalam build ini adalah mencari tahu di mana setiap kabel dicolokkan. Di atas saya berikan kepada Anda dan cara cepat dan mudah menuju lokasi kabel, selama mengikuti dari atas ke bawah, tipnya adalah meluangkan waktu Anda dan memastikan setiap pin dimasukkan dengan benar ke slot yang tepat untuk mencegah debugging di masa mendatang.

*Tip adalah mengikuti di mana setiap kawat dimasukkan dengan cara apa pun

Semua sketsa Tinkercad dari kabel komponen tertentu diberi kode warna dengan benar, jadi ikuti terus

Langkah 4: Kode

Kode

Kode ini memungkinkan semua komponen untuk bekerja sama dengan menggunakan fungsi yang baru didefinisikan untuk memuat semua banyak kontrol satu komponen yang memiliki banyak variabel yang dapat diubah komponen tersebut adalah RGB led dan menggunakan warna rgb untuk mengubah warna saat dan piezo buzzer dan suara itu akan membuat tergantung pada tombol push.

Yang harus ada dalam kode ini adalah perpustakaan keypad

Tautan di sini:

Setelah diunduh tambahkan perpustakaan baru ke dalam arduino, setelah itu masukkan satu baris kode yang diperlukan untuk mengaktifkannya.

Kesulitan yang saya alami selama kode adalah di mana menempatkan fungsi yang baru didefinisikan karena melalui coba-coba saya tahu itu harus dalam pengaturan dan bukan loop.

Kode

#include // Pustaka Keypad

int pin hijau = 11; //RGB Green Pin terhubung ke digital pin 9

int pin merah= 10; //RGB Pin Merah terhubung ke pin digital 9

int pin biru = 9; //RGB Blue Pin terhubung ke pin digital 9 int speakerPin = 12; // speaker terhubung ke pin digital 12 const byte ROWS = 4; // empat baris const byte COLS = 4; // empat kolom const int soundPin = A0; //sensor suara terpasang ke A0

kunci karakter[ROWS][COLS] = {

{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l'}, {'m', 'n', 'o', 'p'} }; // Visualisasi modul keypad

byte rowPins[ROWS] = {2, 3, 4, 5}; // sambungkan ke pinout baris keypad

byte colPins[COLS] = {6, 7, 8, 13}; // sambungkan ke pinout kolom keypad

Keypad keypad = Keypad (makeKeymap(keys), rowPins, colPins, ROWS, COLS); // Membuat kunci

batalkan pengaturan(){

pinMode(pin speaker, OUTPUT); // setel speakerPin menjadi output

pinMode(pin merah, OUTPUT); // mengatur pin merah menjadi pinMode keluaran(greenPin, OUTPUT); // menetapkan pin hijau menjadi pinMode keluaran(bluePin, OUTPUT); // menetapkan pin biru menjadi output

Serial.begin (9600);

} void setColor(int red, int green, int blue) // Fungsi baru yang ditetapkan untuk memungkinkan RGB menampilkan warna melalui kode RGB { #ifdef COMMON_ANODE red = 255 - red; hijau = 255 - hijau; biru = 255 - biru; #endif analogWrite(redPin, red); analogWrite(pin hijau, hijau); analogWrite(bluePin, biru); }

void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds){ // fungsi penghasil suara

intx; lama delayAmount = (panjang)(1000000/frekuensiInHertz); long loopTime = (panjang)((timeInMilliseconds*1000)/(delayAmount*2)); untuk (x=0;x

lingkaran kosong (){

kunci char = keypad.getKey(); int value = analogRead(soundPin);//membaca nilai A0 Serial.println(value);//mencetak nilai

if (kunci != NO_KEY) {

Serial.println(kunci); } if (kunci=='a'){ bip(pin speaker, 2093, 100); setColor(218, 112, 214); } if (kunci=='b'){ bip(pin speaker, 2349, 100); setColor(218, 112, 214); } if (kunci=='c'){ bip(pin speaker, 2637, 100); setColor(218, 112, 214); } if (kunci=='d'){ bip(pin speaker, 2793, 100); setColor(218, 112, 214); } if (kunci=='e'){ bip(pin speaker, 3136, 100); setColor(218, 112, 214); } if (kunci=='f'){ bip(pin speaker, 3520, 100); setColor(218, 112, 214); } if (kunci=='g'){ bip(pin speaker, 3951, 100); setColor(218, 112, 214); } if (kunci=='h'){ bip(pin speaker, 4186, 100); setColor(218, 112, 214); } if (kunci=='i'){ bip(pin speaker, 2093, 100); setColor(230, 230, 0); } if (kunci=='j'){ bip(pin speaker, 2349, 100); setColor(180, 255, 130); } if (kunci=='k'){ bip(pin speaker, 2637, 100); setColor(130, 255, 130); } if (kunci=='l'){ bip(pin speaker, 2739, 100); setColor(130, 220, 130); } if (kunci=='m'){ bip(pin speaker, 3136, 100); setWarna (0, 255, 255); } if (kunci=='n'){ bip(pin speaker, 3520, 100); setColor(0, 220, 255); } if (kunci=='o'){ bip(pin speaker, 3951, 100); setWarna (0, 69, 255); } if (kunci=='p'){ bip(pin speaker, 4186, 100); setWarna(255, 0, 255); } }

Langkah 5: Pikiran Terakhir

Image
Image

Pikiran Akhir

Pikiran akhir dari proyek ini adalah tujuan yang dimaksudkan adalah untuk menjadi mainan, untuk membawa kesenangan dan kegembiraan yang sederhana. Karena proyek ini sudah selesai dan sedang dikerjakan, saya percaya build ini dan dapat dilanjutkan dengan komponen yang mungkin lebih banyak seperti elemen perekaman, atau elemen copy/simon says, atau bahkan LCD dengan not yang muncul untuk memainkan lagu tertentu.

Saya ingin mengetahui pendapat Anda tentang Modul Keypad, komponen apa yang menurut Anda dapat ditambahkan. Apakah Anda akan menggunakannya di salah satu proyek Anda? Silakan posting ide Anda di bagian komentar di bawah.

Pastikan untuk membagikan jika Anda menikmati proyek arduino ini.

Direkomendasikan: