Teknik yayınlarım – bunu neden yapıyorum?

2017 de emekli olunca artık keyif aldığım şeyleri yapmaya kararlıydım. Keyif aldığım şeylerin başında da elektronik tasarım çalışmaları geliyor.  

İş hayatımın ilk 10 yılında ARGE mühendisi olarak tam bir iş tatmini ile zevkle çalıştım. Maalesef bu mutlu 10 yılın ortalarından itibaren başlayan yöneticilik görevleri hızla artıp ağırlık kazanarak meslek hayatımın geri kalanını domine etti.

Şimdi evdeki köşemde, mikroişlemci tabanlı elektronik cihazlar geliştiriyorum. Bunu yapabilmek için sürekli olarak yeni şeyler öğrenmem gerekiyor. İlginçtir, orta okuldan bu yana hayatımı bu alanda geçirmiş olmama rağmen bildiklerim bilmediklerimin yanında çok güdük kalıyor. Hani derler ya, muhasebeciye sormuşlar “bir daha dünyaya gelseydin ne olmak isterdin ?” diye, “imam olmak isterdim” diye yanıtlamış. Sebebini sorunca “mevzuat hiç değişmiyor, bir öğrendin mi ömür boyu yetiyor !” demiş. İşte o muhasebeci eğer elektronik mühendisi olsaymış da esas değişimin ne olduğunu görseymiş diyorum.

Evet, sürekli yeni şeyler öğrenmek zorunda kalıyorum, zira kullanmayı öğrendiğim her yeni mikroişlemci, yazılım geliştirme aracı, standardlar, iletişim protokolları vb birkaç yıl içinde demode oluyor. Üstelik yaş ilerledikçe daha da zor öğrenip çok daha çabuk unutuyorum. İşte bu blog sitesi bu noktada devreye giriyor.

Bir konudaki çalışmalarım ilerleyip kendimce tamamlandığında başka bir konuya geçiyorum, bir süre sonra burada yaptıklarımı unutmaya başlıyorum. Birkaç ay sonra ihtiyacım olduğunda dönüp bir bakıyorum ne yaptığımı, nasıl yaptığımı nasıl kullanacağımı unutmuşum. Bir sürü tekrar çalışması yapmak zorunda kalıyorum.

Bu durumda üşenmeyip, her çalışmayı dokümante etmek kaçınılmaz oluyor, bu iş de epeyi emek ve vakit gerektiriyor. Bu dokümantasyon işi, projenin kendisi kadar vakit alıcı olabiliyor, hem o kadar keyifli de değil. Başlangıçta bazen bir deftere yazıp çizerek bazen da bilgisayar ortamında word-excel dokümanlar üzerinde notlar alıyordum.

Bunlar biraz dağınık, neyin nerede olduğunu unutmazsam erişebildiğim referanslar oluyordu. Halbuki yukarıda da belirttiğim gibi kilit kelime “unutmak“, yani başa çıkmam gereken esas sorun bu. Bilginin derli toplu, erişilebilir olması önemli.

Blog sitesinin bu kayıtları tutmak için uygun bir çözüm olacağını düşündüm. Bu güne kadar tuttuğum notlar kendim için de olsa, burada yayınlarsam hem gerektiğinde kendim kolay erişim sağlamış olurum, hem de başkaları da göreceği için daha titiz çalışmak zorunda kalırım, belki birilerinin de işine yarar diye düşünüyorum.

Yazdığım şeyler genellikle yeni başladığım, ilk sonuçlarını aldığım projeler oluyor. Yani, bir süre sonra o konuda çok yol almış olduğumda geri dönüp güncelleme konusunda çok istekli olmuyorum. Zira o esnada yeni ele aldığım yeni ve daha heyecanlı konular oluyor, yazma enerjimi onlara ayırmak için daha fazla motivasyonum oluyor.

Eskilerin güncellenmesi, ancak birileri görüp yorum yaptığında ya da soru sorduğunda gündeme gelebiliyor. Ya da kendime lazım olduğu için açıp tekrar baktığımda eksikliklerini yanlışlıklarını ya da güncelliğini yitirmiş taraflarını farkettiğimde düzeltme-eklemeler yapıyorum. Genelde de eskiden yazdıklarımı beğenmediğimi belirteyim.

Sonuç olarak : Amaç “kendime notlar”. Ama ilgilenen olur ve fazladan destek isterse bu sayfaya yorum yazarak bana ulaşabilir, elimden geleni ardıma koymayacağıma söz veririm. Elbette ödevlerini bana yaptırmak isteyebilecek genç arkadaşlara hazır lop çözümler sunmayacağımı da belirteyim.

Bu yayının sonu – Selçuk Özbayraktar Nisan 2018

2 Replies to “Teknik yayınlarım – bunu neden yapıyorum?”

  1. İyi günler. STM32 kartı programlamaya yeni başladım. STM32 mikrokontrolör ile 3 fazlı SPWM sinyali oluşturmak istiyorum. Bunu yapabilmek için işlemcinin hangi birimlerine hakim olmam gerekiyor. Kaynak araştırması yaptığımda bu konu üzerine Türkçe kaynak bulamadım. Amacım DA güç kaynağından 3 fazlı indüksiyon motorun hız kontrolünü gerçekleştirmek. Yazılım kısmında takıldım ilerleme kaydedemiyorum. Bu konu hakkında nasıl bir yol izlememi önerirsiniz ? Teşekkür ederim.

    1. Erkan Bey merhaba,

      Bu konudaki BLDC Servo motor kullanımı başlıklı yazılarımda bir şeyler var. (https://selcukozbayraktar.com/2019/08/04/bldc-servo-motor/BLDC SERVO MOTOR KULLANIMI – 1).

      Burada motor sürmek için 3 fazlı PWM sinyalinin üretilişi ve frekansının değiştirilmesi anlatılıyor ama bu işi ST Microelectronics’in yazılım paketini kullanarak yapıyorum.

      Siz sıfırdan kendiniz kod geliştirecekseniz aşağıdaki adımlarla ilerlemenizi önereceğim:

      1- STM32 Timer larını kullanarak PWM sinüs sinyali üretmek. Bu birbirinin tersi 2 PWM sinyali olacak, üst ve alt sürücü MOSFET leri sürmek için. Aralarında da “dead time” denilen sıfır gerilimli bölgeler bulunacak. Bu dediklerimi STM32 Timer’ları yapabiliyor. Siz sadece timer ayarlarını buna göre yapacaksınız. Bunun için özel bir kod yazmaya gerek yok.

      2- Ürettiğiniz PWM sinüs sinyali 120 derece faz farklı 3 sinyal haline getirmek. Bu işi STM32 de tek bir timer ile yapabiliyorsunuz. Bunun için 6 adım sürüm yöntemini öğrenmenizi öneriyorum .(Six Step Driving)

      3- STM32 ADC lerini kullanarak birer potansiyometre ile genlik ve frekansı ayarlayabilir duruma gelmek

      4- Motor sürmek için bir sürücü edinmek (Bunu da kendiniz yapacaksanız ayrı bir konu, başlı başına bir proje)

      5- STM32 PWM çıkışlarını (6 adet PWM sinyali) sürücüye bağlayarak, sürücü çıkışında 3 fazlı gerilimi elde etmek.

      6- Açık çevrim içinde genlik ve frekansı potansiyometrelerle kontrol ederek motoru döndürmek.

      7- Kapalı çevrim için PID kontrolunu öğrenmek

      8- Motor akımından geri besleme alarak frekansı istenen değerde sabit tutmak

      Bunlar, STM32 Timer’ları ve ADC birimleri hakkında bilgi sahibi olmayı gerektiriyor.

      İşin açık çevrim kontrol kısmı nisbeten kolay, ilk aşamada projenizi o kadarıyla sınırlı tutmanızı öneririm. Manuel kontrollarla çalıştırarak motor davranışları hakkında tam bilgi sahibi olduktan sonra PID kontrola geçersiniz.

      Ben yüksek gerilimlere bulaşmak istemediğim için 40V ile çalışan servo motor sürmek ile yetindim, hatta onu bile 20 V ile sürüyorum.

      Türkçe kaynaklar konusunda benim de bilgim yok maalesef, “inverter yapmak” şeklinde bir google sorgulaması yaparsanız bir şeyler çıkar sanırım. Ben de merak ettim şimdi, bir ara sorgularım.

      Kolay gelsin,

      Not : Epeyi uzun bir yanıt oldu. Bunu da tamamlayıp bir yayın haline getireyim bari 🙂 .

      Selamlarımla.

Comments are closed.