Kararlı ADC için dijital filtre

Başlatan Analogic, 13 Aralık 2011, 22:44:02

Maxim

pro-TR
adc okumada en iyi verimi hangi algoritmayla aldınız?
ortalama alarakmı? bubble sort mu?

Hattuşa

maxim hocam;
adc okuması zamana ve adc okumasına göre değişik devrelerde değişik filtreler kullanıyorum.
şöyle ki; okuma sorunum yoksa buble short dedikleri filtre, zamanla yarışıyorsam darrel ustanın histeriz filtresi, bazende ortalama alıyorum ki bana yetiyor. en güzeli histeriz ve peşinden buble short, yüksek çözünürlük gerektiren hassas okumalarda 12-14 bitlerde darrelin "DT_Analog" analog filtresi mükemmel, inanın gerçek 14 bitmiş gibi işlem görüyor. yalnız bu filtre kkullanım şartı için 2 şartın yerine gelmesi lazım. 1. süre ile ilgili sorununuz olmayacak 2.adc okuması çok stabil olmayacak. çok stabil adclerde pek tat vermiyor.
birde şu var ki ustam. hiç bir dijital filtre analog filtrelerin tadını vermiyor, yazılımsal filtre sadece yardımcı ve destek olabiliyor.

kahraman34

Merhabalar
Adc olayında kararsızlık hem kafamda hemde devrede devam ediyor...

Hızlı okumam lazım oynamaması lazım. rms to dc konvertorler de kullandım ama çok pahalı bir çözüm oluyor.
lm358 li 2.5 offsetli bir devre ile rms okuma yapıyorum 40 ornek olarak 1 ms kesme ile.. Onda da oynuyor..

Tek stabil sonuca zero cross dan sonra okuma yaparak ulaşabiliyorum.Oda en az 30 ms kaybettiriyor.
Amacım 1 faz ve 2 faz arası şebeke voltajı ölçmek, yada 0 -500 v ac ölçmek.
Pic olmazsa olmaz.. Öneriniz nedir hangi yoldan gidtmek lazım ?
(Yukarıda anlatılan filtreleri de denedim sonuç, zaman varsa güzel ama hızlı okumada çözüm olmuyor.)

Teşekkürler...

(İlk mesajım, site harika başta Ete Hoca olmak üzere emek verenlerin ellerine yüreklerine sağlık.)



ete

Benim önerim bir gerilim düşüren trafo kullanıp (380==>3VAC gib) itrafo çıkışını bir köprü diyor ile doğrultup ufak bir kondansatör ile filtre etikten sonra ADC girişine vermek yönünde. Bu şekilde nispeten gerçeğe yakın sonuçlar alırsın. Aslında bu konu çok fazla tartışıldı. Üstelik yalnızca bizim sitede değil bir çok benzer sitede aynı tartışmaları okudum. Bu tartışmalara bakarsanız bir diğer ve doğru çözüm TRUE RMS  hesabından geçiyor. Zaten bir sinüs voltajının şekline bakarsanız sebep kendini açık ediyor. Sinüs işareti X eksenini kestiği noktada sıfır noktasından geçmiş oluyor. Bu noktada voltaj ve akım sıfır değerinde. İki sıfır noktası aralığı 10 ms. Bunu sanal olarak 100'e böldüğümüzü varsayalım. Bu her biri 100us lik 100 adet ölçüm noktası anlamına gelir.
Sıfır noktasından 100us sonra bir ölçüm alırsan voltaj (220V ta göre konuşuyorum) diyelimki 10V dolayına çıkacaktır. Bir sonraki 100us sonunda biraz daha artacak ve sinüsün tepe yaptığı noktada en yüksek değerine ulaşacaktır. Sonradan yeniden düşmeye başlayacak ve bir sonraki sıfır noktasında yeniden voltaj sıfırlanacaktır.
Ne yapmalıyız peki?
Dediğim gibi , sıfır noktasından sonra mümkün olduğunca fazla örnek okuma yapıp bunların karelerini toplamak ve sonunda örnek miktarına bölerek kare kökünü almak gerekiyor.

