Arduino’ya Giriş | Burak Şişman, PhD
July 6, 2015 Arduinoburaksisman
Bugünkü yazımda Arduino’ya genel bir giriş yapacağız. Genel bir bakışın yanı sıra, bazı detaylar da bulabileceğiniz bir paylaşım olacak.
Son zamanlarda oldukça popüler olan Arduino, Açık Kaynaklı Donanım akımının bir sonucudur. Açık Kaynaklı Donanım ile firmalar ticari kaygıları olmaksızın ürünlerini kaynak kodları ile birlikte sunmaktadır. Böylece bir çok kişi telif engeli olmadan bu ürünleri üretebilir, değişiklikler yapabilir ve hatta satabilir. Bu da çok sayıda kişinin elektronik ve programlamaya yakınlaşmasını sağlamaktadır. Arduino’nun kaynak kodlarını, bileşenlerini ve şemalarını üretici firmanın www.arduino.cc sitesinden bulabilirsiniz ve hatta kendi Arduino’nuzu da çok uygun bir maliyetle yapabilirsiniz.
Şimdi Arduino ile neler yapabileceğimizden bahsetmeliyim. Daha sonra Arduino’nun ne olduğundan ve modellerinden bahsedeceğim.
Aslında, ortalama 40 TL gibi bir rakam ile elde edebileceğiniz Arduino ile yapabileceklerimiz hayal gücümüz ile sınırlıdır. Bir kaç örnek vereyim;
Engelleri fark eden ve bu engellere takılmadan yolunu değiştirerek hareket edebilen robotlar, ortamdaki sıcaklığı ölçebilen ve bunu üzerindeki LED ekrana yazabilen cihazlar, evinize izinsiz bir giriş olduğunda alarm çalan, size SMS atan veya arayan sistemler, gaz kaçağı, yangın gibi tehlikeleri fark edip haber veren sistemler, cep telefonundan yönetilebilen araçlar gibi bir çok şey yapmak mümkün.
Şimdi Arduino’ya genel bir bakış atalım.
Arduino, basit bir mikro denetleyici kartı ve bu kart için uygulama geliştirme imkânı sağlayan bir yazılımı olan, açık kaynak kodlu bir fiziksel programlama platformudur. Arduino, çeşitli sensörlerden ve anahtarlardan girdi alan; ışıkları, motorları ve diğer fiziksel çıktıları kontrol edebilen cihazlar geliştirmek için kullanılmaktadır (Arduino, 2015). Arduino’yu popüler kılan ise geniş bir kütüphaneye sahip olması, maliyetinin düşük olması, kolay kodlanabilir olması ve çok iyi derecede programlama bilgisine sahip olmayı gerektirmemesidir. Bu özellikleri ile öğrenciler, öğretmenler ve amatörler için oldukça ideal bir platformdur.
Birkaç satır kod ile Arduino’nun mikro denetleyicisine ne yapması gerektiği ile ilgili komutlar verebilirsiniz. Örneğin, devreye bağlı bir LED (light emitting diod – ışık yayan diyot) ışık kaynağını yakmasını belli bir süre sonra tekrar söndürmesini; ya da bu yakıp-söndürme işlemini bir düğmenin konumuna göre yapmasını isteyebilirsiniz. Daha da ileri götürerek internet veya bluetooth üzerinden bu komutları verebilir, sensörler vasıtası ile elde ettiğiniz değerleri size e-posta ile bildirmesini isteyebilirsiniz. İlerleyen bölümlerde benzer uygulamalar geliştireceğiz.
Birçok mikro denetleyicinin IDE(Tümleşik Geliştirme Ortamı)’si sadece Windows işletim sistemi ile çalışmaktadır. Arduino’nun sağladığı IDE ise Windows, Mac OS ve Linux gibi yaygın olan tüm işletim sistemlerinde çalışabilmektedir. İşletim sisteminize uygun IDE’yi www.arduino.cc adresinden indirebilirsiniz.
Arduino’nun bir çok modeli bulunmaktadır. Bu yazımda sadece bir kaç tanesine değineceğim. Arduino’nun en çok kullanılan ve Arduino ile çalışmaya başlamak için en uygun model olan Arduino Uno R3 ile başlayalım.
Bu model en basit modellerden birisidir. Uno, İtalyanca’da 1 rakamına karşılık gelen sözcüktür. Dolayısı ile bu modelin adı Arduino 1.0 verisyonuna karşılık gelmektedir. Üzerinde bir USB portu bulunmaktadır ve bilgisayara bu port üzerinden standart bir A/B USB kablo ile bağlanmaktadır. AC-DC bir adaptör ile ya da 9V bir pil ile güç verilebilmektedir.
Şekil 1: Arduino Uno R3 Modeli (Kaynak: www.arduino.cc)
Ayrıca bu model üzerinde ATmega328 mikro denetleyici çipi, 14 adet dijital giriş/çıkış pini, 6 adet analog giriş pini, 1 adet 16 MHz kristal osilator ve ICSP (In-Circuit Serial Programming) header ve yeniden başlatma düğmesi bulunmaktadır. Dijital giriş/çıkış pinlerinin altı tanesi PWM (Pulse Width Modulation) çıkışı olarak da kullanılabilmektedir.
Şekil 2: A/B USB Kablo
Arduino’ya yeni başlayanlar için bu modeli tavsiye ediyorum.
Üzerinde bir mikro USB portu bulunmaktadır ve bilgisayara bu port üzerinden standart bir USB kablo ile bağlanmaktadır. AC-DC bir adaptör ile ya da 9V bir pil ile güç verilebilmektedir.
Şekil 3: Arduino Leonardo Modeli (Kaynak: www.arduino.cc)
Bu model üzerinde ATmega32u4 mikro denetleyici çipi, 20 adet dijital giriş/çıkış pini, 12 adet analog giriş pini, 1 adet 16 MHz kristal osilator ve ICSP header ve yeniden başlatma düğmesi bulunmaktadır. Dijital giriş/çıkış pinlerinin yedi tanesi PWM çıkışı olarak da kullanılabilmektedir. Leonardo modeli USB ile haberleşebilen ve bir mikro denetleyiciye sahip olan tek modeldir. Diğer modellerde USB ile haberleşmek ve yazılım yüklemek için iki adet mikro denetleyici bulunmaktadır. ATmega32u4 üzerindeki USB modülü sayesinde klavye veya fare gibi bilgisayara direkt takılıp kullanılabilir.
Arduino’nun diğer modelleri de şu şekildedir:
Bu modellere yeri geldikçe değineceğim.
Arduino’ya ek özellikler katan ya da özelleştiren Arduino Shield’lerinden bahsetmeliyim. Örneğin, Arduino’nuzu RC-45 kablo ile internete bağlamak istiyorsunuz, Arduino Uno modelimizde kabloyu takacağımız bir ethernet kartı bulunmamaktadır. Fakat Arduino Ethernet Shield’ı Arduino’muzun üzerine monte ederek kablo ile internet bağlantısını sağlayabilmekteyiz. Benzer şekilde WiFi bağlantısı için de Arduino WiFi Shield kullanabiliriz. Ya da Arduino’muza bir sim kart takıp, SMS göndermek veya arama yapmak isteyebiliriz. Bu durumda Arduino GSM Shield yardımımıza koşacaktır.
Şekil 4: Arduino WiFi Shield (Kaynak: www.arduino.cc)
Şekil 5: Arduino GSM Shield (Kaynak: www.arduino.cc)
Çeşitli amaçlar için kullanabileceğimiz bazı Shield’ler şu şekildedir:
Arduino Motor Shield: Üzerindeki sürücü ile birbirinden bağımsız iki DC motoru kontrol etmemizi sağlar.
Arduino USB Host Shield: Arduino’muza USB portu sağlar ve bu port ile klavye, mouse, Bluetooth Dongle gibi cihazları Arduino’muza bağlayabilmemizi sağlar
Arduino Bluetooth Shield: Arduino’muza bloetooth ile erişmemizi sağlar.
Arduino Joystick Shield: Arduino’muzu bir joyistik gibi kullanmamızı sağlar.
Şekil 4 ve Şekil 5’te gösterilen Shileld’lerin Arduino kartımıza çok benzediğini görebiliriz. Shield’ler Arduino kartımızla aynı boyuttadır ve aynı hizada pinlere sahiptir. Böylece Shield’leri, Arduino’muz ile üst üste birleştirerek kullanabilmekteyiz.
Çeşitli Arduino modellerini, Shieldleri, sensörleri, motorları, kısacası ihtiyacınız olan herşeyi internet üzerinden bulmanız mümkün. Bununla ilgili Türkiye’de hizmet veren oldukça fazla site bulunmaktadır. Bunlardan bazıları;
Bunların dışında; daha da uygun fiyatlı fakat ürünlerin elinize ulaşması ortalama 20-40 gün süren http://www.aliexpress.com‘u da öneririm.
Başlangıç için bu sitelerin hazırlamış olduğu Başlangıç Setlerini satın alabilirsin. Bu setlerin içinde Arduino Uno R3, çok sayıda LED, kablolar, dirençler, potansiyometreler, çeşitli sensörler gibi bir çok komponent bulunmaktadır.
Bir sonraki yazımda, Arduino’nun fiziksel incelemesini yapacağız. Arduino üzerinde bulunan pinlerden ve ledlerden bahsedeceğim.
← Merhaba	Arduino Fiziksel İnceleme →