Elektronik / Mikrodenetleyici Projeleri/

PIC 18F452 İle Sıcaklık-Nem-Basınç Algılayıcı

Sponsorlu Bağlantılar

Zorlu bir yılın ardından üniversitede dersler bitti. Benim gibi DGS ile elektrik-elektronik mühendisliğine geçenlerin işi gerçekten zor :D Dersler zaten zor birde üzerine intibak döneminde olmanın stresi… İyi kötü elimden geleni yaptım ama 16 dersin 5’inden kalmayı başardım. Bu yüzden tatil boyunca ders çalışmaya devam :D Ders çalışmanın yanında bu yaz uygulamayı düşündüğüm bazı projelerim var.

Projelerim;

• Birden çok sensör kullanılarak elde edilen verilerin kablosuz olarak bilgisayara aktarılması ve görsel bir arayüz kullanarak veri kaydedilmesi. Elde edilen veriler doğrultusunda uzak noktadaki çıkışların kontrol edilmesi ve LCD kullanılarak mesajlaşmak.

• Yukarıdaki projenin geliştirilerek ethernet ve USB üzerinden erişim sağlanması, verilerin her uç noktada SD/MMC karta kaydedilmesi,

• Eğer yukarıdaki projeler biterse protip PCB için basit bir CNC yapmak :D

Bu projeleri gerçeklediğim takdirde PIC ve PICC konusunda epey yol kat edeceğime inanıyorum. Yaptığım çalışmalara elimden geldiğince paylaşmaya çalışacağım. İlk projemiz 18F452 ile sıcaklık-nem-basınç değerlerinin algılanması. Sıcaklık ve nem değerlerini algılamak için piyasada en çok bulunan SHT11 sensörünü kullandım (Biraz pahalı ama kaliteli :D )

Basıncı algılamak içinse MPX5100A sensörünü kullandım. SHT11 zaten dijital çıkış veriyor ve i2C protokolü ile haberleşiyor. Kullanımı için gerekli kütüphane dosyaları PICC için mevcut.

MPX5100A basınç sensörü ise analog bir çıkış üretiyor. Çıkışından elde edilen gerilim değeri kullanılarak basınç değeri hesaplanıyor. Gerekli formül datasheet’inde mevcut ve şu şekilde;

Nominal Transfer Value: VOUT = VS (P x 0.009 – 0.095)± (Pressure Error x Temp. Mult. x 0.009 x VS) VS = 5.0 V ± 5% P kPa

Buradan P değişkenini çekerek basınç değerini hesaplayabiliyoruz. Programı PICC dili kullanarak yazdım. Açılışta ve ana ekranda gösterilen grafikleri daha önce ki yazılarımda anlattığım şekilde Bitmap2LCD programını kullanarak oluşturdum.

algilama-devresi-isis-semasi

SHT11 ve MPX5100A’yı plakete dişi header kullanarak bağladım böylece istediğim zaman kablo ile uzatma yapabileceğim. Başlangıçta tek kaynaktan PC’ye veri aktaracağım için devreye grafik LCD ve fazladan butonlar ekledim ilerde kullanmak amacıyla. Sonraki adımda verileri RS232 üzerinden PC’ye aktarıp görsel bir arayüz aracılığıyla veritabanına kaydedeceğim.

Projeyi bu aşamadan sonra adım adım ilerletmeyi ve maddi güçüm, vaktim, vs yeterse 1 ayda bitirmeyi düşünüyorum.

Kolay gelsin :D

Projenin isis simülasyon görüntüsü

PIC 18F452 İLE SICAKLIK-NEM-BASINÇ ALGILAYICI (Malzeme Listesi)

MALZEME ADI

ADET

PIC16F452

1

128×64 GRAFİK LCD

1

20MHz KRISTAL OSİLATÖR

1

33 pF KONDANSATÖR

2

100 nF KONDANSATÖR

2

330 uF KONDANSATÖR

2

10KΩ Direnç

5

7805 REGÜLATÖR

2

1N4001 DİYOT

2

SHT11 (SICAKLIK-NEM SENSÖRÜ)

1

MPX5100 (BASINÇ SENSÖRÜ)

1

KLEMENS

1×2(GİRİŞ)

BUTON

41

ERKEK-DİŞİ HEADER PİN

Projeye ait kaynak kod dosyaları, proteus isis simülasyon şeması ares pcb dosyaları: PIC 18F452 İle Sıcaklık-Nem-Basınç Algılayıcı

