Hallo, ich versuche gerade mit einem Arduino 5 Servos zu steuern. Das Schaltbild sieht so aus https://github.com/sky4walk/RoboterArm/blob/master/Arduino/RobotArmArduino_Steckplatine.png und das Skript dazu so https://github.com/sky4walk/RoboterArm/blob/master/Arduino/RobotArmArduino/RobotArmArduino.ino Leider beginnen die Motoren wie wild nach dem Einschalten rumzuzappeln, ohne, dass ich irgendeinen Positionsbefehl weiter absetze. Stecke ich alle Motoren bis auf einen ab, so bewegt der Servo, wie ich es erwarten würde. Nehm ich noch einen Servo hinzu, beginnt der Zweite beim Ansteuern des Ersten zu zappeln. Ich hab auch schon mit unterschiedlichen getrennten Stromversorgungen experimentiert, zB Batterien oder dergleichen. Die Servos sind die folgenden: 3x Servomotoren Adafruit MG995R Conrad 1142 2x Servomotor %VDC TowerPro SG92R 169 Ich verwende für den Arduino die Servo.h Bibltiothek. Hat jemand eine Idee? Vielen Dank André
> Ich verwende für den Arduino die Servo.h Bibltiothek. > > Hat jemand eine Idee? > > Vielen Dank > André Hallo, eine Idee wäre, dass die Refresh Funktion der Servo Objekte nicht aufgerufen wird. Ein Blick in die Servo.h verrät: static void refresh(); // must be called at least every 50ms or so to keep servo alive // you can call more often, it won't happen more than once every 20ms Und wenn du Dir den Code in der Loop Schleife deines Programms ansiehst, dann steht dort nirgend wo ein Aufruf der Refresh Funktion der Servos. Auch das 500 ms delay (delay(MOVE_DELAY)) am Ende der Loop ist nicht gerade dienlich für die Ansteuerung der Servos.
Ich würde mir mal die Stromversorgung anschauen. Der 5V Ausgang vom Arduino Board ist nicht so hoch belastbar, wie es ein Servo verlangt - schon gar nicht fünf Servos). Dazu kommt, dass die Kontakte der Steckbretter meist einen nicht zu vernachlässigenden Übergangswiderstand haben. Verwende ein Netzteil oder Batterien und schließe da die Servos direkt an (über eine kleine Platine mit Stiftleisten und Schraubklemmen). Pro Servo würde ich 1 Ampere einplanen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.