Obvod generátora signálu Arduino PWM

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





V tomto príspevku podrobne študujeme, ako vytvoriť obvod generátora signálu PWM založený na Arduine, ktorý je možné nastaviť alebo upraviť potenciometrom alebo potenciometrom na ľubovoľný preferovaný pomer pracovného cyklu.

Autor:Ankit Negi



ČO JE PWM?

pwm alebo modulácia šírky impulzu, ako už sám názov napovedá, je modulácia šírky impulzov, t. j. ako dlho je impulz vysoký alebo nízky v danom časovom období. To mení pracovný cyklus impulzu, ktorý nakoniec určuje priemernú hodnotu impulzu, keď je pracovný cyklus v čase delený celkovým časovým obdobím.

A frekvencia hrá veľmi dôležitú úlohu v pwm, ktoré musia byť dostatočne vysoké na to, aby generovali stabilný výkon



Pwm sa vykonáva na rôzne účely, napríklad na riadenie zariadenia, ktoré pracuje na nízkom napätí, alebo na prepínanie, ako napríklad v SMPS.

PWM POUŽÍVANÍM ARDUINO UNO

Pwm je tiež jedným z faktorov, ktoré robia z arduina najjednoduchšiu vývojovú dosku, pretože pwm sa dá urobiť pridaním iba jedného riadkového kódu do vášho programu. Upozorňujeme, že na arduino UNO sú k dispozícii samostatné digitálne piny pre pwm, čo znamená, že tieto piny môžu poskytovať výstup pwm.

Na arduino UNO je k dispozícii celkovo 6 pwm pinov, čo je 3, 5, 6,9,10 a 11 zo 14 digitálnych pinov. Upozorňujeme, že počet pinov pwm sa líši od jedného typu dosky arduino k druhému.

Teraz existujú dva spôsoby, ako môže pwm vykonať arduino:

1. Priamym priradením analógovej hodnoty k pwm pinu medzi 0 a 255.

Pretože digitálne piny v arduine môžu poskytovať maximálne 5 V, znamená to, že 0 analógových hodnôt sa rovná 0 voltom a 255 je ekvivalentných 5 voltom.

Ak to chcete urobiť, musíte do programu pridať tento kód:

analogWrite (číslo pinu PWM, hodnota od 0 do 255)

Napríklad: analogWrite (10,64) // zapíše analógovú hodnotu 64 na pwm pin č. 10.

To znamená: (5/255) * 64 voltov = 1,25 voltov, t. J. 25% pracovný cyklus.

2. Priradením hodnoty podľa vstupu prijatého z analógových pinov arduina.
Vstup je možné brať z komponentov, ako je infračervený senzor alebo potenciometer.

Upozorňujeme, že arduino prijíma analógový vstup v hodnotách od 0 do 1023, čo zodpovedá 0 až 5 voltom. Ak chcete vykonať pwm na špendlíku, musíte túto vstupnú hodnotu previesť ekvivalentne na číslo od 0 do 255, čo sa v jazyku arduino nazýva mapovanie.

Existuje na to jednoduchý kód:

y = mapa (x, 0,1023: 0,255) // kde x je vstupná premenná

Potom môžete vykonať pwm na špendlíku pomocou:

analogWrite (PWM pin no, y) // zapíše prijatú namapovanú hodnotu na pin 10

PRÍKLAD PWM:

Na tomto príklade sa naučíme obidve techniky. Potrebujete na to:

1. Potenciometer
2. Dve led diódy
3. Dva 100 ohmové odpory

Pripojte káble podľa schémy zapojenia:

SCHÉMA OKRUHU:

KÓD:

int x// initialise variables
int y
void setup() {
pinMode(10,OUTPUT)//initialise pin 10 as output
pinMode(9,OUTPUT)//initialise pin 9 as output
pinMode(A0,INPUT)//initialise pin A0 as input from pot.
// put your setup code here, to run once:
}
void loop() {
analogWrite(9,125)// directly assigning value to pin 9 i.e. case1
x=analogRead(A0)// read values from potentiometer in terms of voltage
y= map(x,0,1023,0,255)// map those values from 0 to 255 // put your main code here, to run repeatedly:
analogWrite(10,y)// assigning value based on input from pot at pin A0 i.e. case 2
}

Ako to funguje

Základné fungovanie navrhovaného projektu generátora signálu Arduino PWM je možné študovať z nasledujúceho odseku

Kolíku č. 9 je možné priradiť ľubovoľnú hodnotu pwm, zatiaľ čo kolíku č. 10 dáva hodnotu pwm v súlade s polohou potenciometra vzhľadom na zem. Stále meniť túto ľubovoľnú hodnotu pre kolík 9, rovnako ako otáčať potenciometrom, aby ste videli rozdielny výstup pwm na oboch kolíkoch.




Dvojica: Vysokoprúdový riadiaci obvod motora pomocou Arduina Ďalej: 2,4 GHz 10-kanálový diaľkový ovládač