Akıllı şehirler ankara'da akıllı ulaşım sistemleri
Arduino'nun kablosuz haberleşme teknolojisinde kullanılması ve Mini Akıllı Ev Uygulaması
1. ARDUINO’NUN KABLOSUZ HABERLEŞME
TEKNOLOJİSİNDE KULLLANIMI
Ve
MİNİ AKILLI EV UYGULAMASI
HAZİRAN 2014
Resul Rıza DOLANER
ÖZET
Günümüzde gömülü sistemler yaygınlaşmış, bir çok uygulamanın içerisinde yerlerini almışlardır.
Yapılmak istenen projeler de daha pratik, daha ucuz ve daha küçük boyutlu cihazlara gereksinim
artmıştır. Bunun yanında Amerika’yı bir daha keşfetmemek için hali hazırda olan, açık kaynak kodlu
yazılımlar gibi, açık kaynak geliştirme kartlarına ihtiyaç duyulmuş ve kullanıcının ihtiyacına göre
tasarlayabileceği, zaman kaybını önleyerek bir üst basamaktan işleme başlayabileceği geliştirme
kartlarına ihtiyaç duyulmuştur.
Bu cihazların aranılan niteliklerin arasına, gelişen teknoloji ile beraber kablosuz haberleşme
teknolojileri ile entegre olması eklenmiştir. Bunun için Arduino, Raspberry Pi, Beaglebone Black,
Spark Core gibi hızlı, akıllı, küçük, maliyeti ucuz ve kullanımı kolay geliştirme kartlarına ihtiyaç
duyulmaktadır.
ANAHTAR KELİMELER
Arduino, Geliştirme kartı, Kablosuz haberleşme, Bluetooth, RF, Infrared, Wireless, Akıllı Ev, Android
1. GİRİŞ
Hızla gelişmeye devam eden teknoloji ile
beraber, bu hızı yakalayabilmek için hızlı
geliştirme araçları da beraberinde gelmiştir.
Bunlardan biride geliştirme kartlarıdır.
Geliştirme kartları, bilgisayar ordamında
kolayca programlanabilen, yazılan işlemleri
işleyebilecek kapasite ve işlemciye sahip
fiziksel programlama cihazlarıdır.
Yazılım dünyasında Amerika’yı
yeniden keşfetmek deyimi vardır. Bir şeyi
sıfırdan icat etmekten ise zamandan tasarruf
edip icat edileni kullanıp, daha kullanışlı, daha
ucuz ve daha faydalı ürünler keşfedersin. Açık
kaynak geliştirme kartlarıda bunun gibidir.
Yeniden devreyi tasarlamak yerine hazır
oluşturulmuş bir devre üzerinden istediğin
uygulamayı en kısa sürede yapabilir. Daha
sonra kullanmadığın kısımları eleyip yeni bir
tasarım, bir devre oluşturabilmene imkan kılar.
Arduino’da bize bu imkanı sağlayan
geliştirme kartlarından biridir. Yapılan
çalışmada, Arduino ile ilgili bilgi verilerek,
Arduino ailesine göz atılacaktır ve yeni
kablosuz haberleşme teknoloji ile kullanımına
değinilecektir. En son olarak bu teknoloji ile
yapılmış bir örnek anlatılacaktır.
2. ARDUİNO
2.1.Arduino Nedir?
Arduino İtalyan elektronik mühendisleri
tarafından açık kaynak kodlu geliştirilen,
isteyen herkesin baskı devreleri indirerek kendi
devrelerini basabilecekleri dilerlerse şık bir
görüntüye sahip hazır basılmış ve bileşenleri
2. yerleştirilmiş halde alabilecekleri, esnek, kolay
kullanımlı donanım ve yazılım tabanlı bir
elektronik prototip platformudur.
Arduino geliştirme kartı üzerindeki
mikrodenetleyici
(AtmegaXX), Arduino programlama dili
(wiring tabanlı) ile programlanır ve bu
program Processing tabanlı Arduino Yazılım
Geliştirme Ortamı (IDE) yardımı ile karta
yüklenir.
Arduino’nun kullandığı dilden bahsedicek
olursak, kullandığı dil oldukça basittir, çok
temel bir C bilgisi ile usb üzerinden direkt
olarak mikrodenetleyicimizi
programlayabiliyoruz ve gerçek zamanlı
uygulamalar çalıştırabiliyoruz. Programlama
yaparken java üzerine yazılmış güzel, sade bir
o kadarda akıllı bir editör tasarlanmıştır.
Mikrodenetleyiciye önceden bir bootloader
programı yazılı olduğundan programlama için
harici bir programlayıcıya ihtiyaç
duyulmamaktadır.
2.2.Arduino ile Neler Yapılabilir?
Kolay bir şekilde çevresiyle etkileşime
girebilen sistemler tasarlayabileceğiniz
Arduino kütüphaneleri ile
mikrodenetleyicileri kolaylıkla
programlayabilirsiniz.
Analog ve dijital girişleri sayesinde
analog ve dijital verileri
işleyebilirsiniz.
Sensörlerden gelen verileri
kullanabilirsiniz
Dış dünyaya çıktılar (ses, ışık, hareket
vs?) üretebilirsiniz.
Entegre edilebilir wireless modüller
sayesinde, kablosuz haberleşme
teknolojisinde kullanılabilir. (RF,
Bluetooth, Infrared, GSM, Wireless…)
2.3.Arduino ile Neler Yapılamaz?
Sıfır elektronik bilgisi ile Arduino ile
bir şeyler yapılması zordur. En azından
temel seviyede elektronik bilinmelidir.
Sıfır programlama bilgisi ile Arduino
ile projeler yapılması zordur. En
azından temel seviyede programlama
bilgisine sahip olunmalıdır..
Gerçek zamanlı sinyal işleme, kamera
görüntüsü aktarma gibi ağır işler
yapılamaz.
Üzerinde Android, Windows CE,
Linux gibi işletim sistemleri
çalıştırılamaz. Bu tür çalışmalar
yapmak için Rasperry Pi, Beagle Bone
vs.. gibi kartlar kullanılmalıdır.
2.4.Arduino Uno R3 Özellikleri
Şekil 1
Arduino ailesinden olan “Uno R3”
modelinin özelliklerinde:
ATmega328 Mikrodenetleyici
7-12V Giriş Voltajı
3.3V ve 5V güç çıkışı
14 adet dijital giriş çıkışı
6 motor sürücü çıkışı
6 adet analog girişi
16MHz Çalışma Frekansı
32KB Flash Hafıza bulunmaktadır.
ATmega328 Mikrodenetleyici ile
1saniyede 16 milyon işlem yapılabilir. Ama bir
işlem 6 clock scyle sürüyorsa o zaman 2
milyon işlem yapar.
3. ARDUİNO AİLESİ
Arduino geliştirme kartının kullanım
alanlarına ve ihtiyaçlara göre değişik şekilde
tasarlanmış modelleri bulunmaktadır. Tabi
Arduino geliştirme kartının modelinin
gelişmesiyle maliyeti de artış göstermektedir.
3. 3.1.Arduino Nano V3.0
Şekil 2
Arduino ailesinin en küçük bireyi olan
Nano V3.0 modeli Uno R3 modeli ile aynı
özellikleri taşımaktadır. İşlemci model farkı ve
güç girişinin bulunmaması gibi farklılıkları
vardır. Yazının sonunda değinilecek olan mini
akıllı ev uygulamasında bu modelimiz
kullanılmıştır.
3.2.Arduino Mega 2560
Şekil 3
Arduino ailesinin en çok giriş çıkışa
pinine ve gelişmiş mikroişlemcisine sahip
modelidir. Üzerinde Atmel’in Atmega2560
serisi bir mikroişlemci vardır. Ayrıca
üzerinde; Bu 15 adet motor sürme çıkışı, 54
adet dijital giriş-çıkışı ve 16 analog giriş
bulunmaktadır.
3.3.Arduino Yun
Şekil 4
Arduino Yun özellik olarak diğer
ürünlerden daha gelişmiştir. Üzerindeki dijital
ve analog girişlerinde haricinde kablosuz
haberleşmeyi sağlayacak Wifi modüle ve
kablolu haberleşme için Ethernet girişi
bulunmaktadır. Ayrıca üzerinde bir SD Kart
girişi bulunmaktadır.
4. ARDUINO KABLOSUZ
HABERLEŞME MODÜLLERİ
Geliştirme kartının kolaylıklarını
anlatırken , bu cihazların kablosuz haberleşme
teknolojisinde kullanılan modüller ile entegre
çalışabilmelerinin büyük avantaj sağladığına
değinmiştik. Şimdi Arduino ile kullanılabilen
kablosuz haberleşmeyi sağlayacak modüllere
ve bunların özelliklerine değineceğiz.
4.1.Bluetooth Module
Şekil 5
Ucuz ve kullanımı kolay bir kablosuz
haberleşme aracı olan bluetooth modüle HC-06
modelidir. Üzerinde bulunan RX ve TX giriş
çıkışlarıyla seri haberleşme yaparak başka
bluetooth’lu cihazlar ile haberleşmeyi sağlar.
100 MHz Band genişliğine ve 2.4 GHz veri
hızına sahiptir.
4. 4.2.RF Wireless Transmitter &
Receiver Module
Şekil 6
Kısa mesafelerde 2 Arduino’nun
haberleşmesini sağlamak için, ya da başka
cihazlarla haberleşmesini sağlamak için ideal
bir modüldür. 2MHz band genişliğine ve 315-
433 GHz çalışma frekansına sahiptir.
4.3.VS1838B Infrared Receiver Module
Bildiğiniz kızılötesi alıcı verici devresidir.
38 KHz’lik bir çalışma frekansı olmasından
dolayı duvarı geçemeyen sinyale sahiptir.
Yaklaşık 8-10 metre algılama kapasitesi vardır.
Bugün televizyonlarımızda kullanılan
haberleşme modülüdür. Bir kumanda ve bir
alıcdan oluşmaktadır.
4.4. Wifi Module
Şekil 7
Wifi modül sayesinde ortamdaki
wireless modem aracılığı ile Arduino cihazınız
ile haberleşme sağlıyabilirsiniz. IEEE802.11
seri port haberleşme protokolüne sahip cihaz
IP alabilir ve bu sayece kablosuz haberleşme
hatta internetten haberleşme imkanına ulaşmış
olursunuz.
4.5.GSM/GPRS Module
Şekil 8
Quad-Band 850/ 900/ 1800/ 1900
MHz çalışma aralığına ve 5V besleme
gerilimiyle Arduino’dan bir telefon ortaya
çıkartabilirsiniz. GSM hattı üzerinde
haberleşme yapabilir, SMS ve arama
gönderebilirisniz. Üzerinde bir SIM Kart girişi,
Ses girişi ve ses çıkışı bulunmaktadır.
5. MİNİ AKILLI EV UYGULAMASI
Arduino nedir, ne değildir, nasıl kullanılır,
modülleri nelerdir derken şimdi Arduino ile bu
çalışma için yapılan bir uygulamayı
inceleyeceğiz.
Yapılan çalışmada; Arduino ile bluetooth
modülüz olan HC-06 kullanılarak, Arduino’ya
bağlı bir kapı(servo motoru), Android işletim
sistemine ve bluetooth’a sahip bir telefona
yazılan uygulamadan kontrol edilecektir.
Ayrıca Arduino’nun analog girişine bağlı bir
LM35 sıcaklık sensörü sayesinde ortamın
sıcaklığını telefonda görünebilecektir.
Bu çalışmada mini boyutlar ve özelliklerde
akıllı ev yapılması ve bunun Android
telefondan kontrolü amaçlanmıştır.
Kullanılan Malzemeler:
Arduino Nano V3.0
Bluetooth Module HC-06
Push Button (Kapı Ziline Basmak İçin)
Buzzer (Kapı Zilinin Çalması İçin)
LM35 (Sıcaklık Sensörü)
Servo Motor (Kapı Açma Kapama)
Breadboard
5. Şekil 9
Şekil 9’da gösterilen resimde projenin
prototipini görmektesiniz. Kapı ziline basıldığı
zaman durum ledlerinde sarı renkli olan yanar
ve buzzer ses verir. Aynı zaman Arduino aldığı
bu komutu işleyerek bluetooth modül üzerinde
text transfer yapar ve Mobil uygulamamıza zile
basıldığı ile ilgili mesaj yansır. Uygulamada
bu mesaj alındıktan sonra uygulama üzerinden
kapı aç komutu buton vasıtasıyla verilir ve
Arduino bluetooth modülden aldığı değeri işler
ve kapıyı açar. Kapıyı açtıktan sonra Şekil
10’da görüldüğü gibi “Kapı Açıldı” mesajını
geri gönderir ve uygulama ekranına bu mesaj
yansır.
Şekil 10
Bu uygulamada Bluetooth modül ile
bağlantı oluşturur, kapı aç-kapa işlemleri
yapılır ve Arduino nun bulunduğu ortamdaki
sıcaklık değeri analog girişler sayesin
okunarak ve hesaplanarak Bluetooth Modül
üzerinden uygulamaya aktarılır. Bu bir prototip
olduğu için basit birkaç işlemle kalmıştır ama
ihtiyaca göre geliştirilebilir.
Uygulamanın çalışmasına
http://www.dailymotion.com/rrdolaner
linkinden bakabilirsiniz.
6. SONUÇ
Arduino’nun ne olduğu, nasıl kullanıldığı,
neler yapılabildiği, neler yapılamadığı
incelenmiştir. Arduino ailesinden olan diğer
geliştirme kartlarına değinilerek, kullanım
amaçlarına ve özelliklerine bakılmıştır.
Arduino ile kullanılabilen “Kablosuz
Haberleşme Teknolojisi”nde kullanılan
modüllere göz atılıp, özellikleri incelenmiştir.
Gördüğümüz cihazların bir kısmı ile
uygulama yapılarak, Arduino nun performansı
ve kullanım basitliği incelenmiştir. Arduino ile
kablosuz haberleşme uygulaması yapılarak bu
alanlarda da başarılı olduğu gözlemlenip
incelenmiştir.
7. KAYNAKLAR
http://arduino.cc/en/
http://arduinoturkiye.com/
http://www.instructables.com/
http://www.adafruit.com/
http://www.mcu-turkey.com/
http://fritzing.org/