Arduino Size Ne Katabilir ?

Mühendislik fakültesine gelip Arduino ile tanışan ve Arduino ile tanıştım diye sağda solda bahsedenler bunu bir marifet gibi anlatsa da aslında çok geç kaldıkları ortadadır. Arduino meslek liselerinde ve ortaöğretimde kullanılmak üzere bir eğitim ürünü olması gerekirken meslek yüksek okulları ve hatta mühendislik fakültelerinde çok büyük bir şeymiş gibi öğrenilmektedir. Bu eğitim sistemimizin büyük bir başarısızlığı olarak karşımıza çıkmaktadır. Mezun mühendis olup nasıl Arduino öğrenebilirim diye bana soranların olduğunu da düşünürsek mühendislik okurken Arduino’yu tam anlamıyla öğrenebilmek bile büyük ilerleme diyebiliriz.

Arduino olmasaydı acaba ne olacaktı diye düşünmekteyiz. Ben mikrodenetleyicilere başladığım zamanlar bitirme projesi olarak PIC ile dijital saat devresi yapıldığını duymaktaydım. Ne kadar doğru bilmiyorum ama böyle bir uygulama ancak meslek liselerinde ödev olarak yapılabilirdi.

Olaya sadece mühendislik boyutundan bakmayıp daha alt bir seviyeden bakarsak daha olumlu bir izlenime sahip olabiliyoruz. Çünkü Arduino bir insanı mühendis yapacak değil mühendisliğe hazırlayacak bir aygıt görevindedir. Kime mühendis ve neye mühendislik dediğimizi sorgulamamız gerekir.

Konumuza dönersek Arduino’nun hiç bilmeyen birine ne katabileceğinden bahsedeceğim. Bu süreç içerisinde elbette hiç bilmeyen birinin bilgisi artacak ve elde edebileceği bilgiler de başlangıçtaki durumu ile aynı olmayacaktır.

Analog Elektronik

Arduino bir dijital sistem olarak analog elektronik konusunda kendi başına çok bir şey katacak değildir. Fakat önemli olan Arduino ile çalışırken aynı zamanda da farklı projeleri araştırmak ve eğitim meteryallerinden analog elektroniğe ve elektronik parçalara dair bilgileri edinmektir. Direnç, led, transistör, entegre, potansiyometre  gibi aygıtlar ve temel gerilim işlemleri bu sayede öğrenilmiş olur. Arduino ile led yakmanın yanında ledlerin hangi gerilimle çalıştığını, hangi direncin kullanılması gerektiğini ve ne kadar akım çektiğini kendi araştırmalarımızla öğrenebiliriz. İyi bir kaynakta bu bilgiler seviyeye göre yeteri miktarda yer almaktadır. Aynı zamanda çeşitli projeler incelendiğinde projelerin nasıl beslendiğine dair de fikir oluşur. Bataryalar, regülatörler ve adaptörler öğrenilir. Böylece dijital sistemlerdeki güç tüketimi konusu bu konuda bilgi edinmeye vesile olur. Yine de analog elektroniğin ileri konularını Arduino ile öğrenmek mümkün değildir. Bunun için akademik ve teknik yayınlara müracaat etmek gereklidir. En kötü ihtimal gömülü sistemlerde işimize yarayacak kadar analog elektroniği kaynakları okumakla öğrenebiliriz.

Dijital Elektronik

Arduino dijital bir sistem olduğu için dijital elektronik konusunda bize katacakları daha fazladır. Burada bize bir şeyler katması için yine çok okumak ve araştırmak gerektiğini söylememiz gerekir. Hazır projeleri bakıp yapmakla bize bir şey katması söz konusu değildir. Yabancı kaynaklarda projeler konu ile alakalı teorik bilgi ile beraber yayınlandığı için bu konuda eğitici özellikleri oldukça fazladır. Türkçe kaynaklarda ise projeler genelde içerik yazarlığına soyunan mühendisler tarafından kırpılarak kopyalanıp bizimle paylaşıldığı için sadece bakıp yapmadan ibaret bir içerik haline geliyor. Bu projelerin asıl kaynağı https://www.instructables.com/ gibi siteler olup burada proje hakkında verilen bilgiler yeterli seviyededir. Bir şeyler yaparken aynı zamanda da okuyup öğrenme imkanımız vardır.

İkilik sayı sistemi, dijital giriş ve çıkışlar, iletişim protokolleri gibi konular Arduino üzerinde kendi projesini yapmak isteyenlerin ister istemez öğreneceği temel bilgilerdir. Böylelikle bir dijital sistemin dili yavaştan öğrenildiği gibi bunun denetimi de öğrenilmeye başlanmış olur. Bu da ileride 8-bit mikrodenetleyiciler üzerinden gömülü sistem tasarımı yapacak kişilerin işini oldukça kolaylaştıracaktır.

Gömülü Sistemler

Gömülü sistemlere girişteki ilk durağımız olan Arduino bize gömülü sistemlerin işleyişi hakkına ipucu vermektedir. Mikrodenetleyiciler, hafıza birimleri, sensörler, ekranlar, modüller ile bir gömülü sistem tasarımı yapmanın yolu açılmaktadır. İstediğinizde kendi Arduino kartınızı nasıl yapacağınız hakkında da kaynak bulmak mümkündür. Gömülü sistemleri diğer programlama ve yazılım geliştirmeden ayıran bir nokta ise hakkında internet kaynaklarının diğerlerine göre oldukça yetersiz olmasıdır. Arduino’da ise böyle bir şey söz konusu değildir. Her ne kadar birbirinin kopyası kaynaklar yer alsa da biraz araştırma ile nitelikli kaynağa ulaşmamız mümkündür. Doğrudan PIC veya AVR programlamakla işe başlayan birisi elindeki kısıtlı kaynaklarla çok daha zorlanarak bunu öğrenebilecekken Arduino ile işe başlayıp ileride kısıtlı kaynakları kullanabilecek bir seviyeye gelmek mümkündür. Örneğin SPI ve I2C protokollerini kullanmayı Arduino ile öğrenen birisi sonra datasheetten okuduğunda kendisine yabancı gelmeden konuyu anlayabilecektir.

Arduino bir maker pazarı ortaya koyduğu için bu pazarda yer alan farklı mikrodenetleyici kartlarını ve sistemleri görme şansı elde edebiliriz. Raspberry PI gibi ARM linux sistemleri ile gömülü linux’den haberimiz olur. ARM kartlar ile yüksek performanstan ve 32-bit mikrodenetleyicilerden haberimiz olur. Burada bu kartların çoğunun genelde ticari maksatla pazarlandığı ve öğretici yönüne ağırlık verilmediği gerçeği olsa da kullanıcı topluluğu tarafından telafi edilmeye çalışılmaktadır.

Programlama

Arduino C/C++ tabanlı bir framework ile programlandığı için C ve C++ programlama dillerine giriş için kullanılabilecek bir platformdur. Böylelikle C dilinde programladığımız bir kodu gerçek hayatta gözlemleme şansımız olur. Normalde konsol üzerinden çalışan ve işletim sistemine bağlı olarak yazdığımız kod yerine sıfırdan bizim yazdığımız ve bir sisteme bağlı olmadan çalışan ve dış dünya ile iletişime geçen bir kodu yazmış oluruz. Böylelikle daha iyi tecrübe ederek öğrenme imkanımız artmış olur. Aynı zamanda algoritma öğrenmek için de oldukça fazla etkileşimi sağlayabileceğimiz bir üründür. Düğmeler, sensörler, ledler ile yazdığımız programı bizzat tecrübe edebiliriz. Bunu yaparken yardımcı kaynaklardan da faydalanmak zorunludur. Arduino öğrenmeye başlayan birinin aynı zamanda C hakkında yazılmış kitapları ve eğitim malzemesini de edinmesi gerekir. Bunun gerekliliğinin farkında olmayan biri için bir şey diyemeyiz.

Bilgisayar Okur Yazarlığı

Ülkemizde pek çok insanın internete erişimi olsa ve elinin altında bilgisayar olsa da bilgisayarı kullanmasını bilen insan sayısı oldukça azdır. Bir sürücü yüklemeyi bile bilmeyen insana Arduino sürücü yüklemeyi öğretebilir. Ayrıca “Google” kullanabilme konusunda da pek çok insanın ciddi sorunu vardır. Arduino öğrenmeye başlayan biri ister istemez arama motorlarını ve internet sitelerini kullanmayı öğrenmek durumunda kalır. Bu biraz dolaylı bir yol olsa da yine de insanın bilgisayar kullanmayı öğrenmesine katkı sağladığını söyleyebiliriz.

Bu yazdıklarımızın konuya yatkınlığı olan biri için ortaya çıkan bir tablo olduğu iddia edilebilir. Sonuçta o kadar çalışıp led yakmaktan öte geçemeyenlerin var olduğu da bir gerçek. Burada Arduino’yu suçlamak pek doğru olmaz. Bu konu hakkında farklı bakış açılarıyla farklı yorumlar getirebilsek  de bu kadarı fikir edinmenizde yeterli diye düşünüyorum.

Bizi Facebook grubumuzda takip etmeyi unutmayın. Bilgili ve öğrenmeye hevesli bir topluluk oluşturmak istiyoruz.

https://www.facebook.com/groups/1233336523490761/

 

UYARI!!

Gökhan Dökmetaş

"Arduino Eğitim Kitabı" ve "Arduino ve Raspberry PI ile Nesnelerin İnterneti" kitaplarının yazarı. Başkent Teknoloji ve Dedektör Merkezi'nde Ar-ge Sorumlusu. Araştırmacı-Yazar.

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.