Мазмуну:
- 1 -кадам: Функционалдык сүрөттөмө
- 2 -кадам: Бөлүктөрдүн тизмеси
- 3 -кадам: Электр схемасы
- 4 -кадам: Arduino Source Code
Video: Arduino Metronome: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Кичинекей кезиңизде жаңы музыкалык аспапты үйрөнүп жатканда, көңүл бурууга көптөгөн жаңы нерселер бар. Туура темпте жүрүү - алардын бири. Функционалдык жактан толук жана ыңгайлуу метрономду таппоо менин балдарым менен кайра курууну баштоо үчүн эң жакшы шылтоо болчу. Бул Instructables постунда сиз функционалдык сүрөттөмөнү, веб -дүкөндүн шилтемелери жана баалары бар бөлүктөрдүн тизмесин, монтаждоо үчүн зымдардын схемасын жана Arduino толук кодун таба аласыз.
1 -кадам: Функционалдык сүрөттөмө
Үйдө же музыкалык мектепте ыңгайлуу колдонуу үчүн төмөнкү функциялары бар метрономдук аппараттын болушу жакшы болмок.
- Компакт форма фактору музыкалык аспаптардын үстүндөгү же жанындагы кичинекей жерлерге туура келет,
- Батарея иштейт, бекем жана портативдүү,
- Балдар үчүн да оңой орнотулган, BPM мааниси дайыма көрсөтүлөт,
- Ротари баскычы менен мүнөтүнө жөнгө салынуучу сокку, 240 BPMге чейин
- Үндү көзөмөлдөө менен уккулуктуу такт,
- Түнкү гарнитура үчүн үнсүз режим,
- 8 диодго чейин уруунун визуалдык кайтарымы (1/4, 2/4, 3/3, 4/4, 6/8 ж. Б.),
- Жетектөөчү акцент менен же ансыз, визуалдык жана угулуучу кайтарым байланыш менен.
Күйгүзүүдө метроном режими кичинекей дисплейде 60 BPMде башталып, темпти 10дон 240ка чейин айлануучу баскыч менен жөнгө салууга мүмкүндүк берет. Баскычты басуу жөндөө режимине өтөт жана жашыл диоддор коюлган структураны көрсөтөт. Ротари баскычы структураны көбөйтөт же азайтат (2/2, 3/3, 4/4, 6/8 ж. Б.). 8 светодиоддун үстүндө, сааттын жебеси боюнча ары -бери бурулуп, алдыңкы акцент күйгүзүлөт жана биринчи LED муну кызыл менен көрсөтөт. Жетектөөчү акцент уккулуктуу пикирге ээ болот. Аны сааттын жебесине каршы буруп өчүрсө болот. Баскычты басуу ыргакты жөнгө салуу режиминен метроном режимине кайра которулат.
2 -кадам: Бөлүктөрдүн тизмеси
Сизге иш керек болот. Каалаган форманы же өлчөмдү сатып алса болот, бирок бизде досубуздун колунан жасалган VGAнын эски кол менен алмаштырылган жакшы кара металл корпусу бар болчу. Калган бөлүктөрү төмөндө келтирилген.
- 9V батарея, USD 1.50
- Батареяны туташтыруучу кабель, USD 0, 16
- Пин баштары бар Arduino Nano, USD 2.05
- Nano IO Extension Shield, USD 1, 05
- Бийлик үчүн мини слайд которгуч, 0.15 АКШ доллары
- Пьезо үнү, USD 0, 86
- Adafruit Neopixel WS2812 8-бит, USD 1, 01
- OLED дисплей 128x64, USD 1, 53
- Ротари коддоочу, USD 0, 50
- Dupont кабелдери F/F, USD 0, 49
Компоненттердин жалпы баасы 10 доллардан төмөн, -
3 -кадам: Электр схемасы
Бир нече GND жана VCC туташтыруу менен убара болбош үчүн Nano IO кеңейтүү тактасын колдонуңуз. Минималдуу ширетүү Nano пин баштары жана Neopixel модулу бириктиргичтери үчүн керек болот. Dupont зымдарын колдонуу диаграммада көрсөтүлгөндөй зымдардын калган бөлүктөрүнө туруктуу туташууга мүмкүндүк берет. 9V батарейкасы GND жана VINге туташтырылган, экинчиси электр слайдери аркылуу. Ротари коддоочу модулда аларды туташтырууну түшүнүү үчүн диаграммада өзүнчө көрсөтүлгөн интегралдык которуу баскычы бар. Ротари бөлүгү (CLK жана DT) тиешелүүлүгүнө жараша PIN2 жана PIN3 менен туташат, анткени булар үзгүлтүккө учуроо жөндөмүнө ээ болгон жалгыз NANO пинтери. Rotary GND, албетте, Нанонун GND PIN -ге туташкан. Интегралдык которуу баскычы PIN4ке туташкан. Piezo ызылчасы PIN5 жана GND менен туташкан. Adafruit Neopixel модулу PIN7ге жана анын VIN жана GND -ге тиешелүү түрдө Нанонун 5V жана GND -ге туташкан. Чакан OLED дисплей SD2 жана SDL үчүн PIN A4 жана A5 болгон I2C автобус интерфейсине туташкан. VCC жана GND, албетте, Нанонун 5V жана GNDге өтөт. Бул биздин Дюпонт зымдарыбызды аяктады.
4 -кадам: Arduino Source Code
// Metronome, Жетектөөчү Акцент, Көрүү жана Уккулуктуу Такт - 2019 Питер Цургай
#кошуу #кошуу #кошуу #кошуу #кошуу "TimerOne.h" #SCREEN_WIDTH 128ти аныктоо #SCREEN_HEIGHT 64 #аныктоо OLED_RESET -1 // PIN кодду калыбына келтирүү #(же -1 эгер Arduino баштапкы абалга келтирүүчү болсо) Adafruit_SSD130W дисплей, SCREEN_SERE_ & Wire, OLED_RESET); #pin_neopixel 7ди аныктоо #NUMPIXELSти аныктоо 8 #BRIGHTNESSти аныктоо 32 Adafruit_NeoPixel пиксель = Adafruit_NeoPixel (NUMPIXELS, pin_neopixel, NEO_GRH + NEO_KHZ800); #аныктоо IDLE_11 0 #аныктоо SCLK_01 1 #define SCLK_00 2 #define SCLK_10 3 #define SDT_10 4 #define SDT_00 5 #deffine SDT_01 6 int state = IDLE_11; #define CLK 2 #define DT 3 #define pin_switch 4 #deinine pin_buzzer 5 int bpm = 60; int bpmFirst = 0; // LED адегенде күйүк, калганда өчүк… int tack = 4; bool leadTack = false; int pos = 0; int curVal = 0; int prevVal = 0; жараксыз орнотуу () {piksel.begin (); pinMode (pin_buzzer, OUTPUT); Timer1.initialize (1000000*60/bpm/2); Timer1.attachInterrupt (buzztick); pinMode (CLK, INPUT_PULLUP); pinMode (DT, INPUT_PULLUP); pinMode (pin_switch, INPUT_PULLUP); attachInterrupt (digitalPinToInterrupt (CLK), rotaryCLK, CHANGE); attachInterrupt (digitalPinToInterrupt (DT), rotaryDT, CHANGE); if (! display.begin (SSD1306_SWITCHCAPVCC, 0x3C)) {// 0x3D дареги 128x64 үчүн (;;); // Улантпаңыз, түбөлүккө айлантыңыз} display.clearDisplay (); display.display (); } void loop () {if (digitalRead (pin_switch) == LOW) {кечигүү (100); while (digitalRead (pin_switch) == LOW); кечиктирүү (100); Timer1.detachInterrupt (); showGreenTacks (); while (digitalRead (pin_switch) == HIGH) {if (curVal> prevVal) {tack+= 1; if (tack> 8) {if (leadTack) tack = 8; else {leadTack = true; tack = 1; }}} else if (curValprevVal) {bpm+= 2; эгер (bpm> 240) bpm = 240; } else if (curVal = 100) display.print (""); else display.print (""); display.print (bpm); display.display (); } void buzztick () {if (bpmFirst == 0) {int volume = 4; if (liderTack && pos == 0) көлөм = 8; үчүн (int i = 0; i
Сунушталууда:
Servo Metronome, ар кандай ылдамдыкта программалануучу: 3 кадам
Servo Metronome, ар кандай ылдамдыкта программалануучу: Өз метрономуңузду жасаңыз. Сизге Arduino Mega 2560 башталгыч комплект жана шайкеш компьютер гана керек
555-таймер Metronome: 3 кадам
555-таймер Metronome: Метроном-бул колдонуучу тарабынан, эреже катары, мүнөтүнө (BPM) ыргытуу менен жөнгө салынуучу үзгүлтүксүз түрдө угулуучу чыкылдатууну же башка үндү чыгаруучу түзүлүш. Музыканттар аппаратты кадимки импульсту ойноо үчүн колдонушат. (Https://en.wikipedia.org/w
Барабанчылар үчүн Visual Metronome: 8 кадам
Барабанчылар үчүн Visual Metronome: Менин досум жана рок -н -ролл барабанчысы менен чогуу иштешкен адамым бар. Анын кабинасы жумушта менин жанында, ошондуктан ал менин электроника жана программалык камсыздоо боюнча бардык долбоорлорумду көрүп, угат. Бир жылдан ашты, ошондуктан мунун баары кантип болгонун эстей албайм
555 Timer Metronome - Аудио жана Визуалдык: 8 Кадам (Сүрөттөр менен)
555 Timer Metronome - Аудио жана Визуалдык: Уулум жакында укулеле ойной баштады, мен метроном анын убактысын чыгарууга жардам берет деп ойлогом. Жаратуучу катары мен 555 таймер менен оңой эле камчылап алам деп ойлодум (аны менен эмне кыла албайсыз …) Жөндөмдөрдү бир аз издегенден кийин
CPE 133 Metronome: 3 кадам
CPE 133 Metronome: Cal Polyдеги акыркы долбоорубуз үчүн биз метроном деп аталган темпти сактоочу түзүлүштү түздүк, анткени биз музыканы жана санариптик дизайнды кызыгуу менен тандап алдык. Биз CPE 133төгү мурунку лабораторияларды колдонуп, кодубузду жана онлайн сабактарыбызды түзүүгө жардам бердик