Съдържание:

Автоматично пиано: 5 стъпки
Автоматично пиано: 5 стъпки

Видео: Автоматично пиано: 5 стъпки

Видео: Автоматично пиано: 5 стъпки
Видео: ХЛЕБ ЗА 5 МИНУТ В ДЕНЬ ПО-НОВОМУ. НУ ОЧЕНЬ ПРОСТО И ЛЕГКО!!! 2024, Ноември
Anonim
Автоматизирано пиано
Автоматизирано пиано

Исках да направя пиано, което да свири автоматично, като слушам музиката мигновено. Затова го опитах с arduino uno, който бях лежал наоколо. Би могло да бъде много по -добре с arduino нула, използвайки обикновена библиотека за честотомер ii, която нямаше в момента и аз продължих с uno.

Стъпка 1: Теория

Пианото се свири чрез съпоставяне на честотата на певеца с пианото, така че трябва да вземем проба от честотата на певеца и да я възпроизведем в реално време. Използвам делител на напрежение от тримп, тъй като аудиото е ac и arduino не може манипулирайте отрицателните напрежения, затова използвайте напрежението, осигурено от делителя на напрежението, като еталон и го настройте на 2.5v. Входът се осигурява на щифт A0 на arduino. След това програмирах arduino, за да проверя кога напрежението е на референтното ниво, което измерих и го нарекох първоначално, след което измерих интервала от време между последователното референтно напрежение и след това изчислих честотата. променливата се използва за съхраняване на моментната амплитуда на аудио сигнала за елиминиране на шума, който има амплитуда по -малка от 15 adc стойност или 0,0733 волта. На честотата е поставено ограничение, така че екстремните стойности да не прекъсват песента.

Стъпка 2: Изисква се материал

Изисква се материал
Изисква се материал
Изисква се материал
Изисква се материал
Изисква се материал
Изисква се материал

1) Arduino Uno или еквивалент

2) Пасивен пиезо електрически зумер или високоговорител с усилвателна верига

3) Тримпот с високо съпротивление (уверете се, че токът, протичащ през него при 5v, трябва да бъде малък в няколко милилампа)

4) джъмперни проводници

5) макет

6) 3,5 мм аудио жак или микрофон с усилвателна верига (използвах мобилния си телефон като усилвател, тъй като се оказах твърде мързелив, за да изградя такъв)

7) Android телефон (за възпроизвеждане на звук)

8) кабел arduino (За да го програмирате)

Стъпка 3: Връзки

Връзки
Връзки
Връзки
Връзки

1) Монтирайте trimpot върху дъската за хляб и го захранвайте и +5v от arduino, като използвате джъмперни проводници.

2) Свържете земята на 3,5 -милиметровия жак към третия щифт на trimpot, за да работи като конфигурация на разделител на напрежение и канал към A0 щифт на arduino.

3) Свържете масата на зумера към земята на arduino и подайте сигнал към пин 13 на arduino.

Стъпка 4: Arduino код

Кодът на Arduino
Кодът на Arduino

Ето пълния код

Коментирах някои изявления за сериен печат, използвани за тестване

uint64_t curtime = 0, ltime = 0; uint32_t freq = 0; uint16_t инициал, val, del = 0; bool last, curr; void setup () {// поставете вашия код за настройка тук, за да стартирате веднъж: delay (1000); /*Serial.begin(115200); забавяне (1000); Serial.println ("системата стартира");*/ initial = analogRead (A0); ако (analogRead (A0)

void loop () {// поставете основния си код тук, за да се изпълнява многократно: val = analogRead (A0); if (val> = начален) curr = 1; иначе curr = 0; del = (int) val- (int) начален; if (last == 0 && curr == 1) {curtime = micros (); freq = 1000000/(2*(curtime-ltime)); /*Serial.print(freq, DEC); Serial.print ("надолу"); Serial.println (del);*/ if (freq> 50 && freq15) тон (13, freq, 500); забавяне (100); ltime = micros (); последно = 1; }

Стъпка 5: Включете го !

Свържете телефона си, за да пускате музика и ако искате да пеете, можете да използвате приложението за всички инструменти, което може да бъде изтеглено в магазина за игри. Ето връзката

play.google.com/store/apps/details?id=com.pradhyu.alltoolseveryutility&hl=bg

След изтеглянето отворете опцията mike и пейте!

Ето как работи!

Препоръчано: