YÜKTEN GEÇEN AKIMIN ZİGBEE KABLOSUZ...
Transcript of YÜKTEN GEÇEN AKIMIN ZİGBEE KABLOSUZ...
T.C.
KARADENZİ TEKNİK ÜNİVERSİTESİ
ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ
YÜKTEN GEÇEN AKIMIN ZİGBEE
KABLOSUZ HABERLEŞME TEKNOLOJİSİ
KULLANILARAK BİLGİSAYARDA
GÖRÜNTÜLENMESİ
243458 ANIL AKÇAKAYA
243441 UĞUR TAŞKINER
Yrd. Doç. Dr Gökçe Hacıoğlu
Mayıs 2014
TRABZON
T.C.
KARADENİZ TEKNİK ÜNİVERSİTESİ
Mühendislik Fakültesi
Elektrik-Elektronik Mühendisliği Bölümü
YÜKTEN GEÇEN AKIMIN ZİGBEE KABLOSUZ
HABERLEŞME TEKNOLOJİSİ KULLANILARAK
BİLGİSAYARDA GÖRÜNTÜLENMESİ
243458 ANIL AKÇAKAYA
243441 UĞUR TAŞKINER
Yrd. Doç. Dr Gökçe Hacıoğlu
Mayıs 2012
TRABZON
II
LİSANS BİTİRME PROJESİ ONAY FORMU
Anıl AKÇAKAYA ve Uğur TAŞKINER tarafından Yrd. Doç. Dr Gökçe HACIOĞLU
yönetiminde hazırlanan “ Yükten geçen akımın zigbee kablosuz haberleşme teknolojisi
kullanılarak bilgisayar ortamında görüntülenmesi” başlıklı lisans bitirme projesi tarafımızdan
incelenmiş, kapsamı ve niteliği bir Lisans Bitirme Projesi olarak kabul edilmiştir.
Danışman :
Jüri Üyesi 1 :
Jüri Üyesi 2 :
Bölüm Başkanı :
III
ÖNSÖZ
Bu projemizde, yükten geçen akımın zigbee kablosuz haberleşme teknolojisi kullanılarak
bilgisayar ortamında görüntülenmesi incelenmiştir.
Bu çalışmadaki uygulamalar Karadeniz Teknik Üniversitesi Mühendislik Fakültesi
Elektrik Elektronik Mühendisliği İletişim Laboratuarı, Elektrik Ölçme Laboratuarında
yapılmıştır.
Bitirme projesi sürecinde bizden yardımlarını esirgemeyen danışmanımız Sayın Yrd.
Doç.Dr. Gökçe Hacıoğlu’na en içten dileklerle teşekkürlerimizi sunuyoruz.
Bitirme projesi sürecinde görüş ve bilgilerini bizimle paylaşan Sayın Doç.Dr. İsmail Kaya
ve Çözüm Mühendisli’ğe teşekkürlerimizi sunuyoruz.
Ayrıca eğitim ve öğretim hayatımızda bizden desteklerini hiçbir zaman esirgemeyen çok
değerli ailelerimize de saygı ve sevgilerimizi sunuyoruz.
Mayıs 2014
Uğur Taşkıner
Anıl Akçakaya
IV
İÇİNDEKİLER
LİSANS BİTİRME PROJESİ ONAY FORMU ................................................................II
ÖNSÖZ .......................................................................................................................... III
İÇİNDEKİLER ............................................................................................................... IV
ÖZET .............................................................................................................................. VI
SEMBOLLER VE KISALTMALAR ............................................................................ VII
ŞEKİLLER DİZİNİ ..................................................................................................... VIII
ÇİZELGE DİZİNİ ........................................................................................................... IX
1.GİRİŞ ............................................................................................................................ 1
2. TEORİK ALTYAPI ...................................................................................................... 3
2.1.Projede Donanım Olarak Kullanılan Malzemeler Ve Çalışma Şekilleri ....................... 3
2.2. Zigbee ....................................................................................................................... 3
2.2.1. Zigbee Nedir ............................................................................................................ 4
2.2.2. Zigbee’nin Özellikleri .............................................................................................. 4
2.2.3. Zigbee’nin Kullanıldığı Yerler ................................................................................ 4
2.2.4. Diğer Kablosuz Teknolojilerle Zigbee’nin Karşılaştırılması ..................................... 4
2.2.5. Zigbee’nin Düşük Güç Tüketme Sebebi ................................................................... 5
2.2.6. Zigbee Nasıl Çalışır ................................................................................................. 5
2.2.7. Yıldız Topolojisi ...................................................................................................... 6
2.2.8. Ağaç Topolojisi ...................................................................................................... 6
2.2.9. Örgü Topolojisi ....................................................................................................... 7
2.3. Maxstream Xbee 1 Serisi(1mW) ............................................................................... 8
2.4. Xbee Usb Explorer .................................................................................................. 10
2.5. Mini Usb Kablo ....................................................................................................... 10
2.6.Xbee Breakout Board ................................................................................................ 10
2.7 Arduino .................................................................................................................... 11
V
2.7.1.Neden Arduino ...................................................................................................... 12
2.7.2. Arduino İle Neler Yapılabilir ................................................................................. 13
2.7.3. Arduino ile Neler Yapılamaz ................................................................................. 13
2.8. Sensörler .................................................................................................................. 14
2.8.1. Sensörler Ne İşe Yarar .......................................................................................... 14
2.8.2. Sensörlerin Bulunduğu Bir Sistemde Olması Gerekenler ........................................ 14
2.8.3. Sensör Parametreleri ............................................................................................ 14
2.4. Sensörlerin Avantajları ............................................................................................. 15
2.8.5. Senörlerin Dezavantajları ...................................................................................... 15
2.8.6. Sensörlerin Sınıflandırılması ................................................................................. 15
2.8.6.1.Giriş Büyüklüklerine Göre Senörler ..................................................................... 15
2.8.6.2. Çıkış Büyüklüklerine Göre Sensörler .................................................................. 15
2.8.6.3. Besleme İhtiyacına Göre Sensörler ...................................................................... 16
2.8.7.Sensör Çeşitleri ....................................................................................................... 16
2.8.8.Akım Sensörleri ...................................................................................................... 17
3. TASARIM .................................................................................................................. 19
3.1. Projenin Gerçekleştirilmesi ....................................................................................... 19
3.2.Xbee Modüllerinin Konfigürasyonu ........................................................................... 20
3.3. Projede Akım Sensörünün Kullanılması .................................................................... 22
3.4. Arduino Mikrodenetleyicisi ile Gerekli Yazılımın Gerçekleştirilmesi ....................... 23
4.SONUÇLAR ............................................................................................................... 25
5.YORUMLAR VE DEĞERLENDİRMELER ............................................................... 26
KAYNAKLAR ............................................................................................................... 27
STANDARTLAR VE KISITLAR FORMU .................................................................... 28
EKLER ........................................................................................................................... 30
ÖZGEÇMİŞ ................................................................................................................... 35
VI
ÖZET
Projede, şebekeye bağlantısını yapmış olduğumuz yükten geçen akımı ölçüp kablosuz
haberleşme ile bilgisayar ortamında görüntülenmesi sağlanmıştır.
Şebekeye bağlantısnı yapmış olduğumuz yükten geçen akım, ACS 714 akım sensörü ile
ölçülmüştür. Sensörden alınan veriler Zigbee kablosuz haberleşme protokolünün Xbee Seri 1
müdülünden okunmuştur. Okunan veriler Xbee’lerin kendi aralarında haberleşmesiyle diğer
Xbee’ye iletilmiştir. İletilen veriler Arduino’ya yazılım ile aktarılmıştır. Böylece akım
değerleri bilgisayarda görüntülenmiştir.
Sonuç olarak kablosuz haberleşme teknolojisi yardımıyla uzak bir noktadaki sensör
bilgilerinin bilgisayar ortamında görüntülenmesi sağlanmıştır.
VII
SEMBOLLER VE KISALTMALAR
UART Evrensel Asenkron Alıcı Verici (Universal Asynchronous Receiver
Transmitter
LR – WPAN Düşük Hızlı Kişisel Ağ Haberleşme(Low – Rate Wireless Personal
Area Network)
BPSK İkili Faz Kaydırmalı Anahtarlama (Binary Phase Shift Keying)
QPSK Karesel Faz Kaydırmalı Anahtarlama (Quadrature Phase Shift
Keiyng)
AODV Eşe – Eş steğe Bağlı Uzaklık Vektrör Yönlendirme (Ad – hoc
Ondemand Ditance Vector Routing )
IEEE Elektrik ve Elektronik Mühendisleri Enstitüsü (Institute of Electrical
and Electronics Engineers )
ADC Analog dan Dijitale Dönüştürücü ( Analog to Dijital Converter )
API Uygulama Programlama Arayüzü (Application Programming
Interface )
FCC Federal Haberleşme Komisyonu (Federal Communications
Commission )
USB Evrensel Seri Veriyolu (Universal Serial Bus )
EEPROM Silinip Programlanabilir Salt Okunur Bellek (Electronically Erasable
Programmable Read – Only Memory )
AC Alternatif Akım (Alternating Current )
DC Doğru Akım (Direct Current )
PAN Kişisel Alan Ağı (Personal Area Network)
CE Koordinatör Yetkilendirme (Coordinatör Enable )
DH Yüksek Hedef Adresi (Destination Adress High)
DL Düşük Hedef Adresi (Destination Adress Low)
MY 16 Bitlik Kaynak Adresi (16-bit Source Adres)
USART Evrensel Senkron Asenkron Alıcı Verici (Universal Synchronous
Asynchronous Receiver Transmitter)
VIII
ŞEKİLLER DİZİNİ
Şekil 1. Yıldız Topolojisi .................................................................................................. 6
Şekil 2. Ağaç Topolojisi .................................................................................................... 7
Şekil 3. Örgü Toplojisi ..................................................................................................... 8
Şekil 4. Xbee Modülleri .................................................................................................... 9
Şekil 5. Xbee Explorer Usb ............................................................................................. 10
Şekil 6. Xbee Breakout ................................................................................................... 11
Şekil 7. Arduino Uno R3 ........................................................................................ 12
Şekil 8. ACS 714 Akım Sensörü .................................................................................... 18
Şekil 9.ACS 714’ün yapısı ..................................................................................... 18
Şekil 10. Çıkış voltajına karşılık gelen akım değerleri ............................................ 18
Şekil 11. Projenin Gerçekleştirilmiş Hali ............................................................... 20
IX
ÇİZELGE DİZİNİ
Çizelge 1.İş – Zaman Çalışma Takvimi ............................................................................. 2
Çizelge 2.Donanım Olarak Kullanlıan Malzemelerin Listesi .............................................. 3
1
1. GİRİŞ
Günümüzde teknoloji ciddi bir şekilde büyümekte olup yaşamımızın vazgeçilmez bir
parçası haline gelmiştir. İnsanoğlu artık çoğu işlerini teknolojiyi kullanarak hallederken,
üretici firmalar ise kullanılan teknolojinin enerji ve batarya ihtiyacını karşılama da problemler
yaşamaya başlamışlardır. Projemizde yükten geçen akımın ölçülüp bilgisayar ortamında
görüntülenebilmesi için bir kablosuz haberleşme protokolüne ihtiyaç duyulmuştur.
Kullanılacak haberleşme protokolünün ise düşük güç tüketmesi ve güvenilir bir şekilde veri
iletimi sağlaması aranılan özellik olmuştur. Dolayısıyla biz de projemizi düşük güç tüketimi,
uzun pil ömrü, güvenilirliği ve düşük maliyeti gibi avantajlarından dolayı zigbee kablosuz
haberleşme modüllerinden olan Maxstream Xbee 1 serisi ile gerçekleştirdik.
Bu çalışmada yükten geçen akım değerlerini Xbee’nin okuyabilmesi için ACS 714
akım sensörü kullanılmıştır. Xbee’lerin kablosuz haberleşebilme özelliğinden dolayı okunan
değerler uzak bir noktadaki diğer Xbee modülüne iletilmiştir. Bu verilerin bilgisayar
ortamında görüntülenebilmesi için bir mikroişlemciye ihtiyaç duyulmuştur. ARDUİNO UNO
R3, UART (Universal Aysynchronous Receiver Tranmitter) haberleşme yapabilmesi, açık
kaynak kodlu olması ve maliyetinin uygun olması gibi avantajlarından dolayı projemizde
tercih edilmiştir.
Projede Zigbee teknolojisi, Arduino mikrodenetleyicisi, ACS 714 akım sensörü ayrı
ayrı ele alınmıştır. Daha sonra projenin gerçekleştirilmesi için bu üç birim birleştirilmiştir.
Projenin nasıl gerçekleştirildiği ile ilgili detayalar projenin gerçekleştirilmesi bölümünde
detaylıca incelenmiştir.
Bu projeyi seçmemizdeki temel sebep zigbee kablosuz haberleşme teknolojisi ve
arduino mikrodenetleyicisinin birlikte nasıl kullanılacağını, aynı zamanda sensör
uygulamalarını öğrenmek ve yakın bir tarihte popüler hale gelecek olan bu modüller hakkında
detaylı bilgi sahibi olmaktır. Nitekim bu proje sayesinde haberleşme ve yazılım üzerine geniş
kapsamlı bir bilgi birikimine sahip olduk. İş Zaman Çalışma Takvimi Tablo 1’de
gösterilmiştir.
2
Çizelge 1. İş- Zaman Çalışma Takvimi
İŞ/ZAMAN 1-28
Şubat
1-31
Mart
1-30
Nisan
1-23
Mayıs
Projede Kullanılacak
Malzemerlerin Satın
Alınması
Arduino Yazılımı İle İlgili
Çalışmalar Yapılmıştır
Xbee nin Konfigüre
Ayarlarının Öğrenilmesi
AT Komutlarının
Kullanımı ve Apı
Haberleşmesinin
Öğrenilmesi
Akım Sensörünün
Kullanımının Öğrenilmesi
ve Ölçüm Uygulamarı
Karşılaşılan Problemlerin
Çözümü İçin Araştırma
Yapılması
Projenin Birleştirilmesi ve
Ölçülmesi
Tezin Yazılması
Proje Teslimi
3
2. TEORİK ALTYAPI
Tasarlanan sistemin gerçekleştirilmesi için çeşitli malzemeler kullanılmıştır. Bu
bölümde kullanılan malzemeler ayrı ayrı incelenip ne amaçla kullanıldıkları anlatılmıştır.
2.1. Projede Donanım Olarak Kullanılan Malzemeler ve Çalışma Şekilleri
Bu bölümde projemizde kullanmış olduğumuz malzemeler detaylıca anlatılıp, projede
nerede, nasıl ve ne amaçla kullanıldığı ile ilgili bilgiler verilmiştir. Kullanılan malzemeler
Tablo 2 ‘de verilmiştir.
Çizelge 2. Donanaım Olarak Kullanılan Malzemelerin Listesi
2 adet Maxstream Xbee 1 serisi modülleri
1 adet ARDUİNO UNO R3
2 adet Xbee breakout
2 adet Xbee Explorer
2 adet Mini usb kablo
1 adet A’dan B’ye usb kablo
1 adet 0.1 µF kondansatör
Çok sayıda Jumper kablolar, direnç seti ve bağlantı elemanları
2 adet Breadboard
1 adet ACS 714 akım sensörü
1 adet Yük (6 Watt gücünde led)
1 adet Dizüstü bilgisayar
2.2. Zıgbee
Günümüzde teknoloji ciddi bir şekilde büyümekte olup yaşamımızın vazgeçilmez bir
parçası haline gelmiştir. İnsanlar günlük hayattaki işlerini artık teknoloji kullanarak
halletmektedir. Teknolojinin günlük hayatımızdaki yeri inkar edilemez bir seviyeye gelmiştir.
Teknoloji günlük hayatımızda bu kadar önemli yere sahip iken, teknoloji üreticileri ise hemen
hemen her alanda üretimler yapmaya başlamışlardır. Bunun sonucu olarakta kullanılan
teknolojinin enerji ve batarya ihtiyacını karşılama da problemler yaşamaya başlamışlardır.
Dolayısıyla üretilen ürünlerde aranılan şartlardan en önemlilerinden bir tanesi de düşük güç
tüketimi olmuştur. Bu sebepten dolayı firma mühendisleri Zigbee Kablosuz Haberleşme
4
Modüllerini üretmişlerdir.
2.2.1. ZigBee Nedir
Zigbee, kablosuz haberleşme teknolojilerinde düşük hız kablosuz kişisel yerel ağ (
LR-WPAN, Low-Rate Wireless Personal Area Network ) haberleşmesi olarak bilinir. Zigbee
teknolojisi, küçük boyutta veri alışverişi ile gerçekleştirilmesi mümkün uygulamalarda düşük
maliyetli olması, minimum güç tüketme prensibine dayanması, kurulumunun kolay ve esnek
yapıda olması açısından tercih edilmektedir. Bu teknoloji sayesinde karmaşık ağ yapıları
kurmak, bunları genişletmek ve bu yapıların diğer teknolojilerle haberleşmesini sağlamak
mümkündür [1].
2.2.2. ZigBee’nin Özellikleri
Güvenilirliğinin yüksek olması
Mesh ağı kurabilme imkânı sağlaması
Son derece hızlı ve basit bir kuruluma sahip olması
Düşük güç tüketmesi sebebi ile uzun pil ömrüne sahip olması
2.2.3. Zigbee’nin Kullanıldığı Yerler
Bina otomasyonu
Güvenlik sistemleri
Sağlık sektörü
Taşıtlarda
Tarım sektöründe
Endüstri alanında
2.2.4. Diğer Kablosuz Teknolojilerle Zigbee’nin Karşılaştırılması
Zigbee, pil ömrünün uzun olması, düşük maliyetli olması, sınırsız sayıda ağ yapısı
oluşturma imkanı sağlaması, düşük güç tüketmesi sebebiyle oluşturulan sistemdeki enerji
kaynaklarını minimum seviyede kullanması gibi avantajları sayesinde kontrol ve izleme
amaçlı tasarlanacak sistemlerde kullanılacak en ideal teknoljidir. Bunun yanı sıra
5
dezavantajları da mevcuttur. Zigbee, Wireless ve Bluetooth da olduğu gibi veri akış hızını
büyük boyutlarda sağlayamamaktadır. Bu sebeple Zigbee’yi kullanacağımız uygulamalarda
veri akış hızının çok fazla öneminin olmaması gerekir. Zigbee aynı zamanda lisans izni
gerektirmeyen frekans bandını da kullanması sebebiyle ve aynı zamanda kullanımının ve
kurulumunun kolay olması sebebiyle uygulamalarda daha çok tercih edilir hale gelmeye
başlamıştır.
2.2.5. ZigBee’nin Düşük Güç Tüketme Sebebi
Küçük boyutlarda veri iletimi yaptığından dolayı büyük boyuttaki veri
aktarımından daha az enerji harcar
Tasarlanan sistemde veri alışverişinin olmadığı zamanlarda sitemdeki son cihaz ve
koordinatör haricindeki cihazların enerji tüketmemesi yani uyku modunda
kalmaları
Haberleşme sırasında kullanmış olduğu modülasyon çeşitlerinden BPSK (Binary
Phae Shift Keying) ve O-QPSK (Quadrature Phase Shift Keying)
modülasyonlarının fazla güç tüketmemeleri
Kısa zamanlı görev çevrimi: yayın alma ve yayın verme sürelerinin kısa olması ve
bu iki süreç arasındaki zaman aralığının uzun tutulmasıyla cihazın aktif çalışma
zamanı kısalır, bu ise düşük güç tüketmesini sağlar.
2.2.6. ZigBee Nasıl Çalışır
Zigbee sistemde kullanılan modüllerin arasındaki haberleşmenin gerçekleşmesini
sağlar. Bunun için dijital radyoları kullanır. Zigbee ağından oluşmuş bir sitemde koordinatör
cihaz yönlendirici cihazlar ve sonlandırıcı cihazlar bulunur. Oluşturulmuş olan bu sisteme ise
mesh ağı yapısı adı verilir. Sistemdeki koordinatör cihaz mesh ağını yönetir. Aslında tüm
sistem buradan kontrol edilir. Yönlendirici cihazlar ise son cihazlar ile koordinatör cihaz
arasında tampon görevi görürler. Yani kendisinde bulunan verileri koordinatör cihaza
iletmenin yanı sıra koordinatör cihaza uzak bir noktadaki son cihazın koordinatör ile
haberleşmesini de sağlar. Sistemdeki son cihazlar ise genelde kullanılan sensörün yanındaki
elemanlardır. Tasarlanmış sistemdeki veri alışverişi bu son cihazlardan başlar. Zigbee’nin bir
noktadan bir noktaya, tek bir noktadan birçok noktaya ve çok noktadan tek bir noktaya veri
6
iletimi gibi ağ oluşturma yapıları mevcuttur. Bu ağ yapılarından kısaca bahsedecek olursak.
2.2.7. Yıldız Topolojisi
Bu ağ yapısında merkezde bir koordinatör cihaz bulunur. Kullanılan diğer cihazların
hepsi ise son cihazlardır. Sistemde yönlendirici cihazlara gerek duyulmaz. Çünkü son
cihazların hepsi merkezdeki koordinatör cihaz ile haberleşme mesafesi içerisindedir. Anlatmış
olduğumuz bu sistem Şekil 1. de gösterilmiştir.
Şekil 1. Yıldız Topolojisi [1].
2.2.8. Ağaç Topolojisi
Ağaç topolojisinde ise kullanılan cihazlar belli bir düzene göre yerleştirilirler.
Oluşturulmuş bu düzende yine merkezde koordinatör cihaz vardır. Tüm haberleşme aynı
şeklide koordinatör cihazın kontrolünde gerçekleştirilir. Ağaç yapısına benzeyen bir dizilime
sahip olduğundan dolayı ağaç topolojisi ismini almıştır. Bu sistemde koordinatör cihaza yakın
olan cihazlar yönlendirici cihazlardır. Buradaki amaç koordinatörün haberleşme mesafesi
dışında olan son cihazlarla haberleşmesini sağlamaktır. Yani sitemde yönlendirici cihazları
kullanmamızın sebebi haberleşme mesafesini arttırmaktır. Aynı zamanda son cihazları da
birbirleriyle haberleştirmek istiyorsak yine yönlendirici cihazlar kullanırız. Bu sistemin şekle
7
yansıtılmış hali Şekil 2. de görülmektedir.
Şekil 2. Ağaç Topolojisi [1].
2.2.9. Örgü Topolojisi
Zigbee ağının kullanıldığı örgü topolojilerinden yaygın olarak kullanılan topoloji
çeşididir. Bu topolojide cihazların birbirleriyle haberleşmesi daha farklı şekilde olmaktadır.
Bu haberleşme AODV (Ad- hoc Ondemand Ditance Vector Routing )algoritmasıyla
gerçekleşmektedir. Bu algoritmanın nasıl kullanılacağından bahsedecek olursak; öncelikle
hedef cihazın konumunu belirleyebilmek için koordinatör cihaz yön isteği paketini tüm ağa
gönderir. Bu paketin içerisinde dizi numarası konum bilgisi hedef cihazın ağ adresi ve hedefin
ağ adresi bilgileri bulunur. Koordinatör cihaz tanımlı bilgiler hangi cihazda mevcut ise o
cihazdan dönüş alır. Bu şekilde yön ve konum tayini belirlenmiş olur. Eğer birden fazla
cihazdan dönüş alırsa optimizasyon kararı verir. Yani en düşük maliyetli yoldan veri paketi
yollamaya çalışır. Anlatılan bu sistem aşağıdaki Şekil 3. te açıkça gösterilmiştir.
8
Şekil 3. Örgü Toplojisi [1].
2.3. Maxstream Xbee 1 Serisi (1 mW)
Seri 1 olarak adlandırılan bu modüller IEEE (Institue of Electrical and Electronics
Engineers ) 802.15.4 ağ protokolünü kullanamakla birlikte bir noktadan birçok noktaya ya da
birebir haberleşmeye izin vemektedir.Bu modüllerle yüksek hızda veri alışverişi yapmamız
mümkün değildir. Daha çok veri hızının çok önemli olmadığı uygulamalarda tercih
edilir.Fakat yapmış olduğumuz konfigüre ayarları sonrası veri hızını biraz da olsa arttırmamız
mümkündür. Maxstream Xbee 1 Serisi (1 mW) modülleri veri hızı 250kbps dir. Örneğin
görüntü aktarımının olduğu uygulamalarda veri hızı yeterli olmayacağından bu tarz
uygulamalarda istediğimiz sonuçları alamayız. Açık bir alanda Xbee Seri 1 modülünün
haberleşme mesafesi yaklaşık olarak 100 metredir.
Xbee modüllerinde farklı anten çeşitleri mevcuttur.Projede wire anten ve pcb anten
olmak üzere 2 farklı Maxstream Xbee 1 Serisi (1 mW) modülü kullanılmıştır.Bu modüller
haberleşme frekansı olarak 2.4 GHz frekans bandını kullanırlar.Önemli bir nokta ise Seri 1
modülleri ile diğer serilerin xbee modülleri ile haberleştiremeyiz. Çünkü kullanılan
protokolün farklılık göstermesinden dolayı haberleşme sağlanamıyor.
9
Özellikleri
3.3V @ 50mA
Veri Hızı: 250kbps
1mW çıkış (+0dBm)
Haberleşme Mesafesi: 100m (300ft)
Dahili Wire Anten
FCC (Federal Communications Commision ) sertifikası
6 adet 10-bit ADC (Analog to Dijital Converter ) giriş pini
8 adet dijital I/O pini
128-bit Şifreleme
Kapalı veya açık alan konfigürasyonu
AT ve API (Appilacition Programming Interface ) ayar komutları [2]
Şekil 4. Xbee Modülleri
Projede Şekil 4.deki 2 adet Maxstream Xbee 1 serisi modülleri kullanılmıştır.
Kullanılan modüllerden biri wire anten iken diğeri pcb antendir. İki modülün de çıkış gücü 1
mW dır. Xbee modülünü konfigure etmek için X-CTU programı kullanılmıştır. Xbee
modülünün bilgisayar ortamında konfigürasyonunun yapılabilmesi için Xbee Usb Explorer ve
10
mini usb kablo kullanılmıştır.
2.4. Xbee Usb Explorer
Bu modüller Xbee modüllerinin bilgisayar ile bağlantılarını gerçekleştirmek amacı ile
kullanılır.
Projede kullandığımız Xbee modülünün öncelikle konfigüre ayarlarının yapılması
gerekir. Konfigüre ayarları X-CTU programıyla gerçekleştirilir. Xbee modülünün bilgisayar
ile bağlantısının yapılabilmesi için Şekil 7.deki Xbee Usb Explorer kullanılmıştır.
Şekil 5. Xbee Explorer Usb
2.5. Mini Usb Kablo
İki birimin birbirleriyle bağlantısını gerçekleştirme amacı ile kullanılır.
Xbee Usb Explorer’a takılı olan xbee modülünü bilgisayarla bağlantısını
gerçekleştirebilmek için Mini Usb Kablo kullnılmıştır.
2.6. Xbee Breakout Board
Bu modüller ile Xbee modüllerinin mikroişlemciler ile haberleşmesini sağlarız. Xbee
modülünün pinlerinin direk kullanımına uygun olmaması sebebiyle xbee breakout boarda
ihtiyaç duyulmuştur. Entegre devresindeki haberleşme pinlerini 5 volttan 3.3 volta düşüren
11
buffer devresi mevcuttur. Bu devrenin bulunmasının sebebi ise Xbee modüllerinin 3.3 voltluk
besleme gerilimine ihtiyaç duymasıdır. Bu özellikleri sağlayan xbee breakout Şekil 6.da
görülmektedir.
Şekil 6. Xbee Breakout
2.7. Arduıno
Arduino, günlük hayattaki fiziksel parametrelerle etkileşim ve iletişimi sağlayan bir
araçtır. Arduino bir çok avantajının yanı sıra, en büyük avantajlarından biri olan açık kaynak
kod kullanması, son derece basit bir mikroişlemci devresine sahip olması ve bu sisteme sahip
devreyi de programlamamız için gerekli yazılım paketine sahip olması gibi avantajlara sahip
olan bir sistemdir. Arduino projeleri bir bilgisayara bağlantısı yapılıp çalıştırılabildiği gibi
kendi başlarına da çalışabilirler. Arduino nun bilgisayara bağlantısı ise USB arayüzü
vasıtasıyla yapılır. Bir sensörü arduino ile kontrol edip yazılımını bilgisayarda
programlayabiliriz. Arduino nun popüler olmasının en önemli sebeplerinden birisi açık
kaynak kod kullanmasıdır. Yani yazılan hiçbir kodun gizli olmaması ve rahatça bu kodlara
erişilebilmesinden kaynaklanmaktadır. Arduino üzerinde Atmega firmasının ürettiği 8 ve 32
bitlik mikrodenetleyicilerini (arduino due) bulundurur. Her kartta en az 5 voltluk regüle
entegresi ve 16 MHZ lik kristal osilatör bulunur. Analog ve dijital pinleri bulundurması
sebebiyle analog ve dijital verileri alıp işleyip kullanabilir. Arduino da wiring tabanlı kendine
has bir programlama dili kullanılır. Ancak bu programlama dili C++ ile çok benzer yapıda
12
olması arduinonun kolay anlaşılmasına katkı sağlamıştır. Mikrodenetleyicisinde Bootloader
yüklü halde geldiği için harici bir programlayıcıya ihtiyaç duymaz.
Bootloader: Arduino üzerindeki mikrodenetleyicinin EEPROM (Electronically
Erasable Programmable Read – Only Memory ) una yazılmış, harici bir programlama kartı
kullanmadan seri iletişim yoluyla yazdığımız kodları direkt mikrodenetleyicimize
yüklememizi sağlayan yazılımların genel adıdır.
Şekil 7. Arduino Uno R3
Projede Xbee den gelen verileri bilgisyar ortamında görüntüleyebilmemiz ve gerekli
hesaplamaları yapabilmemiz için Şekil 7.deki Arduino Uno R3 mikrodenetleyicisine
projemizde yer verilmiştir. Aynı zamanda Maxstream Xbee Seri 1 modülü ile xbee breakout
board modülünün beslemeleri arduino mikrodenetleyicisi tarafından sağlanmıştır. Projede
kullanılan gerekli yazılımlara projenin programlanması bölümünde detaylıca yer verilmiştir.
2.7.1. Neden Arduino
Diğer mikrodenetleyicilerle karşılaştıracak olursak; Kullanimi basittir. Programlamak
icin derin donanım bilgisi gerektirmez. Arduino programini yukledikten sonra tek ihtiyacimiz
olan şey bir adet USB kablosudur. Ucuzdur. Aynı zamanda maliyet arduino platformunun
geliştirilmesinin sebeplerindendir. Açık kaynak kodlu olması ve yazılımları özgürce
değiştirebilmemiz, platformun buna uygun olması Arduino’yu daha popüler hale getiriyor.
13
2.7.2. Arduino İle Neler Yapılabilir
Arduino’yu tasarlanmış diğer sistemler ile kolayca irtibata geçirebiliriz.
Arduino’nun geniş kütüphane desteği sayesinde mikroişlemcilerle haberleşmesini
sağlayabiliriz.
Analog ve dijital bilgileri, analog ve dijital giriş pinleri sayesinde kullanabiliriz.
Yani analog ve dijital bilgileri işlenmesi gereken projelerde kullanılabilir.
Arduinoya bağlanamayan hemen hemen hiçbir sensör tipi olmadığından, çoğu
sensor uygulamalarında çok rahat bir şekilde kullanılabilir. Bu sayede dış dünyaya
ışık, hareket, ses gibi sonuçlar sağlayabiliriz.
2.7.3. Arduino İle Neler Yapılamaz
Elektronik bilgimiz yeterli değilse bir şeyler yapmamız çok zordur. Hazır
örneklerden yararlanarak projeler gerçekleştirsek bile başarılı olmamız çok
düşüktür. Elektronik bilgimizin iyi olması gerekir.
Arduino ile projeler gerçekleştirmek için programlama bilgisine sahip olmamız
gerekir.
Arduino’nun çoğu modüllerinde gerçek zamanlı sinyal işleme, kameradan görüntü
aktarımı gibi detaylı bilgi içeren uygulamaları yapamayız. Ancak Arduino’nun son
zamanlarda geliştirmiş olduğu Arduino Due ile kısmen yapılabilir hale getirilmiştir.
2.8. Sensörler(Algılayıcılar)
İnsanoğlu çevresinde olup bitenleri duyu organları olan göz, burun, kulak, deri ve dil
ile algılar ve algıladığı şeye göre de tepkiler verir.Mesela akşam hava karardığını gözlerimizle
görürüz ve buna tepki olarak ışığı açarız.Hava soğuduğunu derimizle algılarız ve ısıtıcıyı
açarız.Fiziksel hayattaki insanların bu etki-tepki ilişkisini elektriksel düzen de sensörler
karşılamaktadır.
Günümüzde hava karardığında otomatik olarak yanan ışıklar, ortam sıcaklığına göre
kendiliğinden devreye giren ısıtıcılar veya soğutucular gibi birçok uygulamalardan
bahsedebiliriz. İşte bu fiziksel büyüklükleri (ısı, nem, ışık, ses, hareket, basınç vb.) bizim
yerimize algılayan ve duyu organlarımızın görevini üstlenen cihazları sensörler diye
adlandırırız. Yani özetle sensörleri otomatik kontrol sistemlerinin duyu organları olarak
nitelendirebiliriz.
14
2.8.1. Sensörler Ne İşe Yarar
Fiziksel ortam ile endüstriyel amaçlı elektronik cihazları birbirine bağlayan bir
köprü görevi görürler.
Durum bilgisi vermezler.
Sensörlerden sadece elektrik sinyalleri alabiliriz.
Alınan bu bilgilerin anlamlı bir hale gelebilmesi için işlenmesi gerekir.
2.8.2. Sensörlerin Bulunduğu Bir Sistemde Olması Gerekenler
Algılanacak bir malzeme olması gerekir.
Algılanacak olan malzemede sensörün görevini yapabilmesi için bir işaret olması
gerekir.(elektrik, ışık, sıcaklık vb.)
Algılanacak bu işaretin, anlaşılabilir verilere dönüştürebilen çıkış işareti olması
gerekir.(gerilim, direnç, akım vb.)
Sonuçları değerlendiren bir kaydedici bulunması gerekir.
2.8.3. Sensör Parametreleri
Hassasiyet
Doğrusallık
Ölçme aralığı
Cevap verme zamanı
Doğruluk
Tekrarlanabilirlik
Rezulasyon
Çıkış özelliği
Gerçeklik
15
2.8.4. Sensörlerin Avantajları
Güvenlik
Küçük kablo boyutu ve ağırlığı
Elektromanyetik girişimden etkilenmemesi
Pasif radyo frekansı
Düşük termal ve atalet kütlesi
2.8.5. Sensörlerin Dezavantajları
Küçük sensör boyutu
Radyasyon hassasiyeti
Güç transferi
Kolay kırılma
Optik elemanların küçük skalası
Sınırlı optik bant genişliği
Maliyet
2.8.6. Sensörlerin Sınıflandırılması
2.8.6.1. Giriş Büyüklüklerine Göre Sensörler
Mekanik: uzunluk, alan, miktar vb.
Termal: sıcaklık, ısı akısı vb.
Elektriksel: voltaj, akım, direnç, frekans vb.
Manyetik: akı yoğunluğu geçirgenlik vb.
Işıma: yoğunluk, dalga boyu, faz vb.
Kimyasal: içerik, yoğunlaşma, reaksiyon hızı, Ph vb.
2.8.6.2. Çıkış Büyüklüklerine Göre Sensörler
Dijital sensörler
Analog sensörler
16
2.8.6.3. Besleme İhtiyacına Göre Sensörler
Pasif Sensörler: Hiçbir şekilde dışarıdan enerji almadan fiziksel ya da kimyasal
büyüklüğü bir başka büyüklüğe çeviren sensörlerdir.
Aktif Sensörler: Çalışmaları için harici olarak enerji kaynağına ihtiyaç duyarlar. Bu
sensörler tipik olarak zayıf sinyalleri ölçmede kullanılırlar. Aktif sensörlerde dikkat edilmesi
gereken en önemli nokta giriş ve çıkışlardır.Bu tip sensörler analog ya da dijital formda çıkış
sinyalleri üretirler.
2.8.7. Sensör Çeşitleri
Isı sensörleri
Optik sensörler
Işık sensörleri
Sıcaklık sensörleri
Basınç sensörleri
Akım sensörleri
Nem sensörü
Renk sensörü
Titreşim sensörü
Cisim algılama sensörleri
Çizgi sensörleri
Ateş algılayıcı sensörler
Gaz sensörleri
Hareket sensörleri
Gerilim sensörleri
Kuvvet sensörleri
17
2.8.8. Akım Sensörleri
Şekil 8. ACS 714 Akım Sensörü
Elektrik tüketiminin olduğu bölgeye bağlantısı yapıldığında akım miktarını ölçebilen
elemanlardır. Hem doğru akımı hemde alternatif akımı ölçebilen çeşitleri mevcuttur.
Akım sensörlerinden ACS serileri küçük boyutlu olması, son derece kolay kullanıma
sahip olması, çift yönlü akım ölçümü için ekstra bir şey gerektirmemesi gibi avantajlarından
dolayı popüler olarak kullanılmaktadır. Şekil 8. deki ACS 714 akım sensörü yukarıda
anlattığımız avantajlara sahiptir. Aynı zamanda ACS serilerinin üreticisi akım ölme işlemini
sadece VCC, GND, VIOUT pinlerinin bağlantıları yapılarak çıkışta gerilim okuyabilecek
seviyeye kadar basitleştirmişlerdir.
Şekil 9. ACS 714’ün yapısı [3]
18
Şekil 10. Çıkış voltajına karşılık gelen akım değerleri [3]
Şekil 9. da filtre çıkışındaki CF(1nF) kapasitesi filtre kondansatörü olarak kullanılır.
Sensör çıkışında daima gürültü olacaktır bu gürültü değerini azaltmak için CF kapasitörünü
kullanırız. Bu sayede sensörümüzün çözünürlük değerini de artırmış oluruz. CF kapasitörünü
arttırırken AC (Alternating Current) ya da DC(Direct Current ) ölçüm yapmak önemli bir
noktadır. Eğer AC ölçüm yapıyorsak kapasite değerini datasheet de belirtilen bilgiler
dahilinde arttırmalıyız. Çünkü kapasite değerini arttırmak bant genişliğini ciddi şekilde
azaltıyor. Bant genişliğinin azalması ise sensörün cevap verme süresini etkilediğinden dolayı
filtre çıkışındaki kapasite değerine dikkat edilmelidir. Eğer DC ölçüm yapıyorsak CF değerini
rahatlıkla artırabiliriz. Böylece sensör çıkışında gürültü oranı düşecek ve çözünürlük
artacaktır.
Sensörün çıkış pini olan VIOUT’u çok hassas bir ölçüm yapmamaız gerekmediği
sürece kullanacağımız mikroişlemcinin ADC pinine direk giriş yapabiliriz.
Şekil 10. daki grafiktende görüldüğü gibi sensörün algıladığı akımın çıkışta hangi
gerlime karşılık geldiğini belirleyebiliriz. Kullanıdğımız sensörün avantajlarından bir tanesi
ise grafikten de görüldüğü gibi lineer bir çalışma bölgesine sahip olmasıdır. Sensör hem (-)
hem de (+) ölçüm yapabildiğinden dolayı bir ofset gerilimine ihtiyaç duyulur. Çalışma voltajı
5 volt olduğundan dolayı 2,5 volt ofset gerilimi olarak belirlenmiştir. Pozitif değerlerde 2,5
voltun üzerinde, negatif değerlerde ise 2,5 voltun altında gerilim değerleri okuruz. Sensörün
besleme gerilimini 0,1 µF ile topraklamamızın sebebi besleme geriliminde oluşacak gürültüyü
by-pass etmek içindir.
19
3.TASARIM
Tasarlanan bu proje temel olarak sensör, kablosuz haberleşme modülü ve
mikrodenetleyici olmak üzere üç kısımdan oluşmaktadır.
3.1. Projenin Gerçekleştirilmesi
Projede yükten geçen akım, akım sensörü ile algılanmıştır. Akım sensörünün çıkışında
elde ettiğimiz analog değerlerinin xbee modülüne gönderilmesi için xbee müdülünün ADC si
kullanılmıştır. ADC ye gelen veriler uzak bir noktadaki diğer xbee modülüne iletilmesi için
kablosuz haberleşme ayarları yapılmıştır. Uzak noktadaki xbee den değerlerin bilgisyarda
görüntülenmesi için Arduino mikrodenetleyicisi kullanılmıştır. Yani uzak bir noktadaki
sensör bilgilerinin kablosuz haberleşme protokolü kullanılarak bilgisayar ortamında
görüntülenmesi gerçekleştirilmiştir. Bu sistemin tasarlanmış hali Şekil 11. de görülmektedir.
Bu işlemlerin nasıl yapıldığını adım adım inceleyecek olursak;
Şekil 11. Projenin Gerçekleştirilmiş Hali
20
3.2. Adım 1: Xbee Modüllerinin Konfigurasyonu
Xbee modüllerinin konfigüre ayarlarının yapılabilmesi için yazılım programı
kullanmak gerekir. Biz projemizde konfigüre ayarlarını iki farklı şekilde gerçekleştirdik.
Öncelikle grafik arayüz olarak X- CTU yazılımı kullanılmıştır. X – CTU yazılımının xbee
modülünü tanıyabilmesi için öncelikle select com port bölümünden xbeenin bulunduğu port
seçilmelidir. Daha sonra Read butonu ile xbeenin fabrika ayarları X – CTU yazılımına
yüklenmiştir. Böylece xbee modülü X- CTU yazılımında konfigüre edilebilir hale
getirilmiştir. Konfigure ayarında ilk adım olarak baud, data hızı belirlenmiştir. Daha sonra
xbeelerin haberleşebileceği ortak bir PAN ID (Personal Area Network ) adresi atanmıştır. İki
xbee modülüne de aynı değer atandığı için haberleşmeyi bu ortak kanal üzerinden
gerçekleştirirler. Aynı zamanda bu haberleşmenin geçekleşmesi için iki xbee modülünde de
aynı baud değerleri girilmesi gerekir. Xbee modüllerinden bir tanesi END DEVİCE, diğeri ise
COORDİNATOR olarak belirlenmiştir. Bunu belirleyebilmek için ise Coordinator Enable
(CE) komutu kullanılmıştır. CE değeri bir olan xbee koordinatör olarak atanır. CE değeri sıfır
olan xbee ise sonlandırıcı cihaz End Device olarak atanır. Xbee modüllerinin birbirlerine veri
gönderebilmeleri için destination address (DH & DL ) değerlerinin belirlenmesi gerekir.
Bunun içinde en yüksek en düşük bit aralığını belirlenmesi gerekir. Koordinatör cihazın hem
veri alıp hem de veri göndermesi için DH adresinin 0x0000 – 0xFFFF aralığında olması
gerekirken End Device ise sadece koordinatöre veri göndereceğinden dolayı aralık 0x0000 –
0x0000 şeklinde olmalıdır. Aynı zamanda her xbeenin kendine has 16 bitlik kaynak adresini
de belirlememiz gerekir. Aslında bu adres xbee de tanımlıdır. Bunu belirlemek için MY (16-
bit Source Adress ) komutu kullanılır. Xbeeleri birbirleriyle haberleştirmenin yollarından bir
tanesi de aslında budur. Koordinatör cihazın MY adresini Son Cihaza, Son Cihazın MY adresi
neyse koordinatöre girdiğimizde sadece birbirleriyle veri alışverişi yapmasını sağlamış oluruz.
Konfigure ayarlarında en önemli noktalardan bir tanesi ise sonlandırıcı cihazı AT komutlarla
konfigüre ederken, koordinatör cihazı API yetkilendirilmesi aktifleştirip konfigürasyonunu
yapılmıştır. Bunun sebebi ise burada haberleşmeyi yapan cihazın koordinatör olması ve
haberleşmenin gerçekleştirilmesi için de API yetkilendirilmesi aktif olması gerektiğindendir.
Sensördeki analog bilgiler sonlandırıcı cihaz tarafından okunacağından dolayı
sonlandırıcı cihazın D0 pini ADC olarak seçilmiştir. ADC olarak seçilmesinin sebebi ise
haberleşme dijital datalarla gerçekleştirilir. Senörden alınan analog verilerin xbee de dijitale
dönüştürülmesi gerektiğinden dolayı D0 pini adc olarak belirlenmiştir. Bilgisayarda
görüntüleyeceğimiz verilerin ölçüm aralığını belirlemek için sample rate ayarı yapılmıştır.
21
Sample rate 100ms (64 hex) olarak belirlenmiştir. Yani ekranda 0,1 saniye aralıklarla ölçüm
sonucu gösterilmiştir. Böylece konfigüre ayarlarımız bitmiştir. X-CTU yazılımındaki Write
butonuyla gerekli ayarlar xbeeye kaydedilmiştir.
Yukarıdaki konfigürasyon ayarlarını yapmanın bir diğer yolu ise terminal arayüzü
kullanmaktır. Bunun için ise CoolTerm programı kullanılmıştır. Projemizde CoolTerm
programı ile konfigürasyonu terminal arayüzünde AT komutları ile gerçekleştirdik. Her AT
komutundan sonra OK cevabını almamız gerekir. Bu cevabı aldığımızda girmiş olduğumuz
değerleri xbee tarafından kabul edildiğini anlarız. Arayüzde kullanılan AT komutlarından
bahsedecek olursak;
İlk olarak son cihazın konfigüre ayarları yapılmıştır.
+++» Bu komut terminal arayüzünü konfigürasyona hazırlar.
ATRE » Bu komut xbeeyi fabrika ayarlarına yükler.
ATMY1234 » Bu komutta son cihazın kimlik adresi belirlenmiştir.
ATDL5678 » Bu komutta koordinatörün kimlik adresi girilmiştir.
ATDH0 » Bu komutta destination high adresi belirlenmiştir.
ATID0 » Bu komutta ID adresleri atanmıştır.
ATD02 » Bu komutta D0 pini adc olarak belirlenmiştir.
ATIR64» Bu komutta sample rate 0,1 saniye olarak belirlenmiştir.
ATWR » Bu komutta konfigürasyon ayarları xbee ye yüklenmiştir.
Daha sonra koordinatör cihazın konfigüre ayarları yapılmıştır.
+++
ATRE
ATMY5678 » Bu komutta koordinatörün kimlik adresi belirlenmiştir.
ATDL1234 » Bu komutta son cihazın kimlik bilgileri girilmiştir.
22
ATDH0
ATID0
ATWR
Böylece terminal arayüzü ile de konfigürasyon ayarları gerçekleştirilmiştir.
3.3. Adım 2: Projede Akım Sensörünün Kullanılması
Akım sensörümüz 5 voltluk besleme ile çalışmaktadır. Bu beslemem voltajı arduino
tarafından sağlanmıştır. Sensör girişinde algıladığı akım değerlerini çıkışa volt olarak
yansıtmaktadır. Biz projede çıkışta yine akım gözlemlemek istediğimiz için bir takım
hesaplamalar yapılmıştır. Aynı zamanda sensörden verileri alacak modül olan xbee 10 bitlik
bir adc ye sahiptir. Veriler bit bit iletileceğinden dolayı kullanılan modülü kaç bitlik olduğu
bilmek önemlidir. Her bir bitin kaç volta karşılık geldiğini hesaplamak gerekir.
5 volt = 5000 mV
bit (1)
(Okunan değer) x 5000 mV / 1023 = (VIOUT) mV (2)
(2) denklemindende girşteki akımı çıkışta kaç volta karşılık geldiği belirlenir. Bu
değerleri akım olarak gözlemlemek için (3) denklemini kullanırız.
Akım= (VIOUT – 2500) / 0.2 miliamper (3)
Bu denklem akım sensörünün karakteristik eğrisine bakılarak elde edilmiştir. 2,5 volt
ofset gerilimi olarak belirlenmiştir. Bu işlemler xbeenin adc sinde yapılamaz. Adc sadece
sensörden okuma yapmıştır. Bu işlemler arduino mikrodenetleyicisinin program arayüzünde
yapılmıştır. Xbeenin akım sensöründen okuma yapabilmesi için sensörün VIOUT çıkışı
xbeenin D0 pinine bağlanmıştır. Sensörümüze yük olarak bağladığımız eleman 6 wattlık
leddir. Uygulamalarımızda farklı farklı yükler denenmiştir.
23
3.4. Adım 3: Arduino Mikrodenetleyicisi İle Gerekli Yazılmın Gerçekleştirilmesi
Koordinatör xbeedeki verileri bilgisayar ortamında görüntüleyebilmek ve gerekli
hesaplamaların yapılabilmesi için Arduino mikrodenetleyicisi kullanılmıştır. Öyleki
koordinatör xbeedeki veriler dijital bilgilerdir. Bizim bilgisayar ortamında görüntülemek
istediğimiz veriler ise analog veriler olduğundan arduino arayüzünde bir takım programsal
dönüşümlerle akım değerleri analog olarak gösterilmiştir. Aynı zamanda xbee modülü ile
arduino mikrodenetleyicisinin haberleşebilmesi için yani bilgi alışverişi yapabilmesi için
arduinonun TX ve RX pinleri kullanılmıştır. Bu haberleşmeyi ise arduino USART (Universal
Synchronous Asynchronous Receiver Transmitter ) haberleşmesi özelliği sayesinde
gerçekleştirmiştir. Aynı zamanda önemli noktalardan bir tanesi ise arduinoda baud hızı olarak
9600 seçilmiştir. Bunun sebebi ise xbeeleri 9600 baud hızında haberleştirmemiz ve bu
haberleşmeyide arduinonun okuyabilmesi için aynı baud hızına sahip olması gerektiğindendir.
Yani özetle haberleşmedeki tüm modüller aynı veri iletim hızına sahip olmaı gerekir.
Devredeki bütün modülleri beslemesi olan 5 voltluk gerilim arduino tarafından sağlanmıştır.
Arduinoda kullandığımız yazılımı açıklayacak olursak;
float akim;
void setup()
Serial.begin(9600);
configureRadio();
;
boolean configureRadio()
Serial.flush();
Serial.print("+++");
delay(1000);
String ok_response="OK\r" ;
String response=String("") ;
while (response.length() < ok_response.length())
if(Serial.available() > 0 )
response += (char) Serial.read();
if (response.equals(ok_response))
Serial.print("ATAP1\r");
delay(1000);
Serial.print("ATCN\r");
24
return true;
else
return false;
void loop()
if(Serial.available() >=14)
if (Serial.read() == 0x7E)
for (int i = 0; i<10; i++)
byte discardByte=Serial.read();
int analogHigh = Serial.read();
int analogLow= Serial.read();
int analogValue = analogLow + (analogHigh * 256); [4]
akim= analogValue/1023.0 *5000;
akim= akim-2500;
akim= akim/0.2;
Serial.print(akim);
Serial.println("miliamper");
Okuyacağımız akım değerleri tam sayı olmayacağından dolayı akım değişkemini float
olarak tanımladık. Serial.begin(9600) komutu ile haberleşmeyi başlattık. configureRadio()
komutu ile koordinatör xbeenin API modda konfigürasyon değişkenini atadık. Programda
void loop kısmına kadar olan kısım daha önce anlatmış olduğumuz API konfigürasyonu ile
ilgili ayarlamalarıdır. if(Serial.available() >=14) bu komut ile sisteme veri gelip gelmediğini
anlıyoruz. Eğer veri gelmişse if (Serial.read() == 0x7E) bu komut ile gelen verinin başlangıç
değeri olan 0x7E değeri ile karşılaştırılması yapılıyor. Daha sonra 10 defa artık bayt gelip
gelmediği test ediliyor. int analogHigh = Serial.read() ve int analogLow= Serial.read()
komutları ile gelen dataların en anlamlı ve en anlamsız bit aralığı belirlenir. Daha sonra bu
değer 256 bit aralıklarla gösterilir. Programlamanın son kısmında ise dijital dataları ekranda
akım değeri olarak gösterilmesi için gerkli hesaplamalar yapılmıştır.
25
4. SONUÇLAR
Gerçekleştirdiğimiz projede yükü 12 voltluk gerilimle beslediğimizde sensör
çıkışında 2.6 volt ampermetre ile ölçülüp gözlemlenmiştir. Ampermetre ile ölçüm
yapmamızın sebebi bilgisayar ortamında görüntülediğimiz akım değeri ile aynı olup
olmadığını test etmektir. Nitekim bilgisayarda görüntülediğimiz akım değeri 0,52 amper
olarak gözlemlenmiştir. Xbeenin adc den okuma yaptığını daha net görüntülemek için
sensörün çıkışına 10 kΩ luk potansiyometre bağlanmıştır. Akım değerleri değişimi
bilgisayarda görüntülenmiştir.
Sonuç olarak bir noktadaki bilgilerin kablosuz haberleşme yardımıyla uzak bir noktaya
iletme konusunda yeterli bilgiye sahip olunmuştur.
26
5. YORUMLAR VE DEĞERLENDİRME
Yapmış olduğumuz çalışmalar sonrasında edinmiş olduğumuz tecrübelerden
bahsedecek olursak;
Öncelikle çalıştığımız modüller çok hassas devreler olduğundan ve küçük besleme
gerilimleriyle çalıştığından dolayı bu modüllerin akım ve gerilim kontrollerinin çok iyi bir
şekilde yapılması gerektiği sonucuna vardık. Öyle ki akım sensörünün çıkışına direkt xbee
modülünün adc pinine bağladığımızda fazla akım gitmiştir ve xbee modülü yanmıştır. Daha
sonraki uygulamamızda buna çözüm olarak sensörün çıkışına paralel olarak yüksek bir direnç
bağlantısı yapılmıştır. Devrede akan akım direnç üzerinden sağlanırken besleme ise sorunsuz
bir şekilde xbee ye gönderilmiştir. Board üzerinde çalışma yapmanın pek sağlıklı olmadığı
görülmüştür. Ciddi anlamda temassızlık problemi yaşanmıştır. En önemli noktalardan bir
tanesi ise xbeelerin haberleşmesini sağlamak için gerekli olan konfigürasyon ayarlarının çok
önemli olması ve bu önemli bilgiler hakkında geniş bilgiye sahip olunmadığı takdirde
haberleşmenin gerçekleştirilemediği görülmüştür. Xbee modülleri ile yapılan projelerde seri 2
modüllerinin daha çok kullanılması, daha çok kaynak bulunması ve daha geliştirilmiş bir
modül olması sebebiyle seri 2 modüllerini kullanmanızı öneririz. İnternettte her ne kadar seri
1 i kullanmak daha basit ve kolay tarzında ifadeler geçse de yapılan uygulama yetersizliği ve
kaynakların az olması sebebiyle seri 1 i kullanmak daha zordur.
Projemizde amaçlanan ölçüm ve iletim gerçekleştirilmiş olup, istenildiği takdirde daha
farklı sensör uygulamalarında projeye dahil edilebilir. Fakat her sensör için bir xbee modül
kullanmak gerektiğini düşünürsek ve modüllerin de fiyatlarının ucuz olmaması sebebiyle
projemizde farklı sensör uygulamalarına yer verilememiştir.
27
KAYNAKLAR
[1]. O. Arslan. “ZIGBEE ile Bina İçi Güvenlik Otomasyon Sistemi” Bitirme
Ödevi/İstanbul Teknik Üniversitesi Elektronik Mühendisliği, Mayıs, 2009.
[2]. “XBee / XBee-PRO RF Modules data sheet,” Digi International Inc. ,
Minnetonka, Canada.
[3]. “ACS 714 data sheet,” Allegro MicroSystems Inc. , Worcester, Massachuselts.
[4]. M. Margolis “Arduino Cookbook ” Firs Edition, Chapter 14, Mart 2011.
28
STANDARTLAR VE KISITLAR FORMU
Tasarım Projenizin hazırlanmasında Standart ve Kısıtlarla ilgili olarak, aşağıdaki
soruları cevaplayınız.
1.Projenizin tasarım boyutu nedir? Açıklayınız.
Projemizde kablosuz haberleşme yapılarak veri iletimi sağlanmıştır; model
boyutlarında tasarlanmıştır.
2.Projenizde bir mühendislik problemini kendiniz formüle edip, çözdünüz mü?
Bu projede; Arduino yazılımı yazılırken kullandığımız adc ve akım sensörüne göre
akım değerlerini hesaplattıracak formülasyonlar yapılmıştır.
3.Önceki derslerde edindiğiniz hangi bilgi ve becerileri kullandınız?
Başta mikroişlemciler olmak üzere; elektronik 1, elektronik 2, sinyaller ve sistemler,
sayısal işaret işleme ve tüm laboratuar derslerinde edindiğimiz bilgi ve becerilerden
yararlandık.
4.Kullandığınız veya dikkate aldığınız mühendislik standartları nelerdir?
Kablosuz haberleşme modüllerinde IEEE 802.15.4 ağ protokolü kullanılmıştır.
5.Kullandığınız veya dikkate aldığınız gerçekçi kısıtlar nelerdir?
a) Ekonomi
En ucuz maliyet ile maksimum verim alınabilecek bir sistem tasarımı yapılmaya
çalışılmıştır.
b) Çevre Sorunları:
Bu projede çevreye zarar verebilecek herhangi bir nükleer, kimyasal vb. bir etkisi
olmadığından olumsuz bir etki yapacak bir durum söz konusu değildir.
c) Üretilebilirlik
29
Düşük güç tüketimi ve geliştirilebilir bir sistem olmasıyla birlikte bazı eklentilerle seri
üretim yapılması uygundur.
e) Etik:
Projenin tasarımında hiçbir etik kısıtlama yapılmamıştır.
f) Sağlık:
Projemizin bu aşamada sağlık ile ilgili bir kısmı yoktur ama geliştirilmesi halinde
insan sağlığını tehlikeye sokabilecek durumlardan korunmamızı sağlar.
g) Güvenlik:
Akım sensörü ve xbee lerde 5 volt besleme gerilimi kullanılmıştır. Akım sensöründen
de çok yüksek akımlar çekmeye çalışmadığımız sürece insane güvenliği için bir tehlike
yoktur.
h) Sosyal ve politik sorunlar:
Ülkemizdeki varolan sistemleri geliştirmek ve teklonojiden maksimum verimde
yararlanılması hedeflenerek ülkemizde bu uygulamaların geliştirilmesi amaçlanmıştır.
30
EKLER
EK-1. IEEE Etik Kuralları
Mühendisler İçin Etik Kuralları
Code of Ethics for Engineers
Etik kuralları ile ilgili faydalı web adresleri
IEEE Code Of Ethics
http://www.ieee.org/abaut/corporate/governance/p7-8.html
NSPE Code of Ethics for Engineers
http://courses.cs.vt.edu/profesionalism/WorldCodes/ASCE.html
Engineering Ethics BY DENISE NGUYEN
http://sites.tufts.edu/eeseniordesignhandbook/2013/engineering-ethics-2/
Code Of Ethics of Profeional Engineers Ontario
http://www.engineering.uottawa.ca/en/en/regulations
Bir kitap:
What Every Engineer Shoul Know abaut Ethics
Yazar:Keeneth K.Humphreys
CRC Press
EMO –Elektrik Mühendisleri Odası
Etik Kütüphanesi
http://www.emo.org.tr/genel
/bizden_detay.php?kod=50871&tipi=46&sube=0#.U1QfyVV_tjs
31
Etik Kuralları
IEEE Code of Ethics
Ieee üyeleri olarak bizler bütün dünya üzerinde teknolojilerimizin hayat standartlarını
etkilemesindeki önemin farkındayız. Mesleğimize karşı şahsi sorumluluğumuzu Kabul ederek
, hizmet ettiğimiz toplumlara ve üyelerine en yüksek etik ve mesleki davranışta bulunmayı
söz verdiğmizi ve aşağıdaki etik kuralları Kabul ettiğimizi ifade ederiz.
1. Kamu güvenliği, sağlığı ve refahı ile uyumlu kararlar vermenin sorumluluğunu
Kabul etmek ve kamu veya çevreyi tehdit edebilecek faktörleri derhal açıklamak;
2. Mümkün olabilecek çıkar çatışması, iter gerçekten var olması isterse sadece algı
olması, durumlarından kaçınmak. Çıkar çatışması olması durumunda, etkilenen
taraflara durumu bildirmek;
3. Mevcut verilere dayalı tahminlerde ve fikir beyan etmelerde gerçekçi ve dürüst
olmak;
4. Her türlü rüşveri reddetmek;
5. Münasip uygulamalarını ve muhtemel onuçlarını gözeterek teknoloji anlayışını
geliştirmek;
6. Teknik yeterliliklerimizi sürdürmek ve geliştirmek, yeterli eğitim veya tecrübe
olması veya işin zorluk sınırlarını ifade edilmesi durumunda ancak başkaları için
teknolojik sorumlulukları üstlenmek;
7. Teknik bir çalışma hakkında yansız bir eleştri için uğraşmak, eleştriyi Kabul etmek
ve eleştriyi yapmak; hataları Kabul etmek ve düzeltmek; diğer katkı sunanların
emeklerini ifade etmek;
8. Bütün kişilere adilane davranamak; ırk, din, cinsiyet, yaş milliyet, cinsi tercihi
cinsiyet kimliğii veya cinsiyet ifadesi üzerinden ayrımcılık yapma durumuna
girişmemek ;
9. Yanlış veya kötü amaçlı eylemler sonucu kimsenin yaralanması, mülklerinin zarar
görmesi itibarlarının veya istihdamlarının zedelenmesi durumlarının oluşmaından
kaçınmak;10.Meslektaşlara ve yardımcı personele mesleki gelimlerinde yardımcı
olmak ve onları desteklemek
32
IEEE Code of Ethics
We, the members of the IEEE, in recognition of the importance of our technologies in
affecting the quality of life throughout the world, and in accepting a personal obligation to our
profession, its members and the communities we serve, do hereby commit ourselves to the
highest ethical and professional conduct and agree:
1.to accept responsibility in making engineering decisions consistent with the safety,
health and welfare of the public, and to disclose promptly factors that might endanger the
public pr the environment;
2.to avoid real or perceived conflicts of interest whenever possible, and to disclose
them to affected parties when they do exist;
3.to be honest and realistic in stating claims or estimates based on available data;
4.to reject bribery in all its forms;
5.to improve the understanding of technology, its appropriate application, and
potential consequences;
6.to maintain and improve our technical competence and to undertake technological
tasks for others only if qualified by training or experience, or after full disclosure of pertinent
limitations;
7.to seek, accept, and offer honest criticism of technical work, to acknowledge and
correct errors, and to credit properly the contributions of others;
8.to treat fairly all persons regardless of such factors as race, religion, gender,
disability, age, or national origin;
9.to avoid injuring others, their property, reputation, or employment by false or
malicious action;
10. to assist colleagues and co-workers in their professional development and to
support them in following this code of ethics.
Approved by IEEE Board of Directions
Agust 1990
Ieee-ies.org/resources/media/about/history/ieee_codeofethics.pd
33
EK-2. Disiplinlerarası Çalışma
Projeyi aldığımızda akım sensörünün nasıl kullanılacağı hakkında bilgimiz yoktu.
Gerekli araştırmalar sonrasında hangi akım sensörünü almamız gerektiği belirlenmiştir.
Yapmış olduğumuz uygulamalarda akım sensöründen çıkış elde edilememiştir. Bu konuda
Trabzon Çözüm Mühendislik ile irtibata geçilmiştir. Bilgi alışverişinde bulunulmuştur. Aynı
zamanda Xbee lerin haberleşmesi konusunda Sayın Doç.Dr.İsmail Kaya ile bilgi alışverşinde
bulunulmuştur. Projemizde gerekli lehim, kaynak ve diğer işlemler Ktü Elektronik
Laboratuarında yapılmıştır.
34
EK-3. Çizelge 1 Mali Analiz
MALZEME ÇİZELGESİ
MALZEMELER MALZEME
ADEDİ
BİRİM FİYATI FİYAT
Arduino Uno R3 1 60TL 60TL
Xbee Usb Explorer 2 80TL 160TL
Mini Usb Kablo 2 8TL 16TL
Breadboard 2 4TL 8TL
ACS 714 akım
sensörü
1 15TL 15TL
Xbee Breakout 2 25TL 50TL
Maxstream Xbee 1
serisi modülleri
3 70TL 210TL
Jumper kablolar,
direnç seti, bağlantı
kabloları
1 15TL 15TL
A’dan B’ye USB
kablo
1 6TL 6TL
TOPLAM 540TL
35
ÖZGEÇMİŞ
Uğur TAŞKINER, 18 Temmuz 1991’ de Balıkesir’de doğdu. İlkokul ve ortaokulu
Ayvalık Atatürk İlköğretim okulunda liseyi Ayvalık Rahim Usta Lisesi’nde tamamlayıp,
Eylül 2010’da Karadeniz Teknik Üniveritesi Elektrik Elektronik Mühendisliği lisans
programına başladı. Halen Karadeniz Teknik Üniveritesi’nde öğrenimine devam etmektedir.
Anıl AKÇAKAYA, 18 Kasım 1990 tarihinde Gaziantep’in Şehitkamil ilçesinde
doğdu. İlköğretimi Galip Deniz İlköğretim Okulunda liseyi Hasan Ali Yücel lisesinde
tamamlayıp, Eylül 2010’da Karadeniz Teknik Üniversitesi Elektrik Elektronik Mühendisliği
lisans programına başladı. Halen Karadeniz Teknik Üniversitesi’nde öğrenimine devam
etmektedir.