Բովանդակություն:

Միկրոհսկիչի վրա հիմնված մետրոնոմ. 5 քայլ
Միկրոհսկիչի վրա հիմնված մետրոնոմ. 5 քայլ

Video: Միկրոհսկիչի վրա հիմնված մետրոնոմ. 5 քայլ

Video: Միկրոհսկիչի վրա հիմնված մետրոնոմ. 5 քայլ
Video: Multi-function DC/AC 5V - 24V Forward Reverse Motor Controller Timer I053A02 2024, Հուլիսի
Anonim
Image
Image

Մետրոնոմը ժամանակաչափման սարք է, որն օգտագործվում է երաժիշտների կողմից ՝ երգերում զարկերակին հետևելու և ժամանակի զգացում զարգացնելու սկսնակների մոտ, ովքեր սովորում են նոր գործիք: Այն օգնում է պահպանել ռիթմի զգացումը, որը որոշիչ նշանակություն ունի երաժշտության մեջ:

Այստեղ կառուցված այս մետրոնոմը կարող է օգտագործվել մեկ բարում և րոպեում զարկերի քանակը սահմանելու համար: Այս կարգաբերման տվյալները մուտքագրվելուց հետո այն ազդանշան է տալիս տվյալների համաձայն, որոնք ուղեկցվում են համապատասխան լուսավորությամբ `օգտագործելով LED- ները: Կարգավորման տվյալները ցուցադրվում են LCD էկրանով:

Քայլ 1: Պահանջվող բաղադրիչներ

·

  • Միկրոկառավարիչ Atmega8A
  • · 16*2 LCD էկրան
  • · Պիեզո Բուզզեր
  • · LED (կանաչ, կարմիր)
  • · Ռեզիստորներ (220e, 330e, 1k, 5.6k)
  • · Սեղմիչներ (2* հակակողպում, 1* կողպում)
  • · 3V CR2032 Մետաղադրամների մարտկոց (*2)
  • Մետաղադրամների մարտկոցի սեփականատեր (*2)
  • · 6pin Relimate (բևեռացված) միակցիչ

Քայլ 2: Շրջանի պատրաստում

Կատարեք միացման սխեմաները, ինչպես ցույց է տրված նկարում veroboard- ի վրա և միացրեք միացումները ճիշտ

Քայլ 3. Մետրոնոմի առանձնահատկությունները

Մետրոնոմի ինտերֆեյսը հիմնականում զբաղեցնում է LCD էկրանը: Դրա վերևում տեղադրված է 8 Ա միկրոկոնտրոլերը, որը տեղադրված է կենտրոնական մասում ՝ լուսադիոդներով և ազդանշանով դեպի աջ: Երեք անջատիչները և Relimate միակցիչը տեղադրված են վերևում:

Ամբողջ նախագիծը սնուցվում է միայն երկու մետաղադրամային մարտկոցով (սերիաներում ` @6V 220mAh)` մոտ 20 օրից մինչև 1 ամիս (ոչ անընդհատ) աշխատունակությամբ: Հետևաբար, այն չափավոր էներգաարդյունավետ է և ներկայիս պահանջն ունի 3-5 մԱ:

Ինքնափակման անջատիչը տեղադրված է ծայրահեղ ձախ կողմում և ON/OFF կոճակն է: Միջին կոճակը Setup կոճակն է, իսկ աջ կողմի կոճակը օգտագործվում է bpm և beats արժեքները փոխելու համար (մեկ բարում):

Երբ ON/OFF անջատիչը սեղմված է, lcd- ը միանում է և ցուցադրում է մեկ բարում զարկերի արժեքը: Այն սպասում է 3 վայրկյան, մինչև օգտվողը փոխի այն արժեքը, որից հետո ստացված արժեքը վերցնում է որպես մուտքագրում: Այս արժեքը տատանվում է 1/4, 2/4, 3/4, 4/4 սահմաններում:

Այնուհետև այն ցուցադրում է զարկերը րոպեում (bpm) և կրկին սպասում է 3 վայրկյան, մինչև օգտվողը փոխի այն արժեքը, որից հետո այն սահմանում է տվյալ արժեքը: 3 վայրկյան սպասման այս ժամանակը ճշգրտվում է այն բանից հետո, երբ օգտվողը փոխում է արժեքը: Bpm- ի արժեքները կարող են տատանվել 30 -ից 240 -ի: Bpm- ի կարգավորման ընթացքում «Setup» կոճակը սեղմելով ՝ այն փոխվում է մինչև 30 bpm, ինչը օգտակար է կոճակների կտտոցների քանակը նվազեցնելու համար: Bpm- ի արժեքները 5 -ի բազմապատիկ են:

Կարգավորումն ավարտվելուց հետո LCD լուսարձակը անջատվում է մարտկոցը խնայելու համար: Buzzer- ը ազդանշան է տալիս յուրաքանչյուր հարվածի համար մեկ անգամ, և LED- ները թարթում են մեկ -մեկ հերթով `յուրաքանչյուր հարվածի համար: Արժեքները փոխելու համար սեղմվում է Setup կոճակը: Դա անելուց հետո LCD լուսարձակը միանում է, և ծեծի ազդանշանը հայտնվում է այնպես, ինչպես նշված է նախկինում ՝ նույն ընթացակարգից հետո:

