20 Ocak 2018 Cumartesi

DS1990a iBUTTON (AKBİL) KONTROLLÜ ERİŞİM ve GÜVENLİK SİSTEMİ

Merhaba arkadaşlar,
Blog yayınlarıma uzun bir süre ara vermiştim. Şimdi farklı bir çalışma ile yayınlarımıza devam ediyoruz. Bu çalışmamızda AKBİL olarak bilinen DS1990a iButtonu PIC16F883 mikrodenetleyicisi ile kullanacağız. Tasarladığım devre asansörlerde kullanılmak için yapılmıştır. Kapı veya turnikelerde kontrollü geçiş işlemleri içinde kullanılabilir. Bu çalışmada, bizim amacımız asansöre çağrı verme işlemini akbil ile kontrol etmek olmuştur. Devre üzerindeki DS9092 iButton Probe kullanıcılardaki AKBİL (DS1990a iButton) anahtarları okur ve sisteme tanıtılmış olanlara kullanım izni verir.

9 Eylül 2016 Cuma

PIC18F4520 & ENC28J60 İLE WEB SERVER UYGULAMASI
















Merhabalar,

  Projemizde PIC mikrodenetleyici kullanarak bir web sayfasını ENC28J60 aracılığıyla internet üzerinden yayınlayacağız. Yayınladığımız web sayfası üzerinden röle kontrolü yapabileceğiz. Nem, sıcaklık, LDR ve hava kalite sensörlerimizden okuduğumuz verileri bu sayfada yayınlayacağız. Yani bir otomasyon web sunucusu yapmış olacağız. Projemizde kullanılacak donanımlar şunlardır;
 - PIC18F4520 Mikrodenetleyici,
 - ENC28J60 Ethernet LAN Modülü,
 - DHT22 Nem ve Sıcaklık Sensör Modülü,
 - MQ-135 Hava Kalitesi Ölçüm Modülü,
 - Röle Modülü,
 - LDR,
 - 16x2 LCD Ekran.
    Bu donanımlardan 16x2 LCD ekranı zaten daha önceki birçok projemizde kullandık. Diğerlerinin özelliklerine kısaca değineceğiz.

29 Temmuz 2016 Cuma

DHT22 İLE SICAKLIK VE NEM ÖLÇÜMÜ

   Bu yazımızda dijital sıcaklık ve nem sensörü olan DHT22'nin kullanımını öğreneceğiz. Hemen ardından da PIC16F877A mikrodenetleyici ile bir uygulama gerçekleştireceğiz. Uygulamada DHT22 sesnsöründen okuduğumuz verileri 16x2 LCD ekrana yazdıracağız.
   DHT22 tek data hattı üzerinden mikrodenetleyiciler ile iletişim sağlar. -40 / 80 °C arasında sıcaklığı ve 0-100%RH arasında bağıl nemi algılayabilir. Sıcaklık ölçüm doğruluğu 0.5 °C ve bağıl nem ölçüm doğruluğu ise 2%RH 'dır.
   DHT22 sensörü ve mikrodenetleyici ile bağlantı şeması aşağıdaki gibidir.





   Şimdi DHT22'nin ölçüm yapmaya nasıl başlatılacağını ve ölçüm sonucu elde edilecek dijital verinin formatını inceleyeceğiz.
 

13 Temmuz 2016 Çarşamba

GRAFİK LCD EKRANLI ŞİFRELİ KİLİT

     Merhabalar... 
     Projemizde grafik lcd göstergeli, 4x4 keypadli bir şifreli kilit yapacağız. PIC16F877A ile sürdüğümüz 128x64 grafik lcd ile kullanıcı için şık tasarımlı bir menü hazırlayacağız.Projemizde  KS0108 kontrolörlü Winstar  marka WG12864C model glcd kullanacağız.


23 Mart 2016 Çarşamba

