Brushless motor error and Sunray (until Firmware including 1.0.230)

AlexanderG

Lawn robot freak and project co-founder
Teammitglied
Hello,

All brushless motor drivers on the market indicate unusable 'FAULT' feedback-signal. You have to turn this off for all Sunray firmwares (up to and including 1.0.230) as follows:
Alle von uns getesteten Brushless-Treiber liefern ein unbrauchbares "FAULT-Signal" zurück. Dieses sollte wie folgt in allen Sunray Firmware-Versionen (bis einschliesslich 1.0.230) abgestellt werden:

1. In your 'config.h' file comment the FAULT detection as follows / In 'config.h' die FAULT-Erkennung wie folgt abstellen:

// should the motor fault (error) detection be enabled?
//#define ENABLE_FAULT_DETECTION true

#define ENABLE_FAULT_DETECTION false // use this if you keep getting 'motor error'

2. Edit file 'motor.cpp' and change near line 397 from this / In Datei 'motor.cpp' ab Zeile 397 diesen Abschnitt...:

// check motor faults
bool Motor::checkFault() {
bool fault = false;
bool leftFault = false;
bool rightFault = false;
bool mowFault = false;
motorDriver.getMotorFaults(leftFault, rightFault, mowFault);

to this / ...abändern wie folgt:

// check motor faults
bool Motor::checkFault() {
bool fault = false;
bool leftFault = false;
bool rightFault = false;
bool mowFault = false;

if (ENABLE_FAULT_DETECTION) motorDriver.getMotorFaults(leftFault, rightFault, mowFault);

After these modifications, the incorrect FAULT indication is ignored by the software driver. / Nach diesen Modifikationen wird das unbrauchbare FAULT-Signal vom Softwaretreiber ignoriert.

Your brushless motor driver is still not working? A small request in case of issues with the brushless motor drivers: please give us the following information:
1) Which motor driver does not work correctly? for mowing motor or for gear/traction motors?
2) Do you use the driver protection PCB for the affected motor driver? yes/no
3) Did the affected motor driver already work for a certain time? yes/no
4) Do you keep the power cables of the motor (U,V,W) for the affected motor to full length? yes/no
5) Did you connect the power cables of the affected motor (U,V,W) and the encoder cables (+,-,u,v,w) in correct order? yes/no
6) Please also post a photo of your wiring (so we can clearly see your wiring at the motor and at the driver) - Thank you :)

Dein Brushless-Motortreiber geht trotzdem nicht? Eine kleine Bitte: gebt bei einem Problem mit den Brushless Motor-Treibern bitte noch folgende Informationen dazu:
1) Welcher Motortreiber läuft nicht richtig? Für den Mähmotor oder für die Antriebs-/Getriebemotoren?
2) Setzt ihr die Treiber-Schutz-Elektronik für den betroffenen Motor-Treiber ein? ja/nein
3) Hat der betroffene Motor-Treiber schon einmal für eine bestimmte Zeit funktioniert? ja/nein
4) Habt ihr die Versorgungskabel (U,V,W) für den betroffenen Motor auf volle Länge gelassen? ja/nein
5) Habt ihr die Versorgungskabel (U,V,W) für den betroffenen Motor und die Encoder-Kabel (+,-,u,v,w) in der richtigen Reihenfolge angeschlossen? ja/nein
6) Bitte ein Bild von der Verkabelung posten (so dass wir die Verkabelung am Motor und am Treiber klar erkennen können) - Danke :)


Regards,
Alexander
 
Zuletzt bearbeitet:
Hallo

bei mir ist dies leider keine Lösung von meinem Problem. Ich habe diese Änderungen vorgenommen und dadurch wird in der Log-Ausgabe die Fehlermeldung unterdrückt. Auch kann ich nun den Ardumower wieder starten. Aber wenn der Ardumower anfängt, seine Runden zu fahren, fängt der Mähmotor nicht an zu arbeiten. Auch kann ich den Mähmotor nicht manuel starten. Hier ist meine Log-Ausgabe. Bei BLE:exOgPUPQUPQUPQUPQUPQUPQUPQUPT=VZ versuche ich den Motor über die APP zu starten, aber er dreht sich nicht.
RESET cause: software
Ardumower Sunray,1.0.230
compiled for: Adafruit Grand Central M4
MOTOR_DRIVER_BRUSHLESS: yes
enableCharging 0
trying to detect Bluetooth 4.0/BLE module (make sure your phone is NOT connected)9600...
BLE: Something2
trying to detect Bluetooth 4.0/BLE module (make sure your phone is NOT connected)115200...
BLE: Something2
error: no BLE module found!
SERIAL_BUFFER_SIZE=1024 (increase if you experience GPS checksum errors)
-----------------------------------------------------
UBLOX::begin serial
UBLOX::begin
trying to connect to ublox f9p...
NOTE: if GPS is not responding either set 'GPS_CONFIG=false' in config.h or perform GPS wire fix (see Wiki)
trying baud 115200
ERROR: GPS receiver is not responding
trying baud 38400
GPS receiver found!
ublox f9p: sending GPS rover configuration...
idx=0...OK
idx=1...OK
idx=2...OK
config sent successfully
sizeof Point=4
map load... ok
map dump - mapCRC=-443171
points:
perimeter pts: 82
exclusion pts: 15
exclusions: 1
dock pts: 6
mow pts: 465
first mow point:-1.03,-5.21
free pts: 0
mowPointsIdx=0 dockPointsIdx=0 freePointsIdx=0 wayMode=3
WIFI (ESP8266) not found! If the problem persist, you may need to flash your ESP to firmware 2.2.1
MPU ID=0x68
MPU6050/9150 found
resuming is activated
state load... ok
dumpState: X=-8.21 Y=-10.56 delta=-0.14 mapCRC=-443171 mowPointsIdx=101 dockPointsIdx=0 freePointsIdx=0 wayMode=4 op=0 sensor=11 sonar.enabled=1 fixTimeout=225 absolutePosSource=1 lon=9.235 lat=52.56
CPU: PTAT=808 CTAT=898 deg=24.38 voltages: I/O=3.34 Core=1.22 VBAT=1.97
0:0:14 ctlDur=0.00 op=0 freem=229935 sp=1 volt=27.66 chg=0.00 tg=0.00,0.00 x=-8.21 y=-10.56 delta=-0.14 tow=199847800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=14.69
IMU gyro calibration (robot must be static)... 1
IMU gyro calibration (robot must be static)... 2
IMU gyro calibration (robot must be static)... 3
IMU gyro calibration (robot must be static)... 4
0:0:19 ctlDur=0.02 op=0 freem=229935 sp=200014CC volt=27.67 chg=0.01 tg=0.00,0.00 x=-8.21 y=-10.56 delta=-0.14 tow=199852800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=19.70
IMU gyro calibration (robot must be static)... 5
IMU gyro calibration (robot must be static)... 6
IMU gyro calibration (robot must be static)... 7
IMU gyro calibration (robot must be static)... 8
IMU gyro calibration (robot must be static)... 9

0:0:24 ctlDur=0.02 op=0 freem=229935 sp=200014CC volt=27.67 chg=0.01 tg=0.00,0.00 x=-8.21 y=-10.56 delta=0.80 tow=199857800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=24.70
BLE:AT+V,0x16
sending encryptMode=1 encryptChallenge=132
0:0:29 ctlDur=0.02 op=0 freem=229715 sp=20001688 volt=27.68 chg=0.01 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.27 tow=199862800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=29.70
0:0:34 ctlDur=0.02 op=0 freem=229715 sp=20001688 volt=27.67 chg=0.01 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.31 tow=199867800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=34.71
0:0:39 ctlDur=0.02 op=0 freem=229715 sp=200014CC volt=27.68 chg=0.00 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.31 tow=199872800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=39.71
BLE:AT+V,0x16
sending encryptMode=1 encryptChallenge=132
BLE:exOtPUP\RY][TZPYWRXXYZVPT=)U
decrypt:AT+P,1,8.59706,53.44562,0xd1
absolutePosSource=1 lon=9.235000 lat=52.5603000
BLE:exOwPT=UW
decrypt:AT+S,0x13
0:0:44 ctlDur=0.02 op=0 freem=229099 sp=200014CC volt=27.68 chg=0.00 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.31 tow=199877800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=44.71
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOwPT=UW
decrypt:AT+S,0x13
0:0:49 ctlDur=0.02 op=0 freem=228915 sp=200014CC volt=27.67 chg=0.00 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.31 tow=199882800 lon=9.23555601 lat=52.56039011 h=528.7 n=0.00 e=0.00 d=0.00 sol=0 age=49.72
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOgPUPQUPQUPQUPQUPQUPQUPQUPT=VZ
decrypt:AT+C,1,-1,-1,-1,-1,-1,-1,-1,0x26
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOwPT=UW
decrypt:AT+S,0x13
0:0:54 ctlDur=0.02 op=0 freem=228915 sp=200014CC volt=27.68 chg=0.01 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.31 tow=199887800 lon=9.23555601 lat=52.56039011 h=528.7 n=0.00 e=0.00 d=0.00 sol=0 age=54.72
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOgPTPQUPQUPQUPQUPQUPQUPQUPT=VY
decrypt:AT+C,0,-1,-1,-1,-1,-1,-1,-1,0x25
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOwPT=UW
decrypt:AT+S,0x13
0:0:59 ctlDur=0.02 op=0 freem=228915 sp=200014CC volt=27.68 chg=0.01 tg=0.00,0.00 x=-8.21 y=-10.56 delta=1.31 tow=199892800 lon=9.23555601 lat=52.56039011 h=528.7 n=0.00 e=0.00 d=0.00 sol=0 age=59.73
BLE:exOwPT=UW
decrypt:AT+S,0x13
BLE:exOwPT=UW
decrypt:AT+S,0x13
ERROR IMU timeout: 51 (check RTC battery if problem persists)
MPU ID=0x0

