ADC girişine gerilim bölücü

Bowman

Aktif Üye
Katılım
7 Ekim 2022
Mesajlar
120
Mikroişlemci olarak PIC16F688 kullanıyorum. Elimde 12 posiyonlu bir rotary switch var. Ben bunun ilk 4 kademesini kullanıyorum. Rotary switchin 4 bacağına farklı dirençler bağladım. A bacağından da toprağa bir tane 1.2k direnç attım. A bacağını PIC'in analog bacağına bağladım böylece toprağa giden alttaki direncin sabit olduğu üstteki direncin değiştiği bir gerilim bölücü elde ettim.

Okuduğum 4 farklı gerilim değerine göre farklı farklı işlemler yapmak istiyorum. Bunu önce PIC olmadan gerilim bölücü çalışacak mı gibi bir test ettim. İstediğim gerilim değerlerini gördüm. Sonra problem yaşamayacağımı düşünerek gittim ADC ile bağlantıyı yaptım. PIC'in adc bacağına bağladıktan sonra görmem gereken değerleri aslında görmediğimi fark ettim. Mesela 2.5V görmem gereken yerde 72 mV görüyorum. 1.7V görmem gereken yerde yaklaşı 40 mV görüyorum. Ben bunu ADC inputunun iç empedansına bağladım. Gerilim bölücümün direnç değerlerini etkilediğini düşünerek. Sonra bir tane LM741 op amp aldım ve gerilim bölücü ile ADC girişi arasına bir buffer op amp yapısı kurmaya karar verdim.

Burada deneme amaçlı 22k-4.7k kullandım.

1.png

Deneme amaçlı kurduğum devre buydu.22k-4.7k direnç ikilisi bana 0.890V gibi bir değer veriyor. Fakat buffer op amp yapımın çıkışında beklediğim değeri göremiyorum. LM741'in single supply kullanılabileceğini gördüm. Ayrıca çıkışım 5 volta yakın da değil. Bu yapı sizce neden çalışmıyor olabilir ?
 
ADC giriş empedansları 1.2k nın çok üzerindedir. Dolayısıyla gerilim bölücüyü çok fazla yüklemez. Gene çok az eksik voltaj okunmasına sebep olur ama senin dediğin gibi voltajı neredeyse tamamen yok etmez. Değişik ihtimaller olabilir:

1) Pin doğru yapılandırılmıyordur ve aslında dijital output'tur ve lojik 0 dır. O zaman gerilim bölücünün çıkışını şaseye çekmiş olur.

2) ADC doğru yapılandırılmamıştır ve ADC data registerinden yanlış değer okuyorsundur.

3) ADC girişi arızalanmıştır ve şaseye kaçmıştır.

4) Kartta kısa devre vardır.

Bir de senin problemle ilgisi olmasa da, LM741'i o şekilde tek besleme ile kullanırsan, çıkış vojtajının şaseye yaklaşamadığını görürsün. Böyle bir devre kullanacaksan rail to rail opamp kullanman lazım.
 
.. bir aralar f877 ile adc denemeleri yapmıştım...aklımda şöyle birşey kaldı.. çevirme yaparken pic e bir referans voltaj tanıtmak gerekiyor..
okuduğu 3 volta "evet bu değer 3 volttur" demesi için bir referansı olması gerekir.
Belki bu noktada bir eksiklik vardır.
 
O halde başka bir hatanız var. Direkt; o gerilimleri,
opampsız mcu bacağında görmeniz gerekli...
 

Forum istatistikleri

Konular
7,234
Mesajlar
122,412
Üyeler
2,923
Son üye
birisim

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top