Gelişen mikrokontrol teknolojileri ve artan bilgi birikimi sayesinde geliştirici düzeyinde daha yaygın kullanımına olanak tanımıştır. Burada elimden geldiği kadar bazı örnekler sunmaya çalışacağım... Görüleceği gibi ilk örneklerimizde çoğunlukla ASM üzerinde iken daha sonraları C üzerinde örnekler yer almaktadır. Hatta ilerleyen zamanlarda Arduino örneklerinin yer alması kaçınılmaz olacaktır.

17 Ağustos 2009 Pazartesi

Atmega8 ile LCD Ekranlı Termometre


Sıcak havalarda neredeyse herkesin klasik bir yaklaşımı vardır: hava cehennem kadar sıcak. Belki havanın sadece sıcak olduğunu belirtmek isteriz. Ama ne kadar sıcak? (Bu çoğunla kişinin sağlık durumu ve beslenme alışkanlıkları ile ilintilidir) Hava sıcaklığını olarak bir termometre olmadan bilemeyiz. Aha bu noktada ne tür bir termometre olacak?

Halen kullanılan civalı termometreler civanın sıcaklık değeri ile sıvı metalin cam bir tüp içinde genleşme prensibine dayanır. Aynı prensibe dayanan ama farklı malzemeler ile aynı sonucu veren termometreler yapıldı.

Buradaki asıl konumuz olan elektronik termometreler çok değişik şekil ve biçimde yapılabilmekte. Sıcaklık algılayıcısı olarak NTC, PTC, transistör, diyot, termoelektrik çift gibi elemanlar kullanılabildiği gibi sıcaklık değerini bir analog gerilime dönüştüren tümdevreler hatta sıcaklık değerini bir dijital değere dönüştüren sıcaklık algılayıcıları kullanılabilir. Burada ele alacağımız eleman bu işle uğraşan çoğu kişi tarafından bilinen hatta kullanılan LM35 entegresidir.

Ölçülen değerin gösterilmesinde değişik gösterge tiplerinin kullanımı pek ala mümkündür. Bilinen ibreli göstergeler ,sayısal LED gösgeler, grafik çubuk şeklindeki göstergeler bu grupta sayılabilir. Kullanılacak olan LCD gösterge olacak.

Şimdi ikisini birleştirelim :Atmega8 ile LCD gösterge+LM35=Atmega8 ile LCD göstegeli termometre.

Devre

"Atmega 8 ile RS485 iletişimli LCD Ekran" projesi daha önce uygulandığı varsayılarak (uygulaması yapılmadı ise önce o projenin incelenmesi gerektiğini belirtmekte fayda var) IC2, C1,R1,P1 kodlu elemanlar devre dışı bırakılır.(aslında IC2 sökülmesi yeterlidir) Bu devrenin RS485 portunun iptal eder. Şu anda bir LCD gösterge için temel devreyi gösteriyor. Şimdi buna sadece LM35 bağlamak yetecek. Bu bağlantı için LM 35'in orta bacağı ve IC1 Atmega8 işlemcisinin 28. bacağı (PC5) arasına ve LM35'in besleme ucları ile C12'nin uygun ucları arasına (kutuplamayı dikkate alarak) bir şerit kablo ile bir bağlantı yapmak yeterlidir.

Şekil-1 :LM35'in bağlantısı ve bacakları.

Yani sonuçta LM35 ile işlemcinin ADC ucu arasında bağlantı yapılır. Bu zaten ölçüm işlemi için yeterlidir.

Şekil-2 :LM35'in kablosunun kart bağlantısı ve tanımları.VOUT bağlantısı Atmega8 işlemcisinin PC5 bacağına bağlanmıştır

