Bu proje, çeşitli elektrikli ve elektronik cihazları Açmak ve Kapatmak için bir bilgisayar tarafından kontrol edilen bir ev otomasyon sistemi tasarlamayı açıklamaktadır. Gösteri için IŞIK, FAN ve TV'yi gösteren 3 sıfır watt ampul kullandık. Denetleyici olarak Arduino Uno kartını ve ampulleri devreye bağlamak için 5V röle kullanır.
Ev aletleri, endüstriyel cihazlar vb. Cihazları kontrol etmek için çeşitli iletişim türleri olabilir. Bunları genel olarak kablolu ve kablosuz olarak sınıflandırabiliriz. Örneğin, kablosuz iletişimde sinyali radyo frekansı (RF) kullanarak iletiriz ve kablolu iletişimde kablo kullanırız. Kablolu iletişim ayrıca şu şekilde kategorize edilebilir:
Paralel iletişim
Seri iletişim
Paralel iletişimde, bit cinsinden veri boyutuna bağlı olarak çok sayıda kablo kullanırız, yani 8 bit iletmemiz gerekiyorsa, o zaman 8 bitlik bir kabloya ihtiyacımız olur. Ancak seri iletişimde, veri iletmek ve veri almak için yalnızca iki kablo kullandık, çünkü seri iletişim verileri seri olarak, yani parça parça aktarılır.
Gerekli Bileşenler
Arduino UNO
Seri Kablo
ULN2003
Röle 5 volt
Tutuculu ampul
Bağlantı telleri
Ekmek tahtası
16x2 LCD
Dizüstü bilgisayar
Güç kaynağı
PVT
Röle
Devreleri ampul, TV, fan vb. Gibi daha yüksek voltajlı AC cihazlara bağlamak için bir röleye ihtiyacımız var. Röle, elektronikten elektriksel arabirime geçiş için kullanılan bir tür anahtardır. Röleler bir bobin ve bazı anahtarlama kontak çekirdekleri içerir. Aşağıdakiler gibi farklı röle türleri vardır:
Tek Kutuplu Tek Geçişli (SPST).
Tek Kutuplu Çift Geçişli (SPDT).
Çift Kutuplu Tek Geçişli (DPST).
Çift Kutuplu Çift Geçişli (DPDT).
Burada tek kutuplu çift geçişli (SPDT) röle kullandık. SPDT röleleri beş pim içerir; bunlardan 2'si bobin için, biri kutup içindir ve diğer ikisi "Normalde Bağlı" (NC) ve "Normalde Açık" (NO).
Devre Şeması ve Açıklama
Yukarıdaki şematik diyagramda gösterildiği gibi, 4 bit modunda arduino'ya doğrudan bağlanan ev aletlerinin durumunu görüntülemek için 16x2 LCD modülü kullanılmaktadır. LCD'nin RS, EN, D4, D5, D6, D7 data pinleri 7, 6, 5, 4, 3, 2 numaralı arduino dijital pinlerine bağlanır. Dizüstü veya PC'den arduino'ya komut göndermek için kullandığımız USB kablosunu kullanırız. programı arduino'ya yüklemek için kullanılır. Ve bir röle sürücüsü IC ULN2003 de röleleri sürmek için kullanılır. IŞIK, FAN ve TV'yi kontrol etmek için 5 volt SPDT 3 rölesi kullanılır. Ve röleler sırasıyla LIGHT, FAN ve TV'yi kontrol etmek için röle sürücüsü IC ULN2003 aracılığıyla arduino pin numarası 3, 4 ve 5'e bağlanır.
Burada ev aletlerini kontrol etmek için seri iletişim kullanılır. AC ev aletlerini kontrol etmek için LIGHT ON, LIGHT OFF, FAN ON, FAN OFF, TV ON VE TV OFF gibi komutlar gönderiyoruz. Verilen komutları aldıktan sonra arduino, cihazları açmak veya kapatmaktan sorumlu olan rölelere sinyal gönderir.
Hiper terminal veya seri terminalde verilen herhangi bir komuttan birini yazdıktan sonra ENTER tuşuna bastığımızda, arduino "fanı" açmak gibi göreceli görevleri ve benzer şekilde diğer görevleri gerçekleştirir. Kodda programlanan 16x2 LCD ekranda da ilgili bir mesaj görüntülenir. (Alttaki kod bölümüne bakın)
Kod Açıklama
Öncelikle likit kristal ekran için kütüphane ekledikten sonra LCD ve ev aletleri için veri ve kontrol pinlerini tanımlıyoruz.
Sonrasında seri haberleşme 9600 bps'de başlatılır ve pin kullanımına yön verir.
Verileri seri olarak almak için iki işlev kullanıyoruz - biri herhangi bir seri verinin gelip gelmediğini kontrol eden Seri. Kullanılabilir ve diğeri Seri, seri olarak gelen verileri okuyan oku
Verileri seri olarak aldıktan sonra bir dizede saklarız ve ardından Enter için bekleriz.
Enter tuşuna basıldığında, program alınan diziyi önceden tanımlanmış diziyle karşılaştırmaya başlar ve dizge eşleşirse, kodda verilen uygun komut kullanılarak göreceli bir işlem gerçekleştirilir.
Karşılaştırma dizesini kullanmak için strcmp, strncmp, strcpy vb. Gibi bazı anahtar kelimeler içeren string.h olan bir kitaplık kullandık.