Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
1
T.C.
SÜLEYMAN DEMİREL ÜNİVERSİTESİ
TEKNOLOJİ FAKÜLTESİ
ÖZEL ELEKTRİK MAKİNALARI DERSİ
FİNAL RAPORU
ANDROİD BLUETOOTH KONTROLLÜ PİC SULAMA SİSTEMİ
Emre CAN (1022706022)
Ethem SERÇE (1022706042)
Öğretim Görevlisi
Yrd. Doç. Dr. Ramazan ŞENOL
ELEKTRİK – ELEKTRONİK MÜHENDSİLİĞİ BÖLÜMÜ
ISPARTA – 2015
2
İÇİNDEKİLER SAFYA NO
SİSTEMİN ÇALIŞMA ÖZETİ .......................................................................................................................... 3
Kullanılan Devre Elemanları ................................................................................................................... 4
PİC 16F877A ............................................................................................................................................. 4
2x16 LCD LM016 ..................................................................................................................................... 6
RTC Modül ................................................................................................................................................. 7
IRF530N MOSFET ................................................................................................................................... 7
HC06 Bluetooth Modül ......................................................................................................................... 8
PİC Kartı Proteus ISIS Genel Görünümü ............................................................................................. 9
PİC Kartı Proteus ARES 3D Genel Görünümü ................................................................................ 10
PİC Kartı Proteus Baskı Devreler ....................................................................................................... 10
Motor Sürücü Kartı ISIS Proteus Çizimi .......................................................................................... 11
Motor Sürücü Kartı ARES Proteus Çizimleri.................................................................................. 11
APP İNVENTOR 2 ANDROİD PROGRAMLAMA .................................................................................. 12
Giriş Kısmı ................................................................................................................................................... 12
Kodlama Kısmı .......................................................................................................................................... 13
ANDROİD ARAYÜZ ....................................................................................................................................... 14
Açılış Ekranı ............................................................................................................................................... 14
Ana Sayfa Ekranı ....................................................................................................................................... 15
Otomatik Mod Ekranı ............................................................................................................................. 15
ANROİD KODLAMA ...................................................................................................................................... 17
Blok Diyagramı Açıklamaları ............................................ Hata! Yer işareti tanımlanmamış.
Bluetooth Bağlantısı ........................................................ Hata! Yer işareti tanımlanmamış.
Mesaj Diyalog Penceresi ................................................. Hata! Yer işareti tanımlanmamış.
Menüler Arası Geçişin Ayarlanması ........................... Hata! Yer işareti tanımlanmamış.
Androidden Veri Gönderme ......................................... Hata! Yer işareti tanımlanmamış.
PİC’den Veri Alma ............................................................. Hata! Yer işareti tanımlanmamış.
PİC PROGRAMLAMA .................................................................................................................................... 18
CCS PIC C Derleyici Programının Özellikleri .................................................................................. 18
CSS C İle Yazılmış 930 Satır Kaynak Kod ............................................................................................. 20
EK A. LCD MENÜ KULLANIMI .................................................................................................................. 21
3
SİSTEMİN ÇALIŞMA ÖZETİ
Bu çalışmada, PİC 16F877 tabanlı, android cihazlar üzerinden bluetooth kontrollü
otomatik veya manuel olarak damla sulama sistemi (DSS) ve fıskiye sulama sistemi
(FSS) gerçekleştirilmiştir. Bluetooth bağlantı ile PİC ve android cihazlar
haberleşmektedir. Otomatik çalışmada, DHT11 sensörden alınan sıcaklık ve nem
verileri, bizim çalışmasını istediğimiz (Sıcaklık Alt Limit, Sıcaklık Üst Limit, Nem Alt
Limit, Nem Üst Limit) değerler arasında ise, elektronik kartımız üzerinden veya android
cihazdan seçilen sulama modunda (Damla Sulama / Fıskiye Sulama / Damla+Fıskiye
Sulama) çalışacaktır. Manüel çalışmada kullanıcı istediği zaman DSS veya FSS’yi
elektronik kart üzerinden veya android cihazlardan çalıştırıp kapatabilir. Damlama veya
Fıskiyenin birisi çalıştığı durumda su motorumuzda enerjilendirilmektedir.
Yukarıda bahsedilen tüm bu işlemler PİC üzerinde çalışmaktadır. Androidden bir butona
basıldığında PİC’e komut gönderilir, PİC bu komutu alarak yapması gereken işlemi yapar
ve sonucunu LCD ekranında gösterirken seri haberleşme ile sonucu android cihaza kod
olarak yollar, android cihaz gelen veriyi işleyerek kullanıcıya bilgilendirme label’larında
sonucu gösterir.
Tasarlanan elektronik kartta 2x16 LCD ve 3 buton (Aşağı, Yukarı, Mod) bulunmaktadır.
Aşağı/yukarı butonlar ile menüler arasında geçiş yapılabilir, seçilen değişkenleri arttırıp
azaltabilirsiniz. Mod butonu sayesinde dallı menülerin içerisine girebilir, sistem ile
alakalı değerlerin değiştirilmesi için seçim yapabilir, değişiklikleri kaydedebilir,
menülerden çıkabilirsiniz.
Sistem 5V ile çalışmaktadır. Rölelerin çekmesi için 12V girişine enerji verilmelidir.
Damla sulama ve fıskiye sulama valf çıkışları için 12V röleler kullanılmış, bu valflerin
çektiğini görebilmek için paralel LED’ler bağlanmıştır. Motor kontrolü için MOSFET
kullanılmış, ana elektronik kartımızdan optocoupler vasıtasıyla ayrılarak ufak bir motor
sürücü kartı tasarlanmıştır.
4
Kullanılan Devre Elemanları
PİC 16F877A
2x16 LCD LM016
RTC Modül
12V Röle
IRF530N MOSFET
HC06 Bluetooth Modül
Buton, Kristal, Diyot, LED, Direnç, Klemens
PİC 16F877A
5
6
Bu pic modelini giriş çıkış port sayısının fazla olması, kullanıcı ram ve çalışma hızının
yüksek olması, yapılmış örnek uygulama sayısının fazla olması nedeniyle seçilmiş
bulunmaktadır.
2x16 LCD LM016
7
2x16 LCD kullanmamız ile kolay menü oluşturmak amaçlanmıştır. Büyük LCD’lere göre
daha düşük akım gerektireceği için enerji tasarrufu sağlanılması düşünülmüştür. Örnek
uygulamaların sayısı daha fazla olduğu için tercih edilmiştir.
RTC Modül
RTC modül kullanarak sistemimizde saat ve tarihi göstermekteyiz. RTC programlanması
için ilk çalıştığında kod atılması sonrasında ise o kodun silinmesi gerekmektedir.
Aşağıdaki kod sayesinde saat ve tarih ayarlaması yapılır.
rtc_set_datetime(Gün,Ay,Yıl,HaftanınGünüRakamOlarak[1-7],Saat,Dakika);
IRF530N MOSFET
8
Bu mosfet ile motor sürücü devresi tasarlanmıştır. IRF530N mosfeti seçmemizdeki
sebep olarak yüksek akıma dayanması söylenebilir. Mosfetin görevi anahtarlama
yapmaktır.
HC06 Bluetooth Modül
HC-06 Bluetooth Modülü, Bluetooth SSP(Serial Port Standart) kullanımı ve kablosuz seri
haberleşme uygulamaları için yapılmıştır. Üzerinde bulunan Rx, Tx, Vcc, Gnd pinleri
yardımı ile kolay kullanım sağlar.
Özellikleri;
Çalışma Gerilimi: 3.3-5V
Bluetooth Protokolü: Bluetooth 2.0+EDR(Gelişmiş Veri Hızı)
2.4GHz haberleşme frekansı
Hassasiyet: ≤-80 dBm
Çıkış Gücü:≤+4 dBm
Asenkron Hız: 2.1 MBps/160 KBps
Senkron Hız: 1 MBps/1 MBps
Güvenlik: Kimlik Doğrulama ve Şifreleme
Akım: 50 mA
Boyutları: 43x16x7mm
(http://www.robotkutusu.com/Arduino-Bluetooth-Modulu-HC-06,PR-107.html)
9
PİC Kartı Proteus ISIS Genel Görünümü
10
PİC Kartı Proteus ARES 3D Genel Görünümü
PİC Kartı Proteus Baskı Devreler
11
Motor Sürücü Kartı ISIS Proteus Çizimi
Motor Sürücü Kartı ARES Proteus Çizimleri
12
APP İNVENTOR 2 ANDROİD PROGRAMLAMA
( http://appinventor.mit.edu/ adresinden ulaşılmaktadır)
Giriş Kısmı
1. Diğer projelerinizi görebileceğiniz, yeni proje oluşturabileceğiniz, keystore export ve import yapabileceğiniz bir seçenek.
2. Uygulamanızı emülatöre ve usb yardımıyla android cihazınıza bağlayabileceğiniz bir seçenek.
3. Uygulamanızın .apk olarak bilgisayarınıza kaydedebileceğiniz, istersenizde telefonunuza indirmek için QR kodunu görüntüleyebileceğiniz bir seçenek.
4. Oluşturduğunuz uygulama ekranlarının listelendiği menü. 5. Uygulamamıza yeni ekran oluşturabileceğimiz bir buton. 6. Birden fazla ekrana sahip olduğumuzda seçili olanı silebileceğimiz bir buton. 7. Arayüz tasarımı için kullanacağımız nesnelerin olduğu kısım. 8. Nesneleri eklediğimiz, uygulamamızın telefonumuzda görünecek ekranın tasarlandığı
kısım. 9. Eklenen Nesnelerin sıralandığı kısım. 10. Yüklenen dosyaların ve dışardan dosya yükleyebileceğimiz kısım. 11. 9 numaralı kısımdan seçtiğimiz nesnenin default özelliklerini ayarlayabileceğimiz
kısım. 12. Şuan bulunduğumuz ekrana geçmek için buton. 13. Kod bloklarının olduğu kısma geçmek için buton.
13
Kodlama Kısmı
1. Kod bloklarının türüne göre ayrıldığı bölüm. 2. Nesnelerden hariç olarak kod bloklarını açacak seçenekler. 3. Eklenen nesnelerle ilgili kod bloklarını açacak seçenekler. 4. Seçilen türe göre kod bloklarının sıralandığı bölüm. 5. Seçtiğiniz kod bloklarını birleştirebileceğiniz ekran.
14
ANDROİD ARAYÜZ
Açılış Ekranı
Android arayüz açılış ekranı Şekil 1.’ deki gibidir. Bluetooth bağlantısını yapmak için “BAĞLAN” resmindeki listpicker butonuna dokunulduğunda Şekil 2.’ deki gibi bir ekran karşımıza çıkacaktır. Seçilen bir bluetooth cihazına bağlandıktan sonra eğer bağlantı yapılmışsa yeşil renkte “Bağlantınız Başarılı!” yapılmamışsa kırmızı renkte “Bağlantınızı Kontrol Ediniz” uyarısı gelecektir. İsimlerimizin yazılı olduğu butona basıldığında ise Şekil 3’ deki mesaj diyalog penceresinde bilgilerimiz gösterilmektedir. “Sisteme Giriş” butonuna basıldığında, sistem ile ilgili bilgilerin ve seçimlerin olduğu Şekil 4 ‘deki “Ana Sayfa” gösterilecektir.
Şekil 2. Anroid Arayüz Bluetooth Seçenekleri
Şekil 1. Android Arayüz Açılış Ekranı
Şekil 3. Anroid Arayüz Mesaj Diyolog Penceresi
15
Ana Sayfa Ekranı
Ana sayfa üzerinde bulunan “Damla Sulama Aç”, “Damla Sulama Kapat”, “Fıskiye Sulama Aç”,
“Fıskiye Sulama Kapat” butonları sayesinde PİC’e bluetooth üzerinden (d,e,f,g) harf
gönderilir. PİC’ten gelen sıcaklık (500-600 arası) ve nem bilgisi (600-700 arası) Sıcaklık-Nem
label’larına ilgili alt limit rakamlarından çıkartılarak yazılır. Picten gelen diğer bilgilerde
labellara yazılır. Bunlar; Damla Sulama Açık (10), Damla Sulama Kapalı (11), Fıskiye Sulama
Açık (12), Fıskiye Sulama Kapalı (13), Otomatik Mod Aktif (15), Otomatik Mod Pasif (16)
verileridir. “Otomatik Mod” butonuna basıldığında Şekil 5’deki Otomatik Mod ekranı gelir.
Şekil 4. Anroid Arayüz Sistem Ana Sayfa Ekranı
Otomatik Mod Ekranı
Otomatik mod ekranında pic kendinde tanımla olan ilk değerleri android cihaza
gönderecektir, bu sayede android cihazda alt limit üst/limit değerleri gösterilmektedir. Bu
limitleri değiştirmek için karşılarındaki “ + ” / “ - ” butonları kullanılmaktadır. Bu butonlara
basıldığında her birine ait harf elektronik karta gönderilecek, pic bu gelen harfe göre
toplama/çıkartma işlemini yapacak ve son değeri android cihaza gönderecek, LCD’de ve
androidde güncel veri gösterilecektir. Otomatik modda hangi sistemin çalışması istenilirse alt
tarafta bulunan (Damlama, Fıskiye, Damlama+Fıskiye) butonlardan seçim yapılmalıdır.
Mevcut seçilmiş olan damlamadır. Eğer seçim yapılmadan otomatik mod başlatılırsa ilgili
değerler arasında sistem damla sulama sistemini çalıştıracaktır. Pic’den senkron şekilde gelen
veriler ilgili labellarda gösterilmektedir. “Geri Dön” butonuna basıldığı zaman ana sayfa
ekranı gelmektedir.
16
Şekil 5. Anroid Arayüz Sistem Otomatik Mod Ekranı
17
ANROİD KODLAMA
Dizayn (Designer) Bölümü: Arayüz oluştururken kullanılmak istenen arayüz elemanları, sensörler, clocklar vb. nesnelerin alındığı ve bunların tasarım özelliklerinin ayarlandığı kısımdır.
Designer Bölümü Genel Görünümü Blok (Block) Bölümü: Seçilen arayüz elemanları, sensörler, clocklar vb. nesnelerin programlandığı kısımdır.
Block Bölümü Genel Görünümü
18
PİC PROGRAMLAMA
CCS C ile PİC16F877A programlama işlemi yapıldı.
CCS PIC C Derleyici Programının Özellikleri
CCS PIC mikrodenetleyicileri için kullanılan bir C derleyicisidir. Program yazım editöründe C
dilinde yazılan komutlar derlendiğinde HEX dosyanın yanında LST ve ERR dosyaları da
üretilir. LST Dosya içerisinde C kodlarıyla birlikte ASM komutları da vardır.
Bu dosya içerisine bakarak hangi komutla hangi REGISTER e müdahale edildiğini görebiliriz.
ERR Dosyası içerisinde ise eğer C kodlarının yazımı esnasında bir hata olusmus ise bu dosya
içerisinde hata görülebilir. C kodlarında hata düzeltilir ise bu dosyanın içeriği kendiliğinden
değisir ve hata olmadığını yazar. Derleyici ile 12 bit, 14 bit ve 18 serisi mikrodenetleyiciler için
program yazılabilmektedir.
( http://320volt.com/ccs-pic-c-derleyici-programi-c-dili-ve-ccs-temel-esaslari/ )
Programın Çalışma Alanından Bir Görüntü
Yeni bir çalışma alanı yaratmak için “PIC Wizard” kullanılabilir. PIC Wizard'ı çalıştırmak için
File > New > PIC Wizard yolu izlenir. PIC Wizard birçok prosedürün kullanıcı arayüzü yardımı
ile kolaylıkla yapılmasını sağlar. PIC Wizard başladığında projenin nereye kayıt edileceğini
soran bir pencere açılır. Dosya konumu ve dosya ismi seçilerek “Kaydet” tuşuna tıklanır.
Burada açılan pencere ile birçok prosedür kolaylıkla yapılabilmektedir. Bu pencerede seri
19
port haberleşmesi, LCD, Timer gibi birçok konuda seçenek bulunmaktadır. Öncelikle
kullanılacak mikroişlemcinin seçilmesi gerekmektedir.
Kodlar yazıldıktan sonra derleme işlemine geçilir. Derleme işlemi Compile > Compile yolu
izlenerek ya da klavye kısayolu F9'u kullanarak yapılabilir. Derleme sonucunda hata ayıklama
işlemi için output penceresi kullanılır. Bu pencere yardımı ile hangi satırlarda ne tür hatalar
yaptığımızı görebiliriz. Derleme sonunda hata yoksa projenin kayıtlı olduğu dosyada .hex
uzantılı bir dosya oluşur. Bu dosya herhangi bir simülasyon programında denenebilir ya da
mikroişlemciye yüklenerek kullanılabilir. CCS C programının yardım bölümüne klavye kısayolu
F1 ile ya da sağ üst kösede bulunan soru işareti yardımı ile ulaşılabilir.
20
CSS C İle Yazılmış 930 Satır Kaynak Kod
21
EK A. LCD MENÜ KULLANIMI
22
23