
Merhaba Arkadaşlar,
Filtreler ile ilgili olan önceki yazımızda filtreleri nasıl analiz edeceğimizi öğrenmiştik. Bu yazımızda ise filtre tasarım adımlarından bahsedeceğiz ve birlikte bir filtre tasarlayacağız. Pek çok filtre tipi bulunmaktadır. Bunların en ünlüleri Butterworth, Bessel ve Chebyshev filtreleridir. Tabii ki her zaman olduğu gibi bunlardan sadece bir tanesi üzerinde duracağız, ancak detaya girmeden önce bu filtre türleri arasındaki farklara değinerek yazımıza başlayalım.
Öncelikle bu filtrelerin tasarımlarını öğrendiğim kaynak olan TI’ın “Active Low-Pass Filter Design” tasarım rehberini sizinle paylaşmak istiyorum. Anlatacaklarımın çok daha detaylı halini bu rehberde bulabilirsiniz. Şimdi filtre türlerinin özelliklerine gelecek olursak;
- Butterworth filtreler geçiş bandında filtrenin genlik tepkesinin sabit olmasına göre optimize edilmiştir. Yani geçiş bandında bulunan işaretlerin hepsini aynı oranda etkiliyor yada etkilemiyor. Filtrelerin zaten bunu yapması gerekli değil mi diye düşünebilirsiniz ama yapmayanlar da var. 🙂
- Bessel filtreler geçiş bandında filtrelerin zaman gecikmesinin doğrusal olmasına göre optimize edilmiştir. Biliyorum buna önceki yazıda değinmemiştim benim hatam. 🙂 Bunun anlamı filtreden geçen işaretlerin fazlarının frekansa göre doğrusal olarak gecikmesidir. Bunun filtre çıkışını nasıl etkileyeceğini yazının devamında göreceğiz.
- Chebyshev filtrelerde geçiş bandında dalgalanma olmasına rağmen kesim bandına dik bir şekilde geçiş yapılabilmektedir, ancak bu geçiş bandındaki dalgalanma oldukça baş ağrıtabilir. Bu nedenle bu türü önermiyorum.
Filtre türlerinin tanımlamalarında belirli bir parametrenin optimize edildiğini söyledik. Peki bu optimizasyon nasıl yapılıyor? Bunun için ikinci dereceden bir filtrenin transfer fonksiyonunun nasıl olduğuna bakmamız gerekiyor.

Burada K filtrenin kazancını, FSF (Frequency Scale Factor) kesim frekansı ile ilgili bir parametre ve Q kalite faktörünü belirtmektedir. Bu parametreler ayarlanarak filtrenin istenildiği gibi davranması sağlanmaktadır. Merak etmeyin bizim için filtre derecesine göre bu parametreleri hesaplamışlar. 🙂 Bu nedenle biz sadece kaçıncı derece filtre yapacaksak tablodan ilgili katın parametrelerine bakarak filtremizi tasarlıyoruz. Belki başka bir yazıda optimizasyon işleminin nasıl gerçekleştiğine değiniriz, ancak şimdilik buna ihtiyacımız yok. Şekil 1’de yüksek dereceli filtre yapısı ve Butterworth filtre türü için filtre derecesine göre parametre değerleri görülmektedir.


Diğer filtre türlerinin tablolarına ilk başta verdiğim tasarım rehberinden yada internetten ulaşabilirsiniz. Şimdi devreyi oluşturma aşamasına geçelim. Bu filtrelerin transfer fonksiyonunu karşılayan ve yaygın olarak kullanılan iki adet devre mimarisi bulunmaktadır. Şekil 2 ve Şekil 3’de bu mimariler ve transfer fonksiyonları görülmektedir.


Bu yapıların birbirlerine göre avantaj ve dezavantajları bulunmaktadır. Sallen-Key mimarisi eleman değişimine karşı duyarsız iken, MFB mimarisi bir miktar elaman değişimlerinden etkilenir. Eleman değişiminden kastedilen örneğin direncin ısındığı zaman değerinin değişmesi olduğunu tahmin ediyorum. 🙂 Yani yanlış düşünüyorsam beni düzeltirseniz sevinirim insanlara yanlış bilgi aktarmak istemem. Yapılar arasındaki bir diğer fark ise MFB yapısının yüksek frekansları çok daha fazla bastırmasıdır. Bunu iki yapının frekans tepkelerine bakarak görebiliriz. Kesim frekansı 1kHz olan Butterworth filtresinin bu iki mimariye göre frekans tepkeleri Şekil 4’de görülmektedir.

