Betrieb von zwei Servos mit dem Arduino

Das Arduino kann als eine zwei Servos mit der gleichen Leichtigkeit steuern. Alles was es braucht ist eine zweite Instanz (Kopie) des Servo-Objekt erstellen, ihm einen eindeutigen Namen zu geben. Zum Beispiel in einem zweirädrigen differentiell-gelenkten Roboter könnten Sie ein Objekt Servo servoLeft nennen, und die andere servoRight.







Das Arduino fehlt direkte Verbindungen für die Servomotoren anzubringen. Stattdessen bietet die Mini-Steckbrett-Prototyping-Raum beiden Servos für den Anschluss sowie die AA Batteriehalter der Servos, der Kräfte.

Siehe 1 (schematisch) auf Figur und Figur 2 (bildliche) zum Verdrahten der lötfreie Steckbrett. Verwendung eines Streifens von 0,100" doppelseitigen (langen) männlichen Kopfstifte, abreißen zwei Sätze von drei Stiften und einem Satz von Stiften für die AA-Batterie-Verbindung.

Das Referenzdesign verwendet einen AA Batteriehalter mit einem Vier-Pin-Buchse. Die + und - Leitungen sind an den beiden äußeren Positionen des Verbinders. Ich habe den Stift direkt neben dem + Anschluß des männlichen Kopf abgebrochen, verwendet dann ein kurzes Stück massiven Leiterschaltdraht in seinem entsprechenden Loch in dem Verbinder zu füllen. Dies verhindert, dass Sie den Stecker umgekehrt wird, wenn es eingesteckt ist.

Wenn das Steckbrettes solderless Verdrahtung, besonders vorsichtig sein, nicht positive und negative Leitungen an den Servo zu mischen. Die Umkehrung der Macht wird es dauerhaft beschädigen.

Hier ist ein wichtiger Hinweis: die ArdBot verwendet separate Batterie liefert für die Arduino und seine beiden Servos. Damit alles müssen die Masseanschlüsse für die Arduino und die Servo-Batterieversorgung ordnungsgemäß funktioniert, miteinander verbunden werden. Dies wird sowohl in den schematischen und bildlichen Schaltungs Ansichten gezeigt.

Achten Sie darauf, auch richtig die Anschlüsse für die Servos orientieren, wenn man sie in die Platine stecken. Servo Stromkabel sind farbcodiert, aber die Farben sind nicht universal.







  • Ground (-) ist in der Regel schwarz oder braun.
  • Power (+) ist meistens rot, und mit modernem Servos ist es immer in der Mitte.
  • Signal ist weiß, gelb oder manchmal Orange (aber darauf achten, gegenüber einigen Servos die Stromkabel ist orange!).

Wenn Sie Zweifel haben, überprüfen Sie die Datenblatt, die mit Ihrem Servos kommt. Raten Sie nicht!

Servo-Test-Skizze

Mit dem ArdBot gebaut und dem Steckbrett verdrahtet, sind Sie bereit, um den Roboter zu testen und auf Herz und Nieren. Siehe unten auf die Skizze.

Einmal heruntergeladen, ein kleines Buch unter dem ArdBot setzt auf seine Räder vom Boden zu heben. Die USB-Kabel, und, in dieser Reihenfolge, schließt die AA-Batterie-Stecker in das Steckbrett, schließt dann in der 9-Volt-Stromversorgung des Arduino Strombuchse. (Wenn Sie einen Arduino Diecimila verwenden, sollten Sie von USB auf EXTernal über das Netz Auswahl Jumper wechseln.)

Wenn alles richtig angeschlossen ist, sollten die Servomotoren durch ein Testmuster gehen.
Unter der Annahme, die Motoren arbeiten, wie sie sollten, den Reset-Schalter auf der Platine Arduino drücken und die ArdBot auf den Boden legen. Lassen Sie den Schalter, und der Roboter soll seinen Selbsttest Manöver auszuführen.

Wenn die Motoren nicht bewegen, überprüfen Sie Ihre Verkabelung, sicherstellen, dass der Servo-Stecker richtig ausgerichtet ist. Sie wird nicht funktionieren, wenn die Anschlüsse auf dem Steckbrett umgekehrt werden.

Arduino-2servo.pde

Ein genauerer Blick auf die Test-Skizze

Lassen Sie uns prüfen, wie der Test Skizze funktioniert. Zunächst einmal ist eine Include-Anweisung an die Servo.h Bibliothek Header-Datei, die mit der Arduino IDE Installation zur Verfügung gestellt wird. Diese Datei und sein entsprechendes Programm C-Sprache, all Extras, die tatsächliche Codierung die Servos Funktion zu machen.

Als nächstes kommt zwei Aussagen, die oder instanziiert, zwei Servo-Objekte für die Verwendung in dem Rest der Skizze erstellen. Jedes Objekt stellt eine physikalische Servo auf den Arduino befestigt. Methoden dieser Objekte gehören Dinge wie spezifiziert, welche digitale Stift verwendet wird, aus dem Arduino zum Servo und die Position des Servo zu verbinden. Bitte beachte, dass ich die beiden Servo gegeben haben Objekte beschreibende Namen: servoLeft und servoRight. Es ist einfacher, den Überblick über die Dinge auf diese Weise zu halten.

In der Setup-Funktion werden die servoLeft und servoRight Objekte „verdrahtet“, um ihre jeweiligen Stifte auf den Arduino-in diesem Fall für den Stift 10 und Stift 9 servoLeft für servoRight.

  • Geht nach vorn für 2 Sekunden
  • Kehrt für 2 Sekunden
  • Stellt sich rechts für 2 Sekunden
  • Stellt sich für 2 Sekunden nach links
  • Stop für 2 Sekunden

Und schließlich jede benutzerdefinierte Funktion gibt die spezifische Bewegung auf die Servos anzuwenden. Mit dem Ziel, Servo, Servos befohlen in einer oder anderen Richtung durch (unter anderen Möglichkeiten) spezifiziert einen Winkel zwischen 0 und 180. Die Servo bewegt sich dann zu diesem Winkel in Reaktion zu bewegen.







In Verbindung stehende Artikel