Der rechte Motor dreht sich nicht.

Televio

New member
Hallo,

ich bin gerade dabei meinen Ardumower fertig zu stellen. Hardwareseitig habe ich die Hauptplatine, Akku usw. in einen Koffer ausgelagert, sonst ist alles original. Die aktuelle Sunray Firmware ist drauf, das RTK-Modul konfiguriert.

Die Software kann sich über Bluetooth mit dem Ardumower verbinden und ich wollte zu aller erst das ganze "von Hand" fahren. Mit der Joystick-Bedienfläche in der App.
Dabei dreht sich aber nur der linke Motor, nicht der rechte. Die Motoren sind beide in Ordnung. Ich habe mal den rechten Motor an den Anschluss für den linken gesteckt und dann läuft er. Die Motortreiber sind auch in Ordnung, denn ich habe sie mal vertauscht und dann läuft der linke Motor immer noch (mit dem anderen Treiber). Ich habe mal ein Bild von meinem Aufbau angehängt.

Was könnte es sonst noch sein?


Ich würde mich über Hilfe sehr freuen,
Andreas


Rover1.jpg
Rover2.jpg
 
Da gibt es eigene Möglichkeiten: Defekter DUE, kalte Lötstelle, Diode falschherum gelötet, oder ein anderer Pin ist falsch usw.
Als erstes würde ich prüfen, ob ein PWM Signal an den Motortreiber Pin ankommt und die anderen Signale am Motortreiber richtig sind..
Due Dioden habe ich gerade verglichen. Die scheinen richtig zu sein.

Was hast du denn da für eine schöne Box verwendet?
 
Zuletzt bearbeitet:
Auf dem Bild der unter. Es ist sinnig, sich KiCad zu installieren damit man Schematic und PCB angucken kann.
 
Ich habe mit einem Logiganalyzer die PWM Pins am Arduino und an den Motortreibern während des Betriebs gemessen. Der Pin für den linken Motor hat ein regelmäßiges Rechtecksignal. Der für den rechten Motor hat immer nur ganz kurz ein Rechtecksignal, um dann entweder ganz high oder ganz low zu sein (wenn ich den Motor über die App starte oder stoppe).

Hat einer eine Idee woran das liegen könnte?
 
Hallo,
ich würde einmal den Motor-Test über die serielle Konsole probieren (AT+E) Um zu sehen ob dort dasselbe passiert.
https://wiki.ardumower.de/index.php?title=Ardumower_Sunray#Odometry_test (dort auf die Bilder klicken)

Die Arduino Due PWM-Pins hast Du ja schon gemessen (die Pins stehen auch in config.h ganz unten):
#define pinMotorLeftPWM 5 // M1_IN1 left motor PWM pin
#define pinMotorRightPWM 3 // M2_IN1 right motor PWM pin


Um Probleme mit der Sunray-Firmware auszuschliessen kannst Du auch mal ein ganz einfaches Arduino-Sketch ausprobieren (einfach ein neues Sketch erstellen in der Arduino IDE und folgenden Code eintragen und hochladen - dann die PWM Pins messen - der Code macht nichts sichtbares, steuert nur die PWM Pins an):
Code:
#define pinMotorLeftPWM 5          // M1_IN1 left motor PWM pin
#define pinMotorRightPWM  3        // M2_IN1 right motor PWM pin
#define pinBuzzer 53               // Buzzer

void setup(){  // wird direkt beim Booten einmal ausgeführt
  pinMode(pinMotorLeftPWM, OUTPUT);  // Pins als Ausgang konfigurieren
  pinMode(pinMotorRightPWM, OUTPUT);
  pinMode(pinBuzzer, OUTPUT);

  digitalWrite(pinBuzzer,LOW);   // Buzzer auf LOW schalten

  analogWrite(pinMotorLeftPWM, 127);  // Pins mit 50% Pulsweite ansteuern
  analogWrite(pinMotorRightPWM, 127);
}

void loop(){  // wird in einer Endlosschleife ausgeführt : nichts :-)
}

Die Sunray-Firmware verwendet eine eigene Library für die PWM-Pins. Mit diesem Beispiel-Sketch verwendest Du die Library Deiner Arduino-Installation.

Gruss,
Alexander
 