Ete


kahraman34

#64
Hocam teşekkür ederim.
Evet konu hakkında çok tartışma okudum o yüzden de çok karıştım karıştırdım.

Söylemiş olduğunuz rms ölçme yöntemini kullanıyorum ancak sıfır geçişi olmadan stabil değer mümkün olamadı..
Sıfır geçişinde işleme başlamak şart diye düşünüyorum. Tartışmaların genelinde, sıfır geçişinden bahsedilmemiş olması beni çelişkiye düşürdü acaba  yanlış yoldamıyım diye..

Şimdi şunu yapmayı düşünüyorum
sıfır geçiş,2.5 volt offset,100 us aralıkla ölçme ve rms hesap.
Doğru yoldamıyım ?


Not Ek:(Trafo koymak +3,5 tl maliyet oluyor ve yer yok..)

Birde şema ekledim sonradan bu devreye zero cross da ekleyeceğim şema hakkında yorum yapabilirmisiniz reelde ve siülasyonda sorun yok görüyorum.

ete

Yöntem olarak bakılırsa önce sıfır geçiş yakalanmalı ardından 100us bekleyip okuma zinciri başlatılmalı.
Sıfır yakalamadan yine olumlu sonuç alınmaz rastgele okuma yapmış olursunki buda oynak değerin babası demektir.

Şemana baktım ama bir yorum getiremedim. Çünki kim nereye bağlanıyor anlamadım. Ancak tasarlayan bilir.
Ete

kahraman34

Çok teşekkürler Hocam,
şemayı acele ederek koydum mesaj kalabalığı olmasın diye mesaja ekliyivereyim hemen demişdim.. İsimler cisimler voltajlar görünmüyor tabi haklısınız..
Lm 358 li  bir devreydi. Düzgünce çizebilirsem tekrar koyarım crossuda ekleyeyim anlamı olsun..

kahraman34

#67
Hocam isis devresini ekledim.
İnceleyip yorum yapabilirseniz çok memnun olurum teşekkürler.

ek: Switch konum değişince genlik bozuyor nasıl engel olunabilir?

ete

#68
AC girişi bir köprü diyota ver ve diyotun çıkışlarını 2000K lık dirençlere gir.
1K5'i direnci 6k8 yap ve skopu bu şekilde incele bakalım.

Sıfır geçiş palsini sevemedim. Doğrusu kısa sürel bir pals vemesi şeklinde olması gerekirdi.
Bu şekilde bir yükselen kenar bir düşen kenar kesmesi ayarlamak gerekiyor.

Ete


kahraman34

Hocam köprü işin içine girince rms bozuyor.Malum 2.5 ofsetin altına üstüne bakıyorum.
Şimdi zero cross un yerini değiştirdim. Sw değişince genlik bozulmuyor.
İğne puls ise bu elemanlarla yapamıyorum bir opamp daha ve yan parçaları çıkıyor. Hadi onada razı gelsek bu sefer 2 tane referans vermem gerekiyor. Onuda yaptım denedim,giriş genliği değişince sıfırın yeri kaymaya başladı beceremedim.
Şimdi düşen kenarda başlıycam okuma işine..
Şema ekledim.

kahraman34

Ben hala aynı konudayım.
Hocam 2 watt trafo üzerinden okuma olayı tamam . Güzel oluyor.
Ancak birde aklıma peak dedector olayı takıldı.
Bir peak dedector üzerinden gelen voltajı okusam. canım istediği zamanda veya zero geçişten 5 milisn sonra resetlesem acaba doğru sonuç alamazmıyım ?
Doğru vede kararlı. ?

ete

Bu konuda deneyimim yok maalesef. Bu nedenle bir öneride bulunmam yada yorum yapmam yanlış olur. En güzeli denemek .
Sonucu bende merak ediyorum.
Ete

kahraman34


Powered by EzPortal