Ana Sayfa Slider Blog Genel Haber/İnceleme Programlama Dilleri Son Dakika Teknoloji Yazılım

Arduino Nedir?

Arduino, elektronik projeleri oluşturmak için kullanılan açık kaynaklı bir platformdur. Arduino, hem fiziksel bir programlanabilir devre kartından (genellikle bir mikrodenetleyici olarak adlandırılır) hem de bilgisayarınızda çalışan bilgisayar kodunu yazmak ve fiziksel panele yüklemek için kullanılan bir yazılım parçasından veya IDE’den (Entegre Geliştirme Ortamı) oluşur.

            Bu bir Arduino Uno

Arduino Çeşitlerinden olan Uno, Arduino ailesindeki en popüler anakartlardan biridir ve yeni başlayanlar için mükemmel bir seçimdir.

Arduino Yazılımı Nedir?

Arduino’nun donanımını öğrendikten sonra, Arduinoyu hayata geçirmek, çeşitli sensörler ve kalkanlarla etkileşime girmesine izin vermek için yazılıma ve programlamaya ihtiyacımız vardır . Arduino’muzu programlamak için Arduino IDE yazılımı kullanılır. Arduino IDE, kod yazmanızı ve Arduino kartınıza yüklemenizi kolaylaştırır. Arduino IDE, C ++ ‘ın basitleştirilmiş bir sürümünü kullanır ve bu da programlamayı öğrenmeyi kolaylaştırır. Önceki programlanabilir devre kartlarının çoğunun aksine, Arduino’nun karta yeni bir kod yüklemek için ayrı bir donanıma ihtiyacı yoktur sadece bir USB kablosu kullanabilir. Son olarak Arduino, mikro denetleyicinin işlevlerini daha erişilebilir bir pakete ayıran standart bir form faktörü sağlar.

Bu, Arduino IDE’nin ekran görüntüsüdür.

Arduino Programlama Örneği

Led Örneği : 

Uygulama için gerekli olan malzemeler;

  • Led (8 adet)
  • 220 Ohm Direnç(8 adet)
  • Bağlantı kabloları
  • Arduino Uno R3
  • Breadboard (1 adet)

Uygulamamızın devre şeması;

Devre Şeması

Uygulamamızın kodları da aşağıdaki gibidir;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void setup() {
 pinMode(13,OUTPUT); // 13. pini çıkış olarak belirttik.
 pinMode(12,OUTPUT); // 12. pini çıkış olarak belirttik.
 pinMode(11,OUTPUT); // 11. pini çıkış olarak belirttik.
 pinMode(10,OUTPUT); // 10. pini çıkış olarak belirttik.
 pinMode(9,OUTPUT); // 9. pini çıkış olarak belirttik.
 pinMode(8,OUTPUT); // 8. pini çıkış olarak belirttik.
 pinMode(7,OUTPUT); // 7. pini çıkış olarak belirttik.
 pinMode(6,OUTPUT); // 6. pini çıkış olarak belirttik.
}
void loop() {
// Bu döngümüzde 6. pinden başlayarak 13. pine kadar ilk önce 1 verip daha sonra 0 verdik.
 for(int i=6;i<=13;i++)
 {
 digitalWrite(i,HIGH); // i. pine 1 verdik.
 delay(1000); // 1s bekledik.
 digitalWrite(i,LOW); // i. pine 0 verdik.
 }
}

Gördüğünüz gibi kodlarımız iki adet fonksiyona bölünmüş durumda. Biri void setup() diğeri void loop(). İlk olarak void setup() fonksiyonu üzerine konuşalım. Bu fonksiyon içerisine tanımlamaları yapıyoruz. Bu pinlerin giriş mi yoksa çıkış mı olduklarını tanımlıyoruz. Program çalıştırıldığında bu fonksiyon yanlızca bir defa çalışıyor. Diğer fonksiyon olan void loop() fonksiyonu ise bizim asıl kodlarımızın yazıldığı kısım oluyor. Program çalıştırıldığında bu fonksiyon sonsuz bir döngü gibi sürekli çalışıyor.

