Arduino Motorsteuerung

7

Ich arbeite an einem Projekt mit relativ geringem Budget und brauche eine Möglichkeit, vier oder mehr Motoren mit einem Arduino zu steuern. Ich habe ein wenig auf Motorabschirmungen geschaut, aber ich habe bereits eine Abschirmung darüber. Es hat jedoch eine weibliche Eingabe oben, so dass eine Motorabschirmung möglicherweise funktioniert. Irgendwelche Vorschläge?

Dylan Katz
quelle
Welche Art von Motoren möchten Sie fahren? Stepper ? gebürstet DC ? bürstenloses DC ? Die Steuerungsstrategie ist je nach verwendeter Strategie sehr unterschiedlich.
Mark Booth

Antworten:

2

Für eine gute Budgetlösung wurden 2 L298D Motor Controller IC-Chips verwendet. Jeder Chip kann 2 Motoren steuern. Sie implementieren eine H-Brücke und können so Motoren vorwärts oder rückwärts antreiben und Dioden für den Stromschutz einbauen. Sie sind daher sicherer als die Implementierung einer DIY-H-Brücke mit Transistoren.

Sie sind einfach zu bedienen und Sie können Ihre eigene Motorplatine für einen Bruchteil der Kosten der Motorabschirmungen herstellen.

Kevin Sadler
quelle
1

Befürchten Sie, dass der Arduino möglicherweise nicht genügend Stifte hat, um 4 verschiedene Motoren und das Zeug auf diesem anderen Schild zu steuern?

Es ist möglich, eine beliebige Anzahl von Motoren mit 4 digitalen Pins vom Arduino zu steuern.

Der Schrittmotortreiberchip STMicroelectronics L6470 ist so konzipiert, dass er in Reihe geschaltet ist, sodass 4 digitale Pins vom Arduino eine beliebige Anzahl von Motoren steuern können. (Wenn Sie einen anderen Motortreiber kennen, der zur Steuerung einer beliebigen Anzahl von Motoren mit weniger als 10 Pins vom Arduino verkettet werden kann, kommentieren Sie bitte den Namen und geben Sie ihn an.) Ich habe einen Prototyp mit dem Sparkfun L6470 Breakout Board gebaut . Anscheinend haben mehrere Leute andere Open-Source-Hardware-Boards für den L6470 hergestellt .

David Cary
quelle
Wie wählt man den Chip aus, auf den in einer Daisy Chain abgezielt werden soll? Ich sehe auf einigen Platinen einen "Chip Select" -Pin, der 1 Selector Pin pro Motor zu bedeuten scheint. Ich vermute jedoch, dass dies nicht der Fall ist.
Crishoj
@crishoj: Würde es Ihre Frage beantworten (und diese Antwort verbessern), wenn ich einen Link zu "Alberts Eisdiele" und "Erste Schritte mit dem AutoDriver" hinzufügen würde ?
David Cary
0

Ich hatte Glück mit diesen Motortreibereinheiten. Sie können mit den PWM-Ausgängen drehzahlgeregelt werden, und die Motorrichtung kann mit digitalen Eingängen versehen werden.

John Walthour
quelle
0

Ist das Problem, dass die handelsüblichen Motorabschirmungen alle so aussehen, als würden sie die andere Abschirmung, die Sie verwenden möchten, mechanisch stören? Vielleicht sehen Sie das Problem "Beide Schilde wollen das oberste Schild sein, damit sie nicht stapeln können"? Es ist ziemlich einfach, Servomotoren mit einfachen Kabelverbindungen zu steuern.

Standardmäßige Standard-Servomotoren verfügen über ein 3-adriges Kabel zur Servosteuerung .

Viele Abschirmungen haben - zusätzlich zu ihrem "Haupt" -Schaltkreis - einen "Stromanschluss" und einige Servoanschlüsse. (a) , (b) , (c) usw. Sie verbinden die 3 angeschlossenen Servodrähte - die GND- (G) und Power- (+) Drähte, die an das entsprechende Netzteil angeschlossen sind, sowie das Arduino GND und das Netzteil GND in Verbindung gebracht. Typischerweise ist das Signalkabel (S) mit einem der sechs speziellen Arduino PWM-Pins verbunden . (Diese Methode kann maximal 6 Motoren antreiben - oder weniger, wenn diese andere Abschirmung einige dieser Stifte benötigt).

Wenn Sie die gleichen Verbindungen zwischen dem Arduino und dem Servo mit einfachen Kabelverbindungen herstellen, funktioniert dies genauso gut. (a) , (b) , (c) usw.

David Cary
quelle