LBotics.at

Die beiden Servo-Motoren sind an die Servo-Ports des Mainboards angeschlossen. Mit der Funktion WRITE_MOTOR() werden die Drehgeschwindigkeit und Drehrichtung festgelegt der Motoren festgelegt.

Einstellen des Null-Punkts

Damit sich Continuous Servos bei der Pulsweite für die Geschwindigkeit null nicht drehen, muss deren Nullpunkt eingestellt werden. Dazu wird ein Servo mit der Geschwindigkeit 0 angesteuert und mit dem Potentiometer am Servo die Einstellung ermittelt, bei der sich der Servo nicht dreht.

Programmbeispiel - Unterschiedliche Geschwindigkeiten und Drehrichtung

In diesem Beispiel sind die beiden Servo-Motoren an den Motor-Ports ML und MR angeschlossen und werden für unterschiedliche Zeitspannen in beiden Drehrichtungen ein- und ausgeschaltet.

#include "KeplerOpenBOT.h"
 
void setup()
{
KeplerOpenBOT_INIT();
}
 
void loop()
{
WRITE_MOTOR(ML,100);
SLEEP(2000);
WRITE_MOTOR(MR,0);
SLEEP(1000);
WRITE_MOTOR(ML,-50);
SLEEP(2000);
WRITE_MOTOR(MR,0);
SLEEP(1000);
}
Erklärungen zu diesem Programmbeispiel

Zeile 10: WRITE_MOTOR(ML,100);

Mit der Funktion WRITE_MOTOR(port,value) werden die Motorzustände gesetzt.

Mit dem Parameter port wird der gewünschte Motorausgang gewählt: ML oder MR für Motor links und Motor rechts.

Mit dem Parameter value können die Drehrichtung und auch die Drehgeschwindigkeit festgelegt werden. Die Werte können zwischen -100 und 100 liegen.

Die Größe dieser Zahl gibt die Geschwindigkeit und das Vorzeichen die Drehrichtung an. Mit dem Wert 0 wird ein Motor zum Stillstand gebracht.