Sadržaj:
- Korak 1: Potrebni materijali
- Korak 2: Vrijeme izgradnje
- Korak 3: Modul senzora zvuka i RGB LED
- Korak 4: Kodirajte
- Korak 5: Završne misli
Video: Modul klavijature Klavir sa RGB LED: 5 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Intro
Zdravo dame i gospodo, dobrodošli u moju prvu instrukciju! Danas ću vas naučiti kako stvoriti klavir sa glavnim komponentama modulom tastature i piezo zujalicom i omogućiti mu da svira DO-RE-MI itd.
Najčešće predviđena modul tipkovnice je da bude tipkovnica u kombinaciji s arduino RFID -om za stvaranje sigurne kutije za vrijedne predmete. U ovom slučaju promijenio sam tastaturu, umjesto da zaštitim nešto što odlučim koristiti za izgovaranje jednostavne radosti i muzike.
Ideja Concept
Koncept ideje za ovu kreaciju evoluirao je iz jednostavnog sretnog sjećanja dok sam svirao ksilofon dok sam bio mlađi na satu muzike. Količina radosti i uzbuđenja koja mi je prolazila tijelom bila je na vrhuncu, mislim da je svako dijete bilo lako zadovoljno, a moje zadovoljstvo je bilo svirati na ksilofonu.
Istraživanje
Nakon što se žarulja vaše ideje gore upali, potrebno je malo istražiti. Nakon što sam neko vrijeme pregledavao web, mogao sam naići na svoju ideju na koju sam prvotno mislio! Modul tastature pretvorio se u klavir, neko je ovdje napravio isti video projekt. Razmišljajući unaprijed, morao sam dodati zasebnu komponentu koja bi dodatno poboljšala projekt, ali učinila ga zanimljivijim i mogla ga nazvati svojim.
Korak 1: Potrebni materijali
Lista materijala
- Piezo Buzzer 1x ▶
- 4x4 modul tastature 1x ▶
- Arduino Uno 1x ▶
- USB 2.0 kabel tipa A/B 1x ▶
- Modul senzora zvuka 1x ▶
- RGB LED 1x ▶
- Otpor 330 ohma 3x ▶
- Žica za kratkospojnike 8x ▶
- Žica kratkospojnik muški na muški 4x ▶
- 3-pinska kratkospojnica žica-muškarac 1x ▶
Lista materijala je u redu sa slikama iznad.
Korak 2: Vrijeme izgradnje
Modul tastature 4x4 i Piezo zujalica
Teorija
Budući da modul tipkovnice 4x4 i piezo zujalica sadrže toliko pojedinačnih pin ulaza, odlučit ću podijeliti korištene komponente u dva para. Fokusiranje na tastaturu, obično se koristi kao ulaz. Modul matrične tastature SunFounder 4*4 je matrična nekodirana tastatura koja se sastoji od 16 paralelnih tastera. Ključevi svakog reda i kolone povezani su spoljašnjim pinovima- pin Y1-Y4 označen pored kontrole redova, kada je X1- X4, kolone.
Svrha
Svrha ovih komponenti cijelog projekta je omogućiti korisniku da pritisne dugme koje je postavljeno na određeni zvuk koji stvara piezo zujalica kroz frekvenciju u hercima.
Pin matrice matrice - Arduino pin
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Piezo Buzzer - Arduino Pin
Crna - GND
Crvena - Napajanje
Moj najteži zadatak u ovoj izgradnji je utvrditi gdje je svaka žica uključena. Iznad vam nudim i brz i jednostavan način prolaska do lokacija žica, sve dok se slijedi odozgo prema dolje, savjet vam oduzima vrijeme i provjerite je li svaki pin pravilno umetnut u desni utor.
*Savjet je slijediti gdje se svaka žica nalazi s jednog kraja na drugi.
Sve Tinkercad skice žica određene komponente ispravno su kodirane bojom, pa ih pažljivo pratite
Korak 3: Modul senzora zvuka i RGB LED
Modul senzora zvuka i RGB LED
Teorija
Modul senzora zvuka vam omogućuje da otkrijete kada je zvuk premašio zadatu vrijednost koju odaberete. Zvuk se detektira putem mikrofona i dovodi u LM393 op pojačalo. Kada nivo zvuka pređe zadanu vrijednost, LED na modulu svijetli i izlaz.
Svrha
Svrha ovih komponenti u cijelom projektu je postići očitavanje zvuka/jačine zvuka modula senzora zvuka i kroz to čitanje RGB LED će aktivirati ispravnu boju koja se odnosi na zvuk.
Modul senzora zvuka - Arduino pin (koristite 3 -pinsku kratkospojnu žicu)
- Izlaz - A0 analogni pin
- GND - Bilo koji otvoreni otvor za pin GND
- VCC - 3V
RGB LED sa zajedničkom anodom (+) - Arduino pin
- Crvena - 9
- Napajanje - 5V
- Zelena - 10
- Plava - 11
Imajte na umu da svaku žicu povežete kroz otpornik od 330 ohma. Gornju sliku koristite kao referencu.
Moj najteži zadatak u ovoj izgradnji je utvrditi gdje je svaka žica uključena. Gore vam nudim i brz i jednostavan način kako doći do lokacija žica, sve dok se slijedi odozgo prema dolje, savjet je da odvojite vrijeme i provjerite je li svaki pin pravilno umetnut u desni utor kako biste spriječili buduće otklanjanje grešaka.
*Savjet je slijediti gdje je svaka žica umetnuta na bilo koji način
Sve Tinkercad skice žica određene komponente ispravno su kodirane bojom, pa ih slijedite
Korak 4: Kodirajte
Kod
Ovaj kôd omogućava svim komponentama da rade zajedno koristeći novo definiranu funkciju koja sadrži sve mnoge kontrole jednu komponentu koja ima mnogo promjenjivih varijabli te komponente su bile RGB LED i koriste rgb boju za promjenu boje dok su uključene i piezo zujalicu i zvuk koji bi proizveo ovisno o pritisku tipke.
Mora biti unutar ovog koda biblioteka tastature
Link ovdje:
Nakon preuzimanja dodajte novu biblioteku u arduino, a zatim umetnite jednu liniju koda potrebnu za aktiviranje.
Poteškoće koje sam imao tokom koda bilo je gdje postaviti novo definirane funkcije jer sam pokušajem i greškom shvatio da to mora biti u postavkama, a ne u petlji.
Kod
#include // Biblioteka tastature
int greenPin = 11; // RGB zeleni pin spojen na digitalni pin 9
int redPin = 10; // RGB crveni pin spojen na digitalni pin 9
int bluePin = 9; // RGB Blue Pin spojen na digitalni pin 9 int speakerPin = 12; // zvučnik spojen na digitalni pin 12 const bajt ROWS = 4; // četiri reda const byte COLS = 4; // četiri kolonija const int soundPin = A0; // senzor zvuka priključen na A0
ključevi char [ROWS] [COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // Vizualizacija modula tastature
bajtovi rowPins [ROWS] = {2, 3, 4, 5}; // povezivanje sa ispisom redova na tastaturi
bajtovi colPins [COLS] = {6, 7, 8, 13}; // povezivanje sa pin pinouts tastature
Tastatura tastature = Tastatura (makeKeymap (tasteri), rowPins, colPins, ROWS, COLS); // Kreira ključeve
void setup () {
pinMode (spikerPin, OUTPUT); // postavlja zvučnik na izlaz
pinMode (redPin, OUTPUT); // postavlja crveni pin kao izlazni pinMode (greenPin, OUTPUT); // postavlja zeleni pin kao izlazni pinMode (bluePin, OUTPUT); // postavlja plavi pin kao izlaz
Serial.begin (9600);
} void setColor (int crvena, int zelena, int plava) // Nova definirana funkcija koja dozvoljava RGB -u prikazivanje boje kroz RGB kod {#ifdef COMMON_ANODE red = 255 - crveno; zelena = 255 - zelena; plava = 255 - plava; #endif analogWrite (redPin, crveno); analogWrite (greenPin, zeleno); analogWrite (bluePin, plavo); }
void bip (unsigned char zvučnikPin, int frekvencijaInHertz, longtimeInMilliseconds) {// funkcije za stvaranje zvuka
int x; long delayAmount = (long) (1000000/frekvencija u hercima); long loopTime = (long) ((timeInMilliseconds*1000)/(delayAmount*2)); za (x = 0; x
void loop () {{100} {101}
tipka char = keypad.getKey (); int value = analogRead (soundPin); // čita vrijednost A0 Serial.println (value); // ispisuje vrijednost
if (ključ! = NO_KEY) {
Serial.println (ključ); } if (key == 'a') {bip (speakerPin, 2093, 100); setColor (218, 112, 214); } if (key == 'b') {bip (speakerPin, 2349, 100); setColor (218, 112, 214); } if (key == 'c') {bip (speakerPin, 2637, 100); setColor (218, 112, 214); } if (key == 'd') {bip (speakerPin, 2793, 100); setColor (218, 112, 214); } if (key == 'e') {bip (speakerPin, 3136, 100); setColor (218, 112, 214); } if (key == 'f') {bip (speakerPin, 3520, 100); setColor (218, 112, 214); } if (key == 'g') {bip (speakerPin, 3951, 100); setColor (218, 112, 214); } if (key == 'h') {bip (speakerPin, 4186, 100); setColor (218, 112, 214); } if (key == 'i') {bip (speakerPin, 2093, 100); setColor (230, 230, 0); } if (key == 'j') {bip (speakerPin, 2349, 100); setColor (180, 255, 130); } if (key == 'k') {bip (speakerPin, 2637, 100); setColor (130, 255, 130); } if (key == 'l') {bip (speakerPin, 2739, 100); setColor (130, 220, 130); } if (key == 'm') {bip (speakerPin, 3136, 100); setColor (0, 255, 255); } if (key == 'n') {bip (speakerPin, 3520, 100); setColor (0, 220, 255); } if (key == 'o') {bip (speakerPin, 3951, 100); setColor (0, 69, 255); } if (key == 'p') {bip (speakerPin, 4186, 100); setColor (255, 0, 255); }}
Korak 5: Završne misli
Završne misli
Posljednje misli ovog projekta su njegova namjera da bude igračka, da donese zabavu i pojednostavljenu radost. Budući da je ovaj projekt kompletan i da se na njemu radi, vjerujem da se ova verzija može nadograditi sa možda više komponenti, poput elementa za snimanje, ili copy/simon say elementa, ili čak LCD -a s notama koje izgledaju kao da sviraju određenu pjesmu.
Volio bih znati vaše mišljenje o modulu tipkovnice, za koje ste komponente mislili da se mogu dodati. Hoćete li ga koristiti u nekom od svojih projekata? Molimo vas da svoje ideje objavite u odjeljku komentara ispod.
Molimo vas da podijelite ako ste uživali u ovom arduino projektu.
Preporučuje se:
Vazdušni klavir pomoću IC senzora blizine i Arduino Uno Atmega 328: 6 koraka (sa slikama)
Vazdušni klavir pomoću IC senzora blizine i Arduino Uno Atmega 328: Uobičajeno je da klavir radi o električnom ili mehaničkom radu na jednostavnom mehanizmu pritiskanja dugmeta. Ali evo zaokreta, mogli bismo jednostavno ukloniti potrebu za tipkama u klaviru pomoću nekih senzora. Infracrveni senzori blizine najbolje odgovaraju uzroku jer t
Brzi voćni klavir sa MIDI: 6 koraka (sa slikama)
Brzi voćni klavir sa MIDI-jem: Ovo je zaista jednostavan klavir sa kapacitivnim dodirom. Dodirnite voće, limenke sode, flaše vode, trake aluminijumske folije itd. I dobićete višeglasnu klavirsku muziku sa računara. Sada kada je softver napisan, projekt ne bi trebao trajati više od
Elektrificirajte svoj tap-a-tune klavir: 9 koraka (sa slikama)
Elektrificirajte svoj tap-a-tune klavir: Stvorite eksperimentalnu punk muziku i zvučne efekte iz horor filmova s ovim projektom inspirisanim Randofovom "Electric Cigar Box Guitar" " Instructable i EvanKale-ov "električni ukelele sa kontrolom tona" Instructable. Klavir sa tapkanjem je
PCB dodirni klavir: 6 koraka (sa slikama)
PCB Touch Piano: Klavir za vaš džep? Naravno! Koristeći prijenos tonera za štampač, rješenje za bakropis i Teensy 3.2, napravit ćemo mali MIDI kontroler koji reagira jednostavnim dodirom prsta. Trebat će vam neki materijali: 100 mm x 70 mm bakrena PCB Teensy 3.2 Ferric
Raspberry Pi LED svjetlo Schroeder klavir: 3 koraka (sa slikama)
Raspberry Pi LED svjetlo Schroeder klavir: Raspberry Pi LED svjetlo Schroeder PianoLED (dioda koja emitira svjetlost) i LDR (svjetlo zavisni otpornik ili fotorezitor) nizovi se koriste za sviranje muzičkih nota pomoću Raspberry Pi Pygame MIDI sekvencera. Postoji 15 pari LED & LDR (12 za fu