Arduino Kullanım Alanları Nelerdir ?

Arduino donanımı ve yazılımı etkileşimli nesneler veya ortamlar oluşturmakla ilgilenen herkes için tasarlanmıştır. Arduino LED’ler, motorlar, hoparlörler, GPS üniteleri, kameralar, internet ve hatta akıllı telefonunuz veya TV’yle bağlantı kurulabilir. 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 etmemizi sağlamaktadır. Bu esneklik, Arduino yazılımının ücretsiz olması, donanım kartlarının oldukça ucuz olması , hem yazılım hem de donanımın öğrenilmesinin kolay olması gerçeğiyle birleştiğinde, çok çeşitli kodlara katkıda bulunan ve talimatlar yayınlayan geniş bir kullanıcı topluluğuna yol açmıştır.

Bazı Arduino Projeleri :

Arduino Çeşitleri Nelerdir?

Arduino’nun birçok farklı modeli bulunmakla birlikte; bu modeller kullanım yeri, amacı, depolama alanı, giriş-çıkış pin sayısı vb. özelliklerine göre çeşitlendirilmiştir.

  • Arduino Uno
    Arduino’nun en popüler kart tiplerindendir. Üzerinde 3.3 V ve 5 V çıkışı mevcuttur. ATMega 328 tabanlı bir mikrodenetleyicidir. İletişimde dönüştürme işlemini ATMega 8U2 yapıyor. Arduino Uno’yu Windows işletim sistemli bir bilgisayardan kontrol etmek için yazılımını kurmak gerekirken, Mac ve Linux için herhangi bir yazılım yüklemeniz gerekmez. Haberleşme ve güç için DC adaptör ve USB port girişleri bulunuyor. Kolaylıkla pin header vasıtasıyla tüm çıkışları kullanabilmeye imkan sunuyor.
  • Arduino Pro
    Arduino Uno gibi ATMega 328 tabanlı bir mikrodenetleyicidir. Üzerinde komponentler yüzey montajlıdır. Bu sayede board’a ince bir görünüm kazandırılmıştır. Kartın üzerine konumlandırılmış bir güç anahtarı mevcuttur. JST konnektörü bulunur. Maliyetlerin azaltılması için seri bağlantı çıkarılmıştır.
  • Arduino Mega
    ATMega 2560 tabanlı mikrodenetleyiciye sahiptir. Daha çok kompleks sistemlerde kullanılır ve giriş çıkış pin sayıları fazladır. 54 adet dijital giriş ve çıkış mili ile birlikte 16 adet analog giriş bulunmaktadır. Bunun yanında 4 adet donanımsal seri porta ve 16 mhz hızında kristal osilatöre sahiptir. Arduino beslenmesi gerek DC adaptör ile gerekse USB ile sağlanabiliyor. Arduino Uno ile benzer özelliklere sahiptir.
  • Arduino Ethernet
    Adından da anlaşılacağı üzere Arduino’nun internet bağlantılı projelerinde kullanılabilmesi için geliştirilmiş bir kart türüdür. Üzerinde Ethernet portuyla birlikte Ethernet çipi yer alır. ATMega 328 tabanlı mikrodenetleyici ile gelmektedir. Bunun yanında SD kart yuvası da mevcuttur.
  • Arduino Nano
    Arduino’nun en ufak kartıdır. Ufak devreler için tasarlanan bu model ATMega 328 ve ATMega 168 tabanlı 2 farklı mikrodenetleyici ile birlikte piyasaya sürülmüştür. Arduino Nano’da gerilim regülatörü, seri ve USB çeviri çipleri, DC gerilim giriş portu ve ek olarak USB portlar yer almaktadır.
  • Arduino Bluetooth
    Yazılımda bluetooth protokolü kullanarak haberleşme yapmak isteyenler için tasarlanmış bir Arduino kartıdır. Arduino BT modülü ile birlikte kullanılır. Bluetooth üzerinden programlanabilmesi amacıyla kullanılır.
  • Arduino Leonardo
    Diğer kart türlerinden farklı olarak USB bağlantısı için ek bir çipe gerek duyulmaz. Arduino Leonardo ATMega 32u4 tabanlı bir mikrodenetleyiciye sahiptir. Kart üzerinde 20 adet dijital giriş ve çıkış pini, 12 adet analog girişi bulunmaktadır. Bilgisayara klavye ve fare olarak bağlanabilir.
  • Arduino Esplora
    Bu kart dahili olarak birçok sensörü içerisinde barındırır. Kart ile birlikte sunulan bu eklentiler sayesinde ekstra elektronik bilgiye ihtiyaç duyulmaz ve son derece uyumludur. Potansiyometre, sıcaklık sensörü, 3 renkli led, ivme ölçer, ışık ve ses sensörü ve joystic barındırdığı sensörlerdir. Arduino Esplora kartında kullanılan mikrodenetleyici ise ATMega 32u4 AVR’dir.

Arduino Uno Üzerindeki Kısımlar Nelerdir?

Tüm Arduino modelleri güç kaynağına ihtiyaç duyar.
Arduino gücünü USB (1) üzerinden veya güç kaynağı bağlantı noktasından (2) sağlar.

  • 1 – Arduinonun USB girişi

Buradan Arduinomuzu 5V ile besleyebileceğimiz gibi seri giriş çıkış ile verileri anlık olarak izleyebilir, kontrol edebilir ve diğer donanımlarla seri olarak haberleştirebilir siniz. Aynı zamanda Arduino ya yazmış olduğumuz programı yüklediğimiz kısımdır.
USB portu üzerinde resetlenebilir poli sigortası mevcuttur. 500mA in üzerinde bir akım çekildiğinde otomatik olarak kendini kapatmaktadır.

  • 2 – Ekstra güç kaynağı bağlantı konnektörü

Buradan ekstra güç kaynaklarından beslemek için kullanılan porttur. USB den 5V la besleyebileceğiniz gibi buradan da 7-12V arasındaki bir değere sahip güç kaynağınızla besleyebilirsiniz. Aslında Arduinonun hayatta kama limiti buradan beslemek için 6-20V arasında ama 7-12V un altı ve üstü Arduinonuz için sağlıklı olmayacaktır. Altındaki değerlerde düzgün çalışmaya bileceği gibi üzerindeki değerlerde ise fazla ısınıp Arduinonuzun yanmasına neden olucaktır. Şanslıysanız önce regülatör yanar ama muhtemelen ondan önce işlemcimiz yanacaktır

  • 3 – GND ( Ground – Toprak)

Toprak hattıdır. Uygulamalarda kullanılan tüm negatif kısım birbirine bağlanmalıdır. Örneğin elektronik devrenizde kullandığınız güç kaynağınızla arduinonuzu beslediğiniz kaynağınız farklıysa negatiflerini birbirine bağlamak zorundasınız yoksa düzgün çalışmayacaktır.

  • 4 – 5 Volt kaynağı

Bu portu devremizde kullanacağınız 5V kaynağı olarak kullanabileceğiniz gibi Arduinonuzu USB portundan olduğu gibi 5V ile besleyebilirsiniz ancak burada herhangi bir regülatör yoktur ve maksimum çıkış akımı 40mA dir!. O yüzden burasını kullanırken dikkatli olmalısınız yoksa Arduinoya zarar verebilirsiniz.

  • 5 – 3.3 Volt kaynağı

Arduino üzerindeki regülatör sayesinde devremizde ki 3.3 volt beslemesi gereken yerlerde kullanabileceğiniz gerilim besleme portudur. Bu porttan maksimum 50mA lik akım çekebilirsiniz. Üzerinde çekeceğiniz değerler portu yakabileceği gibi başka hasarlarda verebilir

  • 6 – Analog Girişler