[/QUOTE]
 
1.) Ich setze die Treiber-Schutz-Elektronik nicht ein (habe ich nie bekommen)
2.) Der Motor hat schon funktioniert.
3.) Das Kabel habe ich nicht gekürzt.
4.) Siehe Bild:
 

Anhänge

  • IMG_20220405_114140_small.jpg
    IMG_20220405_114140_small.jpg
    81 KB · Aufrufe: 20
Danke für den Link.

Die 3,5 A Sicherung sieht noch gut aus und ich messe einen Widerstand von 0 Ω.
 
Hi, als erstes mal die 3 coil Anschlüsse vom Motor mit dem Ohmmeter messen, die sollten <1Ohm Durchgang haben. Danach die + / - HAL Spannung messen, die muss 5V haben, bei eingeschalteter 24V Akkuspannung. Wenn du den schwarzen Motortreiber hast, muß der Motor anlaufen wenn das Flachkabel gezogen wird. Aber Achtung, nicht am anlaufenden Messer schneiden!

Hatte BerndS hier geschrieben: (1) ArduMower Brushless Drive | Seite 12 | Ardumower
oder hier: (1) Brush-less motor driver V1.0 not working | Ardumower
 
Zuletzt bearbeitet:
Hallo

ich habe ein Ersatzboard bekommen inklusive Schutzschaltung. Ich habe dies folgendermaßen verkabelt:
small_IMG_20220425_124930.jpg
small_IMG_20220425_133946.jpg

Habe ich irgendwas Falsch gemacht? Denn der Roboter hat erfolgreich eine Runde gemäht, aber gibt er wieder Motor-Error aus. Wenn ich die Fehlermeldung auf der hier beschriebene Art deaktiviere, startet der Mähmotor nicht. Das unterdrückt nur die Fehlermeldung. Auf HAL liegt 1V.
 
Guten Morgen,

leider währte meine Freude über den funktionierenden Mähroboter nur kurz. Gestern Mittag blieb der Ardumower mit einem "motor error" stehen.
Der Fix im oben beschriebenen Code entfernte den Fehler und ließ zumindest eine Diagnose zu:

1) Welcher Motortreiber läuft nicht richtig? Für den Mähmotor oder für die Antriebs-/Getriebemotoren? --> der Mähmotor läuft gar nicht mehr an
2) Setzt ihr die Treiber-Schutz-Elektronik für den betroffenen Motor-Treiber ein? --> ja, das Protection-Board
3) Hat der betroffene Motor-Treiber schon einmal für eine bestimmte Zeit funktioniert? --> ja ca. 4h
4) Habt ihr die Versorgungskabel (U,V,W) für den betroffenen Motor auf volle Länge gelassen? --> ja, alles unverändert
5) Habt ihr die Versorgungskabel (U,V,W) für den betroffenen Motor und die Encoder-Kabel (+,-,u,v,w) in der richtigen Reihenfolge angeschlossen? --> ja, siehe Fotos
6) Bitte ein Bild von der Verkabelung posten (so dass wir die Verkabelung am Motor und am Treiber klar erkennen können):

Motortreiber-Anordnung von links nach rechts: Mähmotor, Antrieb links, Antrieb rechts
IMG_7590.jpeg
IMG_7592.jpeg
IMG_7589.jpeg

An HAL + und GND liegen 0.07V an, wenn der Ardumower eingeschaltet ist.
Die 3.5A Sicherung am Motortreiber zeigt keine Auffälligkeiten an. Ein erwähnenswerter Widerstand ist nicht messbar.

Der Motor-Fehler führte mich zu Recherchen im Forum. Das Thema Leitungsquerschnitt für die Stromversorgung ist mir erst durch die Recherchen aufgefallen. Die Motoren waren bis zum Ausfall mit Versorgungsleitungen mit einem größeren Querschnitt angeschlossen, die mit denen meines Vorgängers identisch zu sein scheinen.


Der Wechsel der Versorgungsleitungen führte zu keiner Verbesserung. Der Mähmotor ist aktuell ohne Funktion. :(
 
Ick kann es nicht genau erkennen, das Bild ist etwas unscharf in den Details, aber es sieht so aus als sei auch am IC eine Lötperle hingetropft
1653033206298.png
 
Die Unreinheiten waren mir bei der Sichtkontrolle auch aufgefallen, allerdings hatte ich mich zurückgehalten, Änderungen vorzunehmen.

Nach euren Bestätigungen, habe ich etwas Isopropanol und eine Zahnbürste zur Hand genommen und das Board etwas gereinigt. Es scheint mir als wären das nur Verdickungen von Flußmittel gewesen:

IMG_7593.jpeg

Die Reinigung änderte nichts. Es erfolgt keine Reaktion beim Einschalten des Motors über die App.
 
Zuletzt bearbeitet:
Eine mögliche "Theorie" wäre: durch (leichte) Kurzschlüsse ist der Motortreiber am Rande/außerhalb seiner Spezifikation betrieben worden. Der Treiber hat dies ggf. sogar erkannt und lieferte auf seiner "Fault"-Leitung einen Dauer-Fehler zurück. Der Motortreiber wurde weiter so betrieben und ist dann "gestorben"...
 
Zuletzt bearbeitet:
Eine mögliche "Theorie" wäre: durch (leichte) Kurzschlüsse ist der Motortreiber am Rande/außerhalb seiner Spezifikation betrieben worden. Der Treiber hat dies ggf. sogar erkannt und lieferte auf seiner "Fault"-Leitung einen Dauer-Fehler zurück. Der Motortreiber wurde weiter so betrieben und ist dann "gestorben"...
Das klingt plausibel und ist gleichzeitig ärgerlich. Feste Lötpunkte wären mit Isopropanol nicht entfernbar gewesen.
Ich habe mit Markus schon gesprochen ... vielen Dank.
 
Hallo zusammen,

ich scheine ein ähnliches Problem wie jochen und Weitenbummler zu haben. Die letzten Tage habe ich ersten Test mit dem Ardumower gemacht. Fahren Punkte setzten und die komplette mäh Fläche abfahren lassen, ohne zu mähen (ca 2 Stunden). Danach habe ich versucht eine kleine Fläche von 7qm zu mähen. Dies hat auch Problem los funktioniert.

Danach sollte die große Fläche gemäht werden (161 qm) die ich zuvor ohne Mähwerk abgefahren bin. Nach etwa 20 Minuten blieb er stehen mit Motor Error. Danach war auch kein normales Fahren mehr mit dem Joystick möglich. Er fährt bleibt stehen usw. Nach der hier beschriebenen Lösung ließ sich wenigstens wieder normal fahren aber das Mähwerk lässt sich nicht mehr einschalten.

Was mir noch aufgefallen ist:

Mit der Ardumower Sunray Firmware v.1.0.276:

Sobald ich den Mähvorgang ohne Mähmotor starte, fährt er sobald ich diesen einschalte, bleibt er stehen

Mit der Ardumower Sunray Firmware v.1.0.230

Sobald ich den Mähvorgang ohne Mähmotor starte, fährt er sobald ich diesen einschalte, fährt er zumindest weiter.

 
Die kleine Platine mit den Schutzdioden sollte eigentlich verwendet werden für den Mähmotor.

Ist die 3,5A Sicherung am Treiber noch OK? Wenn nein, ersetzen, wenn ja, dann Treiber wahrscheinlich hinüber.
Danke für die schnelle Antwort. Hab leider gestern das erstemal von dieser Platine gelesen. Sicherung ist okay.
 
Oben