ich heiße Sven und muss gestehen, dass ich absoluter noob im Bereich Elektrotechnik und Arduino bin.
Aber trotzdem finde ich das Thema spannend und würde mich gerne ran machen und ein bisschen lernen.
Leider stoße ich schon zu Anfang auf Probleme, wo ich nicht weiß, wie ich sie am besten lösen kann und dachte mir hier mal einen Beitrag zu eröffnen.
Zu meinem Problem:
Habe ein Arduino Uno und ein Diymore l298p Motor Shield. Ebenso habe ich zwei 12 V DC Motoren, wovon es mir aktuell schon genügen würde, eines zum laufen zu bringen.
Motor Shield habe ich auf das Arduino aufgesetzt. Den ersten Motor habe ich mit rotem Kabel was auch am Motor mit rot gekennzeichnet ist auf A+ und das schwarze Kabel auf A- geklemmt.
Stromversorgung dachte ich mir über das Netzteil 12V was in meinem Arduino Kit dabei war.
Mein Code sieht recht einfach und rudimentär aus:
const int dirA = 12;
const int dirB = 13;
const int speedA = 3;
const int speedB = 11;
const int brakeA = 9;
const int brakeB = 8;
void setup() {
pinMode(brakeB,OUTPUT);
pinMode(brakeA,OUTPUT);
pinMode(dirA,OUTPUT);
pinMode(dirB,OUTPUT);
pinMode(speedA,OUTPUT);
pinMode(speedB,OUTPUT);
}
void loop() {
digitalWrite(dirA,HIGH);}
Habe schon Teile für den zweiten Motor drin.
Leider tut sich gar nichts. Ich könnte leider nicht mal sagen ob das Motor Shield über den Arduino überhaupt Strom bekommt.
Hoffe ihr schlagt jetzt nicht gleich beide Hände über dem Kopf zusammen
Dir scheinen beim Kopieren des Codes Zeilen abhanden gekommen zu sein. Mir fehlen noch digitalWrite() zu speedA und brakeA. Hinweise dazu müßten im Datenblatt des Shields stehen (Link?).
Wie geschrieben bin ich voller Laie, aber lernwillig. Vielen Dank für deine Hilfe! Diese hat mir den notwendigen Denkanstoß verpasst. Es war kein kopierfehler. Ich dachte ich könnte den Motor nur mit dirA laufen lassen. Speed ist natürlich für an/aus oder alles dazwischen zuständig. Er läuft jetzt. Für was Break ist, hab ich bisher noch nicht gefunden, werd im netz aber bestimmt noch drüber stoßen.
Das wusste ich. War ein Autokorrektur Fehler, da ich gerade vom iPhone schreibe. Bremse ist klar, aber egal ob ich die auf low oder high stehen habe, der Motor läuft weiter. Nur ein setzten der Geschwindigkeit auf low lässt den Motor stoppen.
Versuche die H-Brücke zu verstehen. Im Normalbetrieb fließt der Strom von einer Seite in den Motor, und auf der anderen nach Masse ab. Das funktioniert in beiden Richtungen. Beim Bremsen wird der Motor kurzgeschlossen, d.h. er ist auf beiden Seiten nur mit Plus oder Minus verbunden. Deshalb beißt sich das Bremsen mit dem Normalbetrieb.
Danke euch beiden und entschluldigung für die sehr späte Rückmeldung.
Konnte krankheitsbedingt nicht antworten.
Jetzt hab ich alles nötige dazu gelernt um meine beiden Motoren zu betreiben.
Funktioniert nun alles wie gewünscht.