Arduino Eğitim Kiti – Tüm Yıl İçin Arduino Müfredatı: Ders 8 Arduino Nedir? için isterseniz sunu şeklinde alt taraftaki kutucuğu büyüterek takip edebilir, isterseniz de tüm sunu sayfalarının makale haline dönüştürülmüş versiyonu takip edebilirsiniz. İçerikler büyük oranda aynıdır. Sınıf ortamında kolaylık olması açısından sunu şeklinde de sunulmuştur.
Ders İçeriği:
Ders Kazanımları:
- Arduino’nun ne amaçla kullanıldığını açıklar.
- Arduino Uno’nun tercih edilme sebebini açıklar.
- Arduino Uno’nun üzerindeki bileşenlerin isimlerini ve işlevlerini kısaca tanımlar.
- Kod yazmadan LED yakma uygulamasını yardım almadan tasarlar.
Açık Kaynak Kod Nedir?
- Arduino Nedir? ‘den bahsetmeden önce açık kaynaktan bahsetmekte fayda var.
- Arduino’nun bu kadar gelişip ilerlemesinin en önemli sebeplerinden biri açık kaynak felsefesidir.
- Peki nedir bu açık kaynak felsefesi?
- Açık kaynağı bir benzetmeyle açıklayacak olursak annelerimizin anneannemizden, onların da kendi büyüklerinden öğrendiği, o müthiş yemekleri hatırlayalım.
- Açık kaynak felsefesini tam da bu örnekte nesilden nesile aktarılan yemek tariflerine benzetebiliriz!
- Herkesin yeni bir malzeme ya da farklı bir baharat katarak kendince mükemmelleştirdiği o yemek tarifleri, birer açık kaynak örneği olarak düşünülebilir.
- Benzer şekilde geliştirilen Arduino kodları açık kaynak kodlu yazılımlarda yazılımın içerisinde yer almakta olan kodlar kullanıcılara açılır ve bu kodlar yazılımcılar veya kullanıcılar tarafından değiştirilip, geliştirilebilir.
- Açık kaynak kodlu yazılımlar genellikle bir şirket tarafından değil, vakıf veya geliştiriciler tarafından meydana getirilen yazılımlardır.
- Bu yazılımlar bilgisayar kullanıcılarının faydası düşünülerek hazırlanmış ve geliştirilmiştir.
- Yayın sürecinden sonra da kaynak kodları açık halde bırakılmış ve geliştirilmesi veya değiştirilmesi konusunda insanlar teşvik edilmektedir.
Arduino Nedir?
- İtalyanca bir kelime olan Arduino, “güvenilir arkadaş, dost” anlamına gelir.
- Arduino kolay kullanılabilir ve esnek bir yazılım/donanım mimarisine sahip, açık kaynak ailesine mensup bir elektronik geliştirme kartıdır.
- Arduino kartlarının donanımında bir adet Atmel AVR mikrodenetleyici ve programlayabilmek ve diğer devrelerle bağlantı kurabilmek için yan elemanlar bulunur.
- Arduino üzerinde Giriş/Çıkış (Input/Output) alanları fiziksel programlama platformudur.
- Arduino tek başına çalışan etkileşimli nesneler oluşturmak için kullanıldığı gibi bilgisayar üzerinde çalışan yazılımlarda da kullanılabilir.
- Örneğin Macromedia Flash, Processing, Max/MSP ve birçok daha yazılıma bağlayabilir ve özgürce geliştirmeler yapabilirsiniz.
- Arduino kartlarında programlama için harici bir programlayıcıya ihtiyaç duyulmaz, çünkü karttaki mikrodenetleyiciye önceden bir bootloader programı yazılıdır.
- Her Arduino kartında en azından bir 5 voltluk regüle entegresi ve bir 16 MHz kristal osilator vardır.
Osilator: Arduino üzerindeki işlemlerin yapılmasını sağlayan elemandır.
Regüle entegresi: Şebeke gerilimdeki veya yük direncindeki değişmeler nedeni ile çıkış geriliminde meydana gelen dalgalanmaları, kabul edilebilir sınırlar içinde otomatik olarak ayarlar.
Bootloader: Cihaz başlatıldığı sırada işletim sistemini yüklemeyi sağlayan bir programdır.
Arduino Bileşenleri:
Arduino‘nun temel bileşenleri:
Arduino geliştirme ortamı (IDE), Arduino bootloader, Arduino kütüphaneleri, AVRDude (Arduino üzerindeki mikrodenetleyici programlayan yazılım) ve derleyiciden (yazılan programı makine diline çeviren program) oluşur. Arduino yazılımı bir geliştirme ortamı (IDE) ve kütüphanelerden oluşur. IDE, Java dilinde yazılmıştır ve Processing adlı dilin ortamına dayanmaktadır. Kütüphaneler ise C ve C++ dillerinde yazılmıştır. Arduino’nun bu kadar çok tercih edilmesini sağlayan en önemli bileşen ise mikrodenetleyici konusunda detaylı bilgi sahibi olmayı gerektirmeden herkesin programlama yapabilmesini sağlayan Arduino kütüphaneleridir. Arduino kütüphaneleri, geliştirme ortamı ile birlikte gelmekte ve “libraries” klasörünün altında bulunmaktadır. Kodları inceleyerek mikrodenetleyicilerin nasıl programlandığını ve kütüphanelerin yapısını görmeniz mümkündür.
Arduino Projelerine Kütüphane Ekleme:
- Arduino üzerindeki bütün modüllere ait kodlar yazmak oldukça zahmetli bir iştir.
- Bu sebeple üreticiler veya kullanıcılar bazı yardımcı kod dosyaları oluşturmuş ve bunları bütün kullanıcılara yayımlamıştır.
- Bu yayınlanan kod dosyalarına erişip projelerimizde rahatlıkla kullanabiliriz.
- Kod dosyalarını kullanabilmek için birkaç farklı yöntem vardır: 1. Arduino Ide programında Taslaklar/ Library Ekle / Libraryleri Düzenle seçeneği seçilerek Arduino’nun desteklediği kütüphaneleri yükleyebiliriz. 2. Arduino Ide’de Taslak/ Library Ekle/ .ZIP Kitaplığı Ekle seçeneği seçilerek önceden indirdiğimiz .zip uzantılı kütüphane dosyalarını yükleyebiliriz. 3. Arduino’nun bulunduğu klasör içerisinde bulunan Libraries klasörü içerisine kütüphane dosyalarını aktararak ekleyebiliriz.
Arduino İle Neler Yapılır?
- Arduino ile kolaylıkla programlama yapabilirsiniz.
- Analog ve dijital sinyalleri alarak işleyebilirsiniz.
- Sensörlerden gelen sinyalleri kullanarak, çevresiyle etkileşim içerisinde olan robotlar ve sistemler tasarlayabilirsiniz.
- Tasarladığınız projeye özgü olarak dış dünyaya hareket, ses, ışık gibi tepkiler oluşturabilirsiniz.
- Arduino’nun farklı ihtiyaçlara çözüm üretebilmek için tasarlanmış çeşitli kartları ve modülleri mevcuttur.
- Eğitim seti içerisinde kullanacağımız model Arduino Uno’dur.
Arduino Uno Nedir?
En popüler ve sık kullanılan Arduino modelidir. Arduino Uno aşağıdaki özelliklere sahiptir :
- Mikroişlemci: ATmega328
- SRAM: 2KB
- Flash Memory: 32KB
- Saat Hızı: 16MHz
- Analog Giriş: 6 Adet
- Sayısal Giriş: 14 (6 tanesi PWM)
- Arduino Uno’yu yakından tanımak adına aşağıda bulunan görseli inceleyelim.
- 1. Usb Bağlantı noktası: USB kablosu ile bilgisayar ile bağlantıyı sağlar. Çalışması için gereken kodu ve besleme gerilimi bu noktadan bağlanır.
- 2. Doğru (DC) akım besleme girişi: Usb kablonun olmadığı yerde Arduino’nun besleme gerilimini sağlamak amacıyla kullanılır.
- 3. Gerilim regülatörü (Gerilim uygunlaştırıcısı): Doğru akım besleme girişinden ya da kart üzerinden uygulanan gerilimi kart üzerinde kullanılacak gerilim seviyesine indirir.
- 4. Sıfırlama (Reset) butonu: Mikrodenetleyicinin cevapsız kaldığı ya da kendi içinde kısır döngüye düştüğünde sıfırlanmasını sağlamak için kullanılır.
- 5. Dijital giriş/çıkışlar: Mikrodenetleyicinin dış dünya ile kurduğu hem giriş hem çıkış olarak dijital bağlantı sağlayan bileşendir. 14 dijital pin vardır. Bunlarla birlikte A0 ve A5 ( 6 analog giriş) arasındaki analog pinler de dijital pin olarak kullanılabilir.
- 6. Analog girişler: Dış dünyadan gelen analog verilerin alındığı bağlantı noktasıdır. Dijital giriş/çıkış gibi de kullanılır. Analog girişler A0’dan başlayıp A5’e kadardır.
- 7. Güç giriş/çıkışları: Kart üzerindeki gerilimi diğer elemanlara göndermek, besleme gerilimi vermek gibi analog besleme işlemlerinin yapıldığı kısımdır.
- 7.1) IOREF: Bu pin bir referans gerilim bağlantı noktasıdır. Örneğin bir karşılaştırma yapılacağında bu referans gerilime göre işlem yapılır. Arduino bordunun türüne göre 3,3 volt yada 5 volt olabilir.
- 8. Harici programlama bağlantıları: Arduino’nun USB tarafından programlanamadığı ya da başka bir Arduino’nun programlanmasını istediğimiz zaman kullanacağımız bağlantılardır.
- 9. Mikrodenetleyici: Arduino’nun çekirdeğini oluşturur, işlemlerin tamamı burada gerçekleştirilir. Mikrodenetleyicinin özellikleri Arduino’nun özelliklerini belirler.
- 10. Kristal Osilatör: Arduino mikrodenetleyicisi olan Atmel ve benzeri gibi işlemciler temelde iki gereksinimi vardır. Bunlar osilatör sinyali ve besleme gerilimi. Bu iki faktör olmadan hiçbir işlemci işlem yapamaz çalışmaz. Osilatör işlemcinin kendi bünyesinde her bir işlemi yaparken işlem adımlarını atmasını sağlar.
- 11. Chipset: Bu bağlantı Arduinonun işlemcisi olan Atmega328p ile değil arabirim olan Chipset ile sağlanır. Chipsetin görevi Arduino ile bilgisayar arasındaki bağlantıyı karşılıklı olarak sağlamaktır.
Uygulama: Kod Yazmadan LED Yakma Uygulaması
Kullanılacak Malzemeler:
- Arduino Uno
- LED (Herhangi bir renk)
- Direnç (220 R)
- 2 adet erkek-erkek kablo
Yapım Aşamaları:
- LED breadboard üzerine bacakları yatay olacak şekilde yerleştirilir.
- LEDin + (anot) bacağının hizasına 220R direnç bağlanır.
- Direncin boşta kalan bacağını erkek-erkek kablo ile Arduino Uno’nun 5V bacağına bağlanır.
- LEDin – (katot) bacağı erkek-erkek kablo ile Arduino Uno’ nun gnd bacağına bağlanır.
Bağlantı Şeması:
Bağlantılar şekildeki gibi yapılır.
Hazırlama:
- Yukarıdaki devre bağlantısı yapıldıktan sonra kit üzerindeki pil yuvasına 9V pil yerleştirilir.
- Pil yuvasının bağlantı kablosu Arduino Uno’nun güç girişine bağlanır.
- Hemen ardından LEDin yandığını görebilirsiniz.