Mikrofondan gelen sesin frekansını ölçmek?

Başlatan samuray84, 24 Şubat 2012, 16:06:59

samuray84

Alıntı yapılan: cemilkendir - 29 Şubat 2012, 11:47:40
biz yardım etmeye çalışıyoruz neden inanmıyorsun
bir devre şeması koymamışsın programını yazmamışsın bundan daha öte nasıl yardım edelim sana

ayrıyetten ses frekansı dediğin şey ölye sinyal jenaratöründen gelen tek bir frekans bileşeni olan bir işaret değildir
içerisinde bir çok farklı frekansda ses vardır yani bir tek frekans değil bir bandı kapsar

işte burada fft algoritmasını kullanarak bu band içerisindeki frekansları ve bu frekansların gücünü bulabiliriz

önemle belirtirim devre şeması koyman lazım yoksa kimse daha fazla bişey söyleyemez
hocam amacım gerginlik yaratmak değil, bi kusurum olmuşsa özür dilerim. Sadece fft kullanmaya gerek olmadığını düşündüm.  Tabiki bir tele dokunduğumuzda diğer teller de rezonans yapacak ve tek bir nota duyulmayacak, ama en güçlü ses vurduğumuz telden geleceği icin diğer sesler sadece dalganın şeklini belki bozacak, güzel bir sinüs dalgası oluşmayacak ama frekans, o baskın olan notanın frekansı olcak diye biliyorum ama kendim ölçmedim, çok detaylı da araştıramadım. Z'nin gönderdiği devreyi oluşturmaya calışcam, öncesinde de preamp'tan gelen frekansı osiloskop ile de görüntülemeye çalışcam lab'a gidebildiğim bi gün. bu hafta içinde izlenimlerimi buradan paylaşırım.

amac bilgi paylaşımı sonuçta, ben bu işte biraz yeni olduğumdan kimseye bir ukalalık yapmam söz konusu değil, yanlış anlaşılmamışımdır umarım. Yardımcı olmaya calışan herkese de cok teşekkür ederim

berat23

bence osiloskoba ihtiyacın yok.

telden çıkan sesi kaydedip,matlabta fftsini alsan daha mantıklı.

cemilkendir



uop

#19
öncelikle gitar tellerinin çıkarttığı seslerin frekanslarını başka bir guitar tuner ile aşağı yukarı belirle. sonra adc okuması yap. atıyorum 1000 örnek/sn şeklinde örnekle. aldığın bu sample'ın ulaştığı en yüksek değeri tespit ettirip bu en yüksek değerin sample içerisinde kaç kez tekrarlandığını buldurup frekans hesaplaması yap. tabi burada bahsettiğimiz değer sesin genlik değeri (veya bunun gerilimsel hali).  illaki biraz şaşacaktır. mesela en yüksek değer sample içerisinde sadece bir kere görülmüş olabilir. bunu çözmek için de gerilimin peak yaptığı yerleri örnekleme yapmadan önce analog olarak kesebilirsin. buna rağmen de şaşacaktır. o yüzden kod içerisinde bunu ayarlaman gerekir. işe yarar mı yaramaz mı bilmiyorum ama basit olarak aklıma bu geldi.

ses işleme işlerini dijital olarak yapmak her açıdan daha karlıdır. matlab ve fft konusu kafanın bir kenarında dursun yine de.   

ayrıca anlattığına göre sanırım sinyali yükseltmen gerekiyor. ses sinyalini yükseltme için ad620 kullanmanı öneririm. gürültü oranı çok düşük.

samuray84

Alıntı yapılan: ipek - 08 Mart 2012, 15:58:01
Muzik ile uğraşanların işine yarayabilir belki

URL]http://www.upload.gen.tr/d.php/www/te5gi4fz/Tuning_aid.rar.html[/URL]

http://www.upload.gen.tr/d.php/www/te5gi4fz/Tuning_aid.rar.html
ipek paylaşımın faydalı bişey gibi, daha yeni gördüm. Ancak orda bulduğum ccs kodunu anlamakta güclük cektim. Muhtemelen kodun üst kısmı biyerden alınıp main kısmı sonradan yazılmış ancak sonradan yazılan kısımda tunerla ilgili ne yazıldığını anlayamadım. kullanıcıdan rakam isteyip ekrana bişey bastırır gibi kodlar var, ancak fonksyonlar cok daha karmaşık. Bu işi en kolay yöntemle cözcem gibi. frekans analiz etmekten vazgeciyorum yani:) hatta düşündüğüm şeyle ilgili çalışmalara başladım. bittiğinde paylaşımda buluncam, böyle şeylerle uğraşmaktan zevk alan ve frekans da analiz ederiz diyen arkadaşlar varsa da mesaj atsalar görüşsek iyi olabilir. Çünkü denediğim şey de patlarsa projeyi yaptırmak ya da destek almak icin yana yakıla adam arayacağım :) Gerçi bu işler ne kadar ücretlere yapılıyor bilmiyorum da onu da böyle bi durum olursa özelden konuşmak mantıklı olur sanırsam. Neyse her halukarda projem bittiği zaman burda detaylı baylaşımda buluncam.

ilgilenen herkese de teşekkür ederim.