Bu noktada söylenebilecek işlemcinin ne yazık ki sıcaklık çözünürlüğünün düşeceğidir. Çünkü devre dikkat edildiyse işlemcinin üzerinde Aref bacağının Vcc üzerine bağlı olduğudur. Bu da programlama için iç referans geriliminin kullanılamayacağını gösterir. Normalde ADC kullanılacağı zaman ki özellikle ADC için iç referans gerilimi kullanılacağı zaman, Aref ile GND arasına bir kondansatör bağlanarak referans gerillim için kullanalarak 2,5V ile kullanılır.(LM35 maksimum ölçüm aralığı 125C olduğuna ve 10mV/C dönüşüm hassasiyetine sahip olduğuna göre LM35 maksimum değerde 1,25V olacaktır). Bunda 125C'i ölçmek için sadece 256 adım olduğunu gösteriyor. Bu bölüm programla ilgili.

LML35'in karışıklığa sebep olmaması için IC_ek olarak tanımlandı. Aslında bu entegrenin besleme bacaklarına bir kondansatör koyuması gerekiyordu, ama bu şekilde de çalışabiliyor.(Devrenin düşük güç çekmesi bazen avantaj sağlıyor)

Not: Aslında devrenin tasarımı esnasında bu fonksiyonu yerine getirmesi için bazı düşüncelerim vardı. Ama gerek zaman yetersizliği gerekse kartın o bölümünün karışık olması nedeniyle işlem yapılması iptal edilmek zorunda kalındı.

Şema

"Atmega 8 ile RS485 iletişimli LCD Ekran" projesi aynen temen alınarak temelde şema eşleştirilir. Şemada görüldüğü gibi IC2 ile ilgili bölüm devre dışı. Ek olarak sadece IC_ek adı altında LM35 entegresi. Gösterge bölümünü saymazsak devre karışık sayılmaz.

Şekil-3 :ATMEGA 8 ile LCD Ekranlı termometre devresinin blok şeması.


Şekil-4 :ATMEGA 8 ile LCD Ekranlı termometre devresi.

Devre Yapımı

Devre yapım açısından entegre fazla olması ve sıkışık düzen nedeniyle biraz sorun çıkarabilir. Öncelikle köprüleri takmak takmakla işe başlanabilir. Entegre elemanlar için soket kullanmak yerinde bir seçim olabilir. Gerçi LCD için soket kullanmak zaten olmazsa olmaz bir durum. Diğerlerinin nasıl takılacağı size kalmış.

Besleme konusunda bir sorun oluşturmayacağınızı düşünüyorsanız girişteki köprüyü devre dışı bırakabilir veya tek bir diyotla değiştiribilirsiniz. (Kendi besleme kaynağınız varsa ve devreyi kendiniz kullanacaksanız).

LM35 entegresini pek kablo ucunu takılmasından hoşlanmasamda uygulamada bu yolu tercih etmek zorunda kaldım. Ama denemeye değerdi.

Şekil-5:Kartın eleman ve yollarla birlikte yerleşim planı. Mavi renkteki elemanlar devre dışı bırakılanlar, kırmızı renkteki eleman eklenen elemanları belirtmektedir

Devre Elemanları

Aslında devre elemanları listesi olarak "Atmega 8 ile RS485 iletişimli LCD Ekran" projesindeki liste aynen geçerli olmaktadır. Sadece listeye bir LM35 elemanı eklemek yeterlidir.

Şekil-6:Kartın arkadan görünümü. Kablo kart üzerinde biraz eğreti duruyor.


Şekil-7:Termometre pencere kenarında ve LM35 dışarıda iken dış ortam sıcaklığı.


Şekil-8:Oda içi sıcaklık.


Yukarıdaki filmde görüleceği gibi ekran LED yandığı zamanlarda güncellenmektedir. O filmi LM35 sıcaklık algılayıcısı parmakla tutulurken oluşan sıcaklık yükselmesini gösteriyor.

Ekler:

Atmega8 ile LCD Ekranlı Termometre için dosyalar-birleşik

ATmega8 hakkında ayrıntılı bilgi için

Bu devrenin yapım sorumluluğu size aittir. Devre yapıldı ve çalışıyor. K.A....

Hiç yorum yok:

Translate

Sayfalar

Etiketler

İzleyiciler