-Ladezustand der Batterie
-zurückgelegter Weg
-Status von „Worxy“ (schläft, auf Draht, mäht, wurde angehoben, wurde gestoppt, fährt nachhause, wird geladen, fertig mit Laden)
Man kann natürlich noch viel mehr auswerten, aber im praktischen Einsatz meiner Meinung nach nicht notwendig.
Mangels Programmierkenntnissen ist es mir allerdings noch nicht gelungen, den Rasenmäher per Befehlssequenz von Miniserver zu starten bzw. nachhause zuschicken. Dazu rufe ich dann per Webpage-Befehl die Worx-App auf und starte das Teil bzw. schicke ihn nachhause. Aber hier gibt es bestimmt ein paar Spezies, die dass hinbekommen.
So nun im Detail.
Wenn man folgenden Befehl im Browser eingibt
http://admin:PIN-Worxy@IP-Worxy/jsondata.cgi
und es kommt folgende Antwort,
{"versione_fw":2.21,"lingua":1,"ore_funz":[0,0,0,0,0,0,0],"ora_on":[0,0,0,0,0,0,0],"min_on":[0,0,0,0,0,0,0],"allarmi":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0],"settaggi":[0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0],"mac":[0,35,167,92,99,91],"time_format":1,"date_format":1,"rit_pioggia": 180 ,"area":0,"enab_bordo":1,"percent_programmatore ":9 0,"indice_area":4,"tempo_frenatura":20,"perc_ral le nta_max":70,"canale":0,"num_ricariche_batt":0,"num _aree_lavoro":3,"dist_area":[5,30,42,0],"perc_per_area":[1,8,1,0],"area_in_lavoro":0,"email":"peter_streuber@web .de ","perc_batt":"81","ver_proto":1,"state":"home ","w orkReq":"landroid req manual homing","message":"none","batteryChargerState":"ch arging","distance":-6}
hat man eigentlich schon gewonnen. Da der Worx-Hersteller recht flott mit Updates ist, kann die Antwortstruktur natürlich abweichen, aber das hier dargestellte Auswerteprinzip ist trotzdem nutzbar.
Ich werte folgende Variablen aus:
state
batteryChargerState
perc_batt
distance
Ich definiere also 4 virtuelle Eingänge:
Status
Ladestatus
Batteriekapazität
Entfernung
Bild 1
Ich frage also alle 10s die Variable „perc_batt“ ab und benutze dafür folgenden virtuellen Eingangsbefehl:
Bild 2
Die 3 anderen virtuellen Eingänge dazu werden analog erstellt, die Befehlserkennung sieht so aus:
Status: \i"state":"\i\2
Ladestatus : \i"batteryChargerState":"\i\1
Entfernung: \i"distance":\i\v
Der Wert der Entfernung muß noch durch 1000 dividiert werden, wenn ich in Meter darstellen möchte.
Mit folgender Schaltung werte ich den Status von „Worxy“ aus:
Bild 3
der Inhalt des Statusbausteins:
Bild 4
Die Ermittlung der Zahlenwerte ist eine reine Fleißaufgabe. „Worxy“ in einen bestimmtem Zustand versetzen, anschließend den Browseraufruf, die dargestellten Begriffe in einer Tabelle den ermittelten Zahlenwerte zuordnen und anschließend im Statusbaustein logisch verknüpfen. So könnte man noch viel mehr auswerten (Schleifensignal weg, Worxy außerhalb des Mähbereiches usw.)
Meine Visualisierung sieht dann so aus:
Bild 5
Dieser Beitrag soll eine Anregung für alle Besitzer eines Worx-Rasenroboter sein. Ich würde mich freuen, wenn noch Verbesserungen oder die oben erwähnte Start/Stop Befehlssequenz von Euch erarbeitet werden könnten.
Ich freue mich auf Eure Beiträge!
Sommerliche Grüße aus Porst
sendet Euch Peter
Kommentar