Ölçüm sisteminin sistem yanıtından çözülmesi


14

Bir sistem tanımlama ölçümü hazırlıyorum ve ölçüm sisteminin yanıtını ölçülen yanıttan deconvolve etmek istiyorum.

Sistemin kurulumu aşağıdaki gibidir; sinyal bir bilgisayarda üretilir, daha sonra sinyal ses kartına gönderilir, bu da sinyali güç amplifikatörüne iletir, bu bir hoparlörü çalıştırır. Hoparlör, bir mikrofon tarafından yakalanan ses enerjisini ve tekrar ses kartına yayar. Kaydedilen sinyal daha sonra bilgisayar tarafından işlenir.

Ses kartından gelen sinyal de doğrudan kendi kendine beslenir, bu da pc -> DAC -> ADC -> pc yanıtının tepkisini ölçmeme izin verir.

Bu 'ölçüm zincirini' genel 'sistem zincirinden' de çözmek istiyorum. Bu görev için hangi yöntemleri kullanabilirim?

Yanıtlar:


12

Uzun soluklu cevap için özür dilerim, ancak iyi bir akustik ölçüm yapmak zordur. İşte bazı adımlar (ve bir noktada, sorunuzun doğrudan cevabına ulaşacağız).

İlk olarak, ölçtüğünüz sistemin gerçek doğrusal ve zamanla değişmez olduğundan emin olmalısınız (aksi takdirde dekonvolve edemezsiniz). Normal ses kartı sürücüleri kullanıyorsanız, bu bir PC'de zor olabilir. Bunlar, Windows Çekirdek Karıştırıcısı üzerinden sık sık örnekleme hızı dönüşümü uygulayan ve arabellekleri belirleyici olmayan yollarla zamanla yönlendiren sinyalleri yönlendirecektir.

İkincisi, sisteminizin dürtü uzunluğunu belirlemeniz gerekir. İyi bir tahmin, ölçmekte olduğunuz odanın yankı süresidir. 2'lik bir güç seçmek en uygunudur; çoğu oda için bu 44.1kHz veya 48kHz örnek hızında 16384 veya 32768 olacaktır.

Üçüncü olarak, bu uzunlukta periyodik bir uyarma oluşturun. Bu, bir günlük taraması veya (daha iyi) bir sahte rasgele gürültü olabilir. Gürültü spektrumu seçilmelidir, böylece ilgilenilen frekans aralığında kabaca sabit sinyal / gürültü oranı elde edersiniz. Bu, transfer fonksiyonuna ve arka plan gürültü spektrumuna bağlıdır. Bunlardan birini henüz bilmiyorsanız, pembe iyi bir başlangıçtır. Bu sinyalin bir periyodunu x [n] olarak adlandıralım.

Dördüncü olarak, sisteminizi D / A'nızdaki sol kanal hoparlöre VE A / D'nizin sol kanalına gidecek şekilde bağlayın. Mikrofonu A / D'nin sağ kanalına bağlayın.

Beşinci olarak, uyarımı başlatın (döngü yapın veya gürültü sinyalinizin birçok tekrarını içeren bir dalga dosyası oluşturun). Tüm seviyeleri dikkatlice izleyin: A / D'nin kırpmanın yaklaşık 10 dB altında olduğundan emin olun. Mikrofon pre-amp'inin kırpmanın yaklaşık 10 dB altında olduğundan emin olun. Güç amplifikatörünün kırpılmadığından ve hoparlörün aşırı sürülmediğinden emin olun.

Altıncı, odanın olabildiğince sessiz olduğundan emin olun. Kapıları ve pencereleri kapatın. HVAC sistemleri de dahil olmak üzere çoğu şeyi bir fan ile kapatın. Tüm diğer insanları binadan çıkartın. Şasi döngüleri varsa, gerektiği gibi yalıtım transformatörleri ve şasi asansörleri kullanın. Gürültüyü kontrol etmenin iyi bir yolu, bir kulaklık amfisini mikrofon çıkışına bağlamak ve kulaklıklardan dinlemek. Duyabileceğiniz herhangi bir gürültü, uğultu veya başka bir eser de ölçümde görünecektir.

