Obsah:

Modul klávesnice Piano s RGB LED: 5 kroků (s obrázky)
Modul klávesnice Piano s RGB LED: 5 kroků (s obrázky)

Video: Modul klávesnice Piano s RGB LED: 5 kroků (s obrázky)

Video: Modul klávesnice Piano s RGB LED: 5 kroků (s obrázky)
Video: I packed 50 BLENDER TIPS into one video! 2024, Listopad
Anonim
Image
Image
Potřebné materiály
Potřebné materiály

Intro

Dobrý den, dámy a pánové, vítejte u mého úplně prvního pokynu! Dnes vás budu učit, jak vytvořit klavír, jehož hlavními součástmi jsou modul klávesnice a piezoelektrický bzučák a který dokáže hrát na DO-RE-MI a tak dále.

Nejčastěji zamýšleným modulem klávesnice je klávesnice kombinovaná s arduino RFID k vytvoření bezpečného boxu pro cenné předměty. V tomto případě jsem změnil klávesnici, místo abych chránil něco, co jsem se rozhodl použít k mluvení prosté radosti a hudby.

Idea koncept

Myšlenkový koncept tohoto stvoření se vyvinul z jednoduché šťastné paměti při hraní na xylofon, když jsem byl mladší v hudební třídě. Množství radosti a vzrušení procházejícího mým tělem bylo na vrcholu, myslím tím, že každé dítě bylo snadno uspokojeno a moje spokojenost byla hra na xylofon.

Výzkum

Poté, co se rozsvítí vaše žárovka nahoře, je třeba udělat malý průzkum. Po chvíli procházení webu mohu narazit na svůj nápad, na který jsem původně myslel! Modul klávesnice otočený na klavír, někdo zde vytvořil stejné projektové video. Když přemýšlím dopředu, potřeboval jsem přidat samostatnou komponentu, která by projekt dále vylepšila, ale učinila ho poutavějším a bylo možné jej nazvat svým vlastním.

Krok 1: Potřebné materiály

Potřebné materiály
Potřebné materiály
Potřebné materiály
Potřebné materiály
Potřebné materiály
Potřebné materiály

Seznam materiálů

  • Piezo bzučák 1x ▶
  • Modul klávesnice 4x4 1x ▶
  • Arduino Uno 1x ▶
  • Kabel USB 2.0 typu A/B 1x ▶
  • Modul zvukového senzoru 1x ▶
  • RGB LED 1x ▶
  • Rezistor 330 ohmů 3x ▶
  • Propojovací kabel 8 x ▶
  • Propojovací kabel mezi muži a muži 4x ▶
  • 3kolíkový propojovací kabel male-female 1x ▶

Seznam materiálů je v pořadí s obrázky výše.

Krok 2: Budování času

Čas stavby!
Čas stavby!
Čas stavby!
Čas stavby!
Čas stavby!
Čas stavby!
Čas stavby!
Čas stavby!

Modul klávesnice 4x4 a piezoelektrický bzučák

Teorie

Protože modul klávesnice 4x4 a piezo bzučák obsahují tolik jednotlivých pinových vstupů, rozhodnu se rozdělit použité komponenty na dva páry. Zaostřování na klávesnici, obvykle používané jako vstup. Modul maticové klávesnice SunFounder 4*4 je maticová nekódovaná klávesnice, která se skládá ze 16 kláves paralelně. Klávesy každého řádku a sloupce jsou propojeny piny venku- pin Y1-Y4, jak je uvedeno vedle, ovládá řádky, když X1- X4, sloupce.

Účel

Účelem těchto komponent celého projektu je umožnit uživateli stisknout tlačítko, které je nastaveno na konkrétní zvuk vytvořený piezoelektrickým bzučákem prostřednictvím frekvence v hertzech.

Pin modulu Matrix - pin Arduino

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

Piezo bzučák - pin Arduino

Černá - GND

Červená - síla

Mým nejtěžším úkolem v této sestavě je zjistit, kde je každý vodič zapojen. Výše vám poskytuji a rychlý a snadný způsob umístění vodičů, pokud se postupuje shora dolů, špička si udělejte čas a ujistěte se, že každý kolík je správně zasunut do správného slotu.

*Tip je sledovat, kde je každý vodič umístěn z jednoho konce na druhý.

Všechny náčrtky konkrétních komponentních vodičů Tinkercad jsou správně barevně označeny, takže je pečlivě sledujte

Krok 3: Modul zvukového senzoru a RGB LED

Modul zvukového senzoru a RGB LED
Modul zvukového senzoru a RGB LED
Modul zvukového senzoru a RGB LED
Modul zvukového senzoru a RGB LED
Modul zvukového senzoru a RGB LED
Modul zvukového senzoru a RGB LED

Modul zvukového senzoru a RGB LED

Teorie

Modul zvukového senzoru vám umožňuje zjistit, zda zvuk překročil vámi nastavenou hodnotu. Zvuk je detekován pomocí mikrofonu a přiváděn do operačního zesilovače LM393. Jakmile hladina zvuku překročí nastavenou hodnotu, rozsvítí se LED na modulu a výstup.

Účel