Atmega8A միկրոկառավարիչը բաղկացած է 500 բայթ EEPROM- ից, ինչը նշանակում է, որ որևէ զարկերի և բիթ / րոպե արժեքներ մուտքագրված են, դրանք պահվում են նույնիսկ մետրոնոմի անջատումից հետո: Հետևաբար այն նորից միացնելը ստիպում է այն վերսկսել նույն տվյալներով, որոնք մուտքագրվել էին նախկինում:

Relimate միակցիչն իրականում SPI վերնագիր է, որը կարող է օգտագործվել երկու նպատակով: Այն կարող է օգտագործվել Atmega8A միկրոկառավարիչը վերապրագրավորելու համար `որոնվածը թարմացնելու և մետրոնոմին նոր հնարավորություններ ավելացնելու համար: Երկրորդ, արտաքին էներգիայի աղբյուրը կարող է օգտագործվել նաև կարծր օգտագործողների համար մետրոնոմը սնուցելու համար: Բայց այս սնուցման աղբյուրը չպետք է լինի ավելի քան 5,5 վոլտ, և այն շրջանցում է ON/OFF անջատիչը: Անվտանգության նկատառումներից ելնելով, այս անջատիչը ՊԵՏՔ է անջատված լինի, որպեսզի արտաքին սնուցումը չկորցնի ներկառուցված մարտկոցներով:

Քայլ 4: Նկարագրություն

Այս նախագիծը պատրաստված է Atmel Atmega8A միկրոկառավարիչի միջոցով, որը ծրագրավորված է Arduino IDE- ի միջոցով Arduino Uno/Mega/Nano- ի միջոցով, որն օգտագործվում է որպես ISP ծրագրավորող:

Այս միկրոկառավարիչը Atmel Atmega328p- ի ավելի փոքր տարբերակ է, որը լայնորեն օգտագործվում է Arduino Uno- ում: Atmega8A- ն բաղկացած է 8 Կբ ծրագրավորվող հիշողությունից ՝ 1 Կբ օպերատիվ հիշողությամբ: Այն 8 բիթանոց միկրոկոնտրոլեր է, որն աշխատում է նույն հաճախականությամբ, ինչ 328p, այսինքն ՝ 16 ՄՀց հաճախականությամբ:

Այս նախագծում, քանի որ ընթացիկ սպառումը կարևոր կողմ է, ժամացույցի հաճախականությունը կրճատվել է, և օգտագործվում է ներքին 1 ՄՀց տատանում: Սա մեծապես նվազեցնում է ընթացիկ պահանջը մինչև մոտ 3.5 մԱ @3.3 Վ և 5 մԱ @4.5 Վ:

Arduino IDE- ն չունի այս միկրոկոնտրոլերը ծրագրավորելու հնարավորություն: Այսպիսով, տեղադրվեց «Minicore» փաթեթ (plugin), որը 8A- ն իր ներքին տատանումով աշխատեցնելու համար `օգտագործելով Optiboot բեռնիչ: Նկատվեց, որ նախագծի էներգիայի պահանջը մեծանում էր լարվածության բարձրացման հետ մեկտեղ: Ուստի էներգիայի օպտիմալ օգտագործման համար միկրոկառավարիչը պետք է աշխատեր 1 ՄՀց հաճախականությամբ, մեկ 3V մետաղադրամով մարտկոցով ՝ ընդամենը 3.5 մԱ հզորությամբ: Բայց նկատվեց, որ LCD- ն այդքան ցածր լարման դեպքում ճիշտ չէր գործում: Հետևաբար, երկու մետաղադրամների մարտկոցների շարքը օգտագործելու որոշումը կիրառվեց 6 Վ լարման հարվածը հասցնելու համար: Բայց սա նշանակում էր, որ ընթացիկ սպառումը հասցվել է 15 մԱ -ի, ինչը հսկայական թերություն էր, քանի որ մարտկոցի կյանքը շատ վատթարացներ: Նա նաև գերազանցեց 8A միկրոկառավարիչի 5,5 Վ լարման անվտանգ սահմանը:

Այսպիսով, այս խնդրից ազատվելու համար 330 օմ ռեզիստորը միացված էր 6 Վ լարման հոսանքին: Ռեզիստորը հիմնականում առաջացնում է լարման անկում իր մեջ ՝ նվազեցնելով լարման մակարդակը 5,5 Վ -ի սահմաններում ՝ միկրոկոնտրոլերն ապահով գործարկելու համար: Բացի այդ, 330 արժեքը ընտրվել է ՝ հաշվի առնելով տարբեր գործոններ.

  • · Նպատակն էր 8A- ն գործարկել հնարավորինս ցածր լարման դեպքում `էներգիա խնայելու համար:
  • · Նկատվեց, որ LCD- ը դադարեց աշխատել 3.2 Վ -ից ցածր, չնայած որ միկրոկոնտրոլերը դեռ գործում էր
  • · 330 -ի այս արժեքը համոզված է, որ ծայրահեղությունների լարման անկումները ճշգրիտ ճշգրիտ են մետաղադրամների մարտկոցների լիարժեք օգտագործման համար:
  • · Երբ մետաղադրամի բջիջներն իրենց գագաթնակետին էին, լարումը 6.3 Վ -ի սահմաններում էր, 8A- ն ստանում էր 4.6 - 4.7 Վ (@ 5 մԱ) արդյունավետ լարում: Եվ երբ մարտկոցները գրեթե չորացել էին, լարումը 4V- ի սահմաններում էր 8A- ով, իսկ LCD- ը ստանում էր բավականաչափ լարման, այսինքն ՝ 3.2V ՝ ճիշտ աշխատելու համար: (@3.5mA)
  • · Մարտկոցների 4 վ մակարդակից ցածր, դրանք արդյունավետորեն անօգուտ էին, առանց որևէ հյութ թողնելու սնվելու: Դիմադրության վրա լարման անկումը տատանվում է ամբողջ ժամանակ, քանի որ 8A միկրոկառավարիչի և LCD- ի ընթացիկ սպառումը նվազում է լարման նվազեցմամբ, որն էապես նպաստում է մարտկոցի տևողության բարձրացմանը:

16*2 LCD- ն ծրագրավորվել է Arduino IDE- ի ներկառուցված LiquidCrystal գրադարանի միջոցով: Այն օգտագործում է 8A միկրոկառավարիչի տվյալների 6 կապում: Բացի այդ, դրա պայծառությունն ու հակադրությունը վերահսկվում էին տվյալների երկու կապի միջոցով: Դա արվեց այնպես, որ չօգտագործվի լրացուցիչ բաղադրիչ, այսինքն ՝ պոտենցիոմետր: Փոխարենը, տվյալների PIN D9- ի PWM գործառույթը օգտագործվել է էկրանի հակադրությունը կարգավորելու համար: Նաև անհրաժեշտ էր, որ լուսադիոդային լուսավորությունն անջատված լիներ, երբ դա չի պահանջվում, այնպես որ դա հնարավոր չէր լինի առանց դրա էներգիան միացնելու տվյալների քորոց օգտագործելու: Հետևի լուսավորության LED- ի հոսանքը սահմանափակելու համար օգտագործվել է 220 օմ դիմադրություն:

Buzzer- ը և LED- ները նույնպես միացված էին 8A- ի տվյալների կապերին (յուրաքանչյուրի համար մեկական): Կարմիր LED- ի հոսանքը սահմանափակելու համար օգտագործվել է 5.6 կ Օմ դիմադրություն, իսկ կանաչի համար `1 կիլոգրամ: Ռեզիստորի արժեքներն ընտրվել են պայծառության և ընթացիկ սպառման միջև քաղցր կետ ձեռք բերելով:

ON/OFF կոճակը միացված չէ տվյալների պինին և պարզապես անջատիչ է, որը միացնում է նախագիծը: Նրա տերմինալներից մեկը միանում է 330 օմ ռեզիստորին, իսկ մյուսը միանում է LCD- ի և 8A- ի Vcc կապին: Երկու այլ կոճակները միացված են տվյալների կապերին, որոնք ներքին քաշվում են ծրագրակազմի միջոցով լարման մատակարարման համար: Սա անհրաժեշտ է անջատիչների աշխատանքի համար:

Բացի այդ, տվյալների կապը, որին միանում է Setup կոճակը, Hardware Interrupt- ի քորոցն է: Նրա ընդհատման ծառայության ռեժիմը (ISR) ակտիվացված է Arduino IDE- ում: Սա նշանակում է, որ ամեն անգամ, երբ օգտվողը ցանկանում է գործարկել կարգավորումների ընտրացանկը, 8A- ն կասեցնում է որպես մետրոնոմի իր ներկայիս աշխատանքը և գործարկում է ISR- ը, որը հիմնականում ակտիվացնում է Setup ընտրացանկը: Հակառակ դեպքում, օգտագործողը չի կարողանա մուտք գործել կարգավորումների ընտրացանկ:

Նախկինում նշված EEPROM տարբերակը համոզվում է, որ մուտքագրված տվյալները մնում են պահված նույնիսկ տախտակի անջատումից հետո: Իսկ SPI- ի վերնագիրը ներառում է 6 կապում `Vcc, Gnd, MOSI, MISO, SCK, RST: Սա SPI արձանագրության մի մասն է, և ինչպես արդեն նշվեց, ISP ծրագրավորողը կարող է օգտագործվել 8A- ն նորից ծրագրավորելու համար ՝ նոր հնարավորություններ կամ որևէ այլ բան ավելացնելու համար: Vcc կապը մեկուսացված է մարտկոցի դրական տերմինալից և, հետևաբար, Metronome- ն հնարավորություն է տալիս օգտագործել արտաքին էներգիայի աղբյուր `հաշվի առնելով նախկինում նշված սահմանափակումները:

Ամբողջ նախագիծը կառուցվել է Veroboard- ում `առանձին բաղադրամասերի և համապատասխան միացումների զոդման միջոցով` ըստ սխեմայի:

Խորհուրդ ենք տալիս: