Hvad Er PWM, Og Hvordan Bruges Det I Arduino

Indholdsfortegnelse:

Hvad Er PWM, Og Hvordan Bruges Det I Arduino
Hvad Er PWM, Og Hvordan Bruges Det I Arduino

Video: Hvad Er PWM, Og Hvordan Bruges Det I Arduino

Video: Hvad Er PWM, Og Hvordan Bruges Det I Arduino
Video: Arduino Tutorial 8: Understanding Pulse Width Modulation (PWM) and the Arduino Analog Write Command 2024, November
Anonim

Lad os finde ud af, hvad der ligger bag PWM-akronymet, hvordan det fungerer, hvad det er til, og hvordan vi kan bruge det til at arbejde med Arduino.

PWM-signal
PWM-signal

Nødvendig

  • - Arduino;
  • - Lysdiode;
  • - en modstand med en modstand på 200 Ohm;
  • - computer.

Instruktioner

Trin 1

Arduino digitale stifter kan kun give to værdier: logik 0 (LAV) og logik 1 (HØJ). Derfor er de digitale. Men Arduino har "specielle" konklusioner, der betegnes PWM. De er undertiden betegnet med en bølget linje "~" eller cirklet eller på en eller anden måde adskilt fra andre. PWM står for "Pulsbreddemodulation" eller Pulsbreddemodulation, PWM.

Et pulsbreddemoduleret signal er et pulssignal med en konstant frekvens, men en variabel driftscyklus (forholdet mellem pulsvarigheden og dets gentagelsesperiode). På grund af det faktum, at de fleste fysiske processer i naturen har en vis inerti, vil skarpe spændingsfald fra 1 til 0 blive udjævnet med en gennemsnitlig værdi. Ved at indstille driftscyklussen kan du ændre den gennemsnitlige spænding ved PWM-udgangen.

Hvis driftscyklussen er 100%, vil der altid være en logisk spænding på "1" eller 5 volt ved Arduinos digitale output. Hvis du indstiller driftscyklussen til 50%, er halvdelen af tiden ved udgangen logisk "1" og halvlogisk "0", og den gennemsnitlige spænding er 2,5 volt. Og så videre.

I programmet er driftscyklussen ikke indstillet som en procentdel, men som et tal fra 0 til 255. For eksempel vil kommandoen "analogWrite (10, 64)" fortælle mikrocontrolleren at sende et signal med en driftscyklus på 25 % til digital PWM-udgang # 10.

Arduino-ben med pulsbreddemodulationsfunktion fungerer med en frekvens på ca. 500 Hz. Dette betyder, at puls-gentagelsesperioden er ca. 2 millisekunder, som måles med de grønne lodrette streger i figuren.

Det viser sig, at vi kan simulere et analogt signal ved den digitale udgang! Interessant, ikke?

Hvordan kan vi bruge dette? Der er mange applikationer! For eksempel er disse LED-lysstyrkekontrol, motorhastighedsregulering, transistorstrømstyring, lydekstraktion fra en piezo-emitter …

Forståelse af pulsbreddemodulation
Forståelse af pulsbreddemodulation

Trin 2

Lad os se på det mest basale eksempel - styring af lysstyrken på en LED ved hjælp af PWM. Lad os sammensætte en klassisk ordning.

Kredsløb til demonstration af PWM i Arduino
Kredsløb til demonstration af PWM i Arduino

Trin 3

Lad os åbne skemaet "Fade" fra eksemplerne: File -> Prøver -> 01. Basics -> Fade.

Åbning af en prøve for at demonstrere PWM i Arduino
Åbning af en prøve for at demonstrere PWM i Arduino

Trin 4

Lad os ændre det lidt og indlæse det i Arduino-hukommelsen.

PWM demonstrationsskitse
PWM demonstrationsskitse

Trin 5

Vi tænder for strømmen. Lysdioden øges gradvist i lysstyrke og falder derefter gradvist. Vi har simuleret et analogt signal ved det digitale output ved hjælp af pulsbreddemodulation.

Anbefalede: