28 Haziran 2020 Pazar

Fourier Dönüşümü Kullanılarak Stm32F4 Üzerinde Akort Uygulaması

Bu çalışmada stm32f4 geliştirme bordu ve üzerindeki mp45dt02 mikrofon kullanılarak akort uygulaması yapılmıştır. Test için enstürman olarak 4 telli ukulele seçilmiştir.

Akort cihazı, enstürmanı çalan kişinin önceden enstürmanın ayarlarının doğru şekilde kulağa rahatsızlık gelmeyecek şekilde ayarlamayı sağlar.

Bu çalışmaya başlarken nasıl oluyorda piyasaki akort cihazları doğru notayı buluyor olmasydı. Bunun cevabını Fourierde.

Fourier, periyodik veya periyodik olmayan sinyallerin sinüs ve cosinlerin toplamı olduğunu kanıtlamış. Bizde bu kanııtan yararlanarak stm32f üzerinde çalınan notanın Hz olarak tespitini yaptık. Karşılaştırma için andorid telefona indirilen bir adet akort uygulamaı ile yapıldı ve çalınan telin Hz olarak gösterimi aşağı yukarı neredeyse telefon ile aynı olduğu tespit edilmiştir.

Stm32 üzerinde uygulamaya başlamadan önce MATLAB ortamında önceden kaydedilmiş 4 adet nota üzerinde algoritma ile çalışılmıştır ve daha sonra gömülü tarafa yani stm32 tarafına uygulanmıştır.

MATLAB KODU: https://github.com/hakanaydn/matlab_ukulele_akort

stm32f4 discovery kiti üzerinde bir adet mikrofon bulunmaktadır ve aynı zamanda üzerinde DSP birimi bulunmaktadır. Bu uygulamayı yaparken RTOS dan yararlanılmıştır. Mikrofondan 8khz/16-bit sample alınarak DSP tarafında Fourier alınmış ve daha sonra  HPS algoritmasından geçirilerek asıl frekans belirlenmiştir. Örneğin; bir nota çalındığında(A-notası) FFT'sini alıp matlab'de çizdiriseniz FFT analizinde bir çok sinyal göreceksiniz. Bunlardan biri çalınan notanın frekansı(fundemental frequency). Bunu tespit etmek için HPS( Harmonic Product Spectrum)'dan yararlanılmıştır.



Yukarıdaki resimde FFT analiz kısmında çalınan A notası FFT'si alınmış hali gösterilmektedir. HPS analiz kısmında ise fundemantal freakansı yani çalınan notanın frekansı tespit edilmiştir. A notası 440 Hz'dir. Matlab'de 437.7 Hz olarak tespit edilmiştir.

Geliştirlen bu algoritmada stm32f4 üzerinden denenerek A notası 437.5Hz olarak tespit edilmiştir. Video'yu izlerseniz bunu görebilirsiniz.







İrtibat için
aydinhakan91@gmail.com