Wie man den DC -Motor mit Arduino steuert

Wie man den DC -Motor mit Arduino steuert
Arduino ist ein elektronisches Entwicklungsausschuss, das sowohl auf Hardware als auch auf Software basiert. Arduino gibt seinen Benutzern die Freiheit, mehrstufige Projekte zu entwerfen, die auf verschiedenen Modulen, Hardware und Motoren basieren. Mit der Zeit nimmt die Nachfrage nach Robotikprojekten zu Arduino zu. Wenn wir über Roboterprojekte sprechen, fällt uns als Erstes Motoren und Controller aus. DC -Motoren spielen eine wichtige Rolle beim Aufbau von Robotikprojekten. Hier werden wir diskutieren, wie DC -Motoren mit Arduino verwendet werden können.

DC Motorsteuerung mit Arduino

Ein DC -Motor ist eine der weit verbreiteten Motorarten. Es kommt mit zwei Leads, einem positiv und zweiten negativ. Wenn wir diese beiden Kabel mit einer Batterie oder einer Stromquelle anschließen, wird der Motor gedreht. Wenn wir jedoch die Polarität des terminalen Motors umkehren, dreht sich in der entgegengesetzten Richtung.

Mit Arduino können wir die Motordrehzahl und -richtung flexibler steuern. Um den Motor mit Arduino zu steuern, verwenden wir ein Motor -Treibermodul. Ein Motor -Treibermodul ist eine externe Schaltung, die einen Arduino mit einem der DC -Motoren anstellen kann.

Hier werden wir das verwenden Ln293d IC -Motorrad -Treibermodul zur Steuerung einer Gleichstromrichtung und Geschwindigkeit. LN293D ist ein 16-poliges Motor-Treibermodul, das zwei Gleichstrommotoren gleichzeitig steuern kann. Es kann einen Motor mit Strom von bis zu 600 mA pro Kanal und Spannungsbereich ab 4 anfahren.5 bis 36 V (an Pin 8). Mit diesem Treibermodul können wir mehrere DC -Motoren mit kleiner Größe steuern.

Schaltplan
Um den DC -Motor zu steuern, entwerfen Sie die Schaltung gemäß dem genannten Schaltplan. Schließen Sie den Pin 2 und 7 des Treiber -IC mit dem digitalen Pin D10 und D9 von Arduino Uno an. Mit digitalen Stiften werden wir die Richtung und Geschwindigkeit unseres Motors steuern. Pin 1 und 8 erhalten eine hochrangige Logik unter Verwendung von Arduino 5V Logic Level Spannung. Der Gleichstrommotor ist an Pin 3 und 6 des Treibermoduls angeschlossen. Pin 4 und 5 sind kurz, weil im Motorfahrermodul die Gemeinsamkeiten gemahlen werden.

Mit Pin 9 und 10 können wir die Motorrichtung steuern. Wenn der Stift 10 hoch ist und der Stift 9 niedriger Motor in einer Richtung dreht und sich in den entgegengesetzten Richtungsbedingungen drehen wird.

Schema

Code

const int dcmotorsignal1 = 9; /*Pin 9 für Motor Ersteingang*///
const int dcmotorsignal2 = 10; /*Pin 10 für Motor Second Eingang*//
void setup ()

PinMode (dcmotorsignal1, Ausgabe); /*initialisieren Sie den DCMotorsignal1 -Pin als Ausgang*/
PinMode (dcmotorsignal2, Ausgang); /*initialisieren Sie den DCMotorsignal2 -Pin als Ausgang*/

Hohlraumschleife ()

im Uhrzeigersinn (200); /*drehen im Uhrzeigersinn*//*
Verzögerung (1000); /*Verzögerung von 1 Sekunde*/
gegen den Uhrzeigersinn (200); /*drehen sich gegen den gegen den Uhrzeigersinn agieren*/
Verzögerung (1000); /*Verzögerung für 1 Sekunde*/

void im Uhrzeigersinn (int rotationalspeed) /*Diese Funktion steigt und dreht den Motor im Uhrzeigersinn* /

Analogwrite (dcmotorsignal1, rotationalspeed); /*Motordrehzahl einstellen*/
Analogwrite (dcmotorsignal2, niedrig); /*Stoppen Sie den DCMOTORSIGNAL2 PIN Motor*/

void gegen den Uhrzeigersinn (int rotationalspeed) /*Die Funktion fährt und dreht den Motor gegen den gegen den Uhrzeigersinn* /

Analogwrite (dcmotorsignal1, niedrig); /*Stoppen Sie den DCMotorsignal1 -Stift des Motors*/
Analogwrite (dcmotorsignal2, rotationalspeed); /*Motordrehzahl einstellen*/

Hier im obigen Code initialisieren wir zwei digitale Stifte für die DC -Motorsteuerung. Der digitale Pin 9 wird als Eingang für den ersten Pin eingestellt und D10 wird als Eingang für den zweiten Pin des Gleichstrommotors eingestellt. Als nächstes mit dem PinMode Funktion Wir initialisieren diese beiden digitalen Stifte als Ausgabe.

Im Schleife Abschnitt von Code Zwei Funktionen im Uhrzeigersinn und gegen den Uhrzeigersinn werden mit einer Rotationsgeschwindigkeit von 200 initialisiert. Danach unter Verwendung von zwei Hohlraumfunktionen im Uhrzeigersinn und gegen den Uhrzeigersinn ändern wir die Richtung der Motorrotation, indem wir den Stift 9 und 10 als niedrig und hoch einstellen.

Warum wir Motor -Fahrermodul mit Arduino verwendet haben?

Motor -Treiber können ein niedriges Stromsignal von einem Arduino oder einem anderen Mikrocontroller nehmen und es zu einem hohen Stromsignal erhöhen, das jeden DC -Motor problemlos antreiben kann. Normalerweise arbeiten Arduino und andere Mikrocontroller mit niedrigem Strom, während sie Gleichstrommotoren mit hoher Strom konstanter Eingang benötigen, den Arduino nicht bereitstellen kann. Arduino kann uns maximal 40 mA Strom pro Stift liefern, was nur ein Bruchteil dessen ist. Motorfahrermodule wie L293D können zwei Motoren steuern und den Benutzern freie Hand zur Steuerung der Geschwindigkeit und Richtung entsprechend ihrer Leichtigkeit bieten.

Notiz: Bei Verwendung mehrerer Motoren mit Arduino wird empfohlen, externe separate Versorgung für DC -Motoren zusammen mit dem Motor -Treibermodul zu verwenden, da Arduino den Strom nicht mehr zurückhalten kann 20 mA Und normalerweise nehmen Motoren aktuell viel mehr als das. Ein weiteres Problem ist Kickback, Schrittmotoren haben magnetische Komponenten; Sie werden weiterhin Strom erzeugen, selbst wenn die Leistung abgeschnitten wird, was zu genügend negativer Spannung führen kann, die das Arduino -Board beschädigen können. Kurz gesagt, ein Motorfahrer und eine separate Stromversorgung sind erforderlich, um einen DC -Motor zu betreiben.

Abschluss

DC -Motoren sind eine wichtige Komponente für die Gestaltung von Arduino -basierten Robotikprojekten. Mit DC -Motoren kann Arduino Bewegung und Richtung der Projektperipheriegeräte steuern. Um diese Motoren reibungslos zu steuern. In diesem Artikel werden Sie in jedem Arduino -Projekt entworfen und die Schnittstellen -DC -Motoren gestaltet.