1.0a4-Azurit

ich habe grade nochmal ohne aufgestecktem Modul den Test laufen lassen.
Das Ergebnis ist genau gleich. Auch habe ich versucht das Modul an einem anderen Mega direkt anzuschließen und habe den Test laufen lassen. Ergebnis es wurde kein Modul gefunden.
Somit gehe ich jetzt wirklich ganz stark von einem defekten Modul aus. Werde mir dann mal ein neues bestellen und wenn es da ist hier berechten ob es an dem Modul lag.
Noch eine frage zu dem RTC-Modul. Hat die eigentlich eine LED die leuchten müsste?
Gruß
Stephan
 
So, auch ich kann berichten, dass das RTC Modul offenbar defekt ist.
Da ich aber grad das Downgrade durchführe (Vers. funktioniert ja ohne RTC), kann ich erstmal damit leben.

Grüße
Mario
 
WTF :angry:

Nach Downgrade auf 1.0.2a3 lief der Mower erstmal problemlos. Auch das RTC hat nicht gemeckert.
Also wieder Upgrade auf die neue Azurit Version und seit 1h mäht der anstandslos.
Er fährt jetzt sogar gradeaus. :whistle:

Das RTC habe ich wieder Timer on, Datum und Uhrzeit gestellt, speichern, Timer off und wieder speichern. Funzt ohne Fehlermeldung.

Grüße
Mario
 
Hi Mario,

könntest du einmal genau beschreiben, wie du das Downgrade (mit folgenden wieder-Update) durchgeführt hast?

Mit der aktuellen 1.0a4-Azurit habe ich genau die von dir beschriebenen Fehler: RTC data error und das ewige im Kreis drehen in Status Perimeter-Track. Die Schleife findet er zuverlässig, dreht sich dann aber an der Fundstelle im Kreis...

Ich hatte zuvor eine etwa 6 Monate alte Softwareversion. Da hat das Tracking zwar funktioniert, aber nicht wirklich gut.

Wär schön, wenn du noch einen Tipp für mich hast zur Behebung der Fehler.

Gruß
Sebastian
 
Hallo Sebastian,

das im Kreis fahren habe ich durch die Reduzierung der Geschwindigkeit gelöst.
Er ist zu weit über die Schleife gefahren und hat nach 180 ° nicht mehr den negativen Bereich erkannt.
Downgrade machst Du ganz einfach, indem du dir ne ältere Version aus dem Github lädst. (Polarität des linken Motors wieder ändern)
 
Die Odometrie allein hat es damals nicht gebracht.
Die kann ich jetzt auch abschalten und er erkennt sicher die Schleife. Falls das Prob weiter auftritt, reduzier aml Testweise die Geschwindigkeit. Ich fahre mit 23 gut.

Grüße
Mario
 
meiner dreht sich auch nur noch wenn er nach hause will. die schleife findet er, aber dann gehts rund.
Odometrie habe ich noch nicht, vielleicht liegt es daran. aber mit der alten Software ging es doch. Komisch...........
 
In this post I had described how to quickly fix the code in the case you could not put odopulses ON, but I decided to remove this, as it surely fixes the issue might it might have side effects
 
Kurze Rückmeldung an alle die mich hier unterstützt haben und die, die evtl. ähnliche Probleme haben.
Heute habe ich ein neues RTC-Modul eingebaut und es läuft alles bestens.
Erst hatte ich noch ein RTC-Data error aber nach dem stellen der Uhr und aktivieren des Timers geht es auf Anhieb.
Ich kann auch kein schlechtes Fahrverhalten feststellen. (nach da. 30 min. Testmähen) Mäher läuft schön gerade und auch das Tracking ist meiner Meinung besser als in den älteren Versionen.
Gruß
Stephan
 
Hi there,

inspired by your modification (@Frederic; saw this before it was deleted) I had a deeper look in the code.

The situation is as follows (see code in setMotorPWM in robot.cpp):
motor-pwm may be changed in three different ways. 1) by using odopulses, 2) by using motoraccel, 3) not using any of them. In current version 1.0a4-Azurit, option 3) is missing. If odometryUse == false (set in mower.cpp) and useAccel == false (configured when calling setMotorPWM), no changes in motorLeft/RightPWMCurr are made.

So I added option 3) manually in the code. NOTE: this is not tested so far! Use at your own risk! My suggestion is to modify the code in setMotorPWM.

Right above
“if (odometryUse){“
I added a few lines of code (marked in red).

[…]
pwmRight = motorRightPWMCurr - motorRightPWMCurr * ((float)TaC)/200.0; // reduce speed
} else {
if (!odometryUse) {
motorLeftPWMCurr = pwmLeft;
motorRightPWMCurr = pwmRight;
}
}

if (odometryUse){
motorLeftPWMCurr = pwmLeft;
[…]

These red lines are active, when useAccel == false and odometryUse == false (to be exact only then).

What do you think? May that be a (bug)fix or could it cause even more trouble?

Sebastian
 
Hi Sebastian,

You are right, the problem arises indeed when useAccel and odometryUse are both false; in that case no code is setting motorXXXPWMCurr.

I think your change will work. However, if you understand your changes correctly, it seems it will only tick in if "anti driver explosion code" takes no action.

In the meantime, I discussed the fix I mentioned yesterday to other developers and it is checked in in the development branch, see https://github.com/Ardumower/ardumower/commit/550d714eae70005bfcd469454933aa1978b0f55f
So the fix I proposed yesterday is under test and might make it to the next release.

Thanks,
Frederic
 
Hallo Alexander, mit dm Perimeter hat das wohl nix zu tun. Meiner dreht sich auch über die Schleife weg, mal drin, mal draussen. Ist ihm egal
 
Gerd schrieb:
Hallo Alexander, mit dm Perimeter hat das wohl nix zu tun. Meiner dreht sich auch über die Schleife weg, mal drin, mal draussen. Ist ihm egal

As a reference, this is the issue we have been discussing: (when it meets the perimeter is starts turning in rounds)
MyMovie.mp4



Frederic
Attachment: https://forum.ardumower.de/data/media/kunena/attachments/1727/MyMovie.mp4/
 
Zuletzt bearbeitet von einem Moderator:
Neither Frederics nor Sebastians possible solution work for my mower.

I use Azurit 1.0a4 ... what so I have to do with my motors left/right? Do I have to switch cables on the left motor and also activate the swap left motor rotation switch in the pfodApp? I am confused and very sad, that the mower works okay until it has to to go home for charging. :( :( :(

What I have seen is, that the mower recognizes the full 360° during the "turning time" that it is perimeter outside. In fact, it turns on the perimter cable, so it is 180° inside and 180° outside. If I let the mower manually turn on the cable, the Perimeter Status switched as it should between in- and outside. Only when it in PTRK state, it recognizes only outside.

Greets,
Jem
 
Oben