Zuletzt bearbeitet:
Irgendwie hats du nichts gesagt das du beim Motorentausch auch die Odometriestecker mit getauscht hast. Vielleicht ist ja da ein Dreher im verlöten drin.
Wäre noch eine Option wenn der DUE "OK" ist.
Wenn nicht würde ich nochmal nachlöten.
 
Danke für die Tipps. Ich komme leider nur ab und zu dazu daran weiter zu basteln. Heute hatte ich Zeit dafür und habe den Fehler auch gefunden. Der Arduino Due ist in Ordnung und auch die Motortreiber sind in Ordnung. Mir ist beim Messen aufgefallen, dass IOREF und GND für den rechten Motor nicht verbunden waren. Ich hatte die Pins beim Löten schlichtweg übersehen. Jetzt drehen sich beide Motoren.

Eine Frage habe ich noch:
Wie schaltet man eigentlich den Mähmotor ein?

Besten Dank,
Andreas
 
Das geht in der APP mit dem Kreis Hoch vorwärts, Untern rückwärts usw. Mit etwas Übung kannst du der Rover mit dem Daumen steuern. Oder Karte erstellen, hochladen, Start drücken.

LG Hatmut
 
Wenn ich also den Kreis nach oben bewege und der Rover vorwärts fährt, geht automatisch auch der Mähmotor an?
 
Der Mähmotor muss über die Schaltfläche "MOW IS OFF" extra eingeschaltet werden "MOW IS ON" (Handmähen). Mit Karte Minimum 4 Punkte = Testquadraht gehts dann über "START" automatisch.
 
PS. Wenn du die APP mit Chrome startest und sie auf deutsch übersetzen lässt steht auch alles in deutsch da.
 
Hmm, wenn ich in der App Mow is on wähle, startet der Mähmotor nicht. An Pin 2 des Arduino ist dann auch kein PWM Signal zu messen. Ich würde gerne wissen, ob auch der Mähmotor funktioniert.
Laut Schaltplan müsste es doch pin 2 sein, oder?
 
Hallo,

um Probleme mit der Sunray-Firmware auszuschliessen kannst Du wieder ein ganz einfaches Arduino-Sketch ausprobieren (einfach ein neues Sketch erstellen in der Arduino IDE und folgenden Code eintragen und hochladen - dann den PWM Pin messen - der Code macht nichts sichtbares, steuert nur den PWM Pin an):
Code:
#define pinMotorMowPWM 2     // mower motor PWM pin
#define pinBuzzer 53               // Buzzer

void setup(){  // wird direkt beim Booten einmal ausgeführt
  pinMode(pinMotorMowPWM, OUTPUT);  // Pin als Ausgang konfigurieren
  pinMode(pinBuzzer, OUTPUT);

  digitalWrite(pinBuzzer,LOW);   // Buzzer auf LOW schalten

  analogWrite(pinMotorMowPWM 127);  // Pin mit 50% Pulsweite ansteuern
}

void loop(){  // wird in einer Endlosschleife ausgeführt : nichts :-)
}

Die Sunray-Firmware verwendet eine eigene Library für die PWM-Pins. Mit diesem Beispiel-Sketch verwendest Du die Library Deiner Arduino-Installation.

Gruss,
Alexander
 
Hallo Alexander,

der Arduino ist in Ordnung. Mit deinem Testprogramm gibt auch Pin 2 ein PWM Signal aus.
Kann es sein, daß in der Firmware eine Bedingung geben muss, damit der Mähmotor überhaupt aktiviert werden kann? Ich habe hier zum Testen im Haus z.B. kein GPS Fix.

Die Tilt-Detection ist es nicht. Die habe ich auskommentiert
// #define ENABLE_TILT_DETECTION 1

(Ich habe einen Due und keinen Grand Central M4)

Viele Grüße,
Andreas
 
Zuletzt bearbeitet:
Hallo Andreas,
ich habe es gerade überprüft, es hat sich leider ein Fehler eingeschlichen in den letzten Firmware-Versionen :/ (viel leider nicht auf weil die meisten automatisch mähen lassen) - könntest Du einmal die Version 1.0.164 ausprobieren. Dort sollte man den Mähmotor wieder manuell einschalten können.
Gruss,
Alexander
 
Zuletzt bearbeitet:
Oben