Sunray-Firmware - Ideensammlung / ideas for improvement

Jungs, das ist hier Off Topic ....
sonst gehen doch die ganzen guten Ideen für zukünftige Softwareentwicklung hier unter ...
 
und gleich noch eine Idee:
Ausfahrt Mäher aus Garage ohne Fix. Hat man ein Fix - Timeout eingestellt und der Mäher bekommt in der Garage keinen oder schlechten Fix wird er nie da alleine raus kommen.
Ich habe vor der Garage einige Punkte wo er relativ gut einen Fix bekommt, diese Punkte müsste man nur mit Odometrie anfahren können damit er sich dann dort seinen Fix holt. Bei einigen wird ja die Garage am Haus oder Carport stehen wo es immer schwierig mit Fix ist.
Also aus Garage raus, kurzes Stück ohne Fix bis zum ersten oder letzten Dock - Punkt, dann auf Fix warten, bei Fix kann es dann losgehen.
 
Bei der Fahrt zur Ladestation wäre es gut wenn der Mähmotor ausgeschaltet wird, allein, um schon Strom zu sparen.
Das wird er auch, aber nur kurz. Wenn der Status OP_DOCK aktiviert wird, schaltet der Motor ab. Sobald er dann in die Navigation zum nächsten Wegpunkt geht, wird der Motor im Unterprogramm controlRobotVelocity wieder eingeschaltet. Das hat Alexander offensichtlich übersehen. Ich teste meine geänderte robot.cpp sobald es aufgehört hat zu regnen und mache einen Pull request in Github wenn sie funktioniert.

Edit: Test erfolgreich, Pull-Request wird hochgeladen.
 
Zuletzt bearbeitet:
Super, sobald verfügbar und das Wetter besser werde ich es testen.
Für mich ist das sehr hilfreich da ich ein Teilstück habe wo der Anfahrtsweg recht lang ist
 
Bei mir auch.
Ich hatte vor deinem Beitrag schon nach dem Fehler gesucht gehabt, da es im Programm eigentlich vorgesehen ist, dass der Mähmotor abschaltet.
 
Hi;
ich würde mir in der App noch ein paar geometrische Exclusionen wünschen.
Ein Kreis den ich ich um einem Baum ziehen kann; Ein Herz für meine Liebste, ein Stern auf der Wiese, ein Reh usw.
Sie sollten in Position geschoben werden können und zum zoomen sein. Hat noch Zeit.

Das Schmankel ist aber der 3D Rasenmäher. Mit den Schrittmotor kann ich die Mähhöhe auf den Wiesen festlegen. Im Schatten 6 cm, Auf dem Golfgrün 0,6 cm und normal 4 cm.

Man baucht halt Ziele und Träume.
 
Ich würde es erst einmal super finden wenn der Robi nach dem Ladevorgang wieder raus fährt um den Rest der Wiese zu machen, gerne auch als Option
 
Ging fast so schnell wie mein Vorschlag mit dem Hinzufügen von Wegpunkten. Kann man das automatische Neustarten insgesamt abstellen? Bei Regen oder mitten in der Nacht wenn die Igel unterwegs sind möchte ich den (noch) nicht unbedingt automatisch fahren lassen. Ich bin nicht sicher, ob die Sensoren da richtig funktionieren würden (muss ich mal testen mit einer Igelattrappe).
Zukünftig kann man das ja über Regensensor und Mähzeiten regeln
 
Ist jetzt so umgesetzt dass der Roboter in folgenden Situationen keinen automatischen Start durchführt:
1. bei Docking ausgelöst über die App
2. wenn Roboter manuell zum Docking gefahren oder hineingestellt
3. wenn er alles gemäht hat
Oder meinst Du grundsätzlich keine Neustarts wenn er aufgrund der Akku-Spannung mal automatisch zum Docking gefahren ist. Das automatische Docking/Neustart vollständig abschalten lässt sich über "DOCKING_STATION=false".
 
Zuletzt bearbeitet:
Ich meine grundsätzlich keine Neustarts nach dem Docking wegen Akku-Spannung. Er soll ja ruhig an die Docking-Station fahren wenn der Akku leer ist. Aber er soll dann nicht wieder automatisch losfahren (außer ich erlaube ihm das).
 
Ich kann natürlich im Moment den Mäher kurz starten, wenn er selbstständig in die Ladestation gefahren ist und ihn dann über die App wieder an die Docking-Station schicken. Dann fährt er auch nicht mehr automatisch los.
 
Das wird sich irgendwann mit Mähzeiten eh mal erledigt haben.
Aber grundsätzlich ist es für den autarken Betrieb schon sinnvoll wenn er von alleine weiter mäht bis alles fertig ist.
Regensensor wäre da dann natürlich auch von Vorteil, so ernsthaft wasserdicht ist der Kleine ja nicht.
Das dann alles noch mit einem automatischem Timer so das der Mover nach einer Stunde aus der LS schaut ob es immer noch regnet.
 
Ich hätte gerne den R/C Modus um meine Modellbau-Funkfernbedienung für das Erstellen der Karte verwenden zu können. Ich habe für den Due die FB selber in die Sunray integriert. Leider funktioniert diese jetzt nicht mehr seit ich gestern auf M4 umgebaut habe. Der M4 mag die Interrupts nicht, welche ich für die Auswertung des R/C Empfängers verwendet habe. Die Azurit hat ja auch serienmässig einen R/C Mode, wäre schön, diesen in Sunray mit M4 wieder mit zu integrieren. Ich bin leider zu blöd, mit dem Steuerkreuz in der App bzw. Webbrowser die Karte sauber abzufahren und zu erstellen. Gruß HOW
 
@how Schick mir mal bitte Deinen Code für den Due - dann passe ich das für den M4 an und baue das ein.
Hallo Alexander,
ich habe den Code nur Quick and Dirty direkt in die Sunray.ino eingebunden, hoffe das ist kein Problem. Bin nicht so der Programmierer, komme eigentlich von der Hardware-Seite. Habe die "neue" INO mal angehängt. Die hat mit dem Due problemlos funktioniert. Mit der Taste konnte ich durch langes Drücken umschalten ob R/C Mode aktiv ist (für das Karte erstellen) oder ohne R/C für das Mähen. Mit dem M4 spinnt sowohl der R/C Mode als auch nach abschalten des R/C Modes das Steuerkreuz im Web-Interface. Die Ursache scheint der Interrupt zu sein, obwohl der ja eigentlich bei R/C Aus deaktiviert wird. PS: Habe gestern die Basic-Version bei Dir gekauft, nochmals vielen Dank für Deine super viele Arbeit.
Gruß Holger
 

Anhänge

  • sunray_R_C.zip
    1,3 KB · Aufrufe: 8
@how Danke! Ich habe den Code eingebaut (rcmodel.cpp) allerdings ist er noch nicht auf dem AGCM4 lauffähig. Falls aktiviert gehen die Interrupts für den rechten Motor nicht mehr. Ich schaue mir das noch genauer an (der Fehler ist vermutl. in der Adafruit-Datei "WInterrupts.c" zu suchen welche die Funktionalität für "attachInterrupt" für den M4 umsetzt und welche vermutl. für die Pins 10 und 11 den Pin A14 falsch mitkonfiguriert...) https://github.com/adafruit/ArduinoCore-samd/blob/master/cores/arduino/WInterrupts.c
 
Zuletzt bearbeitet:
@how Danke! Ich habe den Code eingebaut (rcmodel.cpp) allerdings ist er noch nicht auf dem AGCM4 lauffähig. Falls aktiviert gehen die Interrupts für den rechten Motor nicht mehr. Ich schaue mir das noch genauer an (der Fehler ist vermutl. in der Adafruit-Datei "WInterrupts.c" zu suchen welche die Funktionalität für "attachInterrupt" für den M4 umsetzt und welche vermutl. für die Pins 10 und 11 den Pin A14 falsch mitkonfiguriert...) https://github.com/adafruit/ArduinoCore-samd/blob/master/cores/arduino/WInterrupts.c
Hallo Alexander,
man bist Du schnell, wow. Sobald Du das Interrupt-Problem gelöst hast, werde ich den Code auf dem M4 testen und berichten.
Gruß HOW
 
Oben