Wie man mit dem Arduino, die Geschwindigkeit eines DC-Motorsteuerung

mehr Kontrolle über Ihre DC-Motor für ein Produkt? Sie können die Motorregel Skizze verwenden für die Arduino eine Eingabe in ein Gleichstrommotor zu setzen Sie die volle Kontrolle des Motors im laufenden Betrieb zu geben.

Die Skizze Motorregel

Um die Kontrolle über die Geschwindigkeit des Motors zu gewinnen, wenn Sie es brauchen, benötigen Sie ein Potentiometer auf Ihrer Schaltung hinzuzufügen.

Du brauchst:

  • Ein Arduino Uno

  • Ein Steckbrett

  • Ein Transistor

  • Ein Gleichstrommotor

  • Eine Diode

  • Ein 10k Ohm variablen Widerstand

  • Ein 2,2 k-Ohm-Widerstand

  • Jump Drähte

Suchen Sie einen Platz auf Ihrem Steckbrett Ihr Potentiometer zu platzieren. Der zentrale Stift des Potentiometers wird zurück an Pin 9 verbunden, einen Sprung Draht, und die verbleibenden beiden Stifte sind auf einer Seite und GND auf der anderen auf 5V verbunden.

bild0.jpg

Die 5V und GND kann auf beiden Seiten, aber Schalten sie den Wert invertieren, dass das Potentiometer auf den Arduino sendet. Obwohl das Potentiometer die gleiche Leistung und Masse als der Motor verwendet, beachten Sie, dass sie getrennte Stromkreise sind, die sowohl durch die Arduino kommunizieren.

image1.jpg

Nachdem Sie die Schaltung aufgebaut haben, öffnen Sie eine neue Skizze Arduino und es mit einem anderen einprägsamen Namen, wie myMotorControl speichern. Geben Sie dann den folgenden Code ein.

int potPin = A0-int motorPin = 9-int potValue = 0-int motorValue = 0-Lücke setup () {Serial.begin (9600) -} void loop () {potValue = analogRead(PotPin) -motorValue = Karte(PotValue, 0, 1023, 0, 255) -analogWrite(MotorPin, motorValue) -Serial.print ( "Potentiometer =") -Serial.print(PotValue) -Serial.print ( " t Motor =") -Serial.println(MotorValue) -verzögern(2) -}

Nachdem Sie die Skizze eingegeben haben, speichern Sie es und klicken Sie auf die Schaltfläche Kompilieren Syntaxfehler zu markieren. .

Wenn die Skizze richtig kompiliert, klicken Sie auf Hochladen, um die Skizze zu dem Board hochzuladen. Wenn es fertig ist das Hochladen, sollten Sie in der Lage sein, Ihren Motor mit dem Potentiometer zu steuern. Drehen Sie das Potentiometer in eine Richtung bewirkt, dass der Motor es in die andere Richtung drehen zu beschleunigen Up- bewirkt, dass es zu verlangsamen.

Die Motorregel Sketch Zusammenbruch

Diese Skizze ist eine Variante der AnalogInOutSerial Skizze und arbeitet in genau der gleichen Weise mit einigen Namensänderungen besser zu zeigen, was Sie die Steuerung und Überwachung auf der Rennstrecke.

Wie immer man die verschiedenen Variablen in der Skizze verwendet erklären. Sie verwenden den potPin das Potentiometer Pin zuweisen und motorPin ein Signal an den Motor zu senden. Die potValue Variable wird verwendet, um den Rohwert des Potentiometer zu speichern und die motorValue Variable speichert den konvertierten Wert, den Sie für die Ausgabe an den Transistor wollen den Motor zu wechseln.

int potPin = A0-int motorPin = 9-int potValue = 0-int motorValue = 0-

Wie die Motorregel Skizze zu zwicken

Sie können feststellen, dass es eine Mindestgeschwindigkeit wird nach dem der Motor nur Brummen. Er tut dies, weil es nicht genug Kraft zu drehen hat. Durch die Überwachung der Werte an den Motor Skizze mit der Motorregel gesendet werden, können Sie die Motorminimalwert finden zu drehen und zu optimieren die motorValue dass der Motor innerhalb seiner wahren Bereich zu machen.

Für den Bereich der motorValue, folge diesen Schritten:

  1. Mit der Motorregel Skizze hochgeladen, klicken Sie auf den seriellen Monitor Button oben rechts auf Ihrem Arduino Fenster.

    Der serielle Monitorfenster zeigt Ihnen den Wert Potentiometer mit dem Ausgangswert gefolgt, die an den Motor gesendet wird, in dieser Art und Weise:

    Potentiometer = 1023 Motor = 255

    Diese Werte werden in einer langen Liste und Update angezeigt, während Sie das Potentiometer drehen. Wenn Sie die Liste nicht sehen, nach unten scrollen, stellen Sie sicher, dass die Autoscroll Option ausgewählt ist.

  2. Beginnend mit dem Potentiometer den Wert 0 zu lesen, schalten Sie den Potentiometer sehr langsam, bis das Brummen aufhört und der Motor beginnt zu drehen.

  3. Notieren Sie den Wert an dieser Stelle angezeigt.

  4. Verwenden Sie ein ob Anweisung, um den Motor zu sagen Geschwindigkeit zu ändern, nur wenn der Wert größer als die Mindestdrehzahl erforderlich, um den Motor zu drehen, wie folgt:

    (ein). Finden Sie den Teil des Codes, der schreibt motorValue an den Motor:

    analogWrite(MotorPin, motorValue) -

    (B). Ersetzen Sie es mit dem folgenden Code:

    ob(MotorValue> yourValue) {analogWrite(MotorPin, motorValue) -} sonst {digital(MotorPin, LOW) -}
  5. Jetzt ersetzen yourValue mit der Nummer, die Sie notieren gemacht.

    Wenn der Wert motorValue ist größer als die, beschleunigt sich der Motor. Wenn sie niedriger als das ist, wird der Stift geschrieben NIEDRIG so dass es vollständig ausgeschaltet. Sie könnten auch geben analogWrite (motorPin, 0) dasselbe zu erreichen. Tiny Optimierungen wie diese können Sie Ihr Projekt reibungslos funktionieren, ohne verschwendete Bewegung oder Werte helfen.

Menü