Herkese merhabalar. Bu yazımızda sizlere Arduino’nun en popüler modeli olan Arduino Uno’dan bahsedeceğim.
Arduino Uno R3 Nedir? Ne İşe Yarar?
Daha önce kanalımızdaki Arduino Nedir? videomuzda Arduino’dan ve modellerinden bahsetmiştik. Yine kısaca bahsetmemiz gerekirse Arduino, elektronik donanım ve yazılım temelli bir geliştirme platformudur. Arduino ile öğrenciler de profesyoneller de çok detaylı programlama ve elektronik bilgiye sahip olmadan, temel bilgiler ile hobi amaçlı, eğitim amaçlı veya profesyonel anlamda projeler yapabilirler. Arduino Uno, en yaygın kullanılan ve en çok bilinen modelidir. 2010 yılında kullanıma sunulmuştur.
Arduino Uno ne işe yarar sorusuna tam olarak cevap vermeye çalışayım. Arduino Uno ile çeşitli sensörlerden fiziksel bilgi alabilir, bu bilgiler ile çeşitli deneyler yapabilirsiniz. Ayrıca motor, LED, buzzer gibi uyarıcılardan bir çıktı elde edebilirsiniz. Bu gibi elektronik komponentleri Arduino Uno kartına bağlayarak kontrol etmek için temel bir programlama bilgisi yeterlidir. Projelerin seviyesine göre gerekli olan elektronik ve programlama bilgisi seviyesi de artacaktır. Boyut olarak çok daha küçük ve çok daha büyük modeller olsa da Arduino Uno’nun boyutu projelere göre en standart olanıdır. 14 adet dijital çıkış pini bulunması 14 farklı dijital sensörün ve uyarıcının kontrol edilebileceği anlamına gelmektedir. Bu da birçok proje için yeterli bir sayıdır. Bu dijital çıkışlardan 5 tanesi PWM çıkışıdır. Motorların hızı, LED’lerdeki parlaklık seviyeleri gibi analog olarak kontrol edilmesi istenen uyarıcılar bu PWM pinlerine bağlanarak kontrol edilir. Arduino Uno’daki 6 tane analog giriş ise analog giriş sinyali alabildiğimiz sensörler içindir.
Arduino Uno ile LED yakıp söndürmek gibi en temel uygulamalardan drone, robot, akıllı ev otomasyonu, hırsız alarm sistemi, park sensörü gibi daha gelişmiş projeler de yapabilirsiniz. Bu tamamen ne yapmak istediğinizle alakalıdır. Kısacası Arduino Uno, standart boyutlarda bir kontrol kartı olup, basitten zora birçok uygulamada elektronik devreleri kontrol etmenizi sağlamaktadır.
Sitemizde bulunan Arduino Uno modeline buradan ulaşabilirsiniz.
Arduino Uno Projeleri
Arduino Uno ile çeşitli projeler yapılabileceğinden bahsettik. Şimdi ise Arduino Uno ile yapılabilecek uygulamalara, projelere örnekler vermek istiyorum. Böylece sitemizdeki ve kanalımızdaki içeriklerden de yardım alabilirsiniz. Arduino dünyasına yeni katılanlar için LED yakma söndürme, buzzerdan ses çıktısı alma gibi uygulamalar hem programlama konusunda alıştırmalar yapmayı hem de elektronik devre elemanlarını tanımayı sağlar. Arduino’da seri haberleşme özelliği ile dijital ve analog girişlerdeki değerli okuyabilir, böylelikle giriş sinyalinin ne demek olduğunu, neye etki ettiğini öğrenebiliriz. Arduino Uno’yu tanıdıktan sonra güzel başlangıç projeleri bulunmaktadır. Bunlardan birine örnek verecek olursak hiç kuşkusuz Basit Park Sensörü Yapımı uygulamasını ilk sıraya koyarız. Projenin ayrıntılı olarak anlatıldığı blog yazımıza buradan ulaşabilirsiniz.
Bunun haricinde Arduino Uno ile kablosuz haberleşme yapmak da çok kolay. Çeşitli Bluetooth, NRF, Wi-Fi, kızılötesi modülleri kullanarak projeleriniz ile kablosuz olarak iletişim kurabilirsiniz. Kablosuz haberleşme protokollerini kullanarak yaptığımız uygulamara örnek olarak Kablosuz Gamepad Yapımını verebiliriz.
Arduino Uno ile TV kumandası kullanarak şerit LED kontrolü yaptık ! Projenin detayları için videoyu izleyebilirsiniz, blog yazısına da buradan ulaşabilirsiniz.
Bunların haricinde Arduino Uno ile robot ve rc araç yapmak da mümkün. Arduino Uno kullanarak Bluetooth Kontrollü Araç, Engelden Kaçan Robot, Çizgi İzleyen Robot, 3 Boyutlu Robot Kol gibi birçok gelişmiş proje blog sayfamızda ve YouTube kanalımızda yer almaktadır. Gördüğünüz gibi, Arduino Uno hem temel anlamda hem de ileri seviyede kullanılabilecek bir Arduino modelidir.
Arduino Uno Özellikleri Nelerdir?
Haberleşme:
Arduino Uno birçok şekilde haberleşme işlemini gerçekleştirebilir. RX ve TX pinleri ile seri haberleşme imkanı mümkündür. Atmega16u2 USB-seri dönüştürücü de bilgisayarda sanal bir seri port açarak Atmega328 ile bilgisayar arasında haberleşmeyi sağlar. Arduino IDE içerisinde yer alan seri monitör ile Arduino ile bilgisayar arasında metin temelli bilgilerin gönderilip alınmasını sağlar. Arduino ile bilgisayar arasında USB üzerinden bir haberleşme olduğunda Arduino üzerindeki RX ve TX yazan LED’ler yanar.
Arduino Uno’da normalde bir tane seri port bulunmaktadır fakat SoftwareSerial kütüphanesi kullanılarak bu sayı yazılımsal olarak arttırılabilir.
Atmega328 ayrıca I2C ve SPI portları da sağlamaktadır. Arduino IDE içerisinde yer alan Wire kütüphanesi I2C kullanımını, SPI kütüphanesi de SPI haberleşmesini sağlamak için kullanılır.
Programlama:
Arduino Uno da diğer tüm Arduino’lar gibi Arduino IDE ile programlanır. Detaylı Arduino Kurulumu yazımızı inceleyerek programı kurabilirsiniz.
Bootloader yazılımı bypass edilerek kart doğrudan mikrodenetleyicinin ICSP header kullanılarak ISP programlayıcı ile programlanabilir (*).
USB Kısa Devre ve Aşırı Akım Koruması:
Arduino Uno üzerinden bulunan resetlenebilir sigorta, bilgisayarınızın USB portunu kısa devrelerden veya aşırı akım tüketimi durumlarından korumaktadır. Kart, USB portu üzerinden 500mA’den fazla akım çektiğinde otomatik olarak USB’den aldığı gücü koruma amacıyla kesmektedir. Fazla akım durumu veya kısa devre ortadan kaldırıldığında sigorta normal konuma döner ve tekrar bağlantı kurulur.
Arduino Uno’nun genel anlamda özellikleri aşağıdaki gibidir:
- Mikrodenetleyici: ATmega328
- Çalışma Gerilimi: 5V
- Giriş Gerilimi (önerilen): 7-12V
- Giriş Gerilimi (limit): 6-20V
- Dijital G/Ç Pinleri: 14 (6 tanesi PWM çıkışı)
- Analog Giriş Pinleri: 6
- Her G/Ç için Akım: 40 mA
- 3.3V Çıkış için Akım: 50 mA
- Flash Hafıza: 32 KB (ATmega328)
- SRAM: 2 KB (ATmega328)
- EEPROM: 1 KB (ATmega328)
- Saat Hızı: 16 MHz
- Uzunluk: 68.6 mm
- Genişlik: 53.4 mm
- Ağırlık: 25 g
Arduino Uno Pinout ve Datasheet
Güç:
Arduino Uno, gücünü USB üzerinden veya adaptör girişinden alabilir. Yani bilgisayarınızın USB girişinden veya bilgisayarınızdan bağımsız olarak bir adaptör veya bataryadan güç elde edebilirsiniz. Doğrudan Vin (+) ve GND (-) pinlerinden de besleyebilirsiniz.
Harici güç kaynağı olarak 6-20V arası limit değerleri bulunmaktadır. Önerilen harici besleme gerilimi ise 7-12 V arasıdır. Bunun sebebi 7V altındaki gerilimin stabil çalışmayıp, 12V üzeri gerilimin de aşırı ısınma sebebi olabilmesidir. Kart üzerinde bulunan regülatör sayesinde 7-12V arası gerilim 5V’a düşürülür ve kart bu şekilde çalışır.
- Vin: Harici güç kaynağı için kullanılan pin.
- 5V: Regülatörden çıkan 5V çıkış gerilimini sağlar.
- 3V3: Kart üzerinde bulunan 3.3V regülatörü çıkış pinidir. Maks. 50mA çıkış verebilir.
- GND: Toprak (-) pinleridir.
Giriş/Çıkış (I/O):
14 adet dijital, 6 adet analog giriş/çıkış pini bulunmaktadır. Bu pinlerin tamamının lojik seviyesi 5V’dur. Her pin maksimum 40mA giriş ve çıkış akımı ile çalışır. Ek olarak, bazı pinlerin farklı özellikleri bulunmaktadır. Özel pinler aşağıda belirtildiği gibidir:
Seri Haberleşme- 0 (RX) ve 1 (TX): TTL Seri veri alıp (RX), vermek (TX) için kullanılır. Bilgisayardan karta program yüklenirken veya bilgisayar-UNO arasında karşılıklı haberleşme yapılırken de bu pinlerden faydalanılır. Bu sebeple, karta program yüklendiği esnada veya kartla bilgisayar arası iletişim kurulduğunda bu pinleri kullanmamak gerekir.
Harici Kesme (Interrupt)- 2 ve 3: Bu pinler yükselen kenar, düşen kenar veya değişiklik kesmesi pinleri olarak kullanılabilir. Ayrıntılı bilgi için attachInterrupt() fonksiyon sayfasını inceleyebilirsiniz.
PWM- 3,5,6,9,10 ve 11: 8-bit çözünürülükte PWM çıkış pinleridir.
SPI- 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK): SPI haberleşmesi için bu pinler kullanılır.
LED- 13: Kart üzerinde dahili bir LED bulunmaktadır (L harfi ile gösterilmiş). Bu LED 13.pine bağlıdır. HIGH yapıldığında LED yanacak, LOW yapıldığında ise sönecektir.
Analog- A0,A1,A2,A3,A4,A5: 6 adet 10-bit çözünürlüğünde analog giriş pini bulunmaktadır. Bu pinler dijital giriş ve çıkış için de kullanılabilir. Pinlerin ölçüm aralığı 0-5V’tur. AREF pini ve analogReference() foksiyonu kullanılarak alt limit yükseltilip, üst limit düşürülebilir.
I2C- A4 veya SDA pini ve A5 veya SCL pini: I2C haberleşmesi için bu pinler kullanılır.
AREF: Analog girişler için ölçüm referansı pini.
Reset: Resetleme işlemi için bu pin LOW yapılır. Bunun yerine kartta bulunan Reset butonuna da basılabilir.
Not: Arduino’da harici kesmede diğer pinler kullanılamaz duruma gelir.
Arduino Uno PWM Pin
Yukarıda da belirttiğimiz gibi PWM pinleri 3,5,6,9,10 ve 11 numaralı pinlerdir. PWM çıkışları ile motor hız kontrolü, ışık parlaklık gibi analog kontrollerin yapılabilmesi sağlanır. PWM sinyalleri daha detaylı anlattığımız Servo Motor Nedir? yazımızı inceleyebilirsiniz.
Arduino Uno’yu Bilgisayara Tanıtma
Arduino Uno ile programlamaya başlamadan önce bilgisayarınızda Arduino’nun kurulmuş olması gerekiyor. Detaylı Arduino kurulumuna buradan ulaşabilirsiniz. Kurulum işlemlerini tamamladıktan sonra Arduino Uno’yu bilgisayara tanıtmak için aşağıdaki işlemleri sırasıyla uygulayın:
- Araçlar>Kart>Arduino Uno seçerek kartımızı belirtiyoruz.
- Araçlar>Port seçtikten sonra Arduino Uno’nun bağlı olduğu portu seçiyoruz.
- Böylelikle Arduino Uno, bilgisayarımıza tanımlanmış oluyor. Yükle butonuna basarak programı karta yüklüyoruz ve projemiz çalışmaya başlıyor 🙂
Arduino Uno vs. Mega
Uno da Mega da Arduino’nun en popüler modellerinden ikisi. Temelinde iki kart da aynı yazılım arayüzünde programlanıyorlar fakat tamamen ihtiyaca göre her ikisinin de tercih yerleri değişebiliyor. Çalışma gerilimi, giriş gerilim limitleri gibi özellikleri aynı olsa da temel olarak iki kart arasında bir boyut farkı vardır. Bunun haricinde ise en belirgin özelliklerden bazıları:
- Arduino Uno 14 Dijital I/O pine sahipken Arduino Mega tam 54 Dijital I/O pinine sahiptir.
- Arduino Uno’da bu pinlerin 6 tanesi PWM çıkışı iken Arduino Mega’da 15 adet PWM çıkışı vardır.
- Arduino Uno 6 adet Analog giriş pinine sahiptir, Arduino Mega ise 16 adet analog giriş pinine sahiptir.
- Arduino Uno kartındaki mikrodenetleyici ATmega328, Mega’daki ATmega2560 olduğundan mikrodenetleyiciler arasında da temel özellik farkları vardır. Arduino Mega’nın özelliklerini sitemizde daha detaylı inceleyebilirsiniz.
gayet açıklayıcı. elinize sağlık
Hocam peki arduinoya 12 volt verirken en fazla kaç amper verebiliriz , amper sınırı varmıdır?
Kardeş 18 tane malzemesini yazar mısın şimdi acill lazım yarına ödev var!!
Merhaba
Arduino nano yu projede kullanıyorum.
D11,12 pinlerine buton bağlayıp giriş olarak kullanmak istiyorum ancak kod yazdığımda ıf deyimiyle butona basmadigim halde ıf in içine girip çalışıyor. Voltajı kontrol ediyorum voltaj yok. Aynı kodu d13 pini için kullandığımda normal çalışıyor.
Yardımcı olabilir misiniz? Kafayı yedirecek bana.
Tüm sitelerde bu pinlerı giriş çıkış olarak kullanabileceğimizi yazıyor