Görüldüğü gibi filtrenin geçiren bölgesinde iki mimari aynı şekilde tepki vermektedir, ancak durdurma bölümünde MFB mimarisi işaretleri çok daha fazla bastırmıştır.
Şimdi gelelim eleman değerlerini belirleme işlemine. Butterworth filtrenin Sallen-Key mimarisi üzerinden bir örnek yaparak ilerleyeceğim. Ancak anlatacağım adımları diğer filtre ve mimarilere de uygulayabilirsiniz veya tasarım rehberinden yardım alabilirsiniz.
İlk olarak mimarilerin yanında bulunan transfer fonksiyonları ile içinde K, FSF ve Q parametrelerimizi bulunduğu transfer fonksiyonunu karşılaştırarak bu parametreleri hangi elemanların etkilediğini bulmalıyız. Seçtiğimiz filtre için bu ilişkiler;

Şimdi denklemleri basitleştirmek için direnç ve kapasitelerin aralarındaki ilişki; R1=mR, R2=R, C1=C ve C2=nC seçelim. Bu durumda denklemler aşağıdaki gibi düzenlenebilir.

İşleri daha da kolaylaştırmak için kazancı 1 seçelim. Bunu yapabilmek için R4 direncini kısa devre, R3 direncini açık devre yapmamız gerekmektedir. Bu durumda kalite faktörü aşağıdaki gibi değişmektedir.

Hangi denklemleri kullanacağımızı belirlediğimize göre şimdi bir örnek yaparak tasarım sırasında nasıl ilerleyeceğimizi görelim. Kesim frekansı 50kHz olan ikinci dereceden bir filtre tasarlayalım. Gerçekleştirilen adımlar şu şekildedir;
- İlk olarak tablodan FSF ve Q değerlerine baktığımızda bu değerlerin sırasıyla 1 ve 0,707 olduğunu görüyoruz.
- Dirençlerin arasındaki oranı belirten m değerini örneğin 2 olarak seçerek kalite faktörü eşitliği yardımıyla n değerini belirleyelim. (n=2,25 olarak hesaplandı.)
- FSF x fc denklemindeki C değerini 10nF seçerek R değerini belirleyelim. (R=150 ohm olarak hesaplandı.)
- Bu durumda eleman değerleri;
- R1=300 Ω
- R2=150 Ω
- C1=10nF
- C2=22,5nF olarak belirlenir.
Böylelikle 4 adımda 50kH kesim frekanslı alçak geçiren filtre tasarlamış olduk. İnanmıyorsanız Proteus yada Multisim gibi programlarda devreyi kurarak deneyebilirsiniz ki internette bulduğunuz bilgilere şüpheci yaklaşmakta fayda vardır. 🙂
Bitirmeden önce Bessel filtre türünde değindiğimiz zaman gecikmesi durumuna gelelim. Filtre girişine (veya sistem olarak genelleyebiliriz) uygulanan işaretler filtrenin transfer fonksiyonuna göre farklı faz kaymaları ile karşılaşabilirler. Buna “Faz Tepkesi” diyoruz. Bundan önceki tepkelerin hepsi genlik tepkesiydi. Bu faz kaymasının doğrusal olmaması çıkışta oluşacak işarette bozulmalara neden olmaktadır.
Ben ilk başlarda “Doğrusal değil de bütün işaretlerin sabit geciktirilmesi gerekmiyor mu?” diye düşünüyordum ve hemen Matlab’ı açıp denedim. 🙂 Gördüğüm sonuç beni şaşırtmıştı. Gerçekten de sabit gecikme durumunda çıkış işaretimiz giriş işaretinden farklı oluyordu. Sonradan anladım ki fazın belirli bir açı kayması işaretin konumunu işaretin frekansına göre farklı şekilde değiştiriyor.
Örneğin elimizde iki adet farklı frekanslı işaret olsun. İki işaretin fazını da 30° kaydırdığımızda örneğin birinci işaret 1 sn gecikirken ikinci işaret 3 sn gecikiyordu ve bu durum işaretler toplandığında farklı bir işaretin ortaya çıkmasına neden oluyordu. Şekil 5’de bu anlattıklarım için yaptığım bir örnek bulunuyor. Burada iki farklı işaretin doğrusal ve sabit gecikmeler altında toplanması durumundaki sonuçları görülmektedir.

Görüldüğü gibi sabit gecikmede işaretimiz bozulmuşken, doğrusal gecikmede giriş işaretimiz ile çıkış işaretimiz bire bir uyuşmaktadır. Buradan çıkarmamız gereken bir diğer önemli sonuç ise kafamıza takılan soruları basit simülasyonlar ile giderebilecek olmamızdır. 🙂
Böylelikle bir yazımızın daha sonuna gelmiş bulunmaktayız. Bu yazımızda filtre tasarımının nasıl olduğunu anlatmanın yanı sıra tasarımımızı nasıl bir tasarım rehberini takip ederek gerçekleştirebileceğimizi de öğrenmiş olduk. Bu bir donanım tasarımcısı için çok önemli bir özelliktir. Umarım faydalı olmuştur efendim. Sonraki yazılarda görüşmek üzere 🙂