Pulsbreddemodulasjon i Arduino

Pulsbreddemodulasjon i Arduino
Pulsbreddemodulasjon også kjent som PWM er en teknikk som involverer endring i bredden på pulsen til det genererte signalet som et resultat av signalets pliktsyklus endres som vil gi variabelt signal. Denne variable inngangen kan brukes i mange applikasjoner som å kontrollere lysstyrken til lysdioder, og kontrollere hastigheten på motorer og hvor analog utgang er nødvendig ved å bruke digitale kilder.

Pulsbreddemodulasjon med Arduino

Pulsbreddemodulasjonen kan gjøres i Arduino ved å bruke AnalogWrite () funksjon. AnalogWrite () -funksjonen genererer det firkantede bølgesignalet som kan varieres fra funksjonen.

De AnalogWrite () Funksjon bruker to argumenter, en er en Pin som vil spesifisere portnummeret som det modulerte signalet vil generere og det andre er verdi som spesifiserer verdien av pliktsyklusen til det modulerte signalet.For å bruke analogwrite -funksjonen i Arduino -programmering, bør følgende syntaks følges

analogWrite (PIN -nummer, verdi av pliktsyklus);

PIN -tallet er av heltalldatatype, mens verdien av pliktsyklusen har formen fra null til 255.Pulsbredden er den delen av pulsen som verdien er høy. Tilsvarende er varigheten av syklusen til pulsen varigheten av dens høye og lave verdier. Dessuten kalles prosentandelen av forholdet mellom pulsbredde og syklusvarighet pliktsyklusen. Det er gitt forskjellige pliktsykluser for mer forståelse av emnet. De plottede grafene har tid på den horisontale aksen, mens spenningen er på den vertikale aksen. Dette er prosentene for hvor mye tid spenningen var høy. Duty Cycle er tiden hvor spenningen var høy.

Eksempel

Koden for pulsbreddemodulasjonen er gitt nedenfor.

int LEDPIN = 6; // Arduino Uno PWM -pinner: 3, 5, 6, 9, 10
int lyshet = 0;
int fadevalue = 5;
void setup ()
pinmode (LEDPIN, utgang);

void loop ()
analogwrite (LEDPIN, lysstyrke);
lysstyrke = lysstyrke + fadevalue;
if (lysstyrke = 255)
fadevalue = -fadevalue;

forsinkelse (10);

Først Ledpin variabel er erklært hvor LED -lyset er koblet til og deretter for å lagre analogwrite -verdien en variabel av lysstyrke er erklært. Verdien vil sykle i området mellom 0 til 255. For å kontrollere falming av LED -en som en variabel kalt fadevalue benyttes.

Kommer til oppsettsdel. LED -lysets lysstyrke styres med endring av pulsenes bredde. LED -pinne og lysstyrke tas som argumenter for analogwrite -funksjonen. Etter det blir lysstyrken og fadevalue -variabelen lagt til. For å øke lysstyrken med fem ganger hver gang sløyfen kjører, er det grunnen til at fadevalue får verdien 5.

IF -tilstanden brukes til å kjøre koden bare hvis lysstyrken er mindre enn lik null eller større enn lik 255.

Så i starten er verdien for lysstyrke null og fadevalue er 5. Så i den første uttalelsen blir fade -mengden lagt til lysstyrke, og nå har lysstyrken en verdi på fem. Så kommer til IF -uttalelsen at tilstanden er falsk, da lysstyrken ikke er mindre enn lik null eller lysstyrken er større enn lik 255. Så sløyfen vil fortsette å løpe til lysstyrkeverdien når 255. Så hvis IF -tilstanden er sann, blir en verdi av negativ fem 5 lagt til fade -mengden.

Så nå ved hver iterasjon vil verdien avta med 5 til den når null og LED vil slå seg av.

Konklusjon

Det er et bredt spekter av prosjekter som kan gjøres ved hjelp av Arduino. Å bruke Arduino gjør det enkelt å jobbe med prosjekter. I denne artikkelen blir pulsbreddemodulasjonen (PWM) diskutert, og en av applikasjonene er beskrevet for å gi mer detaljer om hvordan pulsbreddemodulasjon (PWM) kan brukes til spesifikke oppgaver i Arduino -programmering.