Nachdem ich mir die Kosten für ein Connect Moduls sparen wollte habe ich mir selbst eine Möglichkeit gebastelt, den Mähroboter zu steuern.
Basis ist ein Husquarna Automower 310 (wie gesagt ohne Connect Modul). Dabei habe ich mir zunutze gemacht, dass der Mähroboter stehen bleibt, wenn die Versorgungsspannung abgeschaltet wird. Über einen Shelly Plug messe ich die Leistung (0W = ausgeschaltet, 2-5W = Standby in der Ladestation oder beim Mähen unterwegs, 25-35 W = laden in der Ladestation.
Die Software synchronisiert sich mit dem Mäher Status und schaltet die Spannungsversorgung nach dem Ladevorgang ab. Somit bleibt der Akku stets voll geladen und der Mäher ist bereit für die nächste Ausfahrt an z.B. einem anderen Tag.
Ein Raspberry Pi 4 (könnte auch ein Raspberry Pi Zero W sein), verbindet sich mittels WLAN mit dem Plug und liest die Leistungsdaten aus. Ein kleines Python Programm schaltet den Rasenmäher (über den Shelly Plug) und gibt die aktuellen Werte über MQTT aus. Visualisiert wird das Ganze übers Handy. Ich nutze hierfür die kostenfreie App „IOT MQTT Panel“. Genauso könnte natürlich eine Home Automation Software angebunden werden. Ich habe die Python App noch an eine Wettervorhersage verbunden (wttr.in), um auf Regen und Hitze reagieren zu können.
Der Zeitplan des Husquarna wird so eingestellt, dass er z.B. an jedem Tag von 6 Uhr bis 20 Uhr fahren soll. Dies dient nur als Gesamtrahmen, da die Python Software die Steuerung innerhalb dieses Rahmens übernimmt.
Das Ganze hat mich gekostet: Raspberry Pi ca. 40€, Shelly Plug S Gen3 ca. 15€ und einige spannende Bastelstunden.
Folgende Funktionen sind möglich:
- Zeitschaltuhr (abhängig vom Sonnenaufgang)
- Anzahl der Ausfahrzyklen pro Tag
- Abbruch bei Regen oder Hitze
- Not-Aus (Mäher bleibt stehen, wo er gerade ist) und Resume (fortfahren)
- Sofortstart
Was nicht möglich ist:
Der Husquarna kann während des Mähvorgangs nicht zurück in die Ladestation gerufen werden, d,h, erst nach Abschluss des Ladevorgangs kehrt er zurück. Eine Einschränkung, mit der ich leben kann.