Impulsbreite Modulation in Arduino

Impulsbreite Modulation in Arduino
Impulsbreitenmodulation auch als PWM bekannt. Dieser variable Eingang kann in vielen Anwendungen verwendet werden, z.

Impulsbreite Modulation mit Arduino

Die Impulsbreitmodulation kann in Arduino mit dem durchgeführt werden Analogwrite () Funktion. Die analogwrite () -Funktion selbst erzeugt das Quadratwellensignal, das von der Funktion variiert werden kann.

Der Analogwrite () Funktion verwendet zwei Argumente, einer ist a Stift die die Portnummer angeben, bei der das modulierte Signal erzeugt wird, und die andere ist Wert Das gibt den Wert des Arbeitszyklus des modulierten Signals an.Um die Analogwrite -Funktion in der Arduino -Programmierung zu verwenden, sollte die folgende Syntax befolgt werden

Analogwrite (PIN -Nummer, Wert des Arbeitszyklus);

Die PIN -Nummer hat einen ganzzahligen Datentyp, während der Wert des Arbeitszyklus das Formular von Null bis 255 hat.Die Pulsbreite ist der Teil des Impulses, in dem sein Wert hoch ist. In ähnlicher Weise ist die Dauer des Impulszyklus die Dauer seiner hohen und niedrigen Werte. Darüber hinaus wird der Prozentsatz des Verhältnisses der Dauer der Impulsbreite zur Dauer des Zyklus als Arbeitszyklus bezeichnet. Es werden verschiedene Arbeitszyklen für mehr Verständnis des Themas gegeben. Die auf den Aufzeichnungsdiagramme auf der horizontalen Achse Zeit haben, während sich die Spannung auf der vertikalen Achse befindet. Dies sind die Prozentsätze, wie viel Zeit die Spannung hoch war. Der Arbeitszyklus ist die Zeit, für die die Spannung hoch war.

Beispiel

Der Code für die Impulsbreitmodulation ist unten angegeben.

int ledpin = 6; // Arduino uno PWM -Stifte: 3, 5, 6, 9, 10
int Helligkeit = 0;
int fadeValue = 5;
void setup ()
PinMode (LEDPIN, Ausgang);

void Loop ()
Analogwrite (LEDPin, Helligkeit);
Helligkeit = Helligkeit + FadeValue;
if (Helligkeit = 255)
fadeValue = -FadeValue;

Verzögerung (10);

Zuerst die LEDPIN Die Variable wird deklariert, bei der das LED -Licht angeschlossen ist, um den Analogwrite -Wert A Variable von zu speichern Helligkeit wird deklariert. Der Wert fährt im Bereich zwischen 0 und 255 im Bereich. Um die Verjünglichkeit der LED zu kontrollieren, eine Variable genannt Fadevalue wird eingesetzt.

In den Abschnitt "Einstellungsabschnitt" wird die der LED zugewiesene Pin-Nummer deklariert und im Schleifenabschnitt wird das Signalmodulationssignal der Impulsbreite unter Verwendung der Funktion Analogwrite () erzeugt. Die Helligkeit der LED wird mit der Veränderung der Breite des Pulses kontrolliert. LED -Pin und Helligkeit werden als Argumente der Analogwrite -Funktion angesehen. Danach wird die Helligkeit und die Variable des Fadewerts hinzugefügt. Erhöhen Sie die Helligkeit bei jedem Mal um das Fünffache, wenn die Schleife läuft.

Die IF -Bedingung wird verwendet, um den Code nur auszuführen, wenn die Helligkeit weniger als Null oder größer als 255 ist.

Zu Beginn ist der Wert für die Helligkeit Null und FadeValue beträgt 5. In der ersten Aussage wird die Verblassenbetrag in die Helligkeit hinzugefügt, und jetzt hat die Helligkeit einen Wert von fünf. Dann ist die Erkrankung der IF -Aussage falsch, da die Helligkeit nicht weniger als Null ist oder die Helligkeit größer als 255 ist. Die Schleife läuft also weiter, bis der Helligkeitswert 255 erreicht. Wenn die IF -Bedingung wahr ist.

Bei jeder Iteration nimmt der Wert um 5 bis er Null abnimmt, und die LED wird ausgeschaltet.

Abschluss

Es gibt eine breite Palette von Projekten, die mit Arduino durchgeführt werden können. Mit Arduino ist es etwas einfach, an Projekten zu arbeiten. In diesem Artikel wird die Impulsbreitmodulation (PWM) erörtert und eine ihrer Anwendungen wird beschrieben, um Details darüber zu erhalten.