Robot Programlama – Kütüphaneler

14. Kütüphaneler

Arduino kütüphaneleri belirli görevleri yerine getirecek bileşen bilgilerini içeren yapılardır ve bu yapıları sayesinde yapılacak işlemlere daha kısa yoldan ve komut karmaşası olmadan ulaşılmasını sağlarlar. Diğer bir ifadeyle bu kütüphaneler sayesinde mikrodenetleyiciler ve kullanılan bileşenler ayrıntılı olarak bilinmese de kolayca programlanabilmektedir. Arduino projelerini oluşturan elektronik bileşenler, çeşitli sensörler, motorlar, LCD ekranlar, butonlar gibi çok fazla sayıda ek elemana ihtiyaç duymaktadır. Bu elemanlardan bir çoğu ise kendi içerisinde başlı başına bir yapıya, çalışma örgüsüne sahiptirler. Bu elemenların Arduino ile kullanımı, o eleman tarafından yapılacak iş için gerekli kodlamanın da programcı tarafından yapılmasını gerektirmektedir. Bu gerekliliğin sağlanmasını, bu elemanlar ile Arduino programlamasınının birleştirilmesi ve aralarında köprü görevi görecek yapıların oluşturulması görevi kütüphaneler tarafından gerçekleştirilmektedir. Kütüphanesi olmayan bileşenler için kütüphaneler kullanıcı tarafından oluşturabileceği gibi genellikle kullanılan bileşenler, bileşen üretici firmalar tarafından hazırlanırlar veya Arduino IDE ile birlikte hali hazırda yüklü olarak gelirler. Kullanılacak bileşenin ihtiyaç duyduğu kütüphane, hazırlanan programa bir komut aracılığıyla eklenerek bu bileşen kolayca kullanıma hazır hale getirilmektedir. Kütüphaneler içeriğinde belli başlı ek komutlar ve değişkenler içerirler. Programa eklenen bir kütüphane ile bu kütüphane içeriğinde bulunan komutları ve değişkenler hazırlanan program üzerinde kullanıma hazır hale gelmektedir.

Arduino IDEde kütüphane ekleme

Belli başlı güncel kütüphaneler Arduino IDE ile yüklü halde gelmektedir. Bunlar IDE penceresinde Taslak>library ekle sekmesinde açılan listeden istenilen seçilerek programa eklenmektedir. Burada yüklü gelen tüm kütüphaneler de görülebilmektedir. Ancak kullanılacak kütüphane farklı bir kaynaktan temin ediliyorsa kütüphane dosyası, Arduino’nun kurulu olduğu dosya konumu altında libraries klasörü içerisine kopyalanmalıdır. Ayrıca yapılacak programın en başına yazılacak #include <KütüphaneAdı.h> şeklinde bir komutla da çalışılan programa eklenmelidir. Burada standart kütüphane Arduino Robot kütüphanesi kısaca açıklanmıştır.



Arduino Standart Kütüphaneleri

EEPROM: Kalıcı hafızaya veri yazmak ve okumak için kullanılmaktadır.

Ethernet / Ethernet 2: Arduino Ethernet Shield, Arduino Ethernet Shield 2 ve Arduino Leonardo ETH kullanarak internete bağlanmak için kullanılmaktadır.

Firmata: Standart bir seri protokol kullanılarak bilgisayardaki uygulamalarla iletişim kurmak için kullanılmaktadır.

GSM: GSM Shield ile bir GSM / GPRS ağına bağlanmak için kullanılmaktadır. LiquidCrystal: Likit kristal ekranları (LCD) kontrol etmek için kullanılmaktadır. SD: SD kartları okumak ve yazmak için kullanılmaktadır.

Servo: Servo motorları kontrol etmek için kullanılmaktadır.

SPI: Seri Çevresel Arabirim (SPI) kullanan cihazlar ile iletişim kurmak için kullanılmaktadır.

SoftwareSerial: Herhangi bir dijital pin üzerinden seri haberleşme yapmak için kullanılmaktadır.

Step: Step motorlar kontrol etmek için kullanılmaktadır.

TFT: Arduino TFT ekranda metin, resim ve şekiller çizmek için kullanılmaktadır.

Wi-Fi: Arduino üzerinde Wi-Fi Shield kullanarak internete bağlanmak için kullanılmaktadır.

Wire: İki Tel Arabirimi (TWI / I2C veri yolu üzerindeki cihaz veya sensörlerden) veri almak ve göndermek için kullanılmaktadır.

Arduino Robot Kütüphanesi



Robot kütüphanesi Arduino IDE 1.0.5 ve sonrası ile birlikte gelmektedir. Kütüphane, Arduino tarafından satışı yapılan Arduino Robot fonksiyonlarına kolayca erişmek için tasarlanmıştır. Robota Stok Kartı Yazılımı yüklendiğinde, robotu oluşturan dâhili algılayıcıları ve aktüatörleri için destek sağlamaktadır. Robotun ve ana kontrol kartı ve motor kontrolünden oluşan iki temel bileşen için gerekli araçları sunar. Her kart ayrı bir programlanabilir işlemciye sahiptir ve robot kütüphanesiyle kolayca kullanılabilir. Örneğin kütüphane; kontrol kartındaki çeşitli algılayıcılar ve çevre birimleri ile arabirim oluşturulmasına, motor hızı ve yönünün kontrol edilmesine, I2C bağlantı noktasının kontrol edilmesine vb. olanak sağlamaktadır. Bunlar için oluşturulan RobotControl sınıfı fonksiyonları robot kontrol kartına ve kontrol kartındaki tüm giriş çıkışlara (I/O) ve motorlara komut verilmesine olanak sağlamaktadır. RobotMotor sınıfı ise programcının motor kontrolü için kendi bellenimini (firmware) oluşturmasına olanak tanımaktadır.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir