Öğrenmeyi Öğrenmek | Bölüm 2: Gerçek Bir Hikayenin Başlangıcı

Bu yazımda birinci bölümde bahsettiğim yöntemlerin Elektronik Mühendisliği için uygulamalı örneğini paylaşıyorum.

Daha önceki yazımda tecrübelerim çerçevesinde yeni bir teknoloji öğrenirken izlenebilecek bir kaç faydalı yöntemden bahsetmiştim. Bu yazımda söz konusu yöntemleri uygulayarak elektronik mühendisliğini öğrenirken nasıl bir yol izlediğimi paylaşacağım.

Her şey 4 yıl önce 1 yaşındaki oğluma robot yapma hayaliyle başladı. Hayalimdeki robot sadece çocuklarla sesli komut vs. yoluyla etkileşime geçen bir robot değil, aynı zamanda kendi kendine öğrenebilen bir robot olmasıydı. Cahil cesareti böyle bir şey olsa gerek..

Artı ve eksiden başka bir bilgim yoktu ki zaten onları da bilmediğimi sonradan fark ettim. Kısa bir araştırma sonrası Arduino gibi hızlı geliştirime açık IoT ‘ları kullanabileceğimi anladım, yazılım tecrübemle çok hızlı bir şekilde sonuç alabilirdim fakat ben işin özünü öğrenmek istedim. Sıfır noktasından 100 noktasına hızlı çıkış yapamayacağımın da farkındaydım, bu yüzden biraz düşündüm ve kendime küçük bir müfredat hazırladım:

1- Voltaj, akım, direnç gibi temel kavramların yanı sıra direnç, diyot, kapasitör, transistör gibi temel komponentlerin nasıl çalıştığını öğrenmek
2- Multimetre kullanmayı öğrenmek
3- Ohm yasası, Kirchoff yasaları gibi temel yasaları öğrenmek, öğrendiklerimi devre analizinde ve güç tüketimi gibi çeşitli hesaplamalarda kullanabilmek
4- Bir mikroişlemcinin mimarisini ve nasıl kontrol edebileceğimi öğrenmek
5- Yazdığım kodu mikroişlemciye nasıl aktarabileceğimi öğrenmek
6- İlk aşamada mikroişlemci kullanarak sinyalizasyon gibi basit de olsa çalışan bir şey yapabilmek, ama ne yaptığımı bilerek(!)

Tüm bunlar hakkında kulaktan dolma bilgiler dışında pek bir bilgim yoktu açıkçası. Müfredatın ilk maddesinden başlayarak elimde telefon, tv karşısında, iş yerinde molada, bir yere seyahat ederken, orada burada her fırsatta küçük küçük de olsa araştırmamı belirlediğim aşamalara göre ilerletmeye çalıştım.

Çoğunlukla boş zaman sıkıntısı çeken biri olarak bir taşla birkaç kuş vurmak istedim, bunun için de bir elektrik-elektronik simülatörü vasıtasıyla hem öğrenip hem de sonucu görebilirsem hızlı bir şekilde öğrenebileceğimi düşündüm. Online birkaç simülatör denedim fakat neredeyse tamamı istediğim gibi değildi, “olayı” canlı canlı resmetmiyordu, sadece yaptığınız tasarıma dair bir takım matematiksel sonuçlar üretiyordu. Açıkçası başlangıçta bana pek bir şey ifade etmedi ve biraz zaman kaybettim. Akabinde simülatörlere yönelik daha derin araştırmalarım sonucu pratik bilgi ve simülasyon için EveryCircuit adlı mobil uygulamayı keşfettim. Bu uygulama hem öğretiyor hem de canlı simülasyona imkan veriyordu, simülatördeki değişiklikler gerçek zamanlı olarak değiştirilebiliyordu ve animasyon özellikleri çok iyiydi, açıkçası görselliği çok başarılı olduğu için hızlı kavramamda çok faydası oldu. Yeni başlayacaklara tavsiye edebilirim.

Daha sonra burada edindiğim çok temel bilgileri daha detaylı bilgilerle desteklemek için Youtube ‘da bir çok video izledim. Yetmedi yabancı kaynak araştırmasına gittim ve Tony Kuphaldt ‘ın Lessons In Electric Circuits adlı e-kitaplarına ulaştım, şiddetle tavsiye ederim fakat kitapta çok detay olduğu için nerede “dur” diyeceğinizi bilmeniz gerekiyor, biraz süzerek okumalısınız diye düşünüyorum.

Bir yandan teoride araştırırken bir yandan da artık test sürüşleri yapmaya karar verdim ve bir elektronik komponent tedarikçisinden led lamba, çeşitli değerde dirençler, diyot, multimetre, breadboard, jumper kablolar, USB portuyla besleyebileceğim basit bir güç kaynağı vs. bir dolu komponent satın alıp ortalama 1 hafta boyunca öğrendiklerimi uygulamalı olarak pratiğe dökerken işin özünü kavrayabilmek için epeyce çaba sarf ettim, acemilikten dolayı kısa devre yaptırma ya da akım fazlası sebebiyle elektronik komponentler nasıl yanık kokar iyice(!) öğrendim, elimde patlayıp çatlayan komponentler de oldu. Her şeye rağmen keyifli bir süreçti.

Aşağıda temel elektrik bilgisi ve kanunlar hakkında bir şeyler öğrendikten sonra yaptığım ilk şeyin videosunu paylaşıyorum:

Elektroniğe Giriş: İlk ışıklar

“Bu ne?” dediğinizi duyar gibiyim, şaka gibi değil mi? :)

Diğerleri için çok küçük, ama benim için büyük bir adımdı.

Bu arada fark ettim ki elektronik dünyası yazılım dünyasından da betermiş, “matruşka” gibi açtıkça içinden yeni bir şey çıkıyordu ve neredeyse her komponent çeşidi kendi içerisinde deryaydı, çok fazla teknik detay vardı. Yazılımda yaptığım gibi öylece kodumu yazıp geçemiyordum ve bu pek alışkın olmadığım bir durum olduğundan biraz can sıkıcıydı, arada bir “yol yakınken vazgeçsem mi” diye düşünmeden edemedim..

Daha sonra ilk defa bir mikroişlemci satın aldım (Microchip PIC16F690) ve içerisinde bilmediğim bir ton kavramın olduğu yüzlerce sayfalık dokümantasyonunu 5–10 gün boyunca tekrar tekrar okudum. Daha önce kullandığım bir dolu teknolojiden alışkın olduğum gibi “Bir yerlerde bir takım komutlar olmalı, nerede bunlar” diye bakınıp dururken sonunda anladım ki byte / bit seviyesinde işlem yapmak gerekiyormuş. Yapmak istediğim robotu düşünüyordum da, açıkçası başlangıçta bit seviyesinde uğraşmak gözümde büyümüştü.

Her neyse de yeteri kadar teorik bilgiden sonra sıra geldi kodlama aşamasına. Önce Assembly dilini kullanmayı düşündüm ama sonra vazgeçtim; hem daha zordu hem de daha fazla emek istiyordu. Onun yerine daha alışkın olduğumuz high-level dillerden biri olan C dilinde yazmayı tercih ettim. Biraz araştırdıktan sonra Microchip ‘in Netbeans IDE ‘sinden devşirdiği MPLabX IDE ‘yi ve C dilini HEX olarak makine koduna dönüştürme için ürettiği XC8 derleyicisini bilgisayarıma kurdum. C diline biraz aşinalığım vardı ama söz konusu hem C dilinde acemilik hem mikroişlemcide acemilik olunca, yaşadığım problemleri ve saçlarımın bir kısmını nasıl döktüğümü tahmin edersiniz sanırım, şu an bu yazıyı okuyan tecrübeli elektronik mühendislerinin yüzlerindeki tabiri caizse “pis” gülümsemeyi görür gibiyim.

Öyle böyle derken sonunda eğitim müfredatımın 6. ve son maddesi olan “basit de olsa çalışan birşey” maddesini tamamladım. Tüm bu süreç sadece kısıtlı boş vakitlerde uğraşarak 15–20 gün sürdü:

Elektroniğe Giriş: İlk sinyaller

Artık gerçekten işe yarayan bir şeyler yapmaya hazırdım.

İstanbul‘da bir Yazılım ve Teknoloji Ar-Ge Mühendisi. Ürün, yazılım, sistem analisti ve tasarımcısı. http://www.zaferaltun.com/

İstanbul‘da bir Yazılım ve Teknoloji Ar-Ge Mühendisi. Ürün, yazılım, sistem analisti ve tasarımcısı. http://www.zaferaltun.com/