ja. ich habe jetzt alles genauso angesteckt wie auf der "anleitung"^^. so stehte es ja auch auf RN-Wissen.
pin1,8,9,16 an +5V
pin4,5,12,13 an GND
pin2,7,10,15 jeweils an digitale ausgänge von arduino
pin3,6,11,14 an die 2 DC-Motoren
Beobachten kann ich bei folgendem Programm:
Beide Motoren drehen Vorwärts, Stoppen und drehen wieder Vorwärts.Code:// Use this code to test your motor with the Arduino board: // if you need PWM, just use the PWM outputs on the Arduino // and instead of digitalWrite, you should use the analogWrite command // --------------------------------------------------------------------------- Motors int motor_left[] = {5, 6}; int motor_right[] = {9, 10}; // --------------------------------------------------------------------------- Setup void setup() { Serial.begin(9600); // Setup motors int i; for(i = 0; i < 2; i++){ pinMode(motor_left[i], OUTPUT); pinMode(motor_right[i], OUTPUT); } } // --------------------------------------------------------------------------- Loop void loop() { drive_forward(); delay(1000); motor_stop(); Serial.println("1"); drive_backward(); delay(1000); motor_stop(); Serial.println("2"); turn_left(); delay(1000); motor_stop(); Serial.println("3"); turn_right(); delay(1000); motor_stop(); Serial.println("4"); motor_stop(); delay(1000); motor_stop(); Serial.println("5"); } // --------------------------------------------------------------------------- Drive void motor_stop(){ digitalWrite(motor_left[0], LOW); digitalWrite(motor_left[1], LOW); digitalWrite(motor_right[0], LOW); digitalWrite(motor_right[1], LOW); delay(25); } void drive_forward(){ digitalWrite(motor_left[0], HIGH); digitalWrite(motor_left[1], LOW); digitalWrite(motor_right[0], HIGH); digitalWrite(motor_right[1], LOW); } void drive_backward(){ digitalWrite(motor_left[0], LOW); digitalWrite(motor_left[1], HIGH); digitalWrite(motor_right[0], LOW); digitalWrite(motor_right[1], HIGH); } void turn_left(){ digitalWrite(motor_left[0], LOW); digitalWrite(motor_left[1], HIGH); digitalWrite(motor_right[0], HIGH); digitalWrite(motor_right[1], LOW); } void turn_right(){ digitalWrite(motor_left[0], HIGH); digitalWrite(motor_left[1], LOW); digitalWrite(motor_right[0], LOW); digitalWrite(motor_right[1], HIGH); }
Eigentlich sollten sie Vorwärts Rückwärts Verschieden Verschieden und dann Stoppen.
Wenn ich einen Motor dann abstecke macht der andere dann genau das was er machen sollte.







Zitieren

Lesezeichen