Sunray modding Spielwiese

Habe jetzt mal auf 4A hochgesetzt...

Und anlaufen jetzt mal komplett gelogt - ich denke sieht gut aus...
Morgen/Übermorgen werde ich weiter testen, lasse Ihn über Nacht mal an und schaue (wahrscheinlich klemmt dann der Antrieb :))


Motor::setMowState 1
....
checkmotorMowRPMStall: Mow motor Spun up!
DATA: SPINUPTIME (ms), driverPWM, mowRPM, mowRPMSet: 10000, 208, 3078.03, 3200.00
.....
Motor::setMowState 0
 
Hmmm. Gut, bisschen an der Grenze. Du könntest den rpmOffset noch leicht erhöhen oder du erhöhst kp noch um 0.01, sofern dir der Motor nicht schon zu schnell hochfährt!

Schwingt er denn im idle oder bleibt das windgeräusch stabil?
 
Ja, die Log würde helfen. Bin mir gerade nicht sicher was sowas verursachen könnte.. Die adaptiveSpeed macht ja nur einen Speedfactor...

Hast du RPM drin? Also hast du einen Mow Odometriemotor? Denn momentan ist es nicht getrennt, das heisst die Stromfunktion klappt nur mit Odometrie vom Mowmotor. Die EscapeLawn Sache ist nachwievor nur mit RPM... die löst dann immer aus wenn die RPM unterschritten ist.

Mach den Mower mal an die Konsole und schalte das Mähwerk ein, nach 10sec kommt eine Meldung in der konsole. Was steht da?

Testweise kannst du mal versuchen EscapeLawn auf false zu setzen in der config.h, aber im Fall das du kein RPM hast... wird alles Buggy sein bw. nicht funktionieren.
Ich glaube das hier ist die Fehlermeldung wenn der Mäher kurz stehen bleibt:

Info - LoopTime: 2 - 2 - 3.99 - 108ms
ERROR: motor current too low: pwm (left,right,mow)=130,107,178 average current amps (left,right,mow)=0.07,0.00,0.27
Motor::setMowState 1
motor fault recover counter 1

Hier komplette LOG von einem kurzen Mäheinsatz heute Abend:

 
Zuletzt bearbeitet:
Sehr interessant... dein rechter Antriebsmotor nimmt keinen Strom?

#define MOW_TOO_LOW_CURRENT 0.005 // mowing motor too low current (amps) (der kann es nicht sein?)
#define MOTOR_TOO_LOW_CURRENT 0.005 // gear motor too low current (amps) (hier liegt die Auslösung des Fehlers!)

Versuche mal testweise Motorfault zu deaktivieren. Möglicherweise will dein Treiber keinen Strom wenn er entschleunigt? Was ist dein Geartreiber? Ich habe die LP´s für die Stromaufnhame leicht verringert um in der App den wirklichen Strom besser zu sehen.... das war in der älteren Version aber auch schon so.

Deine Stromaufnhame vom Mowmotor im idle ist auch sehr gering, 6 Watt bei 24V Nennspannung. Aber du hast wahrscheinlich kein festes Messer drunter? In dem Fall würde ich sagen das es ein realistischer idle Wert vom Mowmotor ist. Irgendwas stimmt mit der Strommessung des rechten Antriebsmotors nicht,.
 
Zuletzt bearbeitet:
Suche mal diese Stelle in motor.cpp und erhöhe die float lp = 0.90 zu 0.995

float lp = 0.90; // 0.995
motorRightSenseLP = lp * motorRightSenseLP + (1.0-lp) * motorRightSense;
motorLeftSenseLP = lp * motorLeftSenseLP + (1.0-lp) * motorLeftSense;

Allerdings wundert es mich schon... das da 0.00 steht beim rechten Antriebsmotor. LP 0.9 ist schon sehr träge!
 
Zuletzt bearbeitet:
Hier ist noch die Codestelle die den Fehler wirft:

