Obsah:
Video: Pwm2pwm: 4 kroky
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-10 13:46
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ů
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í
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
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
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.