20 Haziran 2010 Pazar

arduino nedir?

arduino
Arduino, fiziksel dünya ile iletişim ve etkileşim kurmanızı sağlayan bir araçtır. Açık kaynak kodlu basit bir mikroişlemci devresi ve bu devreyi programlamanıza yarayan bir yazılım paketinden oluşmaktadır.

Arduino projeleriniz hem bir bilgisayara bağlı olarak hem de kendi başlarına çalışabilirler. Bilgisayara bağli iken çeşitli sensörlerden veri toplayıp bunu bilgisayarınızda çalışan programlarınıza aktarabilirler, örneğin oda sıcaklığına göre arkaplan rengini değiştiren bir Flash uygulaması geliştirebilirsiniz. Başka bir örnek olarak da Processing ile yazdığınız, ekrandaki çeşitli nesneye tıklandıgında Arduino vasıtasıyla bir kaç motoru kontrol eden bir uygulama gelistirebilirsiniz.

Özetlemek gerekirse,

Donanım olarak Arduino: Bilgisayara USB arayüzü ile bağlanan basit bir mikroişlemci devresidir. Kendi başına otonom bir şekilde çaliçabilecegi gibi bilgisayara bağlanıp bilgisayarınızın fiziksel dünya ile iletişim kurmasını sağlayabilen bir alettir.

Yazılım olarak Arduino: Arduino donanımının programlandığı, çeşitli kütüphaneler vasıtasıyla ‘kod uzmanı’ olmadan bir çok ek aletin Arduino tarafından kontrol edilebilmesini sağlayan uygulamaların geliştirildiği yazılımdir.

Neden Arduino?

Diğer mikroişlemci platformlarına göre;

  • Kullanımı kolaydır. Programlamak için derin donanım bilgisine ve genellikle kullanımı zor olan geliştirme araçlarına ihtiyacınız yoktur. Arduino programını yükledikten sonra tek ihtiyacınız olan bir adet USB kablosudur
  • Ucuzdur. Demin de bahsettigimiz gibi ekstradan geliştirme aletlerine ve pahalı yazılımlara ihtiyacınız olmadan sadece bir adet Arduino boardu alarak (ya da kendiniz yaparak) Arduino ile proje geliştirmeye başlayabilirsiniz.
  • Cross-platform dur. Windows, Linux ve MacOS işletim sistemleri altında calışmaktadır.
  • En önemlisi Açik kaynak kodludur. Arduino yazılımını özgürce kendi istekleriniz dahilinde değiştirebilirsiniz ve yayınlanan devre şemalarını kullanarak kendi Arduino uyumlu devrenizi tasarlayabilirsiniz.

Niye Arduino yerine bilgisayar kullanmıyoruz?
Belki de en önemli nokta, kullanmak istediginiz sensor vb. gibi cihazların direk bilgisayarinıza bağlanamamasıdır. Arduino bu parçalar ile bilgisayarınız arasında köprü vazifesi görür. Aşağıdaki resimde tipik bir bilgisayarin sahip oldugu bağlantı noktalarını ve çeşitli sensörleri görebilirsiniz.

Ports/Devices

Arduino bir bilgisayar kadar kuvvetli değildir. Bilgisayariniz 2000MHz hızında çalışırken Arduino 16MHz hızında çalışır. Bunun gibi bir sürü kısıtlama daha bulunmaktadır (program hafızası, işlem kapasitesi vb). Ancak eğer uygulamanız Arduino yazılımı ve donanımı tarafından desteklenebiliyorsa, bir bilgisayar yerine Arduino kullanmanız size şu gibi avantajlar sağlayabilir:

  • Yer tasarrufu: Projenizde bilgisayarınızın kaplayacağı yer eğer sorun yaratıyorsa Arduino kullanmanız bu sorunu çözebilir. örnek olarak:

    Robot/Laptop/Arduino

  • Enerji tasarrufu: Eğer taşınabilir ve pille çalışan bir proje geliştiriyorsanız Arduino size çok uzun süreler hizmet edebilir :)
  • Bütce tasarrufu: Bir laptop fiyatına onlarca Arduino alabilirsiniz! Diyelim ki 20 noktada birbiri ile senkronize çalısan cihazlar kullanarak bir gösteri hazırladınız. Bu noktalarda Arduino kullanarak yüksek miktarda tasarruf edebilirsiniz.

Bu saydığımız avantajların geçerliliği projeden projeye göre değişir. Eğer projenizde dinamik olarak üç boyutlu grafiklerle uğraşıyorsanız ya da ağır matematiksel hesaplamalar yapıyorsanız sadece Arduino kullanarak projenizi tamamlayamazsınız. Bilgisayarların güçlü olduğu alanlar ile Arduino veya genel olarak mikroişlemcilerin güçlü olduğu alanlar farklıdır. Genellikle bu iki değişik teknolojinin birleşimi mantıklı çözümler doğurur ;)

Arduino ve arkadasları ile ilgili sorularınızı/sorunlarınızı forumumuzda tartışabilirsiniz.



Bu yazıda kullanılan resimler, aşağıdaki kaynaklardan alınmistır: Yazının kaynağına buradan gidebilirsiniz.