Përmbajtje:
- Hapi 1: Përshkrimi Funksional
- Hapi 2: Lista e Pjesëve
- Hapi 3: Diagrami i telave
- Hapi 4: Kodi Burimor Arduino
Video: Arduino Metronome: 4 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:17
Kur mësoni një instrument të ri muzikor si fëmijë, ka kaq shumë gjëra të reja për t'u përqëndruar. Mbajtja e ritmit në ritmin e duhur është një prej tyre. Mos gjetja e një metronome funksionalisht të plotë dhe të përshtatshëm nënkuptonte justifikimin më të mirë për të filluar ndërtimin përsëri me fëmijët e mi. Në këtë postim të Instructables do të gjeni përshkrimin funksional, listën e pjesëve me lidhjet dhe çmimet e uebshopit, diagramin e instalimeve elektrike për montim dhe kodin e plotë Arduino.
Hapi 1: Përshkrimi Funksional
Do të ishte mirë të kishit një pajisje metronome me funksionet e mëposhtme për ta përdorur atë në shtëpi ose në shkollën e muzikës në mënyrë të përshtatshme.
- Faktori kompakt i formës për t'iu përshtatur vendeve të vogla sipër ose pranë instrumenteve muzikore,
- Punon me bateri, e fortë dhe e lëvizshme për tu transportuar,
- Konfigurohet lehtë edhe për fëmijët, vlera BPM shfaqet gjithmonë,
- Rrahje të rregullueshme në minutë me një çelës rrotullues, deri në 240 BPM
- Takt i dëgjueshëm me kontrollin e volumit,
- Mënyra e heshtur për praktikën e kufjeve gjatë natës,
- Reagimi vizual i rrahjeve (1/4, 2/4, 3/3, 4/4, 6/8, etj.) Deri në 8 LED,
- Me ose pa theks kryesor, me reagime vizuale dhe të dëgjueshme.
Duke u ndezur, modaliteti metronome do të fillojë në 60 BPM duke u shfaqur në ekranin e vogël dhe duke lejuar që ritmi të akordohet nga çelësi rrotullues midis 10 dhe 240. Neopixelët tregojnë rrahjen në LED -të blu, ndërsa zilja bie. Shtypja e butonit do të kalojë në modalitetin e rregullimit të rrahjeve dhe LED -të e gjelbër do të tregojnë strukturën e vendosur të rrahjes. Doreza rrotulluese do të rrisë ose zvogëlojë strukturën e rrahjes (2/2, 3/3, 4/4, 6/8, etj.). Mbi 8 LED, që rrotullohen më tej në drejtim të akrepave të orës, theksi kryesor do të ndizet, dhe LED e parë do ta tregojë këtë me të kuqe. Theksi kryesor do të ketë gjithashtu reagime të dëgjueshme. Mund të fiket duke u rrotulluar në drejtim të kundërt të akrepave të orës. Shtypja e butonit do të kthehet nga modaliteti i rregullimit të rrahjes në modalitetin metronome.
Hapi 2: Lista e Pjesëve
Do t'ju duhet një rast. Çdo formë ose madhësi mund të blihet, por ne kishim një kuti metalike të zezë të bukur të një çelësi të vjetër manual VGA të hedhur nga një mik. Pjesët e tjera janë renditur më poshtë.
- Bateri 9V, 1.50 USD
- Kabllo e lidhësit të baterisë, 0, 16 dollarë
- Arduino Nano me tituj pin, 2.05 USD
- Nano IO Extension Shield, 1 USD, 05
- Mini çelës rrëshqitës për energji, 0.15 USD
- Biezer Piezo, 0, 86 USD
- Adafruit Neopixel WS2812 8-bit, 1 USD, 01
- Ekran OLED 128x64, USD 1, 53
- Kodifikues rrotullues, 0, 50 USD
- Kabllot Dupont F/F, USD 0, 49
Çmimi i përgjithshëm i përbërësve është më pak se 10 dollarë, -
Hapi 3: Diagrami i telave
Përdorni Bordin e Zgjerimit Nano IO në mënyrë që të mos shqetësoheni me bashkimin e lidhjeve të shumta GND dhe VCC. Bashkimi minimal do të nevojitet për titujt e kunjave Nano dhe për lidhësit e modulit Neopixel. Përdorimi i telave Dupont lejon lidhje të qëndrueshme për pjesën tjetër të instalimeve elektrike siç tregohet në diagram. Bateria 9V është e lidhur me GND dhe VIN, kjo e fundit përmes ndërprerësit të rrëshqitësit të energjisë. Moduli kodues rrotullues ka një buton ndërprerës të integruar, i cili tregohet veçmas në diagram për të kuptuar më lehtë se si t'i lidhni ato. Pjesa rrotulluese (CLK dhe DT) lidhet përkatësisht me PIN2 dhe PIN3, sepse këto janë kunjat e vetme NANO të afta për të ndërprerë trajtimin. GND rrotullues është i lidhur natyrisht me PIN -in GND të Nanos. Butoni i ndërprerës i integruar është i lidhur me PIN4. Zileja Piezo është e lidhur me PIN5 dhe GND. Moduli Adafruit Neopixel është i lidhur me PIN7 dhe VIN dhe GND e tij me 5V dhe GND të Nanos përkatësisht. Ekran i vogël OLED është i lidhur me ndërfaqen e autobusit I2C, i cili është PIN A4 dhe A5 për SDA dhe SDL. VCC dhe GND shkon në 5V dhe GND të Nanos natyrisht. Kjo përfundon instalimet tona Dupont.
Hapi 4: Kodi Burimor Arduino
// Metronome, Theksi kryesor, Takti vizual dhe i dëgjueshëm - 2019 Peter Csurgay
#include #include #include #include #include "TimerOne.h" #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET -1 // Reset pin #(ose -1 nëse ndani Arduino reset pin) Ekran Adafruit_SSD1306, SCREEN_, & Wire, OLED_RESET); #përcaktoni pin_neopixel 7 #përcaktoni NUMPIXELS 8 #përcaktoni SHKURTRIA 32 Adafruit_NeoPixel pixel = Adafruit_NeoPixel (NUMPIXELS, pin_neopixel, NEO_GRB + NEO_KHZ800); #përcakto IDLE_11 0 #përcakto SCLK_01 1 #përcakto SCLK_00 2 #përcakto SCLK_10 3 #përcakto SDT_10 4 #përcakto SDT_00 5 #përcakto SDT_01 6 gjendje int = IDLE_11; #define CLK 2 #define DT 3 #cakto pin_switch 4 #përcakto pin_buzzer 5 int rrahje në minutë = 60; int bpmFirst = 0; // LED i ndezur në fillim, i fikur në pjesën tjetër … int tack = 4; bool leaderTack = false; int pos = 0; int curVal = 0; int prevVal = 0; void setup () {pixels.begin (); pinMode (pin_buzzer, OUTPUT); Kohëmatësi 1.filloni (1000000*60/bpm/2); Timer1.attachInterrupt (buzztick); pinMode (CLK, INPUT_PULLUP); pinMode (DT, INPUT_PULLUP); pinMode (ndërprerës_ pin, INPUT_PULLUP); attachInterrupt (digitalPinToInterrupt (CLK), rotativeCLK, CHANGE); attachInterrupt (digitalPinToInterrupt (DT), rotaryDT, CHANGE); nëse (! display.begin (SSD1306_SWITCHCAPVCC, 0x3C)) {// Adresa 0x3D për 128x64 për (;;); // Mos vazhdo, lak përgjithmonë} display.clearDisplay (); display.display (); } void loop () {if (digitalRead (pin_switch) == LOW) {vonesë (100); ndërsa (digitalRead (pin_switch) == LOW); vonesë (100); Timer1.detachInterrupt (); showGreenTacks (); ndërsa (digitalRead (pin_switch) == HIGH) {if (curVal> prevVal) {tack+= 1; if (tack> 8) {if (LeadTack) tack = 8; else {LeadTack = e vërtetë; ngjit = 1; }}} tjetër nëse (curValprevVal) {bpm+= 2; nëse (bpm> 240) bpm = 240; } else if (curVal = 100) display.print (""); else display.print (""); ekran.print (bpm); display.display (); } void buzztick () {if (bpmFirst == 0) {int volume = 4; nëse (LeadTack && pos == 0) vëllimi = 8; për (int i = 0; i
Recommended:
Servo Metronome, i programueshëm për shpejtësi të ndryshme: 3 hapa
Servo Metronome, i programueshëm për shpejtësi të ndryshme: Bëni metronomin tuaj. E tëra çfarë ju nevojitet është çanta fillestare Arduino Mega 2560 dhe një kompjuter i pajtueshëm
555-timon Metronome: 3 hapa
555-kohëmatës Metronome: Një metronom është një pajisje që prodhon një klik të dëgjueshëm ose tingull tjetër në një interval të rregullt që mund të vendoset nga përdoruesi, zakonisht në rrahje në minutë (BPM). Muzikantët përdorin pajisjen për të praktikuar të luajnë me një impuls të rregullt. (Https://en.wikipedia.org/w
Metronome e bazuar në mikrokontrollues: 5 hapa
Metronomi i bazuar në mikrokontrollues: Një metronom është një pajisje kohore e përdorur nga muzikantët për të mbajtur nën kontroll ritmet në këngë dhe për të zhvilluar një ndjenjë të kohës mes fillestarëve që po mësojnë një instrument të ri. Ndihmon për të ruajtur një ndjenjë të ritmit, e cila është vendimtare në muzikë. Ky metronom po funksionon
Metronome vizuale për bateristët: 8 hapa
Visual Metronome për Drummers: Unë kam një mik dhe bashkëpunëtor i cili është një baterist rock and roll. Dhoma e tij është pranë times në punë dhe kështu ai sheh dhe dëgjon për të gjitha projektet e mia elektronike dhe softuerike. Kanë kaluar më shumë se një vit, kështu që as nuk mbaj mend se si ndodhi e gjithë kjo
555 Timron Metronome - Audio & Visual: 8 hapa (me fotografi)
555 Timron Metronome - Audio & Visual: Djali im kohët e fundit ka filluar të luajë ukulele dhe mendova se një metronome do të ndihmonte me kohën e tij. Si krijues, kuptova se mund ta rrahja veten shumë lehtë me një kohëmatës 555 (çfarë nuk mund të bësh me një…) Pas një kërkimi të vogël në