Last Updated on 30th September 2023 by Suffocation
Die Motorplatine ist perfekt für kleine Roboter-Projekte geeignet, bei denen 2 bis 4 Antriebsmotoren verwendet werden.
Zusätzlich bietet sie Anschlüsse für zwei Servos, Die analogen Ports sind durchgeschleift.
Facts
Hier die wichtigsten Daten im Überblick:
- 2 Servoanschlüsse
- 2 Motorbrücken
- 1 shift register
- Reset switch
- 1 External voltage connection
- 1 Power LED
- Jumper – to interrupt the board voltage
| Description | Worth |
|---|---|
| Logic Voltage [V] | 5 |
| Motor output voltage [V] | 4,5 -25 |
| Max current output per motor / peak [mA] | 600 |
| Peak currents of up to [mA] | 1200 |
| Servo voltage [V] | 5 |
| Jumper separation supply voltage and board voltage | 1 |
| Versorgungsspannung für Motor [V] | 4,5 -25 |
Addendum 30.09.2023Recent PCBs seem to function up to 36V output voltage
Wiring

Motorbrücken
Mit Hilfe der Motorbrücken können 4 Gleichstrommotoren oder 2 Schrittmotoren (mit 4 Leitungen) betrieben werden. Die L293D Motorbrücken können Motoren bis zu einem Strom vom 600mA versorgen. (Kurzzeitig bis zu 1,2 A). Wird ein höherer Strom benötigt können weitere L293D IC’s huckepack auf die vorhandenen aufgelötet und parallel betrieben werden.
Das Schieberegister, ermöglicht es mit nur 3 Pins des Arduinos die Drehrichtungen der Motoren zu bestimmen.
(evtl. mal einen Beitrag zum Scheiberegister einfügen…).
Für die Ansteuerung der Motoren gibt es unteranderem eine Bibliothek von Adarfruit. Diese kann über Git oder die Arduino GUI herunter geladen werden (siehe unten).
https://github.com/adafruit/Adafruit-Motor-Shield-library/zipball/master
Die Motorbrücken belegen die folgenden Pins am Arduino:
- Pin 11 Motor 1 – Speed
- Pin 3 Motor 2 – Speed
- Pin 5 Motor 3 – Speed
- Pin 6 Motor 4 – Speed
- Pin 4, 7, 8, 12 Richtungsvorgabe für alle Motoren über 74HC595 Register.
Servoanschlüsse
Das Bord verfügt über zwei Steckplätze für Standardservos. Jeder Steckplatz hat drei Pins jeweils einen für Strom, Masse und den Steuereingang.
Die Steuereingänge belegen die folgenden Pins am Arduino:
- Pin 9 – Servo 1
- Pin 10 – Servo 2
External power supply
Hier können von 4.5V bis zu 25V an Schraubklemmen angelegt werden. Bitte auf die Polung achten sonst rauchts …
Views


Operation
- Two-axis plotter
- 2 or 4 wheel robot
- Pan/Tilt Tripod
Programming
Libraries
Ich habe mir die Bibliothek über GitHub herunter geladen und sie manuell installiert. Über die Arduino GUI geht es etwas einfacher.
Open Library Manager

Nach „motor“ suchen und die „Adafruit Motor Shield Library“ in der letzten Version installieren. Aufgepasst es gibt eine „Adafruit Motor Shield V2“ diese kann leider nicht für die V1 Platine verwendet werden. (Motor board V2).

Code
Control servos

Im Grunde werden die Servos ganz normal über die Arduino Bibliothek angesprochen. Wichtig für die Motorplatine ist nur, dass hier die Servos an Port 9 und 10 angeschlossen sind.
Meine Billigservos, harkeln einwenig an den Endpunkten, diese könnte man noch ausschliessen indem man die Konstanten min und max anpasst.
Über den Faktor kann die Schrittgröße bestimmt werden und über wait die wartezeit zwischen den einzelnen Schritten.
[gistpen id=“629″]
Controlling the engine

Für einen ersten Test habe ich das vorhandene Beispielprogramm verwendet.

Einfach auswählen, kopilieren und schon läuft Motor 1.
Um alle 4 Motoren zu testen, was nützlich erscheint um die Drehrichtungen (Polung) zu überprüfen, habe ich die Datei wie folgt angepasst.
The output should then look like this.

Control stepper motor
Basics of the stepper motor exist here.
Für die ersten Tests gibts ein Beispielprogramm.

Miscellaneous
Kompatibilität
The Shield can be used with the following boards.