Obsah:

Pwm2pwm: 4 kroky
Pwm2pwm: 4 kroky

Video: Pwm2pwm: 4 kroky

Video: Pwm2pwm: 4 kroky
Video: (2) PWM Limited FLIP FLOP DC - AC Inverter 2024, Říjen
Anonim
Pwm2pwm
Pwm2pwm

Pomocí kodéru změňte vstupní signál PWM na jiný výstup signálu PWM.

Tento projekt se zrodil, když jsem si koupil svou první laserovou řezačku. Nastavit výkon PWM poprvé podle materiálu, který chcete řezat, není snadné. Chci tedy vytvořit malé zařízení, které během výkonu změní výkon.

Krok 1: Seznamy komponetů

Seznamy komponetů
Seznamy komponetů

Pro tento projekt potřebujete:

  • 1 x Oled displej, v mém případě I2C
  • 1 x Arduino, v mém případě arduino mini pro malé rozměry.
  • 1 x Trimmer s tlačítkem.
  • 3 x 10k odpor, 2 pro vytahování trimru a jeden pro stahovací.

Na obrázku tohoto kroku vidíte další Arduino mini pro, nazývané laser, protože jsem s tímto Arduinem simuloval dovednosti laserového ovladače (signál pwm v signálu).

Krok 2: Připojení

Připojení
Připojení
Připojení
Připojení

V tomto schématu nezapomeňte připojit 3 odpory, pull-up a pull-down.

Poprvé vám doporučuji připojit druhé Arduino (v předchozím kroku nazývané laser), abyste otestovali, zda kód a připojení také fungují společně.

Pokud se blíže seznámíte se schematickým zobrazením, otevřete soubor pwmTOpwm.svg.

Krok 3: Skica Arduino

Skica Arduino
Skica Arduino
Skica Arduino
Skica Arduino

Můj kód můžete snadno zkopírovat ze stránky GitHub:

Hlavní dovedností tohoto kódu je integrace příkazu „pulseIn“, více informací:

Když se pokoušíte měřit signál PWM, který vstupuje do mikrokontroléru, musíte spočítat, jak dlouho signál v daném období zůstane vzhůru (nebo dolů). Můžete použít příkaz "pulseIn".

Pokud se pokusíte vykreslit signál pulseIn, můžete vidět něco nestabilního.

K vyřešení tohoto problému musíme použít mediánový filtr, v mém případě exponenciální klouzavý průměr (EMA).

Tento skvělý a snadný filtr můžete vyzkoušet na tomto příkladu:

Nebojte se, filtr je již integrován v kódu: p.

Pokud používáte druhé Arduino (laser), můžete do tohoto Arduina nahrát tento příklad:

Krok 4: PCB

PCB
PCB

Chtěl bych vytvořit bednu pro tento projekt s KiCadem a sdílet ji.

Pokud provedu změny na DPS, budu je sdílet na stránce GitHub.

Doporučuje: