Kayıtlar

STM32F4 Discovery Led Yakma ( STM32 CUBE MX / IDE )

Resim
  Amaç: 1 sn aralıklarla tüm ledleri yakıp sönmesi STM32 CUBE MX / IDE ile yapılışı İlk başta board seçilir bu işlem için ilk başta ·          STM32CubeMX  programı açıyoruz. New proje diyoruz.   Kullandığınız hazır bir kart ise Board select tıklayıp arama yerine kartın atını yazıp dogru kartı aşağıdan seçiyoruz. Karşimiza aşağıdaki gibi bir ekran çıkacak burda istedğimiz pinleri kullanarak duruma gore kodumuzu oluşutrabiliriz. LED Yakma İşlem Adımları : Led yapma için PD12 - PD13 – PD14 – PD15 pinlerini GPIO_Output olarak ayarlancak  solda goruldüğü gibi olacaktır.                   Clock açmak için system core kısmına gelerek gösterilen işlemler yapılır. RCC tıklıcaz   Yüksek hızlı harici clocku seçtik sağ tarafta da seçtikten sonra otomatik pinler oluşturuldu. Clock configurasyonu için ikinci kısma geçicez.   ...

Eğitim yada Projesini Sürdürdüğüm Faaliyetler

İngilizce Eğitimi: İngilizce seviyemi daha da geliştirmek için udemy youtube ve okuma kitaplarıyla her gün çalışıyorum. Şuan ki seviyem B1 Python ile chat programı : CLI üzerinden socket kullanarak chat işlemi çalışmakta  geliştirmeler yapıyorum.                         1 ) Gonderilen mesajları şifreliyecek                         2) Mesajları SQL veritabanına atayacak                          STM32F4 Discovery kartı ile çalışmalar düzenleniyor. Blog sayfasında dökümanları paylaşacağım.

İSMED Şeker Fabrikası Projesi ( FPGA ile yapıldı )

Resim
 2019 Yılının Aralık ayında bitirdiğim proje FPGA ile tamamlanmıştır. Bu proje amacı fabrikadaki şekerlerin paketlenmesi için kullanılmıştır.  Şekil 1: Çalışma grafiği Şekil1 de görüldüğü gibi start veriliğinde motor hareketi ile palet hareket edecek ve servo motor kol yardımı ile kutuları palete itecektir. palet yolunda bulunan proximity sensor ile kutu içinde ne kadar malzeme olmasını sayarak belirleyecektir. ( bu örnekte 3 şeker paketi olarak belirlendi ) Belirlenen sayı adedi kadar palet yardımı ile kutuya atıldığında başlangıç durumuna gelecektir b1 : sayıcı proximity b2 : servo motorunun palete atacağı şekerin o durumda olup olamaması durumunu gosteren proximity Şekil 2 : Servo motorun çalışması için Pulse genişliği Servo motor 20ms ( 50hz ) periyodunda çalışır. Bu 20ms periyotta 1 ms genişliğinde pulse uygulanırsa 0 derece , 1.5 ms için 90 derece , 2ms için ise 180 derece hareket eder. Bu bilgiyi FPGA programlarken kullanacağız. • Servo Motor Dönüş Hızı Biz programımı...

Encoderlı DC Motorun PID Controller ile Kontrolu ( Ayrık Zaman )

Resim
  Proje Amacı Microcontroller üzerine yazılmış yazılım ile encoderlı DC motorun PID controller ile kontrol edilmesi amaçlanmaktadır. PID sistemin katsayıları ve motorun çalışmasını istediğimiz RPM değerini bir arayuz ile serial haberleşme kullanarak microcontroller a göndererek o değerlerde çalışmasını istenmektedir.   Sistemin Çalışması Mikro controller olarak Arduino Uno kullanılmıştır. Encoderdan gelen pulseler için interrupt kullanılmıştır. RPM değerini bulmak için ise pulseler arasındaki zaman farkından yararlanarak bulunmuştur. Arayız tarafından gelen set RPM değeri ile motorumuzun RPM değerini çıkartarak hatayı buluruz. Hatayı gerekli işlemlerden ve katsayılardan geçirerek PID çıkışımızı elde etmiş olunur. Arduinonun pwm çıkışından motor sürücüsüne giderek gerekli değerde motoru çalıştıracaktır.   Arayüz olarak Pytq5 kullanılmıştır. Sadece plot çizme işlemi hazır kod ile kullanılmıştır.     GUI Analiz: self .KP = QLineEdit( self ) ...

Analog PID ile Encoderlı Motorun Hız Kontrolu

Resim
  Projenin Amacı Proje amacı aktif devre elemanı olan opamp ile PID kontrolör tasarlayarak encoderlı DC motoru kontrol edilmesi amaçlanmaktadır. PID parametrelerin katsayıları ve referans voltajını ayarlanabilir şeklide tasarlanılması istenilmektedir. Bu ayarlama şartının sağlanması için potansiyometre kullanılacaktır. Sistemin Kurulması ve Hazırlanması Sistemde encoderli motor kullanıldığından PID kontrolörün girişi olan hata da doğrudan bağlayamayacağız. Encoder pulselerini anlamlı bir hale getirmek için counter ile sayarak uygun bit değerinde DAC ‘a yönlendirerek sistemi anlamlı bir hale getirilecektir. DAC çıkışı artık motorumuzun sahip olduğu veriyi bize yansıtacaktır. Opamp kullanarak referans değerinden DAC çıkışımızı çıkartarak opamp ile tasarlanan PID kontrolöre girer ve sistem çalışır. Sistemi proteus üzerinde simülasyon olarak yapılmıştır. Sistem 3 ana bloktan oluşmaktadır; Counter , DAC, PID sistem. Bunları açıklanacak olursa PID Sistem Şekil 1 : PID sistem Ş...

Yapıtığım Projeler

  Bitirme Tezim : Yardımcı Robotik Kol     Yarı otonom bu robotik kol projesinde  içinde barındırdığı kod parçaları :               Yüz ID 'leme                Nesne Tespiti               Arduino- python seri haberleştirme ile robot hareketi kontrolü                sesli işlem / sesli asistan           Encoderlı Motorun PID kontrolu: Ayrık zamanlı  Arduino ile pytq5 ara yüzünü kullanarak   encoderli motorun PID controlları sağlandı . Ara yüzde PID katsayıları ve set edilecek RPM değerini girerek motor kontrol edilir. Kod : https://github.com/SAMED-BEY/PID-Control Sürekli zamanlı  Proje amacı aktif devre elemanı olan opamp ile PID kontrolör tasarlayarak encoderlı DC motoru kontrol edilmesi amaçlanmaktadır. PLC kullanarak Karıştırma Kazanı Yap...

Sertifikalar - Belgeler

Resim