//CONSOLE.println(motorRightSenseLP);
if ( ( (abs(motorMowPWMCurr) > 100) && (abs(motorMowPWMCurrLP) > 100) && (motorMowSenseLP < MOW_TOO_LOW_CURRENT))
|| ( (abs(motorLeftPWMCurr) > 100) && (abs(motorLeftPWMCurrLP) > 100) && (motorLeftSenseLP < MOTOR_TOO_LOW_CURRENT))
|| ( (abs(motorRightPWMCurr) > 100) && (abs(motorRightPWMCurrLP) > 100) && (motorRightSenseLP < MOTOR_TOO_LOW_CURRENT)) ){


MotorRightSenseLP ist Null und deswegen löst das aus. Hast du evtl. einen wackler beim Stecker? Also, ich bin mir sicher, wenn du den Currentfault deaktivierst wird es gehen. Wie gesagt, erhöhe mal das LP oder lass deinen Mower schneller fahren damit auch Strom fließt ;)

Spaß beiseite. Selbst beim anderen Antieb ist 0.07 extrem wenig?? Ist ja auch knapp an der Auslöseschwelle? Das sind nur 1.5 Watt?!
 
Zuletzt bearbeitet:
Aktuell ist da wo er mäht das Gras recht kurz, Stromaufnahme ist zwischen 0,3A - 0,8A. Habe als Messer Ceranfeldschaber drauf die aber dicker sind als die wo man üblich kaufen kann. Die Mähgeschwindigkeit ist bei 0,25m/s.

Wenn ich auf 0,5m/s Mähgeschwindigkeit gehe, dann zieht er auch mal um die 1A.
 
Ja, das müsste... naja. Also wenn mein mower im idle ist hat er schon 0.4A ohne sich zu bewegen.... wenn mähwerk an dann 0.6 bis 0.7... wenn er dann noch fährt und nix zu tun hat 0.8
 
Versuche doch mal einfach diesen LP wert zu erhöhen. Im Moment kann ich mir keine änderung meinerseits vorstellen, was den Motor current fault bei dir auslöst.
 
Habe die Sparversion.

Hatte mit deiner 1.0.303 dieses Problem nicht, das der Mäher stoppt.

Den LP Wert habe ich auf 0,995 erhöht, ich glaube das er jetzt nicht mehr angehalten hat. Ich werde es morgen mal ein weinig beobachten.

Im Idle zeigt die APP nur noch 0,1A an...
 
Selbst als ich die Led Lichter.... Relais... RC Receiver und esp32 Cam nachgerüstet habe hat sich die idle Stromaufnahme kaum verändert... vorher vllt. 0.3 ... jetzt 0.4
 
Hast Du noch die Stromaufnahme performed??? :ROFLMAO:

Auch mit deinen anderen modifizierten Firmwares war die Stromaufnahme oft zwischen 0,4 bis 1,2A, wenn ich mich jetzt richtig erinnere.
 
Ja... Kurios :D

ne quark, hab nix performed.... ich Erinnere mich nur. Als ich die Bude zusammengebastelt hatte waren es halt 0.3.... Aber stimmt schon, eigentlich müsste es man messen und den Faktor anpassen, ich denke die Bauteile streuen recht stark. Und eine Stromaufnahme von 0.005 A zu Messen, ist bei streuenden Komponenten nicht so leicht. Jedenfalls hat dein Treiber für den rechten Fahrmotor ein SollPWM von über 100 bekommen... und bei der Messung vom Strom hat es 0 ergeben.. also nicht 0.001 oder 0.00001 sondern Null.. Möglicherweise hast du eine Strommesszange zur Hand und kann den Idlestrom halbwegs genau messen und deine Parameter anpassen? Oder du passt die Parameter an so dass du auf 0.3 - 0.4 im idle kommst. Ich glaube das ist so der Wert den hier auch mehrere User bestätigt hatten. Letztendlich ist es nur ein Wert... ob 0.4... 0.3... oder 0.5 ist ja wurst.. aber Null sollte der langpassfilter bei aktiviertem Treiber eigentlich nicht werden.
 
Oben