Mein Projekt CaSSAndRA zur Steuerung des Ardumowers

Ja. Naja. Nix, was du in so einem fertigen Docker machst, ist (ohne entsprechende Vorarbeiten) persistent. Das da oben ist jedenfalls einfacher (aus meiner Sicht).
 
Just to say thank you Alexander. An epic piece of work, I have just loaded it onto a spare Pi 3B and played with it using the http connection to my Ardumower that is running the latest stable release of Sunray and it looks great. It really is the way the Ardumower should work. I will wait a little longer but then will install the pi into the mower using uart mode.

Once more thank you very much, your efforts are truly appreciated.

Clive
 
Ich kann mich nur anschließen! Saubere Arbeit! Ich arbeite gern mit CaSSAndRA. Das Konzept mit einer Karte zu arbeiten und Bereiche per Lasso zu definieren: Klasse.
Zwei Dinge fehlen mir (ich trau mich kaum das zu sagen. Und es ist auch nicht als Kritik zu verstehen!):
1) Eine Geschwindigkeitsregelung. Ich verwende das schon ab und zu und muss dann immer die Sunray-App parallel verwenden.
2) Verschiebefunktion für existierende Punkte. Ich würde ja gern mithelfen, aber mir fehlt der technische Ansatz. Was wird für die Karte verwendet? GeoJSON?

Viele Grüße,
Jürgen
 
1) Eine Geschwindigkeitsregelung. Ich verwende das schon ab und zu und muss dann immer die Sunray-App parallel verwenden.
Ja, das wird auf jeden Fall kommen, ist eigentlich keine große Sache.


2) Verschiebefunktion für existierende Punkte. Ich würde ja gern mithelfen, aber mir fehlt der technische Ansatz. Was wird für die Karte verwendet? GeoJSON?
Das wird eher nicht kommen, da ich 1. der Meinung bin, die Punkte müssen nicht verschoben werden, zumindest fällt mir kein Usecase dazu ein, da die Punkte blind verschoben werden, kann man dabei viel falsch machen. Und 2. gibt das plotly nicht out of the box her, das bedeutet erheblicher Aufwand.
Ich lasse mich gerne natürlich überzeugen :) bzw. wer die Verschiebefunktion beisteuern kann, baue ich es natürlich ein.

GeoJSON ist es nicht, zum ploten wird Plotly genutzt und das ist soweit ich weiß der Wrapper für D3.js
 
Hallo Alexander,

lass mich bitte den Use-Case des Verschiebens von Punkten erläutern: Ich erfasse Perimeter, indem ich den Mower per RC-Fernsteuerung im Garten rumfahre. Alle paar Meter füge ich dann einen Perimeterpunkt ein. Das Problem dabei ist, dass der Mower dabei in Richtung des Perimeters schaut. Wenn Du nun zu genau am Rand eines Beets erfasst hast, führt das während des echten Mähens vielleicht zu Problemen: Dreht sich der Mower nämlich z.B. wegen eines Hindernisses, dreht er seinen Hintern in die Exclusion. Das kann aber sehr problematisch sein, je nach dem, was da wächst.
Mein Vorgehen ist dann immer: Ich fahre den Mower an diese Stelle und drehe seinen Hintern an die Exclusion. Ich sehe dann in der App wohin ich einen Punkt verschieben sollte, damit sich die beobachteten Probleme erledigen. Das ist bei mir schon öfter mal der Fall.
Das Problem ist, glaube ich, dass Plotly eigentlich nur zeigt und nicht erfasst. Ich habe ein wenig gegoogelt und habe das hier gefunden: https://plotlydash-example-collection.onrender.com/click_info
Es kam aus diesem Post: https://community.plotly.com/t/how-to-add-new-data-point-to-graph-canvas-by-single-mouse-click/73039

Viele Grüße,
Jürgen
 
First mow just completed without any issues. Ordered some u.fl connectors to add an external antenna connection to the Pi3B ready for installation into the mower.
A few observations... I do miss the speed control option so the mower speed can be adjusted during operation. I see though this is on the to do list as indeed is just about any other option I can think of! Thank you Alexander! One thing... When updating any settings after pressing the 'save and reboot' button the diologue box stays open, it would be nice if it 'gracefully' closed with a response saying it was rebooting or something along those lines, a minor point.

Screenshot 2023-05-31.png
Just wondering if I stay with the pi 3B running minimal 64bit Buster or install a Pi4 with full desktop so I can remote update sunray f/w.
It's great to have options :)
 
Ich verstehe, allerdings löst du mit verschieben das Problem nur temporär, zumindest mit Cassandra, denn Cassandra rechnet die Wege immer neue, bevor gemäht werden soll. Heißt im Endeffekt, beim nächsten berechnen kann es passieren, dass der Mower von der anderen Seite an die Exclusion ranfahrend kann. Theoretisch müsstest du dann alle Punkte verschieben um jeden möglichen Fall abzudecken.
Das Problem kenn ich zu gut und es wird von Cassandra an einer anderen Ecke gelöst. Ich will noch nicht zu viel verraten, aber meiner Meinung nach muss das Problem vom Pathplanner gelöst werden.
Danke für die links, ich schaue mir die später an
 
First mow just completed without any issues
Glatt to hear that! I hope it will stay so.
I do miss the speed control option so the mower speed can be adjusted during operation
Yeah, it will be one of the next features. Not sure how to handle problem with the current set speed, this information isn‘t available throw the api. Maybe set a default speed after starting server


When updating any settings after pressing the 'save and reboot' button the diologue box stays open,
Shouldn’t be, after successful restart of Server the dialogue window has to disappear , just wait some seconds
 
Just wondering if I stay with the pi 3B running minimal 64bit Buster or install a Pi4 with full desktop so I can remote update sunray f/w.
For updating the fw is pi 3b enough.

Try Cassandra on mobile device, it‘s optimized for this screen size. I don’t how is it work on android device but if you are apple user, create a shortcut to desktop and start the app from there, then you have a full screen mode without adress bar. Then Cassandra looks like a native app
 
Ich verstehe, allerdings löst du mit verschieben das Problem nur temporär, zumindest mit Cassandra, denn Cassandra rechnet die Wege immer neue, bevor gemäht werden soll. Heißt im Endeffekt, beim nächsten berechnen kann es passieren, dass der Mower von der anderen Seite an die Exclusion ranfahrend kann. Theoretisch müsstest du dann alle Punkte verschieben um jeden möglichen Fall abzudecken.
Das Problem kenn ich zu gut und es wird von Cassandra an einer anderen Ecke gelöst. Ich will noch nicht zu viel verraten, aber meiner Meinung nach muss das Problem vom Pathplanner gelöst werden.
Danke für die links, ich schaue mir die später an
Ich denke er meint nicht die Mähbahn sondern er will den Perimeter außen verschieben, die Idee wäre nicht schlecht das man einen Punkt anklicken kann und dann mit den Cursortasten den Punkt definiert in eine Richtung verschieben kann (4cm z.B. mit einem Klick).
 
Hallo Beecee,

richtig, ich meine die Perimeterpunkte. Es gibt immer wieder Punkte, da rammelt der Mower dran. Die einfachste Lösung für mich ist dann das entsprecehnde Verschieben eines Perimeterpunkt. Und wenn Bahnen berechnet und sichtbar sind, deren Abstand ich kenne (z.B. 18 cm) ist sogar ohne Mäher der sichtbar in der Nähe ist, eine gute Abschätzung möglich.

Viele Grüße,
Jürgen
 
Glatt to hear that! I hope it will stay so.

Yeah, it will be one of the next features. Not sure how to handle problem with the current set speed, this information isn‘t available throw the api. Maybe set a default speed after starting server



Shouldn’t be, after successful restart of Server the dialogue window has to disappear , just wait some seconds
You are correct, lack of patience on my side :) Have set it up my iphone now with a homescreen link, looks great! So nice to be able to switch between devices without continuously having to update maps! Thanks also for tolerating my lack of German langauge, despite living in Essen for five years I still struggle (English thing :) )
 
wer die Verschiebefunktion beisteuern kann, baue ich es natürlich ein.
ich habe die Anzeige- und Editierfunktionen in meiner "App", die mit Javascript läuft, auf Basis einer SVG-Grafik gelöst. Das ist sehr komfortabel zu programmieren, da die Grafik komplett mit Real-/Mowerkoordinaten läuft und man jedem Punkt und jeder Fläche einen Listener hinzufügen kann. Verschieben kann man in einstellbaren Schritten cm-genau. Das nutze ich, wie oben beschrieben wirklich gerne, um Problemstellen schnell mal zu bereinigen. Wenn du Javascript bei dir einbauen kannst und willst, dann kann ich dir das gerne zur Verfügung stellen.
Kann aber auch sein, dass du zur Integration bei dir, sehr viel anpassen musst, da die ganze App auf der Basis meiner Haussteuerung läuft.
 
Zuletzt bearbeitet:
ich habe die Anzeige- und Editierfunktionen in meiner "App", die mit Javascript läuft, auf Basis einer SVG-Grafik gelöst. Das ist sehr komfortabel zu programmieren, da die Grafik komplett mit Real-/Mowerkoordinaten läuft und man jedem Punkt und jeder Fläche einen Listener hinzufügen kann. Verschieben kann man in einstellbaren Schritten cm-genau. Das nutze ich, wie oben beschrieben wirklich gerne, um Problemstellen schnell mal zu bereinigen. Wenn du Javascript bei dir einbauen kannst und willst, dann kann ich dir das gerne zur Verfügung stellen.
Kann aber auch sein, dass du zur Integration bei dir, sehr viel anpassen musst, da die ganze App auf der Basis meiner Haussteuerung läuft.
Und wo kann ich die runter laden :)
 
bisher noch nirgendwo. Das ist auch standalone nicht zu verwenden. Das wäre vielmehr ein Code-Schnipsel zur Integration in eine bestehende Lösung wie das geniale CaSSAndRA.
Wie gesagt, bei mir läuft das unter IP-Symcon, aber das Frontend ist ausschließlich html, CSS und Javasript.
 
Hallo,
Ich habe es gerade auf einem Gentoo Linux installiert, das ich als HomeAssistant-Server habe, und es ist perfekt!
Das Einzige ist, dass ich keine Verbindung über HTTP hergestellt habe, aber das liegt daran, dass es meiner Meinung nach kein Passwort unterstützt, also habe ich es in der ardumower config.h deaktiviert und es erkennt es bereits.
Jetzt werde ich an dieser neuen Anwendung basteln und schauen, ob ich etwas dazu beitragen kann ... auch wenn ich keine Ahnung vom Programmieren habe. 🙈
Danke für deinen Beitrag!! (y)(y)
 
Hallo,
I just installed it on a Gentoo Linux I have as a HomeAssistant server and it's perfect!
The only thing is that I didn't connect via HTTP, but that's because I don't think it supports a password, so I disabled it in the ardumower config.h and it already recognizes it.
Now I'm going to tinker with this new application and see if I can contribute anything...even though I don't know anything about programming.🙈
Thank you for your contribution!!(y)(y)
Hi, having just installed it myself a day or two ago I can confirm that if you select http under the settings tab a drop down appears for the password and it works!
Good Luck
 
Das Einzige ist, dass ich keine Verbindung über HTTP hergestellt habe, aber das liegt daran, dass es meiner Meinung nach kein Passwort unterstützt, also habe ich es in der ardumower config.h deaktiviert und es erkennt es bereits.
Grundsätzlich funktioniert die Passwortunterstützung. Ich hatte es auch einmal, dass es nicht ging. Dann einfach noch einmal in die Settings gehen, HTTP-Kommunikation noch einmal auswählen, alle Daten korrekt eintragen, speichern und etwas warten. Danach lief es bei mir auch mit HTTP-Passwort.
 
Hallo,
Ich führe Tests mit CASSANDRA durch und sehe, dass nur die Hälfte davon auf meinem großen Bildschirm erscheint:
1685691161115.png


Ich habe ein wenig im CSS herumgestöbert und vielleicht könnten Sie diesen Parameter im style.css ändern:

@media (min-width: 992px) {
.col-lg-6 {
width: 100%;
}
}

Das Ergebnis sieht zumindest auf großen Bildschirmen besser aus.

Auf jeden Fall muss ich noch sehen, wie ich es so hinbekomme, dass es den unteren Teil des Bildschirms einnimmt:

1685694541063.png

Vielen Dank!
Alles Gute.
 
Zuletzt bearbeitet:
The place on the right side is reserved for some coming features, speed gauge, traveled distance… but I can change the size for now, pull request for that is already there. If I have little more time I‘ll check that again
 
Oben