Perangkat lunak desain filter yang bagus untuk Mac OS X / Unix?


11

Saya perlu menerapkan filter lowpass sederhana untuk rangkaian akuisisi data (menggunakan kain stretch konduktif sebagai sensor resistif). Berbagai sumber merekomendasikan bahwa cara terbaik untuk melakukannya adalah dengan menggunakan perangkat lunak desain filter.

Saya belum menemukan alat desain filter (kalkulator) yang saya sukai. Yang online saya temukan telah buggy / menjengkelkan. Solusi terbaik akan menjadi satu dengan GUI yang bagus yang bekerja dengan Mac OS X. Atau solusi Unix / Linux bisa bekerja. Windows adalah jalan keluar bagi saya.

Saya menemukan daftar ini: http://www.circuitsage.com/filter.html

EDIT: Saya menggunakan yang berbasis web ini sekarang, khusus untuk filter aktif (yang lebih berlaku untuk sensor karena lebih stabil dengan frekuensi rendah).


Anda harus memperjelas apakah Anda tertarik untuk merancang filter digital atau filter analog ; dan, untuk filter analog, aktif atau pasif.
nibot

Jawaban:


6

MATLAB adalah tempat yang bagus untuk memulai simulasi dan desain filter. Ada toolbox desain filter yang cukup berguna. Namun itu datang dengan biaya.

Untuk aplikasi sensor, filter Butterworth umumnya lebih baik karena mereka memiliki passband datar maksimum (dengan mengorbankan respon fase dan roll off). Itu berarti amplitudo sinyal Anda akan rata sepanjang rentang frekuensi.

Tinggal jauh dari menerapkan filter aktif topologi Sallen-Key , sangat sulit untuk mendapatkan semua komponen yang cocok dan menjaga akurasi yang baik, coba lakukan simulasi Monte Carlo pada sirkuit Sallen-Key untuk mendapatkan pemahaman yang lebih baik.

Filter kapasitor switch bagus untuk roll-off curam dan ini tersedia dalam filter Butterworth. Ini memang membutuhkan kutub tunggal sebelum dan sesudahnya untuk menghilangkan alias karena sinyal clock dari switching yang terjadi di mana saja dari 50 - 100 kali lebih besar dari cut-off Anda.

Atau gunakan filter RC kutub tunggal sederhana (aktif atau pasif) dan masukkan ke ADC kecepatan lebih tinggi dan kemudian Anda dapat menggunakan pemrosesan sinyal digital pada platform tertanam atau PC untuk melakukan penipisan dan analisis. Ini menggeser biaya dan kompleksitas dari komponen analog ke persyaratan perangkat lunak dan pemrosesan.

Yang paling penting - pastikan Anda mematuhi kriteria Nyquist dan bahwa Anda mengambil sampel setidaknya dua kali frekuensi tertinggi, dalam praktiknya, ini berarti sampel pada empat - 10 kali frekuensi tertinggi Anda, untuk memungkinkan penyaringan turun jauh di bawah tingkat resolusi ADC Anda pada tingkat Nyquist.


4
SciPy dapat melakukan banyak hal yang sama seperti MATLAB, tetapi gratis. scipy.org/doc/api_docs/SciPy.signal.filter_design.html Ada juga lebih banyak klon langsung seperti Octave dan FreeMat, tapi saya tidak tahu apakah mereka memiliki semua hal desain filter bawaan.
endolith

Saya memiliki salinan MATLAB - akan memeriksanya, meskipun saya tidak yakin apakah itu menghasilkan diagram listrik.
teras

3
Anda tidak akan mendapatkan diagram listrik masuk atau keluar dari matlab. Anda memiliki beberapa opsi, salah satunya adalah toolkit desain filter, yang memungkinkan Anda untuk memodelkan filter secara langsung, atau melakukan transformasi laplace pada sirkuit dan model Anda dan mensimulasikan menggunakan parameter laplace, kemudian mengubahnya kembali menjadi diagram listrik. Matlab akan memodelkan polinomial filter aktual, dan bukan sirkuit, karena filter unviersal, dan melintasi beberapa domain, sedangkan sirkuit eletrical persis seperti itu. Namun mereka dapat mewujudkan polinomial filter!
smashtastic

ada juga oktaf yang bebas / open source dan (kebanyakan) kompatibel dengan kode matlab untuk desain filter: gnu.org/software/octave
Mark

5

Coba Scilab , ia hadir dengan desain filter dan fungsi simulasi FIR dan IIR. Gratis! Ada versi Linux dan MAC.



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.