İçindekiler:

Pwm2pwm: 4 Adım
Pwm2pwm: 4 Adım

Video: Pwm2pwm: 4 Adım

Video: Pwm2pwm: 4 Adım
Video: (2) PWM Limited FLIP FLOP DC - AC Inverter 2024, Ekim
Anonim
Pwm2pwm
Pwm2pwm

Giriş PWM sinyalini bir Enkoder ile başka bir PWM sinyal çıkışına değiştirin.

Bu proje ilk lazer kesicimi aldığımda doğdu. PWM gücünü ilk seferde kesmek istediğiniz malzemeye göre ayarlamak kolay değildir. Bu yüzden yürütme sırasında gücü değiştirmek için küçük bir cihaz oluşturmak istiyorum.

Adım 1: Bileşen Listeleri

Bileşen Listeleri
Bileşen Listeleri

Bu proje için ihtiyacınız olan:

  • 1 x Oled ekran, benim durumumda I2C
  • 1 x Arduino, benim durumumda küçük boyut için arduino mini pro.
  • Bir düğme ile 1 x Düzeltici.
  • 3 x 10k direnç, 2'si düzelticinin yukarı çekilmesi ve bir tanesi aşağı çekilmesi için.

Bu adımın resminde lazer adı verilen başka bir Arduino mini profesyoneli görüyorsunuz, çünkü bu Arduino ile lazer denetleyicinin (sinyalde pwm) becerilerini simüle ettim.

2. Adım: Bağlantılar

Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar

Bu şemada 3 direnci, yukarı ve aşağı çekmeyi bağlamayı unutmayın.

İlk defa, kod ve bağlantının birlikte çalışıp çalışmadığını test etmek için ikinci Arduino'yu (önceki adımda lazer denir) bağlamanızı tavsiye ederim.

Şematik görünüme daha aşina iseniz, pwmTOpwm.svg dosyasını açın.

Adım 3: Arduino Kroki

Arduino Kroki
Arduino Kroki
Arduino Kroki
Arduino Kroki

Kodumu GitHub sayfasından kolayca kopyalayabilirsiniz:

Bu kodun ana becerileri "pulseIn" komutunun entegrasyonudur, daha fazla bilgi:

Mikrodenetleyiciye giren bir PWM sinyalini ölçmeye çalıştığınızda, sinyalin periyotta ne kadar süre yukarıda (veya aşağıda) kaldığını saymanız gerekir. "pulseIn" komutunu kullanabilirsiniz.

PulsIn sinyalini çizmeye çalışırsanız, kararsız bir şey görebilirsiniz.

Bu sorunu çözmek için benim durumumda üstel hareketli ortalama (EMA) olan bir medyan filtresi kullanmamız gerekiyor.

Bu harika ve kolay filtreyi şu örnekle deneyebilirsiniz:

Endişelenmeyin, filtre zaten:p koduna entegre edilmiştir.

İkinci Arduino (lazer) kullanıyorsanız, bu arduinoya şu örneği yükleyebilirsiniz:

Adım 4: PCB

PCB
PCB

KiCad ile bu proje için bir PCB kasa yapıp paylaşmak istiyorum.

PCB üzerinde değişiklik yaparsam GitHub sayfasında paylaşırım.

Önerilen: