Spisu treści:

Zautomatyzowane pianino: 5 kroków
Zautomatyzowane pianino: 5 kroków

Wideo: Zautomatyzowane pianino: 5 kroków

Wideo: Zautomatyzowane pianino: 5 kroków
Wideo: 5 Najlepszych ćwiczeń do nauki gry na pianinie dla POCZĄTKUJĄCYCH! 2024, Lipiec
Anonim
Zautomatyzowane pianino
Zautomatyzowane pianino

Chciałem zrobić pianino, które może grać automatycznie, natychmiast słuchając mojej muzyki. Więc spróbowałem z arduino uno, które leżałem. Mogłoby być znacznie lepiej z arduino zero przy użyciu prostej biblioteki mierników częstotliwości ii go nie miałem w tej chwili i kontynuowałem z uno.

Krok 1: Teoria

Na pianinie gra się, dopasowując częstotliwość wokalisty do fortepianu. Dlatego musimy próbkować częstotliwość wokalisty i odtwarzać ją w czasie rzeczywistym. Używam dzielnika napięcia z trympotu, ponieważ dźwięk jest zasilany prądem zmiennym, a arduino nie może radzić sobie z ujemnymi napięciami, dlatego jako odniesienie użyj napięcia dostarczanego przez dzielnik napięcia i ustaw go na 2,5V. Wejście jest dostarczane na pinie A0 arduino. Następnie zaprogramowałem arduino, aby sprawdzić, kiedy napięcie jest na poziomie odniesienia, który zmierzyłem i nazwałem je początkowym, a następnie zmierzyłem odstęp czasu między kolejnymi napięciami odniesienia, a następnie obliczyłem częstotliwość. zmienna służy do przechowywania chwilowej amplitudy sygnału audio w celu wyeliminowania szumu o amplitudzie mniejszej niż 15 wartości ADC lub 0,0733 V. Częstotliwość jest ograniczona, aby ekstremalne wartości nie przerywały utworu.

Krok 2: Wymagany materiał

Wymagany materiał
Wymagany materiał
Wymagany materiał
Wymagany materiał
Wymagany materiał
Wymagany materiał

1) Arduino Uno lub odpowiednik

2) Pasywny brzęczyk piezoelektryczny lub głośnik z obwodem wzmacniacza;

3) Potencjometr o wysokiej rezystancji (upewnij się, że prąd przepływający przez niego przy 5 V powinien być mały w kilku miliamperach)

4) przewody połączeniowe

5)płyta chlebowa

6) gniazdo audio 3,5 mm lub mikrofon z obwodem wzmacniacza (użyłem telefonu komórkowego jako wzmacniacza, ponieważ uważałem, że jestem zbyt leniwy, aby go zbudować)

7) Telefon z Androidem (Aby odtwarzać dźwięk)

8) kabel arduino (aby go zaprogramować)

Krok 3: Połączenia

Znajomości
Znajomości
Znajomości
Znajomości

1) Zamontuj trimpot na płytce chlebowej i podaj uziemienie i +5 V z arduino za pomocą przewodów połączeniowych.

2) Podłącz uziemienie gniazda 3,5 mm do trzeciego pinu trimpot, aby działał jako konfiguracja dzielnika napięcia i kanał do pinu A0 arduino.

3) Podłącz masę brzęczyka do masy arduino i sygnał do styku 13 arduino.

Krok 4: Kod Arduino

Kod Arduino
Kod Arduino

Oto kompletny kod

Zakomentowałem niektóre stwierdzenia dotyczące druku seryjnego używanego do testów

uint64_t curtime=0, ltime=0;uint32_t freq=0; uint16_t inicjał, val, del=0; bool ostatni, bieżący; void setup() { // umieść tutaj swój kod konfiguracji, aby uruchomić raz: delay(1000); /*Serial.begin(115200); opóźnienie (1000); Serial.println("system uruchomiony");*/ Initial = analogRead(A0); if(analogowyOdczyt(A0)

void loop() { // umieść tutaj swój główny kod, aby uruchamiał się wielokrotnie: val=analogRead(A0); if(val>=początkowe)curr=1; w przeciwnym razie bież=0; del=(int)val-(int)początkowe; if(last==0 && curr==1){ curtime=mikros(); częst=1000000/(2*(czas-czas-czasu)); /*Serial.print(freq, DEC); Serial.print("w dół"); Serial.println(del);*/ if(freq>50&&freq15)tone(13, freq, 500); opóźnienie (100); ltime=mikro(); ostatnia=1; }

Krok 5: Zasil to!

Podłącz telefon, aby posłuchać muzyki, a jeśli chcesz śpiewać, możesz użyć wszystkich aplikacji narzędziowych, które można pobrać ze sklepu Play. Oto link

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

Po pobraniu otwórz opcję mikrofonu i śpiewaj!

Oto jak to działa!

Zalecana: