Pulzná šírková modulácia (PWM) je honosný termín pre typ digitálneho signálu. PWM sa používajú v rôznych aplikáciách vrátane zložitých riadiacich obvodov. V SparkFun ich bežne používame na stmievanie RGB LED diódy alebo na ovládanie smeru serva. V oboch týchto aplikáciách môžeme dosiahnuť rôzne výsledky, pretože PWM nám umožňuje analógovým spôsobom meniť čas, počas ktorého je signál vysoký. Zatiaľ čo signál môže byť v danom čase iba vysoký (zvyčajne 5 V) alebo nízky (uzemnenie), môžeme meniť pomer času, počas ktorého je signál vysoký v porovnaní s nízkym v priebehu konzistentného časového intervalu.
Keď je signál vysoký, nazývame ho „zapnutý“. Na opis množstva „zapnutého času“ používame koncept pracovného cyklu. Pracovný cyklus sa meria v percentách. Percentuálny podiel pracovného cyklu konkrétne opisuje percento času, počas ktorého je digitálny signál zapnutý v rámci intervalu alebo periódy. Perióda je inverznou hodnotou frekvencie tvaru vlny. Ak je digitálny signál zapnutý polovicu času a vypnutý druhú polovicu, hovoríme, že digitálny signál má pracovný cyklus 50 %, podobne ako ideálna obdĺžniková vlna. Ak je percento vyššie ako 50 %, digitálny signál trávi viac času vo vysokom stave ako v nízkom stave a naopak, ak je pracovný cyklus menší ako 50 %. Nasledujúci diagram znázorňuje tieto tri prípady:

100 % pracovný cyklus je rovnaký ako nastavenie napätia na 5 voltov (vysoké). 0 % pracovný cyklus je rovnaký ako pripojenie signálu k zemi.
príklad
Jas LED diódy môžete ovládať nastavením pracovného cyklu.

S RGB (červená, zelená a modrá) LED diódami môžete ovládať množstvo každej z troch zmiešaných farieb ich stmievaním o rôzne hodnoty.

Ak sú všetky tri farby zapnuté v rovnakom množstve, výsledkom budú rôzne odtiene bieleho svetla. Rovnaké zmiešanie modrej a zelenej vytvorí modrozelenú farbu. Pre trochu zložitejší príklad skúste zapnúť červenú naplno, zelenú naplno pri 50 % pracovnom cykle a modrú naplno vypnúť, čím vytvoríte oranžovú farbu.

Pri ovládaní LED diód musí byť frekvencia obdĺžnikového signálu dostatočne vysoká, aby sa dosiahol správny stmievajúci efekt. 20 % pracovný cyklus pri 1 Hz bude jasne ukazovať, ako sa dióda zapína a vypína, zatiaľ čo 100 % pracovný cyklus pri 20 Hz alebo vyššom sa bude javiť slabší ako pri plnom rozsvietení. V podstate, ak je vaším cieľom dosiahnuť stmievajúci efekt s LED diódami, perióda nesmie byť príliš dlhá. Na ovládanie uhla servomotora pripojeného k mechanickému zariadeniu, ako je napríklad robotické rameno, môžete tiež použiť pulzne šírkovú moduláciu. Servomotor má hriadeľ, ktorý sa otáča do určitej polohy na základe svojho riadiaceho vedenia. Naše servomotory majú rozsah približne 180 stupňov.
Frekvencia/perióda je špecifická pre riadenie konkrétneho serva. Typický servomotor očakáva aktualizáciu každých 20 ms, s impulzom medzi 1 ms a 2 ms – inými slovami, pracovný cyklus medzi 5 % a 10 % pri priebehovej frekvencii 50 Hz. Pri impulze 1,5 ms bude servomotor vo svojej prirodzenej polohe 90 stupňov. Pri impulze 1 ms bude servo v polohe 0 stupňov a pri impulze 2 ms bude servo v polohe 180 stupňov. Plný rozsah pohybu môžete dosiahnuť aktualizáciou serva na hodnoty medzi nimi.
Modulácia šírky impulzov sa používa v rôznych aplikáciách, najmä v riadení. Teraz, keď viete, že sa dá použiť na stmievanie LED diód a ovládanie uhla servomotorov, môžete začať skúmať ďalšie možné využitia. Ak sa cítite stratení, neváhajte a pozrite si sadu SparkFun Inventor's Kit, ktorá obsahuje príklady použitia modulácie šírky impulzov. Ak ste pripravení okamžite začať programovať a máte Arduino, pozrite si príklady PWM kódovania tu.
Čas uverejnenia: 31. júla 2025


