Bugün Internet Computer Protocol blok zincirini tanıyıp Hello World örneğiyle bu merkeziyetsiz geliştirme ortamına ilk adımımızı...
Arduino Girdi / Çıktı Birimleri
Kemal İKİZOĞLUArduino’nun küçük ve marifetli bir kart olduğundan önceki yazılarımda bahsetmiştim. Kartı elinize aldığınızda üzerinde birçok giriş çıkış birimleri bulunmaktadır. “Hangisi ne işe yarıyor bunların?” diye nereden başlayacağınızı şaşırmış olabilirsiniz. Bu yazıda Arduino giriş ve çıkış birimlerini tanıtıp, Arduino geliştirme ortamını hazırlayacağız. Bir sonraki dersimizde Temel Programlama Bilgisi konusuna değineceğiz. Bu bilgilerden sonra blogumda ve internet üzerinde var olan Arduino projelerini rahatlıkla inceleyip kendiniz uygulayabilecek düzeye geleceksiniz. Hadi başlayalım.
Arduino Kart Arayüzünü Tanıyalım
- Reset Butonu: Arduino içerisinde yüklü olan yazılımın resetlenmesini ve baştan başlatılmasını sağlamaktadır. Kart üzerinde bulunan buton yardımıyla resetleme işlemini gerçekleştirir.
- Analog Reference PIN (AREF): Analog Referans pini analog ölçümlerimizin doğruluğunu arttırmak için koyulmuş bir pindir. Arduinomuzu USB girişinden besliyorsak kartımız 4.8 Volt ile çalışıyor olacaktır. Analog Referans Pini boş bırakılırsa analog girişlerden alınan değerler kartın çalışma gerilimi referans alınarak dijitale dönüştürülecektir. Örneğin 4.8 volt çıkış veren bir devre elemanı Arduinonun analog girişine bağlandığında arduino 4.8 Volt a karşılık 1024 değerini üretecektir. Bu da ölçümlerimizde hataya neden olacaktır. Bu nedenle daha doğru ölçümler gerçekleştirmek için Arduino Referans Pinine 5 Volt gerilim uygulanmalıdır. Referans pinin bir diğer kullanım alanı ise belirli voltaj aralığında ölçümler yaptığımız durumlarda hassasiyeti arttırmaktır. analogReference() fonksiyonu ile kullanılır.
- GND PIN(Ground – Toprak): GND pin devremizin tamamlanması için gerekli topraklama pinidir. Arduinonun kart şeklinde tasarlanmış çeşitlerinde genellikle birden fazla Gnd PIN bulunmaktadır. Bunu nedeni Arduino GND pin üzerinde 200 ma lik bir akım geçirebilmektedir. 2 adet GND pin ile bu değer 400 ma e çıkmaktadır.
- Digital I/O PIN: Bu pinler dijital giriş / çıkış pinleridir. Elektronik bileşenlerimize Arduino içerisinde bulunan yazılıma göre 5 Volt ya da 0 Volt vermek için ya da dışarıdan 0 Volt ya da 5 Volt verildiğini algılamak için kullanılırlar. Bu Pinlerden 40 ma çıkış akımı verilebilmekte ve dışarıdan gelecek 40 ma akıma dayanabilmektedir. Arduino yazılımı içerisinde tüm dijital giriş/çıkış pinleri giriş ve çıkış olarak belirlenebilir.
PWM PINS: Bazı Dijital giriş çıkış pinlerinin yanında “ ~ ” işareti yer almaktadır. Bu pinler PWM (Analog Çıkış) pinleridir. Bu pinler aracılığı ile 0 – 5 Volt arası gerilim kare dalga şeklinde 8 bit çözünürlüğünde devre elemanına aktarılabilmektedir. Özetle bu pinler aracılığı ile (5/256 Volt) hassasiyetinde gerilimler üretmemiz mümkündür. Özellikle servo motor kontrolünde Arduino üzerinde bulunan PWM çıkışları yaygın olarak kullanılmaktadır. - Serial 1 (TX) : Bu pin TTL seri data yaymak (transmit – TX) içindir
- Serial 0 (RX): Bu pin TTL seri data almak (receive – RX) içindir.
- ATmega işlemcisi için ICSP – I2C portu: İki Arduinoyu veya Arduinoya bağlı birçok shieldi veya sensörü bu porta bağlayarak daha az pin kullanıp haberleşmesini sağlayabilirsiniz. Açılımı Inter Integrated Circuit tir ve kısa mesafeli senkron haberleşme protokolüdür.
- ATmega işlemcisi: Burada ATmega328P dir. Yani kısacası tüm işlemi yapan ve kararları veren Arduino’nun beynidir. Arduino IDE uygulamasında yazdığımız kodları aktardığımız ve bulunduğu yerdir.
- Analog Pin: Arduino Uno ‘nun A0 dan A5 e kadar etiketlenmiş 6 adet analog girişi bulnur, her biri 10 bitlik çözünürlük destekler. Varsayılan ayarlarda topraktan 5 V a kadar ölçerler. Ancak, AREF pini ve analogReference() fonksiyonu kullanılarak üst limit ayarlanabilir. Arduino Analog çıkış veremez. Bu yüzden sadece giriş olarak kullanılabilmektedir. Analog çıkışı PWM ile simüle edebilirsiniz.
- VIN(Voltage in): Arduino Uno kartına harici bir güç kaynağı bağlandığında kullanılan voltaj girişidir. 7-12V arsındaki ekstra güç kaynağınızla bu porttan da arduinonuzu besleyebilirsiniz. Ancak tabi ki bu pinden yüksek voltajlı güç çıkışı alamazsınız. 9V luk pilleri direkt buradan bağlayabilirsiniz.
- GND PIN(Ground – Toprak): GND pini topraklama çıkışı olduğunu 3.maddemizde açıklamıştım. Arduino üzerinde bulunan 3 pinden kalan diğer iki pin de 11 numaralı yerde bulunmaktadır.
- 5V Pin: Bu pin Arduino kartındaki regülatörden 5 V çıkış sağlar. Devremizde 5 volt ile çalışan bileşenler var ise bu pin aracılığı ile bu besleme sağlanabilmektedir. Bu pin çıkışı 450 ma’dir.
Kart DC Power bağlantısından adaptör ile 7-12 V,
USB bağlantısından 5 V,
ViN pininden 7-12 V ile beslenebilir. - 3.3V : Arduino kart üzerindeki regülatörden sağlanan 3,3V çıkışıdır. Maksimum 50 mA dir. Bu nedenle çok yüksek akım isteyen bileşenleri bu pine bağlamamız mümkün değildir.
- Reset PIN: Bu pin adından da anlaşıldığı gibi Arduino içerisinde yüklü olan yazılımın resetlenmesini ve baştan başlatılmasını sağlamaktadır. Resetleme işlemi reset pininin topraklanması ile gerçekleştirilir. Resetleme işleminin bir pin ile gerçekleştirilmesini sağlar.
- IOREF PIN: Arduino kartlar üzerindeki bu pin, mikrodenetleyicinin çalıştığı voltaj referansını sağlar. Uygun yapılandırılmış bir shield IOREF pin voltajını okuyabilir ve uygun güç kaynaklarını seçebilir ya da 3.3 V ve 5 V ile çalışmak için çıkışlarında gerilim dönüştürücülerini etkinleştirebilir.
- ON/OFF LED: Arduino’da güç durumunu gösteren leddir. Kartta güç varsa ışık sürekli yanar. Güç gittiğinde söner.
- USB arayüzü için ICSP – SPI( Serial Peripheral Interface): Birden çok cihazı buraya bağlayarak iletişim için kullanmak istediğinizi seçebilir ve adresleme yapabilirsiniz. Buna aynı zamanda I2C de denmektedir. Master Slave haberleşmesi yapılmaktadır.
- LED: Bu ledi programlarda göstergeç olarak kullanabilirsiniz. Örneğin bir işlem gerçekleştiğinde hiçbir şey olmasın ancak programın sonucunun olup olmadığını görmek istiyorsunuz.O halde bu ledi kullanabilirsiniz.
- TX – RX LED: Bu pinler haberleşme sırasında yanıp sönerek veri paketlerinin geçişini göstermektedir.
- ATmega16U2 Çipi: Bu çip USB üzerinden haberleşmeyi sağlayan çiptir.
- Regülatör: Ekstra güç kaynağınızdan konnektöre (22 nolu) verdiğiniz 7-12 V u 5V a dönüştüren regülatördür. Devreye zarar verebilecek gerilim değerlerinden korur.
- Extra Güç Portu: 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ışmayabileceği gibi üzerindeki değerlerde ise fazla ısınıp Arduinonuzun yanmasına neden olacaktır. Şanslıysanız önce regülatör yanar ama muhtemelen ondan önce işlemciniz yanacaktır.
- USB Portu: Arduino’yu 5V ile besleyebileceğimiz gibi seri giriş çıkış ile verileri anlık olarak izleyebilir, kontrol edebilir ve diğer donanımlarla seri olarak haberleştirebilirsiniz. Aynı zamanda Arduino ya yazmış olduğumuz programı yüklediğimiz kısımdır.
Evet arkadaşlar, Arduino üzerinde yer alan g/ç birimlerini, pinleri ve diğer özellikleri öğrenmiş olduk. Uygulama yaptıkça birim isimlerini, bunların görevlerini daha iyi anlamaya başlayacağız. Şimdilik bu bilgiler bizim için yeterli. Bir sonraki aşamamız Arduino Geliştirme Ortamı‘nı hazırlamak!
Bilgisayarımızda Arduino projeleri geliştirmeye başlayabilmemiz için Arduino’nun resmi sitesinde paylaşılan yazılımının güncel versiyonunu indirmeliyiz. Yazılım üzerinde sürekli geliştirme ve iyileştirmeler yapıldığı için her zaman son sürümü resmi sitesinden indirmenizi tavsiye ederim.
Arduino Resmi Site Linki : https://www.arduino.cc/en/Main/Software
Adrese girdikten sonra “Download the Arduino IDE” kısmından işletim sisteminize uygun yazılımı indiriniz. Ben “Windows Installer“ tercih edip bilgisayarıma indirdim. Windows kurulum adımlarının anlatıldığı şu linki ziyaret edebilirsiniz.
Aklınıza takılan soruları yorum bırakarak sorabilirsiniz. Bir sonraki yazıda görüşmek dileğiyle..
Kolay gelsin.
Kaynaklar:
http://www. robotiksistem.com/ arduino_uno_ozellikleri .html
http:// robotikproje .com/index.php /2015/11/18/27/
http:// electrotech .tv/ arduinoya-giris-arduino-nedir-ne-degildir- 2-bolum/
http:// sadeceuzman .com/arduino / arduino-nedir/
http:// cnrgzgz .com/ arduino-nedir/
Son Yorumlar..