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

Die Drehrichtung an einem Motor ändern (1)

Aufgabe:

Ein Motor soll sich in unterschiedlichen Richtungen drehen.

Anschluss an den Arduino

Material

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

Beschreibung

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

Die Schaltung ähnelt der des vorherigen Versuchs. Es gibt ein paar Änderungen:

  • Es wurde eine Batterie als externe Versorgung für den Motor angeschlossen. Der Pluspol der Batterie wird mit Pin 8 des Motortreibers verbunden.

Der Minuspol der Batterie wird mit GND am Arduino verbunden.

  • Der Motor wird an die Ausgangspins des IC verbunden (Pin 3 und Pin 6 am IC).
  • Es müssen zwei Leitungen an die Ausgangs-Pins des Arduino verlegt werden:

Arduino Pin 3 => IC Pin 7

Arduino Pin 10 => IC Pin 2

Die komplette Übersicht der Steckberbindungen:

Je nachdem, an welchem Pin welche Spannung anliegt, dreht sich der Motor nun nach rechts, links oder gar nicht:

Zur Wiederholung noch einmal die Pin Belegung am Motortreiber IC L293D:

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 Pin 3 wird eine Spannung von 5V (HIGH) angelegt, an Pin 10 wird keine Spannung angelegt, (LOW). Der Motor dreht sich in eine Richtung und zwar 5 Sekunden lang.

 

An beide Pins wird keine Spannung angelegt (LOW). Es wird 100 Millisekunden gewartet. Der Motor stoppt und kann zur Ruhe kommen.

 

Jetzt wird umgepolt: An Pin 3 bleibt ein LOW-Signal, an Pin 10 wird ein HIGH-Signal gelegt. Der Motor dreht sich jetzt 5 Sekunden lang in die andere Richtung.

 

An beide Pins wird keine Spannung angelegt (LOW). Es wird 100 Millisekunden gewartet. Der Motor stoppt und kann zur Ruhe kommen.

 

Der Arduino-Sketch

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

1 void setup()  
2 {                                         
3 pinMode(3 , OUTPUT);  // Pin 3 und Pin 10 werden als Ausgänge definiert
 
4 PinMode(10, OUTPUT);
5 }  
6  void loop()  
7 {  
8     digitalWrite( 3 , HIGH );
// Der Motor dreht 5 Sekunden lang in die erste Richtung.
9     digitalWrite( 10 , LOW );
10     delay( 5000 );
11 digitalWrite( 3 , LOW ); // Der Motor wird für 100 Millisekunden ausgeschaltet und kann auslaufen.
12 digitalWrite( 10 , LOW );
13 delay( 100 );
14      digitalWrite( 3 , LOW ); // Der Motor dreht 5 Sekunden lang in die andere Richtung.
15      digitalWrite( 10 , HIGH );
16      delay( 5000 );
17 digitalWrite( 3 , LOW ); // Der Motor wird für 100 Millisekunden ausgeschaltet und kann auslaufen.
18 digitalWrite( 10 , LOW );
19 delay( 100 );
20 }  

Cookie-Regelung

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

Stimmen Sie dem zu?