• Buradasın

    PWM ile Mikrodenetleyicilerde Motor Kontrol Eğitimi

    youtube.com/watch?v=YF2mPCmLlLk

    Yapay zekadan makale özeti

    • Bu video, gömülü sistem programlama eğitimi formatında olup, eğitmen PIC mikrodenetleyicileri ve Arduino kullanarak PWM (Darbe Genişliği Modülasyonu) tekniklerini anlatmaktadır.
    • Video, PWM'nin ne olduğunu açıklayarak başlıyor ve mikrodenetleyicilerde analog sinyal oluşturamadığımız için PWM'nin önemini vurguluyor. Ardından PIC 18F4550 mikrodenetleyicisi ve Arduino ile PWM motor kontrolü için gerekli kod yazımı, LCD ekran kullanımı ve motorun hızlanma süreci adım adım gösteriliyor.
    • Videoda ayrıca PWM değerlerinin motor hızına etkisi, motorun bağlantı şeması, diyot kullanımı ve MOSFET ile gerilim bölücü yapımı hakkında teknik bilgiler de paylaşılmaktadır. Eğitmen, Project Weard programında PIC 18F4550 mikrodenetleyicisi için LCD ekran, interrapt, timer ve PWM ayarları yaparak bir proje oluşturuyor ve kod yazarken karşılaşılabilecek hatalar ve bunların çözümleri de gösterilmektedir.
    00:01PWM Tekniği ve Kullanımı
    • PWM (Pulse Width Modulation), darbe genişliği modülasyonu anlamına gelir ve analog sinyal çıkışımız olmayan mikrodenetleyicilerde analog sinyal oluşturmak için kullanılır.
    • PWM sinyalinde darbelerin periyotta ne kadar 5 volt verdiği ve ne kadar sürede volt verdiği önemlidir.
    • Mikrodenetleyicilerde analog sinyal oluşturamadığımız için PWM, LED parlaklığı ayarlama, fan hızı kontrolü ve sualtı araçlarında motor kontrolü gibi uygulamalarda kullanılır.
    02:54PIC18F4550 Mikrodenetleyicisi ve PWM Özellikleri
    • PIC18F4550 mikrodenetleyicisinde PWM sinyali 10 bit olup, 0,00000000000 bit arasında (0,00-1024) farklı değerler alabilir.
    • PWM'de 0,000 bit %0 doluluk, 1024 bit ise %100 doluluk anlamına gelir.
    • PWM sinyali ile LED parlaklığı ayarlanabilir, bilgisayar fan hızı kontrol edilebilir ve sualtı araçlarında motorlar kontrol edilebilir.
    04:02Proje Hazırlığı
    • Proje için PIC18F4550 mikrodenetleyici, 8 kHz clock speed, LCD ekran, external interrupt ve 16 bitlik timer kullanılmıştır.
    • LCD ekranın data pinleri D4 ve D7, RST pin D1, RW pin D2 olarak ayarlanmıştır.
    • PWM kurulumu için CCP1 ve CCP2 komparatörleri kullanılmış, CCP1 %10 doluluk, CCP2 %20 doluluk olarak ayarlanmıştır.
    07:48Devre Bağlantıları
    • LCD ekranın ESC bağlantısı stabil, D4 ve D7 pinleri data pinleri olarak kullanılmıştır.
    • RST pin D1, RW pin D2, VDD pinleri simülasyon ortamında bağlanmamıştır.
    • İki buton için diyotlar kullanılarak B1 ve B2 pinlerine bağlanmıştır.
    10:55Kod Hazırlığı
    • B portu için "use io b" komutu ile tüm pinler giriş olarak atanmıştır.
    • 16 bitlik bir değişken "a" olarak atanmıştır.
    • External interrupt için "clear interrupt" komutu kullanılmıştır.
    12:52Arduino ile PWM Değerini Kontrol Etme
    • Butona basıldığında PWM değerinin artması gerekiyor.
    • Butonun B1 pinine bağlı olduğu için, butona basıldığında hangi pin aktif olduğunu anlamak için if komutu kullanılıyor.
    • PWM değeri 5'ten başlayıp, butona basıldığında 5'er 5'er artıyor veya azalıyor.
    15:44Kodun Tamamlanması ve Hata Ayıklama
    • PWM değeri 1023'ten büyük olduğunda, 1023'e eşitleniyor çünkü 10 bitlik bir çıkış için 0,1023 arasında 1024 farklı değer bulunuyor.
    • Kod yazarken hata yapmak normaldir, en iyi programcılar bile hata yapar.
    • Kod derlendikten sonra LCD ekranına yazdırma işlemi yapılıyor.
    18:00LCD Yazdırma İşlemi
    • LCD'ye yazdırmak için önce bir değişken (k) oluşturuluyor ve bu değişken 1 olduğunda işlem başlıyor.
    • LCD'ye yazdırma için "lcd.goto(1,1)" komutu kullanılıyor.
    • PWM değeri işaretsiz 16 bitlik olduğu için "%a" formatında yazdırılıyor.
    20:35Kodun Özeti ve Test Edilmesi
    • Kodda SD kütüphanesi çağrılıp port yönlendirmesi yapılıyor.
    • PIC18F4550 mikrodenetleyicisi 10 bit çözünürlüğe sahip olduğu için 16 bitlik değişkenler kullanılıyor.
    • Butona basıldığında PWM değeri 5'er 5'er artıyor veya azalıyor, 1023'ten büyük olduğunda 1023'e eşitleniyor.
    23:56Simülasyon Sonuçları
    • Simülasyonda motor çalıştırıldığında, butona basıldığında PWM değeri artıyor.
    • Butona basılmadığında PWM değeri azalmıyor.
    • PWM değeri arttıkça mavi klasördeki cycle değeri de artıyor.
    24:55PWM Değerlerinin Etkisi
    • PWM değeri arttırıldığında LCD ekranda doluluk oranı artıyor, örneğin 205 değeri %20 doluluk anlamına geliyor.
    • PWM değeri %10 iken LCD ekranda %20 doluluk gösteriliyor, PWM değeri arttırıldıkça doluluk oranı da artıyor.
    • PWM değeri %30-35-70 gibi değerler alındığında, LCD ekranda karşılık gelen voltaj değeri gösteriliyor.
    26:05Motor Bağlantısı ve Çalışma Prensibi
    • Motor bağlantısında 12 volt DC geliyor ve koruma amaçlı bir diyot kullanılıyor.
    • Encoder motor kullanılıyor ve 624 MOSFET ile gerilim bölücü yapılarak çalıştırılıyor.
    • Motorun bağlantısı ters bağlandığında saat yönünün tersine dönüyor, ancak yanma gibi bir durum yaşanmıyor.
    27:46Motorun Hızlanması
    • PWM değeri arttırıldıkça motorun hızı artıyor, %20 dolulukta motor daha yavaş çalışıyor.
    • Motorlar önce yavaş sonra hızlı çalışan elektrik makineleri olduğu için, PWM değeri arttıkça motorun hızı da artıyor.
    • PWM değeri %30 dolulukta motor daha da hızlanıyor ve butona basarak PWM değeri arttırılabiliyor.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor