Ihre Browserversion ist veraltet. Wir empfehlen, Ihren Browser auf die neueste Version zu aktualisieren.

Die Drehzahl an einem Motor ändern

Aufgabe:

Die Drehzahl an einem Motor soll mit einem Poti geändert werden.

Anschluss an den Arduino

Material

  • Arduino
  • Potentiometer
  • 1 Gleichstrommotor
  • Motortreiber IC 293D
  • Breadboard
  • Leitungen

Beschreibung

Motoren können auch direkt (also ohne den IC) an den Arduino angeschlossen werden. Dabei können aber nur sehr kleine Ströme geschaltet werden, so dass die meisten Motoren gar nicht anlaufen werden. Dazu braucht man noch einige zusätzliche Bauteile.

Der Motortreiber L293D beinhaltet all diese Bauteile, die sonst einzeln aufgebaut werden müssten.

An den L293D können vier Motoren angeschlossen werden, wenn sie alle in nur eine Richtung laufen.

Soll der Motor einen Vorwärts- und Rückwärtsgang haben, können nur zwei Motoren angeschlossen werden.

Der L293D verstärkt die Ströme des Arduino und kann bis zu 600mA Dauerstrom pro Motor  schalten.

 

Es ist sinnvoll, wenn die Motoren im Dauerbetrieb von einer externen Energiequelle gespeist werden. Dazu schließt man den Pluspol der externen Batterie an den Pin 8 des IC. Den Minuspol verbindet man mit GND des Arduino.

Pin 4, 5,12,13 des IC werden mit GND am Arduino verbunden, sie dienen der Wärmeableitung.

Pin 16 des IC wird mit +5V verbunden (Versorgungsspannung für den IC).

Damit die Motoren 1 und 2 funktionieren, muss an Pin 1 des IC ein „HIGH“ Signal anliegen, das von +5V kommt. Man könnte es auch von einem digitalen Ausgang holen, quasi als Notstopp.

Dasselbe gilt für die Motoren 3 und 4, hierzu muss man an Pin 9 des IC ein „HIGH“ anlegen.

Die Eingänge für die Motoren liegen an den IC-Pins 2, 6, 10, 15. Ein „HIGH“ lässt den Motor mit der max. Drehzahl drehen, ein „LOW“ bringt ihn zum Stillstand.

Mit Hilfe der PWM-Ausgänge kann man beliebige Drehzahlen einstellen.

Sollen die Motoren nur eine Drehrichtung haben, werden sie an die IC-Pins 3, 5, 11, 14 und jeweils an GND angeschlossen.

Der Motortreiber L293D

  • Alle 4 GND-Leitungen müssen miteinander verbunden werden (Wärmeableitung).
  • Die Minus-Leitung der externen Spannungsquelle (Vcc 2) wird mit GND verbunden.
  • GND wird mit Arduino-GND verbunden.
  • Bei starken Motoren muss ein Kühlkörper auf den IC angebracht werden.
  • Bei Festeinbau: Nicht der IC wird eingelötet, sondern ein Sockel wird verbaut.

Das Ardublock-Programm

Bedeutung der einzelnen Blöcke

(Steht unter dem Block keine Erklärung, dann wurde er bereits in einem Tutorial erklärt)

 An den analogen Ausgang (Pin 6 PWM) wird ein Wert ausgegeben, der wie folgt berechnet wird:

 

Die Spannung am analogen Eingang A0 wird gemessen (0V bis 5V) und automatisch in einen Wert von 0 bis 1023 ungerechnet.

Dieser Wert in umgewandelt in eine Zahl zwischen 0 und 255.

Diese Zahl wird dann an den analogen Ausgang gesendet.

 

Der Arduino-Sketch

(Steht keine Erklärung, dann wurde der Befehl bereits in einem Tutorial erklärt)

1  void setup()  
2  {                                                                                                
3  pinMode(6 , OUTPUT);  
4  }  
5  void loop()  
6  {  
7  analogWrite(6 , map (analogRead(A0) , 0 , 1023 , 0 , 255 ));  

// Folgender Wert wird an den PWM Ausgang 6 gesendet: Am analogen Eingang A0 wird eine Spannung gemessen, daraus ein Wert zwischen 0 und 1023 berechnet.

Dieser Wert wird in einen zweiten Wert berechnet, der zwischen 0 und 255 liegt.

Aus dem zweiten Wert ergibt sich die Spannung für den Motor.
8  }  

Cookie-Regelung

Diese Website verwendet Cookies, zum Speichern von Informationen auf Ihrem Computer.

Stimmen Sie dem zu?