Obwód generatora sygnału PWM Arduino

Wypróbuj Nasz Instrument Do Eliminowania Problemów





W tym poście szczegółowo badamy, jak utworzyć obwód generatora sygnału PWM oparty na Arduino, który można ustawić lub dostosować za pomocą potencjometru lub potencjometru do dowolnego preferowanego współczynnika wypełnienia.

PrzezAnkit Negi



CO TO JEST PWM?

pwm lub modulacja szerokości impulsu, jak sama nazwa wskazuje, jest modulacją szerokości impulsów, tj. jak długo impuls jest wysoki lub niski w danym okresie czasu. Zmienia to cykl roboczy impulsu, który ostatecznie określa średnią wartość impulsu, gdy cykl pracy jest w czasie podzielony przez całkowity okres czasu.

A częstotliwość odgrywa bardzo ważną rolę w pwm, która musi być wystarczająco wysoka, aby generować stabilną moc



Pwm służy do różnych celów, takich jak sterowanie urządzeniem pracującym na niskim napięciu lub do celów przełączania, takich jak SMPS.

PWM PRZY UŻYCIU ARDUINO UNO

Pwm jest również jednym z czynników, które sprawiają, że arduino jest najprostszą płytą programistyczną, ponieważ pwm można zrobić, dodając tylko jeden kod liniowy do programu. Zauważ, że istnieją oddzielne piny cyfrowe dostępne w arduino UNO dla pwm, co oznacza, że ​​te piny mogą dawać wyjście pwm.

W arduino UNO dostępnych jest łącznie 6 pinów PWM, czyli 3, 5, 6, 9, 10 i 11 z 14 pinów cyfrowych. Należy pamiętać, że liczba pinów pwm różni się w zależności od typu płyty arduino.

Istnieją dwa sposoby, w jakie pwm może być wykonane przez arduino:

1. Poprzez bezpośrednie przypisanie wartości analogowej do pinu pwm między 0 a 255.

Ponieważ piny cyfrowe w arduino mogą zapewnić maksymalnie 5 V, co oznacza, że ​​wartość analogowa 0 jest równa 0 V, a 255 odpowiada 5 V.

Aby to zrobić, musisz po prostu dodać ten kod do swojego programu:

analogWrite (nr pinu PWM, wartość od 0 do 255)

Na przykład: analogWrite (10,64) // zapisz 64 analogowe wartości na pwm nr 10.

To oznacza: (5/255) * 64 V = 1,25 V, czyli 25% cyklu pracy.

2. Nadając wartość zgodnie z wejściem otrzymanym z pinów analogowych arduino.
Wejście może być pobierane z komponentów takich jak czujnik podczerwieni lub potencjometr.

Zauważ, że arduino odbiera wejście analogowe pod względem wartości od 0 do 1023, co odpowiada 0 do 5 woltów. Aby wykonać pwm na pinie, musisz przekonwertować tę wartość wejściową w równoważności na liczbę od 0 do 255 i nazywa się to mapowaniem w języku arduino.

Jest do tego prosty kod:

y = map (x, 0,1023: 0,255) // gdzie x jest zmienną wejściową

Następnie możesz wykonać pwm na pinie za pomocą:

analogWrite (pin PWM nr, y) // zapisz odebraną zmapowaną wartość na pin 10

PRZYKŁAD PWM:

Na tym przykładzie nauczymy się obu technik. Do tego potrzebujesz:

1. Potencjometr
2. Dwie diody
3. Dwa rezystory 100 omów

Wykonaj połączenia zgodnie ze schematem połączeń:

SCHEMAT OBWODU:

KOD:

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
}

Jak to działa

Podstawową pracę proponowanego projektu generatora sygnału Arduino PWM można zbadać z poniższego akapitu

Pin nr 9 może mieć przypisaną dowolną wartość pwm, natomiast pin nr. 10 podaje wartość pwm zgodnie z położeniem potencjometru względem masy. Kontynuuj zmienianie tej arbitralnej wartości dla pinu 9, a także obracaj potencjometr, aby zobaczyć różne wyjście pwm na obu pinach.




Poprzedni: Obwód sterowania silnikiem wysokoprądowym za pomocą Arduino Dalej: 10-kanałowy przełącznik zdalnego sterowania 2,4 GHz