logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Metronom tap-tempo na Attiny24

SylwekK 22 Lut 2011 12:35 9626 9
REKLAMA
  • Metronom tap-tempo na Attiny24
    Przedstawiam dzisiaj prosty gadżet jaki zmajstrowałem jakiś czas temu. Jest to w zasadzie zwykły elektroniczny metronom i nie różniłby się od wielu podobnych tu prezentowanych gdyby nie sposób ustawiania czasu pikania.

    Założenia:

    1.Wykorzystać stare diody led, które leżały w szafce około 15lat...
    2.Realizacja na mikrokontrolerze (tak dla wprawki)
    3.Układ ma być taktowany „nabijaniem rytmu”.
    4.Żadnych zbędnych wodotrysków – po prostu metronom.
    5.Ma być tanio - koszt attiny24, diod nie liczę bo długo leżały i prawie o nich zapomniałem), jakaś obudowa pilotopodobna, i parę elementów RC

    Działanie układu:

    Układ za pomocą LED ma przedstawiać ruch wahadełka znanego z metronomów mechanicznych. Jest to dużo lepsze rozwiązanie niż słuchanie tylko pikania - po prostu widać za ile to piknięcie nastąpi. Ustawianie rytmu to dwukrotne stuknięcie w obudowę (miejsce po jej lewej stronie). Pierwsze stuknięcie zeruje licznik i zapala skrajną diodę po prawej stronie, drugie natomiast kontynuuje rozpoczęty rytm od lewej diody. Przycisk służy do pauzowania i wznawiania pracy oraz do wyłączania urządzenia (dłuższe przytrzymanie). Rytm można modyfikować w trakcie pikania jak również w trakcie pauzy – wtedy po drugim stuku automatycznie metronom ruszy. Jeśli drugiego stuknięcia nie będzie to automatycznie metronom ruszy po około 2,5s. Jest też funkcja automatycznego wyłączenia, która zadziała jeśli po 20s na pauzie nie będzie stuknięcia.

    Metronom tap-tempo na Attiny24

    Program napisałem w BASCOM i zajmuje po kompilacji nieco ponad 1300 bajtów. Diody zasilane są multipleksowo. Początkowo miało być 16szt. (nawet miejsce na płytce jest) ale okazało się że, się przeliczyłem i mam tylko 14szt. LED tego samego typu. Rozdzielczość pracy to około 0,5ms – w praktyce wystarcza. Maksymalna szybkość pikania to około 150ms, minimalna – 2,5s.

    Największym problemem jak się okazało w praktyce było odpowiednie umieszczenie czujki piezo. Urządzenie musiało być na tyle czułe, żeby bez problemu rozpoznać stuknięcia i na tyle odporne na zewnętrzne sygnały, żeby nie reagował na np. klaśnięcie itp.... Podchodziłem do zagadnienia chyba z 5 razy na czym ucierpiała najbardziej obudowa rozwiercona i wysmarowana klejem. W końcu wprowadziłem pewne modyfikacje do stopnia wejściowego wzmacniacza (dodałem 220nF żeby odfiltrować zbyt wysokie częstotliwości) i zmieniłem nieco czułość (służy do tego równolegle z tym kondensatorem rezystor 100k). Co ciekawe nawet samo przyklejenie czujki piezo miało kolosalne znaczenie. Najlepsze efekty uzyskałem z takim rozwiązaniem jak na zdjęciu. Układ teraz reaguje w zasadzie nawet na lekkie puknięcie opuszkiem palca po lewej stronie obudowy, a nie reaguje nawet kiedy dość mocno stukam po jego prawej stronie. Również, kiedy metronom leżał na stole i obstukiwałem stół ciężką rękojeścią wkrętaka wokół metronomu ten był nieugięty i nadal nie reagował...

    Metronom tap-tempo na Attiny24

    Jako sygnał dźwiękowy wykorzystałem standardowy buzer-piszczek za kilka zł. W programie jest furtka (zmiana jednej linii), która pozwala na generację dźwięku ale w praktyce ten piszczek okazał się praktyczniejszy (niewielkie rozmiary) i głośniejszy, a ja nie chciałem już rozbudowywać układu o jakieś dodatkowe głośniki i stopnie mocy. Jedyną rzeczą (nie uwzględnioną na schemacie), którą jeszcze dodałem to wyjście słuchawkowe. Sygnał pociągnąłem przez kondensator i potencjometr z kolektora tranzystora wyjściowego. Myślałem zamiast tego o opcji „kopania prądem” i być może kiedyś to zmodyfikuję, a na razie wystarczy mi tak jak jest.

    Metronom tap-tempo na Attiny24 Metronom tap-tempo na Attiny24

    Żadnych stroików, tunerów itp. bajerów dodawał nie będę, bo akurat gram na perkusji i to mi do szczęścia nie jest potrzebne. Tak samo nie myślę, o podziałach 3/4, 4/2 itd. bo zwykły wahadłowy metronom też tego nie ma. Mnie zależało, żeby na szybko ustalić sobie tempo i tego się trzymać.

    Na zakończenie krótka prezentacja jak to działa w praktyce:







    W załączniku schemat i wsad do procka.
    Fusebity - Program pracuje na 8Mhz i należy wyłączyć dzielenie zegara przez 8.

    Zapraszam do komentowania :)
    Załączniki:
    • metronom attiny24.zip (15.25 KB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    SylwekK
    Poziom 32  
    Offline 
    Tu można zajrzeć www.sylwekkuna.com
    SylwekK napisał 2764 postów o ocenie 2762, pomógł 82 razy. Mieszka w mieście Lipsko. Jest z nami od 2007 roku.
  • REKLAMA
  • #2 9187084
    poorchava
    Poziom 18  
    Posty: 392
    Pomógł: 14
    Ocena: 23
    Pomysłowa konstrukcja, podoba mi się sposób zadawania tempa (no chyba, że to standard w metronomach, nie znam się ;p). Jeżeli chodzi o sterowanie diodami, to ja bym wykorzystał rejestry szeregowo-równoległe, np 74HC164.

    Skąd wydłubałeś przetwornik piezo? Jakich rzędów są amplitudy, które on generuje przy stuknięciach?
  • REKLAMA
  • #3 9187203
    pawel_aa
    Poziom 25  
    Posty: 976
    Pomógł: 38
    Ocena: 263
    Urządzenie wręcz genialne w swojej prostocie.
    Zaczynałem powoli wątpić, że z Attiny+Led da się zbudować cokolwiek innego niż zmieniającą kolor diodę led rgb wmontowaną gdziekolwiek, a tu proszę - bardzo proste i praktyczne zastosowanie takiej kombinacji.

    Urządzenie można by rozbudować o generowanie rytmu w określonym tempie co zwiększyłoby jego funkcjonalność, ale jak sam napisałeś układ miał być taktowany "nabijanym rytmu" więc może akurat taka funkcja nie byłaby dla Ciebie przydatna.

    Jestem 3 x na tak :-)
  • #4 9187246
    SylwekK
    Poziom 32  
    Posty: 2764
    Pomógł: 82
    Ocena: 2762
    Nadawanie tempa stukaniem w elektronicznych metronomach ostatnio spotyka się coraz częściej. W większości konstrukcji ustawia się tempo podając ilość uderzeń na minutę albo po prostu gotowy konkretny rytm.

    Rejestr 74164 bardzo by skomplikował konstrukcję. Attiny24 ma 14 nóżek, a spokojnie obsługuje 16 diod+wejście+wyjście+przycisk (do tego Reset też można by przeprogramować i będzie jeszcze jedno in/out)

    Piezo jest z jakiegoś starego zegarka z melodyjkami, ale można tu użyć praktycznie dowolną tego typu wkładkę i dobrać czułość.
  • #5 9189855
    gbd.reg
    Poziom 21  
    Posty: 529
    Pomógł: 3
    Ocena: 45
    dodałbym do tego jeszcze wyświetlanie bieżącego rytmu (w bpm) na wyświetlaczu segmentowym i byłoby super :D

    Skoro grasz na perkusji to można też to zrealizować tak, że rytm ustalasz uderzając pałeczkami o siebie (chyba w praktyce się tego podczas gry nie stosuje). Tylko pytanie jak wyłapać takie stuknięcie i żeby po wymianie pałeczek na inne dalej mogło działać :)
  • REKLAMA
  • #6 9189877
    SylwekK
    Poziom 32  
    Posty: 2764
    Pomógł: 82
    Ocena: 2762
    Z wyświetlaniem nie było by w zasadzie żadnego problemu ale wtedy musiał bym większy procek wstawić, a tego robić nie chciałem :)
    Gdy by łapało dźwięk pałeczek to i pewnie pozostałe bębny by się załapały i metronom by głupiał. W obecnym rozwiązaniu udało mi się naprawdę skutecznie wyeliminować właśnie obce dźwięki i pozostawić tylko delikatne pukanie w konkretnym miejscu obudowy :)
  • #7 9189950
    xamrex
    Poziom 28  
    Posty: 1668
    Pomógł: 82
    Ocena: 341
    SylwekK dałbyś kod w formacie *.bas?
  • #8 9191266
    SylwekK
    Poziom 32  
    Posty: 2764
    Pomógł: 82
    Ocena: 2762
    Widzę, że zainteresowanie źródłem rośnie, a w sumie nie mam nic do ukrycia :)
    Poniżej kompletny program:


    Podstawową wersję programu pisałem jeszcze w zeszłym roku i pewne drobiazgi można by jeszcze poprawić ale do ogólnego działania metronomu nie wniosło by to jakichś widocznych zmian. Tak jak jest teraz działa pewnie, stabilnie i bez problemu.
    Jeśli będą pytania odnośnie i tak już bardzo prostego programu to pytać śmiało :)
    Załączniki:
    • kod.txt (4.6 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #9 9197701
    gbd.reg
    Poziom 21  
    Posty: 529
    Pomógł: 3
    Ocena: 45
    Odnośnie pałeczek: myślałem nad rozwiązaniem nie wykorzystującym dźwięku, ale chyba bez kabli podłączonych do pałeczek by się nie obyło... chociaż może ktoś coś wymyśli :)
  • REKLAMA
  • #10 9199181
    SylwekK
    Poziom 32  
    Posty: 2764
    Pomógł: 82
    Ocena: 2762
    Nie no, kable na pałeczkach są nierealne. Nie ma mowy o uwiązaniu ich na kablach. Może perkusistom disco polo by to nie przeszkadzało, ale mnie na pewno ;)

Podsumowanie tematu

✨ Przedstawiony projekt to elektroniczny metronom oparty na mikrokontrolerze Attiny24, który wykorzystuje stare diody LED do wizualizacji rytmu. Użytkownik ustawia tempo poprzez dwukrotne stuknięcie w obudowę, co jest nowatorskim podejściem w porównaniu do tradycyjnych metronomów. W dyskusji poruszono możliwość rozbudowy urządzenia o wyświetlacz segmentowy do prezentacji bieżącego rytmu w BPM, jednak autor zdecydował się na prostotę konstrukcji. Wskazano również na zastosowanie przetwornika piezo z zegarka oraz omówiono kwestie eliminacji niepożądanych dźwięków. Uczestnicy dyskusji podkreślili innowacyjność projektu oraz jego praktyczność.
Wygenerowane przez model językowy.
REKLAMA