Dosya indirme LINK listesi (TXT formatında) link-10704.zip şifre-pass: 320volt.com

  • Kayseri

    Şöyle bir durum var birde şimdi yazılım 20 mhzde 20 mhz kristal taktığımda hiç görüntü yok…
    Yazılım 20 mhz de iken 4 mhz kristal taktıgımda bu görüntü geliyor :(
    yazılımı 4mhz yapıyorum 4 mhzlik kristal takıyorum gene aynı görüntü

  • Kayseri

    Bu devreyi 2*16 lcd ile nasıl çalıştırabilirim bu mümkünmü yada önerebileceğiniz başka biryol?

  • TurKuaZ

    peki bu 3 veri ile basınç, sıcaklık, nem, anlık hava tahmini yapılabilirmi? yapılırsa neye göre olur, mesela basınç belli aralıkta iken nem %**’nın üzerinde ise artı sıcaklıkta yağmur eksi olursa kar yağar gibi falan,
    alışveriş sitelerinde hava tahmin cihazları var masa saati gibi onlar hangi mantıkla çalışıyor acaba,
    Meteoroloji bilgisi olan bir arkadaşın cevap vermesi lazım sanırım. :)

  • Yelen

    Bu projeyi birkaç arkadaş bizde yapmayı istiyoruz.Bu devreye kablosuz bir eklenti yapabilir miyiz? RFİD vb.

  • Erdi AY

    Aynı devreyi yaptık ama lcd ekrana hiç bi şekilde görüntü aktaramadık.Kristali 4 mhze düşürdük sonuç yine hüsran.lcd çıkışlarına bi kaç tane led bağladım ledler çalışıyor ama lcdde hiç bir karakter çıkmıyor sorun nerde olabilir bu arada bizim lcdmizin modeli TG12864B-28(R)

  • Konyali

    @Erdi AY
    LCD KS108 denetleyicisi kullanmıyor olabilir. Kristali düşürmenizin olumlu bir etkisi olmayacaktır. LCD datasheetini inceleyerek bağlantı pinlerini ve denetleyicisini kontrol ediniz.

  • Mehmet

    Merhaba TG12864b de piksel kayma sorunu yaşıyorum,
    datasheet de gördğüm kadarıyla “Viewing angle: 6 o’clock”
    clock zamanını nereden değiştirebilirim yazılar kayık ve bazı pikseller çıkmıyor. 1/64 duty cycle, 1/9 Bias nedir bunu da sürücüden değiştirmek gerekirmi ve nasıl değişir.

    lütfen yardım

  • murat

    devre çalışıyor ben yaptım. 8mhz lik kristal kullanmanızı tavsiye ederim. Ayrıca ekran seçimide önemli

    • yasin

      ekran olarak hangisini seçtin?

  • erkan

    hocam paylasımınız çok iyi ama lcd yi temin edemedim bir türlü bu konuda nereden temin edebileceğimi veya hangi siteden bulacağım konusunda yardımcı olurmusunuz…

  • ERKAN

    hocam hangi siteye baksam 10-15 lira deniyor bulması kolay deniyor lcd için ama ben bulamadım.yardım edin yoksa proje dersinden kalacağım

    • LCD Kodu: WG12864B

      “WG12864B ürün” yada “WG12864B fiyat” olarak googlede aratın satıcılara ulaşırsınız

      • yasin

        bu ekranla çalışıyor mu

  • erkan

    hocam elimdeki lcd bu zaten fakat projedeki 18 pin girişli lcd bulamadım zamanım daraldı ve proteus çiziminde her seferinde sorun yasıyorum.18 pın girişli bulacağım bir yer varmı…

  • erkan

    hocamın verdiği malzeme listesinde lcd kodu PG12864G idi yanılmıyorsam bunu bulmam gerekiyor

  • nazilli

    https://sht11sensor.wordpress.com/2014/06/07/sht11-datasheet-turkce/

  • emre

    merhabalar hocam,
    elinize sağlık çok güzel bir proje olmuş. ama mpx5100 sensörünü Türkiyede bulamadım. bunun yerine kullanabileceğimiz bir sensör var mı ?

  • Mehmet

    Baskı devredeki LCD WG12864B göre çıkartılmamış. Devreyi yapmak isteyenler, kullanacakları LCD nin pin bağlantılarını baskı devrede ayarlayarak hazırlamaları gerekmekte. Sonradan benim gibi mağdur olmayın.

    • Burak Balci

      kardeş peki bu hatayı nasıl düzeltebiliriz

      • Mehmet

        proteus ares programı ile kullandığın GLCD nin baskı devresini tekrar düzenleyebilirsin.

  • Uğur Tombul

    Hocam merhabalar sizin kullandıgınız LCD yi bulamadık bizde WG12864B LCD aldık ama bir turlu LCD de sonuc alamadık kodunda nasıl degısıklıkler yapmamız gerekıyor bız Graphıcs ve HDM dosyasını degıstırıyoruz ama bır turlu olmadı yardımcı olabılırmısınız

  • ahmet

    hocam paylaşım için sağolun çok güzel olmuş. Benim proje sıcaklık nem konrol sistemi aslında ortamın sıcaklığını ve nemi okuyup ona göre led yakcak ama hocamız lcd ekransız yapmamızı istiyor yani bilgisayarla bilgi akış çıkşı yapacağız. yardımcı olursanız sevinirim