Analog giriş pinleridir. Başlarında A harfi (A0, A1 gibi) vardır. Bu pinler sensörler ile iletişim kurmamızı sağlar. 0-5V aralığındaki girişleri Arduinoya vererek bu değerleri programınızda kullanabilirsiniz. Örneğin potansiyometre bağlayıp ayarlı gerilimler vererek dijtal pinlerin çıkışlarını bu değerlerle orantılı şekilde kullanabilirsiniz. Arduino Analog çıkış veremez. Bu yüzden sadece giriş olarak kullanılabilmektedir. Analog çıkışı PWM ile simüle edebilirsiniz.

  • 7/8 – Dijital Giriş çıkışlar ( PWM giriş çıkışları )

Arduino UNO da 14 adet dijital giriş çıkış vardır. Bu pinlere 5V vererek pinin veya sensörün aktif olduğunu programınıza söyleyebileceğiniz gibi her pinden 5V çıkışıda aktif edebilirsiniz. Ayrıca ~ işaretli pinlerden PWM (Pulse Width Modulation) çıkışı alabilirsiniz. Böylece diğer pinler gibi sadece 5V yerine 0-5V aralığında istediğini voltaj çıkışını bu pinlerden alabilirsiniz.
ÖNEMLİ ! Arduinonun maksimum çıkış voltajı 200mA dir. Yani 20mA değerinde 10 LED i tüm parlaklığında çalıştırırsanız Arduionuzu zorlarsınız. 10 ledi geçerek 200mA i geçerseniz Arduinonuzun pinlerini veya Arduinonun kenisini yakarsınız
Digital pin : Arduino UNO ‘da 13 adet digital pin vardır. Bu pinleri digital giriş ve çıkış için kullanırız.
PWM pin : “~” işareti gördüğünüz digital pinlerden analog çıkış alabileceğimizi belirtir.

  • 9 – AREF

Analog referans pinidir. Arduino regülatörü 1023 adıma sahiptir. Örneğin; 3 voltluk bir gerilim için 3V/1023 = 0.00293V hassasiyetine sahip gerilim adımı elde edebiliriz. Hassas uygulamalarda işimize yarayacak bir pindir.

  • 10 – Reset Butonu

Arduino kararsız çalışmaya başlarsa veya herhangi bir durumda programın baştan başlaması için bu butonu kullanabilirsiniz.

  • 11 – Güç Göstergesi

Arduinomuzun çalışıp çalışmadığını bu led sayesinde anlarız. Güç bağlantısı olduğu halde bu led yanmıyorsa ters giden bir şeyler vardır. Devreyi kontrol etmenizde fayda var.

  • 12 – TX ve RX Ledleri

İşlemciye yazılım yüklerken bu ledlerin yanıp söndüğünü göreceksiniz. Seri iletişimi ifade eder.
TX verici RX ise alıcıdır.

  • 13 – İşlemci

ATMEL firmasının ATmega328P işlemcisini görüyoruz. Yazdığımız programlar bu işlemciye gönderilir.

  • 14 – Regülatör

Devreye zarar verebilecek gerilim değerlerinden korur.Ekstra güç kaynağınızdan konnektöre (2 nolu) verdiğiniz 7-12 V u 5V a dönüştüren regülatördür.

Kaynaklar:

https://learn.sparkfun.com/tutorials/what-is-an-arduino/all

https://www.seeedstudio.com/blog/2019/12/04/introduction-to-the-arduino-what-is-arduino/

https://www.muhendis.tv/arduino-nedir-cesitleri-nelerdir

https://www.robotiksistem.com/arduino_uno_ozellikleri.html

Arduino Programlama Led Örneği | Arduino Uno R3

One Reply to “Arduino Nedir?

Ahmet Onur EVİS için bir yanıt yazın Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir