Gömülü Sistem Rehberi -3- Gömülü Sistemlere Nereden Başlamalı ?

Gömülü sistemlere nereden başlanacağı sizin ilgi ve çalışma alanınıza bağlı olduğu gibi sizin ön gereksinimleri ne kadar karşıladığınız ile de doğrudan alaka gösterir. Örneğin analog ve dijital elektronikte çok ileri seviye olan, C/C++ dilinde ileri seviye,  mikroişlemci ve bilgisayar mimarisine oldukça hakim birisi doğrudan doğruya 32-bit mikrodenetleyicilerle gömülü sistemlere başlayabilir. Fark ettiyseniz söylediğimiz kriterler ilk yazıda bahsettiğimiz gereksinimler dahilindeydi. Bu gereksinimleri ileri derecede karşılayan birisi için biz nereden başlayacağı konusunda tavsiye veremeyiz çünkü kendisi nereden başlayacağını az çok bilir. Fakat bahsettiğimiz koşulları sağlayan mühendisleri bile günümüzde pek görememekteyiz. Hatta bazı yeni mezun mühendisler bu konularda sıfıra yakın olmaktadır. Örneğin İngilizce birkaç kelimeyi bile anlamayan, C dilinden bihaber, dersi geçmek için ezberleyip unutan, okuduğu okulu anlamamış pek çok mezun mühendisleri görmek mümkündür. Hatta bazı geliştirici olmak isteyenlere Türkçe öğrenmekle işe başlaması yönünde tavsiye de vermekteyiz. Çünkü daha Türkçe’yi bilmeden İngilizce öğrenmesi veya diğer konuları öğrenmesi çok zor olmaktadır. Bunu okuduğum dilbilim kitapları da tasdik etmektedir. Örneğin Almanyada yaşayan Türk ailelerin çocuklarına yönelik Alman hükümeti Türkçe dersleri vermektedir. Çünkü bu çocuklar aile çevresinde Türkçe’yi yeteri kadar öğrenememekte ve bu yeteri kadar bilmedikleri anadille Almanca veya öteki dersleri de öğrenememekte ve okulda başarısız olmaktadırlar. Türkçeyi öğrenme konusundaki tavsiyemizin sebebi budur.

Gömülü sistemlere nereden başlanacağı konusunda daha önce saydığımız gereksinimleri temel/orta seviye karşılayanlar için bu yazımızı kaleme alalım. Dikkat edin, sıfır veya çok ileri seviye olana bir tavsiyede bulunmuyoruz. Bu konularda sıfır olana datasheet oku demekle ileri seviye olana Arduino ile başla demenin zararı büyüktür. Nereden başlanacağı konusu tamamen seviye ile alakalı bir durumdur.

Gömülü sistemlere başlamak isteyenler için son yıllarda bir takım olumlu gelişmeler ortaya çıkmıştır. Bunlardan birincisi hobi elektronik kitlesinin büyümesidir. Hobi elektronik kitlesi büyüse de bu büyümenin olumlu yönde olduğunu söylememiz biraz zor olur. Çünkü hobi elektronik ile uğraşanların eskiden yaptığı işlerle şimdi yaptığı işleri kıyaslayınca arada büyük bir uçurum görmekteyiz. Fakat biz her durumu kendi yararımıza kullanmayı öğrenmemiz gereklidir. Hobi elektronik kitlesinin büyümesi bu konudaki pazarın büyümesine sebep olmuş ve eğitimde kullanılabileck malzemelere erişmemiz kolaylaşmıştır. İkinci nokta ise bilgi noktasındadır. Türkiye’de Arduino’nun bile yavaş yavaş öldüğünü görsek de yabancı ülkelerde hobi elektronik toplulukları oldukça canlıdır. Bu canlılık bu alanda yıllarca çalışan insanların sesini duyurmasına ve bilgilerini paylaşmasına imkan tanımaktadır. Youtube, blog ve forumlarda bu tarz eğitim içeriklerinin artması hem hobiciler hem de gömülü sistemler üzerinde çalışmak isteyen amatör ya da profesyoneller açısından büyük bir imkandır.

Gömülü sistemler önceleri şimdiki halinden daha sessiz ve küçük bir sektördü. Son yıllarda Eşyaların İnterneti, ucuz mikrodenetleyiciler, gömülü linux gibi sistemler ortaya çıkıp bunlar eğitimlerde ve uygulamalarda kullanmaya başlandıkça bu sektör iyice büyümüş ve firmalar iyice rekabet içerisine girmiştir. Mikrodenetleyici pazarı yıllar geçtikçe büyük bir yükselişle büyükmektedir. Aynı zamanda talep arttıkça mikrodenetleyiciler ve diğer gömülü sistem elemanları ucuzlamakta ve erişilebilir hale gelmektedir. Aliexpress gibi Çin siteleri de bu olumlu gelişmenin başka bir boyutudur. Biz belki onlarca dolar harcayıp temin edebileceğimiz bir entegrei birkaç dolara alabilir hale geldik. Ayrıca Adafruit, Sparkfun gibi firmalar her ne kadar maker pazarına yönelik ürün üretir gibi görünseler de gömülü sistemlerde geliştiricilerin işini kolaylaştıracak pek çok modülü üretmektedir. Elbette onların modüllerine onlarca dolar vermek istemeyiz, birkaç dolara aynı modülleri Aliexpress’de bulmamız mümkündür.  Çin malı ürünlere bakmasanız bile firmalar büyük rekabete girdiği, eğitim ve hobi elektronik pazarına yöneldiği için bazı ürünleri oldukça uygun fiyatlara bulabilirsiniz. Önceden bir programlayıcı, bir deneme kartı 50-100 dolarlardan başlarken şimdi 5-10 dolara programcısı ile beraber orjinal geliştirme kartları piyasaya sürülmektedir.

Gömülü sistemlere giriş yapmak için öncelikle programlanabilir mantıksal sistemlerden birini tercih etmeli ve bir markadan başlamak gereklidir. Programlanabilir mantık içerisinde CPLD/FPGA gibi mantık bloklarından oluşan ve donanım tanımalama dili ile tasarım yapılan sistemlerden daha önce bahsetmiştik. İsterseniz Assembly dilini de C dilini de bir köşeye bırakıp mikrodenetleyici/mikroişlemci sistemlerine hiç bulaşmadan programlanabilir mantık üniteleri üzerinde geliştirme yapabilirsiniz. Mikrodenetleyici ile yapabileceğinizden daha fazlasını bu sistemler ile yapmanız mümkündür. Fakat bu sistemlere doğrudan geçiş yapmak için ciddi bir dijital elektronik ve dijital tasarım temelinizin olması şarttır. Zorluk bakımından en zoru da CPLD/FPGA sistemleri olduğunu söyleyebiliriz. Mikroişlemciler ile tasarım yapmak istediğinizde 6502, Z80, 8088 gibi antika mikroişlemcilerin bile halen yan sanayi olarak üretilip kullanıldığını görmekteyiz. Bunun yanında günümüzde üretilen mikroişlemciler (CPU değil microprocessor) yüksek işlem kabiliyeti ve işletim sistemi üzerinde çalışmaya yönelik üretilmektedir. Bu tarz cihazları basit kontrol ve otomasyon uygulamaları için kullanmanız biraz abes kaçsa da yazılım boyutu ağır basan ve yüksek seviye işlem gerektiren uygulamalarda mikroişlemci üzerinden çalışmayı tercih edebilirsiniz. Günümüzde Raspberry PI gibi mikroişlemci tabanlı ARM çekirdekli ve Linux sistemli tek kart bilgisayarlar oldukça yaygınlaşmıştır.

En son olarak en yaygın ve en klasik yöntem olarak mikrodenetleyiciler ile gömülü sistemlere başlanmasından bahsedebiliriz. Bizim de temeli çok oturmamış ve gereksinimleri fazla karşılamayan yeni başlayanlara tavsiyemiz mikrodenetleyiciler yönünde olacaktır. Mikrodenetleyiciler sayesinde dijital elektronik, pratik elektronik, analog elektronik, mikroişlemci mimarisi ve C programlama konusunda hem bilgi hem tecrübe edinme imkanınız olacaktır. Yalnız ilk yazıda bahsettiğimiz gereksinimleri karşılamayan yani sıfıra biraz daha yakın olan kişiler için son yıllarda çıkan yeni bir eğitim platformu vardır. Bu platformun adı Arduino’dur.

Biz mühendislere Arduino öğrenmemelerini söylesek de mühendislik fakültelerinde Arduino’nun bile seçmeli ders olduğunu görmekteyiz. Üstelik mühendisler temel bilgilerden o kadar yoksun ki pek çoğu Arduino öğrenirken bile büyük zorluk çekiyor. Bizim sıfıra yakın yani sokaktan geçen insana yakın olan durumu pek çok mühendislik öğrencisinde şimdiye kadar gözlemledik. Ne yazık ki eğitim sistemi bu kadar kötü olunca Arduino’yu hakkıyla bilebilen mühendislik öğrencisini bile tebrik ediyoruz. Biz orta seviyeye yakın olanlara Arduino’yu tavsiye etmesek de temel bilgilerde sıkıntı yaşayan, temeli yeterince oturtamamış veya temel oturturken zaman kazanmak isteyen öğrencilerin Arduino ile başlaması gerektiğini savunuyoruz. Arduino eğitim platformu olarak iyi yönde kullanılabildikçe oldukça olumlu neticeler elde edilmektedir.  Bunun için yazdığım “Arduino Eğitim Kitabı” bir Arduino eğitiminin nasıl olması gerektiğini gösterir niteliktedir. O yüzden Arduino ile gömülü sistemlere nasıl başlanır sorusunu atlayıp okuyuucularımızı kitaba yönlendiriyoruz. Bir sonraki yazıda mikrodenetneyiciler ile gömülü sistemlere nasıl başlanır sorusunu sizlere bütün ayrıntısı ile açıklayacağız.

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.