Hallo. Nach Stundenlager, endloser Suche muss ich mich nunmal an euch wenden, denn dieses Forum hat mir schon echt oft geholfen... Ich habe 3 Motorsteuerungen von Grove die über I2C mit meinem Arduino Mega verbunden sind. http://wiki.seeedstudio.com/Grove-I2C_Motor_Driver_V1.3/ Einen allein anzusteuern ist mit dem Beispiel kein porblem. Weis ich nicht, wie ich alle 3 Ansteuern kann. Hier ist mein TestScript. #include "Grove_I2C_Motor_Driver.h" // Motorshiled Addressvergebung #define driver3 0x0f //Oberstes Shield (A5) #define driver2 0x08 //Mittleres Shield (A3 + A4) #define driver1 0x0c //Unteres Shild (A1 + A2) #define shield1 Motor #define shield2 Motot #define shield3 Motor void setup() { shield1.begin(driver1); shield2.begin(driver2); shield3.begin(driver3); Serial.begin(9600); [...] } void loop() { [...] // Achse 1 if (a1 == true) { shield1.speed(MOTOR1, a1_sollspeed); } if (a1_ist = a1_sollpos) { shield1.stop(MOTOR1); } // Achse 2 if (a2 == true) { shield1.speed(MOTOR2, a2_sollspeed); } if (a2_ist = a2_sollpos) { shield1.stop(MOTOR2); } // Achse 3 if (a3 == true) { shield2.speed(MOTOR1, a3_sollspeed); } if (a3_ist = a3_sollpos) { shield2.stop(MOTOR1); } // Achse 4 if (a4 == true) { shield2.speed(MOTOR2, a4_sollspeed); } if (a4_ist = a4_sollpos) { shield2.stop(MOTOR2); } // Achse 5 if (a5 == true) { shield3.speed(MOTOR1, a5_sollspeed); } if (a5_ist = a5_sollpos) { shield3.stop(MOTOR1); } // Achse 6 /* if (a6 == true) { shield3.speed(MOTOR2, a6_sollspeed); } if (a6_ist = a6_sollpos) { shield3.stop(MOTOR2); } */ } Aber leider funktioniert es nicht, ich kann keinen dieser Ansteuern. Hat denn jemand eine Idee oder findet sogar mein Denkfehler? MfG
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.