RASPBERRY PI 2 ile WEB SİTESİNDEN VERİ ÇEKME

     Merhaba arkadaşlar, yeni bir yayınla tekrar birlikteyiz. Bu yayınımızda Python 3 de geliştirdiğimiz programımızla web sitesinden veri çekmeyi öğreneceğiz. Uygulamamızda Meteroloji Genel Müdürlüğü web sayfasından Malatya'nın hava durumu, sıcaklık ve nem bilgilerini alıp terminal ekranına ve 16x2 LCD ye bastıracağız.
   Python 3 programımızda 'urllib.request' ve 're' modüllerini kullanacağız. 'urllib.request' modülü web sayfasının html kaynak kodunu çekmemizi sağlayacaktır. Python ve bazı dillerde düzenli ifadeler (regular expressions) adı verilen bir yapı vardır. Bu yapının kullanımını bir örnekle anlatacak olursak; düzenli ifadeler uzun bir metin içinde, yazılımcının tarif ettiği özellikte ki bir kelimeyi veya bir sayıyı ayıklamayı sağlar. Bizde, web sayfasının html kaynak kodlarını çektikden sonra 're' modülünün bazı metotlarını kullanarak kaynak kod içinden gerekli veriyi ayıklayacağız.
   Düzenli ifadeler ve metakarakterler geniş kapsamlı konulardır. Python 3 için bu konuları istihza.com'dan daha detaylı bir şekilde öğrenebilirsiniz.

   Uygulamamızın devre şeması bir önceki yayınımızda da kullandığımız aşağıdaki şemadır.























14 Mart 2016 Pazartesi

RASPBERRY PI 2 ile 16x2 LCD KULLANIMI ve TÜRKÇE KARAKTER OLUŞTURMA

    Herkese Merhabalar,

     Bu yayınımızda Raspberry Pi 2 ile HD44780 kontrolcüsüne sahip 16x2 karakter LCD' yi sürmeyi öğreneceğiz. Daha sonra da kendi oluşturduğumuz Türkçe karakterleri LCD ekrana print edeceğiz. İlk önce LCD pinlerini görevleriyle birlikte inceleyelim. 16x2 LCD'nin 16 adet pini vardır. Bunlar;
GND [1]: LCD toprak pini,
VCC [2]: LCD'nin +5V beslemesi,
VEE [3]: Kontrast pini; bu pin 10K pot üzerinden toprağa çekilerek kontrast ayarı yapılır.
RS [4]: (Register select) LCD nin şartlanması ve konum belirtme gibi durumlarda lcd ye komut, ekrana yazı yazma durumunda ise karakter yollanır. Eğer LCD ye komut yazacaksak bu pini lojik 0 seviyesine, karakter yazacaksak lojik 1 seviyesine çekmemiz gereklidir.  
R/W [5]: (Read/Write) LCD ye veri yazılacaksa bu pin lojik 0 'a, veri okunacaksa lojik 1'e çekilir. Biz uygulamamızda ekrandan veri okumayıp sadece yazacağımız için bu pini GND ye bağladık.
E [6]: Raspberry pi nin GPIO pinlerine yazdığımız verilerin LCD ye yazılması için bu pine düşen kenarlı bir clock gönderilir. Eğer okuma yapılacaksa bu pine yükselen kenarlı clock gönderilir.
D0-D7 [7-14]: D0 dan D7 ye kadar olan pinler data pinleridir. Bu pinler üzerinden LCD ye veri yazılır/okunur.
A [15]: Bu pin lcd arka aydınlatma ledinin anotudur.
K [16]: Bu pin lcd arka aydınlatma ledinin katodudur.

   HD44780 kontrolcülü karakter LCD, D0-D7 data pinleri üzerinden 8 bit ve 4 bit olarak sürülebilmektedir. Aşağıdaki devre şemasından da görüldüğü gibi  LCD yi 4 bit olarak süreceğiz. Bunun için data binlerinin üst 4 biti (D4-D5-D6-D7) ni Raspberryi Pi nin GPIO pinlerine bağladık. LCD 4 bit sürüldüğünde ilk önce bilginin üst 4 bitleri yazılır ardında da alt 4 bitleri yazılır.



   

7 Şubat 2016 Pazar

STM32F407VG ve BİLGİSAYAR SERİ PORT HABERLEŞMESİ - USART İLETİŞİM PROTOKOLÜ

     Merhabalar,

     Bu yazımızda, USART seri iletişim protokollerinden bahsedeceğiz. Ardından da STM32F407 Discovery kiti ile bilgisayarımız arasında bir UART iletişim uygulaması gerçekleştireceğiz.
    USART ( Universal Synchronous Asynchronous Receiver Transmitter ) iki sistem arasında verilerin bit bit sıra ile yani seri olarak iletildiği iletişim protokolüdür. Seri iletişim, senkron ve asenkron iletişim olmak üzere ikiye ayrılır. Senkron iletişimde alıcı ve verici devre eşzamanlı olarak çalışırlar. Bu iletişimde data hattı ve clock sinyali hattı bulunur. Clock hattı verilerin eşzamanlı olarak gönderilip alınmasını sağlar.

   Asenkron iletişimde ise sadece data hatları bulunur. Asenkron iletişim, clock sinyali hattı bulundurmaz, bu nedenle alıcı ve verici eşzamanlı olarak çalışmazlar.