Pindah rata filter delay


Dasar-Dasar Filter FIR 1.1 Apa filter quotFIR filtersquot FIR adalah satu dari dua jenis utama filter digital yang digunakan dalam aplikasi Digital Signal Processing (DSP), tipe lainnya adalah IIR. 1.2 Apa yang dimaksud dengan quotFIRquot quot quotFIRquot berarti quotFinite Impulse Responsequot. Jika Anda memasukkan sebuah impuls, itu adalah contoh quot quotquot tunggal yang diikuti oleh banyak sampel quot0quot, nol akan keluar setelah sampel quot1quot berhasil melewati garis penundaan filter. 1.3 Mengapa respon impuls quotfinitequot Dalam kasus umum, respons impuls terbatas karena tidak ada umpan balik dalam FIR. Kurangnya umpan balik menjamin bahwa respons impuls akan terbatas. Oleh karena itu, istilah quotfinite impulse responsequot hampir identik dengan quotno feedbackquot. Namun, jika umpan balik dipekerjakan namun respons impulsnya terbatas, saringannya masih berupa FIR. Contohnya adalah filter rata-rata bergerak, di mana sampel ke-N sebelumnya dikurangkan (diberi umpan balik) setiap kali sampel baru masuk. Filter ini memiliki respons impuls yang terbatas meskipun menggunakan umpan balik: setelah sampel N dari impuls, keluaran Akan selalu nol 1.4 Bagaimana cara mengucapkan quotFIRquot Beberapa orang mengatakan huruf F-I-R orang lain mengatakan seolah-olah itu adalah jenis pohon. Kami lebih memilih pohonnya. (Perbedaannya adalah apakah Anda berbicara tentang filter F-I-R atau filter FIR.) 1.5 Apa alternatif filter FIR filter DSP juga bisa menjadi quotInfinite Impulse Responsequot (IIR). (Lihat FAQ dspGurus IIR.) Filter IIR menggunakan umpan balik, jadi saat Anda memasukkan dorongan output secara teoritis berdering tanpa batas waktu. 1.6 Bagaimana filter FIR dibandingkan dengan filter IIR Masing-masing memiliki kelebihan dan kekurangan. Secara keseluruhan, meskipun, kelebihan filter FIR lebih besar daripada kerugiannya, jadi penggunaannya lebih banyak daripada IIR. 1.6.1 Apa kelebihan Filter FIR (dibandingkan dengan filter IIR) Dibandingkan dengan filter IIR, filter FIR menawarkan keuntungan berikut: Mereka dapat dengan mudah dirancang untuk menjadi quotlinear phasequot (dan biasanya). Sederhananya, filter fase linier menunda sinyal masukan tapi tidak mendistorsi fasanya. Mereka mudah diimplementasikan. Pada sebagian besar mikroprosesor DSP, perhitungan FIR dapat dilakukan dengan perulangan satu instruksi. Mereka cocok untuk aplikasi multi-rate. Dengan multi-rate, maksud kami adalah quotdecimationquot (mengurangi laju sampling), quotinterpolationquot (meningkatkan laju sampling), atau keduanya. Apakah penipisan atau interpolasi, penggunaan filter FIR memungkinkan beberapa perhitungan dihilangkan, sehingga memberikan efisiensi komputasi yang penting. Sebaliknya, jika filter IIR digunakan, setiap output harus dihitung secara individual, bahkan jika output itu akan dibuang (jadi umpan balik akan dimasukkan ke dalam filter). Mereka memiliki sifat numerik yang diinginkan. Dalam prakteknya, semua filter DSP harus diimplementasikan dengan menggunakan aritmatika presisi hingga, yaitu sejumlah bit. Penggunaan aritmatika presisi-terbatas pada filter IIR dapat menyebabkan masalah yang signifikan karena penggunaan umpan balik, namun filter FIR tanpa umpan balik biasanya dapat diimplementasikan dengan menggunakan sedikit bit, dan perancang memiliki lebih sedikit masalah praktis untuk dipecahkan terkait dengan aritmatika non-ideal. Mereka bisa diimplementasikan dengan menggunakan pecahan aritmatika. Tidak seperti filter IIR, selalu mungkin untuk menerapkan filter FIR menggunakan koefisien dengan besaran kurang dari 1,0. (Keuntungan keseluruhan dari filter FIR dapat disesuaikan pada outputnya, jika diinginkan). Ini adalah pertimbangan penting saat menggunakan fixed-point DSPs, karena ini membuat implementasi menjadi lebih sederhana. 1.6.2 Apa kelemahan dari Filter FIR (dibandingkan dengan filter IIR) Dibandingkan dengan filter IIR, filter FIR kadang-kadang memiliki kekurangan sehingga memerlukan lebih banyak memori dan perhitungan untuk mendapatkan karakteristik respons filter yang diberikan. Juga, tanggapan tertentu tidak praktis untuk diterapkan dengan filter FIR. 1.7 Istilah apa yang digunakan dalam mendeskripsikan filter FIR Impulse Response - Responsresipresi dari filter FIR sebenarnya hanyalah himpunan koefisien FIR. (Jika Anda memasukkan quotimplusequot ke filter FIR yang terdiri dari sampel quot1quot yang diikuti oleh banyak sampel quot0quot, output filter akan menjadi himpunan koefisien, karena 1 sampel bergerak melewati setiap koefisien pada gilirannya untuk menghasilkan output.) Tap - A FIR quottapquot hanyalah sebuah pasangan koefisien pasangan. Jumlah kerah FIR, (sering disebut sebagai kuotot) adalah indikasi dari 1) jumlah memori yang dibutuhkan untuk menerapkan filter, 2) jumlah perhitungan yang diperlukan, dan 3) jumlah kuotil yang dapat dilakukan filter dapat terjadi, Lebih banyak keran berarti lebih banyak redaman stopband, sedikit riak, filter yang lebih sempit, dan sebagainya. Multiply-Accumulate (MAC) - Dalam konteks FIR, quotMACquot adalah operasi untuk mengalikan koefisien dengan sampel data tertunda yang sesuai dan mengumpulkan hasilnya. FIR biasanya membutuhkan satu MAC per tap. Kebanyakan mikroprosesor DSP menerapkan operasi MAC dalam satu siklus instruksi tunggal. Band Transisi - Band frekuensi antara tepi passband dan stopband. Semakin sempit band transisi, semakin banyak keran yang dibutuhkan untuk mengimplementasikan filter. (Sebuah band transisi quotsmallquot menghasilkan filter quotsharpquot.) Delay Line - Kumpulan elemen memori yang menerapkan elemen penundaan kuotasi-kuota 1 dari kuotasi FIR. Circular Buffer - Penyangga khusus yang quotcircularquot karena incrementing pada akhirnya menyebabkannya membungkus ke awal, atau karena decrementing dari awal menyebabkannya membungkus sampai akhir. Penyangga melingkar sering disediakan oleh mikroprosesor DSP untuk menerapkan quotmovementquot sampel melalui jalur penundaan FIR tanpa harus benar-benar memindahkan data ke memori. Ketika sampel baru ditambahkan ke buffer, secara otomatis akan menggantikan yang tertua. Moving Average sebagai Filter Rata-rata bergerak sering digunakan untuk merapikan data dengan adanya noise. Rata-rata pergerakan sederhana tidak selalu dikenali sebagai filter Finite Impulse Response (FIR) yang sebenarnya, padahal sebenarnya adalah filter yang paling umum dalam pemrosesan sinyal. Mengobati itu sebagai filter memungkinkan membandingkannya dengan, misalnya filter windowed-sinc (lihat artikel tentang filter low-pass, high-pass, dan band-pass dan band-reject untuk contohnya). Perbedaan utama dengan filter tersebut adalah bahwa rata-rata bergerak cocok untuk sinyal yang informasi bermanfaatnya terdapat dalam domain waktu. Pengukuran perataan dengan rata-rata adalah contoh utama. Saringan berjejer-sinc, di sisi lain, adalah pemain yang kuat dalam domain frekuensi. Dengan pemerataan dalam pengolahan audio sebagai contoh tipikal. Ada perbandingan yang lebih rinci dari kedua jenis filter dalam Domain Time vs Frekuensi Kinerja Filter. Jika Anda memiliki data yang baik waktu dan domain frekuensi penting, Anda mungkin ingin melihat Variasi pada Moving Average. Yang menyajikan sejumlah versi bobot rata-rata bergerak yang lebih baik dalam hal itu. Panjang rata-rata bergerak (N) dapat didefinisikan sebagai ditulis seperti biasanya diterapkan, dengan sampel keluaran saat ini sebagai rata-rata sampel (N) sebelumnya. Terlihat sebagai filter, moving average melakukan konvolusi dari urutan input (xn) dengan pulsa panjang persegi panjang (N) dan tinggi (1N) (untuk membuat area pulsa, dan karenanya, gain filter , satu ). Dalam prakteknya, yang terbaik adalah mengambil (N) ganjil. Meskipun rata-rata bergerak juga dapat dihitung dengan menggunakan sejumlah sampel, dengan menggunakan nilai ganjil untuk (N) memiliki keuntungan bahwa penundaan filter akan menjadi bilangan bulat sampel, karena penundaan filter dengan (N) Contohnya persis ((N-1) 2). Rata-rata bergerak kemudian dapat disesuaikan persis dengan data asli dengan menggesernya dengan bilangan bulat sampel. Domain Waktu Karena rata-rata bergerak adalah konvolusi dengan pulsa persegi panjang, respons frekuensinya adalah fungsi sinc. Hal ini membuat sesuatu seperti dual filter windowed-sinc, karena itu adalah konvolusi dengan pulsa sinc yang menghasilkan respons frekuensi persegi panjang. Ini adalah respons frekuensi sinc yang membuat rata-rata bergerak menjadi pemain miskin dalam domain frekuensi. Namun, kinerjanya sangat baik dalam domain waktu. Oleh karena itu, sangat cocok untuk menghaluskan data guna menghilangkan noise sementara pada saat yang sama tetap melakukan respon langkah cepat (Gambar 1). Untuk Additive White Gaussian Noise (AWGN) biasa yang sering diasumsikan, sampel rata-rata (N) memiliki efek meningkatkan SNR dengan faktor (sqrt N). Karena kebisingan untuk sampel individu tidak berkorelasi, tidak ada alasan untuk memperlakukan setiap sampel secara berbeda. Oleh karena itu, rata-rata bergerak, yang memberi setiap sampel berat yang sama, akan menyingkirkan jumlah suara maksimal untuk ketajaman respons langkah tertentu. Implementasi Karena itu adalah filter FIR, moving average bisa diimplementasikan melalui konvolusi. Ini kemudian akan memiliki efisiensi yang sama (atau kurang) seperti filter FIR lainnya. Namun, bisa juga dilakukan secara rekursif, dengan cara yang sangat efisien. Ini mengikuti langsung dari definisi bahwa Rumus ini adalah hasil dari ungkapan untuk (yn) dan (yn1), yaitu, di mana kita melihat bahwa perubahan antara (yn1) dan (yn) adalah bahwa istilah tambahan (xn1N) muncul di Akhir, sedangkan istilah (xn-N1N) dihapus dari awal. Dalam aplikasi praktis, seringkali memungkinkan untuk meninggalkan pembagian dengan (N) untuk setiap istilah dengan mengkompensasi keuntungan yang dihasilkan (N) di tempat lain. Implementasi rekursif ini akan jauh lebih cepat daripada konvolusi. Setiap nilai baru (y) dapat dihitung hanya dengan dua penambahan, dan bukan penambahan (N) yang diperlukan untuk penerapan definisi secara langsung. Satu hal yang harus diwaspadai dengan implementasi rekursif adalah kesalahan pembulatan akan terakumulasi. Ini mungkin atau mungkin tidak menjadi masalah bagi aplikasi Anda, namun ini juga menyiratkan bahwa implementasi rekursif ini akan benar-benar bekerja lebih baik dengan implementasi bilangan bulat daripada dengan bilangan floating-point. Ini sangat tidak biasa, karena implementasi floating point biasanya lebih sederhana. Kesimpulan dari semua ini pasti bahwa Anda seharusnya tidak pernah meremehkan kegunaan filter rata-rata bergerak sederhana dalam aplikasi pemrosesan sinyal. Filter Design Tool Artikel ini dilengkapi dengan alat Filter Design. Percobaan dengan nilai yang berbeda untuk (N) dan visualisasikan filter yang dihasilkan. Coba sekarangDokumentasi Deskripsi gd, w grpdelay (b, a) mengembalikan respons delay grup, gd. Dari filter waktu diskrit yang ditentukan oleh vektor input, b dan a. Vektor input adalah koefisien untuk pembilang, b. Dan penyebut, a. Polinomial dalam z -1. Z-transform dari filter diskrit-waktu adalah H (z) B (z) A (z) x2211 l 0 N x2212 1 b (n 1) z x2212 l x2211 l 0 M x2212 1 a (l 1) z x2212 L. Respons delay grup filter dievaluasi pada 512 titik jarak yang sama pada interval 0, 960) pada lingkaran unit. Poin evaluasi pada lingkaran unit dikembalikan dalam w. Gd, w grpdelay (b, a, n) mengembalikan respons delay grup dari filter diskrit-waktu yang dievaluasi pada n titik spasi sama pada lingkaran satuan pada interval 0, 960). N adalah bilangan bulat positif. Untuk hasil terbaik, atur n ke nilai yang lebih besar dari pada perintah filter. Gd, w grpdelay (sos, n) mengembalikan respons delay grup untuk matriks bagian orde kedua, sos. Sos adalah matriks K - by-6, di mana jumlah bagian, K. Harus lebih besar dari atau sama dengan 2. Jika jumlah bagian kurang dari 2, grpdelay menganggap input sebagai vektor pembilang, b. Setiap baris sos sesuai dengan koefisien filter orde dua (biquad). Baris ke-i dari matriks sos sesuai dengan bi (1) bi (2) bi (3) ai (1) ai (2) ai (3). Gd, w grpdelay (d, n) mengembalikan respons delay grup untuk filter digital, d. Gunakan designfilt untuk menghasilkan d berdasarkan spesifikasi respons frekuensi. Gd, f grpdelay (n, fs) menentukan frekuensi sampling positif fs di hertz. Ia mengembalikan sebuah vektor panjang, n. Berisi titik frekuensi di hertz dimana respons penundaan kelompok dievaluasi. F berisi n poin antara 0 dan fs2. Gd, w grpdelay (n, keseluruhan) dan gd, f grpdelay (n, keseluruhan, fs) menggunakan n poin di sekitar keseluruhan lingkaran unit (dari 0 sampai 2 960. atau dari 0 sampai fs). Gd grpdelay (. W) dan gd grpdelay (f, fs) mengembalikan respons delay kelompok yang dievaluasi pada frekuensi sudut pada w (dalam radian) atau dalam f (dalam siklus waktu), masing-masing, di mana f adalah frekuensi sampling. W dan f adalah vektor dengan setidaknya dua elemen. Grpdelay (.) Tanpa argumen output memplot respon delay grup versus frekuensi. Grpdelay bekerja untuk filter nyata dan kompleks. Catatan: Jika input ke grpdelay adalah presisi tunggal, delay grup dihitung dengan menggunakan aritmatika presisi tunggal. Outputnya, gd. Adalah presisi tunggal. Pilih negaramu

Comments

Popular posts from this blog

Platform ipad forex trading terbaik

Dow jones rata rata industri rata rata bergerak 50 hari