Účelem těchto komponent celého projektu je získat čtení zvuku/hlasitosti modulu zvukového senzoru a prostřednictvím tohoto čtení aktivuje RGB LED správnou barvu náležející zvuku.

Modul zvukového senzoru - pin Arduino (použijte 3kolíkový propojovací vodič)

  • Výstup - analogový pin A0
  • GND - Libovolný otevřený slot GND pin
  • VCC - 3V

RGB LED se společnou anodou (+) - pin Arduino

  • Červená - 9
  • Napájení - 5V
  • Zelená - 10
  • Modrá - 11

Nezapomeňte zapojit každý jednotlivý vodič přes odpor 330 ohmů. Jako referenci použijte výše uvedený obrázek.

Mým nejtěžším úkolem v této sestavě je zjistit, kde je zapojen každý vodič. Výše vám poskytuji a rychlý a snadný způsob, jak se dostat na místa vodičů, pokud se postupuje shora dolů, tip je udělat si čas a ujistit se, že každý kolík je správně zasunut do správného slotu, aby se zabránilo budoucímu ladění.

*Tip je sledovat, kde je každý vodič vložen v obou směrech

Všechny náčrtky konkrétních komponentních vodičů Tinkercad jsou správně barevně označeny, takže je sledujte

Krok 4: Kód

Kód

Tento kód umožňuje spolupráci všech komponent pomocí nově definované funkce, která obsahuje všechny ovládací prvky jedné komponenty, která má mnoho proměnných proměnných. Tyto komponenty byly vedeny pomocí RGB a pomocí barvy RGB pro změnu barvy při zapnutí a piezoelektrického bzučáku a zvuk, který by vydával v závislosti na stisknutí tlačítka.

Součástí tohoto kódu byla knihovna klávesnic

Odkaz zde:

Po stažení přidejte novou knihovnu do arduina a poté vložte jediný řádek kódu potřebný k její aktivaci.

Obtíže, které jsem během kódu měl, bylo, kam umístit nově definované funkce, protože prostřednictvím pokusů a omylů jsem přišel na to, že musí být v nastavení a ne ve smyčce.

Kód

#include // Knihovna klávesnice

int greenPin = 11; // Zelený pin RGB připojený k digitálnímu kolíku 9

int redPin = 10; // Červený pin RGB připojený k digitálnímu kolíku 9

int bluePin = 9; // RGB modrý pin připojený k digitálnímu pinu 9 int reproduktorPin = 12; // reproduktor připojený k digitálnímu pinu 12 const byte ROWS = 4; // čtyři řádky konstantní byte COLS = 4; // čtyři kolonie const int soundPin = A0; // zvukový senzor připojený k A0

znaky [ROWS] [COLS] = {

{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // Vizualizace modulu klávesnice

byte rowPins [ROWS] = {2, 3, 4, 5}; // připojení k řádkovým vývodům klávesnice

byte colPins [COLS] = {6, 7, 8, 13}; // připojte se k vývodům colum na klávesnici

Klávesnice klávesnice = Klávesnice (makeKeymap (klávesy), rowPins, colPins, ROWS, COLS); // Vytvoří klíče

neplatné nastavení () {

pinMode (speakerPin, OUTPUT); // nastaví reproduktorPin jako výstup

pinMode (redPin, OUTPUT); // nastaví červený pin na výstupní pinMode (greenPin, OUTPUT); // nastaví zelený pin na výstupní pinMode (bluePin, OUTPUT); // nastaví modrý pin jako výstup

Serial.begin (9600);

} void setColor (int red, int green, int blue) // Nová definovaná funkce umožňující RGB zobrazovat barvy pomocí RGB kódu {#ifdef COMMON_ANODE red = 255 - red; zelená = 255 - zelená; modrá = 255 - modrá; #endif analogWrite (redPin, červený); analogWrite (greenPin, zelený); analogWrite (bluePin, modrý); }

prázdné pípnutí (nepodepsaný znak reproduktoru Pin, int frekvence InHertz, dlouhá doba v milisekundách) {// funkce produkující zvuk

int x; dlouhé delayAmount = (dlouhé) (10 000 000/frekvenceInHertz); long loopTime = (long) ((timeInMilliseconds*1000)/(delayAmount*2)); pro (x = 0; x

prázdná smyčka () {

char key = keypad.getKey (); int value = analogRead (soundPin); // přečte hodnotu A0 Serial.println (hodnota); // vytiskne hodnotu

if (klíč! = NO_KEY) {

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

Krok 5: Závěrečné myšlenky

Image
Image

Závěrečné myšlenky

Závěrečnými myšlenkami tohoto projektu je jeho zamýšlený účel být hračkou, přinést zábavu a zjednodušující radost. Vzhledem k tomu, že tento projekt je dokončen a pracuje se na něm, věřím, že toto sestavení lze rozšířit o další komponenty, jako je záznamový prvek nebo prvek copy/simon říká, nebo dokonce LCD s tóny, které vypadají, že hrají konkrétní skladbu.

Rád bych znal váš názor na modul klávesnice a jaké komponenty by podle vás mohly být přidány. Chystáte se jej použít v některém ze svých projektů? Své nápady prosím pište do sekce komentářů níže.

Pokud se vám tento projekt arduino líbil, nezapomeňte sdílet.

Doporučuje: