Sisällysluettelo:
- Vaihe 1: Tarvittavat komponentit:
- Vaihe 2: Piirin tekeminen
- Vaihe 3: Metronomin ominaisuudet
- Vaihe 4: Kuvaus
Video: Mikro-ohjainpohjainen metronomi: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Metronomi on ajoituslaite, jota muusikot käyttävät seuratakseen kappaleiden lyöntejä ja kehittääkseen ajoitustunnetta aloittelijoiden keskuudessa, jotka oppivat uutta soitinta. Se auttaa ylläpitämään rytmitajua, joka on ratkaisevaa musiikissa.
Tätä täällä rakennettua metronomia voidaan käyttää iskujen määrää baarissa ja lyöntejä minuutissa. Kun nämä asetustiedot on syötetty, se piippaa tietojen mukaisesti ja asianmukaisen valaistuksen avulla LED -valojen avulla. Asennustiedot näytetään nestekidenäytössä.
Vaihe 1: Tarvittavat komponentit:
·
- Atmega8A mikrokontrolleri
- · 16*2 LCD -näyttö
- · Pietsosummeri
- · LEDit (vihreä, punainen)
- · Vastukset (220e, 330e, 1k, 5.6k)
- · Painikkeet (2* lukkiutumaton, 1* lukitus)
- · 3 V: n CR2032 -nappiparisto (*2)
- Kolikon akun pidike (*2)
- · 6pin Relimate (polarisoitu) -liitin
Vaihe 2: Piirin tekeminen
Tee piiriliitännät kuvan osoittamalla tavalla veroboardilla ja juota liitännät oikein
Vaihe 3: Metronomin ominaisuudet
Metronomin käyttöliittymä on pääasiassa lcd -näytön käytössä. Sen yläpuolella on 8A -mikrokontrolleri, joka on sijoitettu keskelle LED -valojen ja summerin oikealla puolella. Kolme kytkintä ja Relimate -liitin on sijoitettu yläosaan.
Koko projekti saa virtansa vain kahdesta nappiparistosta (sarjassa @6 V 220 mAh), joiden arvioitu käyttöaika on 20 päivästä 1 kuukauteen (ei jatkuvasti). Siksi se on kohtalaisen virransäästöinen ja sen virrankulutus on 3-5 mA.
Itselukittuva kytkin on vasemmalla ja on ON/OFF -painike. Keskellä oleva painike on Setup -painike ja oikealla olevaa painiketta käytetään lyönnin ja lyönnin arvojen muuttamiseen (baaria kohden).
Kun ON/OFF -kytkintä painetaan, LCD -näyttö kytkeytyy päälle ja näyttää iskujen arvon baarissa. Se odottaa 3 sekuntia, kunnes käyttäjä muuttaa arvoa, jonka jälkeen se ottaa tuloksena olevan arvon syötteeksi. Tämä arvo vaihtelee välillä 1/4, 2/4, 3/4, 4/4.
Sitten se näyttää lyöntejä minuutissa (bpm) ja odottaa jälleen 3 sekuntia, kunnes käyttäjä muuttaa arvoa, jonka jälkeen se asettaa tietyn arvon. Tämä 3 sekunnin odotusaika kalibroidaan sen jälkeen, kun käyttäjä on muuttanut arvoa. Bpm -arvot voivat vaihdella välillä 30 - 240. Painamalla Setup -painiketta bpm -asennuksen aikana sen arvoksi palautetaan 30 bpm, mikä vähentää painikkeiden napsautusten määrää. Bpm -arvot ovat viisinkertaisia.
Kun asetukset on tehty, LCD -taustavalo sammuu akun säästämiseksi. Äänimerkki piippaa kerran jokaisesta lyönnistä ja merkkivalot vilkkuvat vuorotellen jokaisen lyönnin kohdalla. Jos haluat muuttaa arvoja, paina Setup -painiketta. Kun tämä tehdään, LCD -taustavalo syttyy ja lyönnikehote tulee näkyviin kuten edellä mainittiin samalla tavalla myöhemmin.
Atmega8A -mikrokontrolleri koostuu 500 tavusta EEPROM -järjestelmästä, mikä tarkoittaa, että kaikki syötetyt lyönti- ja bpm -arvot pysyvät tallennettuina myös metronomin sammuttamisen jälkeen. Näin ollen sen käynnistäminen uudelleen saa sen jatkumaan samoilla tiedoilla kuin aiemmin.
Relimate -liitin on itse asiassa SPI -otsikko, jota voidaan käyttää kahteen tarkoitukseen. Sitä voidaan käyttää Atmega8A -mikrokontrollerin uudelleenohjelmointiin sen laiteohjelmiston päivittämiseksi ja uusien ominaisuuksien lisäämiseksi metronomiin. Toiseksi, ulkoista virtalähdettä voidaan käyttää myös metronomin virtalähteeksi hardcore -käyttäjille. Mutta tämä virtalähde ei saa olla suurempi kuin 5,5 volttia ja se ohittaa ON/OFF -kytkimen. Turvallisuussyistä tämän kytkimen TÄYTYY olla pois päältä, jotta ulkoinen virtalähde ei aiheuta oikosulkua sisäänrakennettujen akkujen kanssa.
Vaihe 4: Kuvaus
Tämä projekti on tehty Atmel Atmega8A -mikro -ohjaimella, joka on ohjelmoitu Arduino IDE: n kautta Internet -palveluntarjoajan ohjelmoijana käytettävän Arduino Uno/Mega/Nanon kautta.
Tämä mikro -ohjain on Atmel Atmega328p: n vähäisempi versio, jota käytetään laajasti Arduino Unossa. Atmega8A sisältää 8 kt ohjelmoitavaa muistia ja 1 kt RAM -muistia. Se on 8 -bittinen mikro -ohjain, joka toimii samalla taajuudella kuin 328p eli 16 MHz.
Tässä projektissa, koska virrankulutus on tärkeä näkökohta, kellotaajuutta on pienennetty ja käytetään sisäistä 1 Mhz: n oskillaattoria. Tämä vähentää huomattavasti nykyistä tarvetta noin 3,5 mA: een 3,3 V: n ja 5 mA: n 4,5 V: n jännitteeseen.
Arduino IDE: llä ei ole mahdollisuutta ohjelmoida tätä mikro -ohjainta. Näin ollen”Minicore” -paketti (laajennus) asennettiin ajamaan 8A: ta sisäisellä oskillaattorillaan käyttäen Optiboot -käynnistyslatainta. Huomattiin, että projektin tehontarve kasvoi jännitteen kasvaessa. Optimaalisen tehonkäytön vuoksi mikrokontrolleri oli asetettu toimimaan 1 MHz: n taajuudella yhdellä 3 V: n kolikkoakulla, joka vetää vain 3,5 mA. Mutta havaittiin, että lcd ei toiminut kunnolla niin pienellä jännitteellä. Siksi päätöstä käyttää kahta kolikkoakkua sarjassa sovellettiin jännitteen nostamiseen 6 V. Mutta tämä tarkoitti, että nykyinen kulutus nousi 15 mA: ksi, mikä oli valtava haittapuoli, koska akun käyttöikä heikkeni. Lisäksi se ylitti 8A -mikrokontrollerin turvallisen jänniterajan 5,5 V.
Näin ollen 330 ohmin vastus kytkettiin sarjaan 6 V: n virtalähteen kanssa päästäkseen eroon tästä ongelmasta. Vastus aiheuttaa pohjimmiltaan jännitehäviön itsessään alentamaan jännitetasoa 5,5 V: n sisällä mikrokontrollerin turvalliseksi ajamiseksi. Lisäksi arvo 330 valittiin ottamalla huomioon eri tekijät:
- · Tavoitteena oli käyttää 8A: ta mahdollisimman alhaisella jännitteellä virran säästämiseksi.
- · Havaittiin, että LCD -näyttö lakkasi toimimasta alle 3,2 V: n, vaikka mikrokontrolleri toimi edelleen
- · Tämä arvo 330 varmistaa, että jännitehäviöt äärimmäisyyksissä ovat täsmälleen tarkkoja, jotta voit käyttää kolikkoakkuja täysimääräisesti.
- · Kun kolikkokennot olivat huipussaan, jännite oli noin 6,3 V, ja 8A: n tehollinen jännite oli 4,6 - 4,7 V (@ 5 mA). Ja kun paristot olivat melkein kuivuneet, jännite oli noin 4 V 8A: n kanssa ja LCD vastaanotti juuri tarpeeksi jännitettä eli 3,2 V toimimaan oikein. (@3,5 mA)
- · Paristojen 4v -tason alapuolella ne olivat käytännössä hyödyttömiä ilman, että mehua jätettiin virtaamaan. Jännitehäviö vastuksessa vaihtelee koko ajan, koska 8A -mikrokontrollerin ja LCD: n virrankulutus pienenee pienentyneellä jännitteellä, mikä olennaisesti auttaa pidentämään akun käyttöikää.
16*2 LCD -näyttö ohjelmoitiin Arduino IDE: n sisäänrakennetun LiquidCrystal -kirjaston avulla. Se käyttää 6 datanappia 8A -mikrokontrollerista. Lisäksi sen kirkkautta ja kontrastia hallittiin kahdella datanastalla. Tämä tehtiin siten, ettei käytetty ylimääräistä komponenttia eli potentiometriä. Sen sijaan datanastan D9 PWM -toimintoa käytettiin näytön kontrastin säätämiseen. Myös lcd -taustavalon oli sammuttava, kun sitä ei tarvita, joten tämä ei olisi ollut mahdollista ilman datanapin käyttöä. 220 ohmin vastusta käytettiin taustavalon LEDin virran rajoittamiseen.
Summeri ja LEDit liitettiin myös 8A: n datanastakoihin (yksi kullekin). 5,6 k ohmin vastusta käytettiin rajoittamaan punaisen LEDin virtaa, kun taas 1 k ohmia käytettiin vihreään. Vastusarvot on valittu hankkimalla makea kohta kirkkauden ja virrankulutuksen välillä.
PÄÄLLE/POIS -painiketta ei ole kytketty datanappiin, ja se on yksinkertaisesti kytkin, joka vaihtaa projektin. Yksi sen liittimistä on kytketty 330 ohmin vastukseen, kun taas toinen liitetään LCD: n ja 8A: n Vcc -nastoihin. Kaksi muuta painiketta on kytketty datanappeihin, jotka on vedetty sisäisesti syöttöjännitteeseen ohjelmiston kautta. Tämä on tarpeen kytkinten toiminnalle.
Lisäksi datanappi, johon Setup -painike muodostaa yhteyden, on laitteiston keskeytystappi. Sen keskeytyspalvelurutiini (ISR) aktivoidaan Arduino IDE: ssä. Tämä tarkoittaa sitä, että aina kun käyttäjä haluaa suorittaa asetusvalikon, 8A keskeyttää nykyisen toimintansa metronomina ja suorittaa ISR: n, joka aktivoi periaatteessa asetusvalikon. Muuten käyttäjä ei pääse Setup -valikkoon.
Edellä mainittu EEPROM -vaihtoehto varmistaa, että syötetyt tiedot säilyvät muistissa myös sen jälkeen, kun kortti on sammutettu. Ja SPI -otsikko sisältää 6 nastaa - Vcc, Gnd, MOSI, MISO, SCK, RST. Tämä on osa SPI -protokollaa, ja kuten aiemmin mainittiin, ISP -ohjelmoijaa voidaan käyttää 8A: n uudelleen ohjelmointiin uusien ominaisuuksien tai muun lisäämiseksi. Vcc -nasta on eristetty akun positiivisesta navasta, ja siksi Metronome tarjoaa mahdollisuuden käyttää ulkoista virtalähdettä pitäen mielessä edellä mainitut rajoitukset.
Koko projekti rakennettiin veroboardiin juottamalla yksittäiset komponentit ja asianmukaiset liitännät piirikaavion mukaisesti.
Suositeltava:
Mikro -binaarikello: 10 vaihetta (kuvilla)
Mikro -binaarikello: Kun olet aiemmin luonut Instructable (Binary DVM) -ohjelman, joka käyttää rajoitettua näyttöaluetta binaarilla, se oli vain pieni askel, kun olet aiemmin luonut pääkoodimoduulin Decimal to Binary -muunnokselle binaarikellon luomiseksi, mutta t
Mikro: Bot - Mikro: Bitti: 20 vaihetta
Micro: Bot - Micro: Bit: Rakenna itsellesi Micro: Bot! Se on Micro: Bit -ohjattu robotti, jossa on sisäänrakennettu kaikuluotain itsenäiseen ajamiseen, tai jos sinulla on kaksi Micro: bittiä, radio -ohjattava ajo
555-ajastin Metronomi: 3 vaihetta
555-ajastin Metronomi: Metronomi on laite, joka tuottaa kuuluvan napsautuksen tai muun äänen säännöllisin väliajoin, jotka käyttäjä voi asettaa, tyypillisesti lyönteinä minuutissa (BPM). Muusikot käyttävät laitetta harjoitellakseen soittoa normaalisti. (Https://en.wikipedia.org/w
Visuaalinen metronomi rumpaleille: 8 vaihetta
Visuaalinen metronomi rumpalille: Minulla on ystävä ja työtoveri, joka on rock and roll -rumpali. Hänen kennonsa on työpaikalla vieressäni, joten hän näkee ja kuulee kaikista elektroniikka- ja ohjelmistoprojekteistani. Siitä on yli vuosi, joten en edes muista miten tämä kaikki tapahtui
CPE 133 Metronomi: 3 vaihetta
CPE 133 Metronomi: Viimeisessä Cal Poly -projektissamme loimme metronomiksi kutsutun tempoa pitävän laitteen. Valitsimme tämän projektin musiikin ja digitaalisen suunnittelun vuoksi. Käytämme CPE 133: n aiempia laboratorioita koodimme ja online -opetusohjelmien suunnittelussa auttaaksemme