Ein Gleichstrommotor wandelt elektrische Energie in mechanische Drehung um und wird in mobilen Robotern typischerweise als linker Antriebsmotor verwendet. Er muss über einen Motortreiber mit Spannung versorgt und angesteuert werden; dazu werden die Motorklemmen (oft M1 und M2) an die Motorausgänge des Treibers angeschlossen, während der Treiber Richtung und Geschwindigkeit regelt.
| Pin | Signal | Beschreibung |
|---|---|---|
M+ |
power | Positive motor terminal |
M- |
power | Negative motor terminal |
| Von | Nach | Kabel |
|---|---|---|
board:5V |
x1:VCC |
red |
board:GND |
x1:GND |
black |
board:D5 |
x1:IN1 |
green |
board:D6 |
x1:IN2 |
blue |
x1:OUT1 |
x2:M+ |
purple |
x1:OUT2 |
x2:- |
cyan |
Dieses Beispiel wurde für das arduino-uno geschrieben und kompiliergeprüft. Codey Online passt es für jedes andere unterstützte Board an.
const int motorIn1 = 5;
const int motorIn2 = 6;
void setup() {
pinMode(motorIn1, OUTPUT);
pinMode(motorIn2, OUTPUT);
Serial.begin(9600);
Serial.println("Left DC motor demo starting...");
}
void driveForward(int speedValue) {
analogWrite(motorIn1, speedValue);
digitalWrite(motorIn2, LOW);
}
void driveReverse(int speedValue) {
digitalWrite(motorIn1, LOW);
analogWrite(motorIn2, speedValue);
}
void motorStop() {
digitalWrite(motorIn1, LOW);
digitalWrite(motorIn2, LOW);
}
void loop() {
Serial.println("Forward");
driveForward(200);
delay(2000);
Serial.println("Stop");
motorStop();
delay(1000);
Serial.println("Reverse");
driveReverse(200);
delay(2000);
Serial.println("Stop");
motorStop();
delay(1000);
}
Beschreib einfach, was du bauen willst. Codey Online schreibt den Code, zeichnet den Schaltplan, kompiliert alles und flasht dein Board direkt aus dem Browser.
Kostenlos starten