Yedinci, gerçek edinimi yapın. Uyarma sinyali çalışırken 12 periyodu toplayın. Sonuçları olağandışı bir şey için görsel olarak inceleyin (boşluklar, eksik parçalar, eksiklikler vb.) İlk iki periyodu atın. Diğer 10 üzerinden ortalamayı hesaplayın. Sol kanalı y [n] (ses kartı) ve sağ kanalı m [n] (mikrofon) olarak adlandıralım.

Sekizinci, y [n] 'nin Fourier Dönüşümü'nü hesaplayın. Bu sıfırlar veya çok düşük enerjili alanlar olmadan oldukça düz olmalıdır. Çoğu ses kartı AC bağlantılı girişlere sahip olduğu için durum böyle olmayabilir, yani bazı yüksek geçiş filtresi vardır ve DC'deki değer çok düşük olabilir. Benzer şekilde, muhtemelen bir kenar yumuşatma filtresi de olabilir, bu nedenle yine çok yüksek frekanslarda düşük enerjiye veya sadece gürültüye sahip olabilirsiniz. Bunu manuel olarak düzeltebilirseniz (az miktarda geniş bant enerjisi ekleyerek), yapın. Spektrum ilgilenilen frekans alanında çok düzse, onu uygun şekilde geciktirilmiş bir birim dürtü ile değiştirebilirsiniz. Bunların hiçbiri işe yaramazsa, işler daha karmaşık hale gelir.

Dokuzuncu: deconvolute. İşletme transfer fonksiyonu basit bir şekilde hesaplanabilmektedir burada , Fourier dönüşümünü belirtir. Bu sıfır dolgusu veya penceresi olmayan doğrudan spektral bölümdür. Dairesel tutarlı birleşme elde ettiğimiz için, aynı zamanda dairesel dekonvolüsyon da yapıyoruz.{}

H(ω)={m(t)}{y(t)}
{}

Denklem, 8. adımda tartışılan problemi göstermektedir. Ölçülen bir spektrumla bölüyoruz. Bölen spektrumundaki sıfırlar veya düşük enerjili veya yüksek gürültülü alanlar, sonuçta ortaya çıkan transfer işlevinde çöple sonuçlanır. "İyi" frekanslardaki sonuçlar yine de iyi olacaktır, ancak bunu örneğin bir dürtü yanıtını hesaplamak için kullanamazsınız. Basitleştirilmiş bir sürüm yalnızca uyarım sinyaline bölünmek, yani

H(ω)={m(t)}{x(t)}
ve uyarımı spektrumda sıfırlar olmayacak şekilde seçin. Ancak bu, D / A ve A / D sistem tepkisini çözmenize izin vermez ve mutlak gecikme bilgilerini de kaybeder. Çoğu durumda bu aslında kabul edilebilir ve birçok ticari ölçüm sistemi bunu yapar, bu yüzden uygulamanıza bağlıdır.

Onuncu: ölçümünüzün iyi olduğunu doğrulayın. Çeşitli testler yapılmalıdır:

  1. Birkaç kez ölçün ve sonucun aynı olduğundan emin olun.
  2. Hoparlörü sessize alarak ölçün. Bu, arka plan gürültü spektrumunun iyi bir tahminini verecektir. Genel bir kural olarak, ilgilenilen tüm frekanslarda en az 10 dB sinyal-gürültü oranına ihtiyacınız vardır.
  3. Doğrusallık testi: uyarma kazancının yarısı ile ölçün ve elde edilen transfer fonksiyonunun aynı olduğunu onaylayın.
  4. Yararlı bir sıralı gürültü testi şöyledir: Her biri 2 periyotta 10 periyot ve ortalama 5 defa alın, sonra 2 * N numune üzerinde Fourier dönüşümü yapın. Sinyaliniz parazitsizse, tüm tek kutular sıfır olmalıdır. Sinyal frekansı gürültü oranını X {2 * N + 1} / X {2 * N} olarak herhangi bir frekansta doğrudan tahmin edebilirsiniz.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.