Passagenschaltung Rasenroboter

Beschreibung

In diesem Beitrag möchte ich meine Selbstbau-Passagenschaltung für einen Husqvarna 430X vorstellen. Mit der Passagenschaltung werden zwei Rasenflächen miteinander verbunden. Die Rasenflächen können einige Meter voneinander entfernt sein und auch schmale Schotter-Passagen sind kein Problem. Dabei ist die Schaltung nicht auf diesen Mähroboter begrenzt. Die Anleitung trifft auf fast jeden Mähroboter von Husqvarna zu und kann leicht für andere Hersteller adaptiert werden. Der große Vorteil dieser Selbstbau-Variante sind enorme Kosteneinsparungen gegenüber Online-Anbietern und die höhere Reichweite der Module durch Verwendung des 2,4GHz Netzes anstatt Bluetooth.

Was das Ganze ist und wie es funktioniert stelle ich in diesem Video vor:

Features / Details

  • 1 Funk-Modul wird in den Rasenmäher eingebaut
  • nahezu beliebig viele Schaltboxen / Passagen können verbaut werden
  • Kommunikation findet über 2,4GHz statt, daher hohe Reichweite
  • Die Reichweite der Funkverbindung bestimmt die maximale Länge der Passsage: Bei mir sind das bei relativ freier Sicht etwa 50-70 Meter
  • Durch Adressänderung in der Software gibts auch keine Probleme, wenn mehrere unabhängige Systeme in der Nachbarschaft laufen
  • Passagenmodule halten durch diverse Energiesparmodi und einem kleinen Solar Panel ewig, ohne Solar Panel etwa 150 Tage mit einer 3000mAh Batterie
  • Da es sich im Modul um einen Lithium-Akku handelt, muss dieser über Winter eingelagert werden
  • Die GPS-Funktion im Rasenmäher muss abgeschaltet werden – stattdessen wird mit definierten Bereichen gearbeitet
  • Status-Anzeige mit einem Display direkt an den Umschaltboxen

ESP – Mäher

Schema – Übersicht

Materialliste – ESP im Mäher

ESP32 DEVKIT V1Amazon ~ 9€AliExpress ~ 4€
Volt SensorAmazon ~ 8€ / 5StkAliExpress ~ 3€ / 10Stk
Optional: 10Pin Verlängerungs-
kabel für den Husqvarna Motor
(Dann muss das originale Kabel nicht
beschädigt werden)
AliExpress ~ 10€ / 5 Stk

Verkablung

Mäher Kabel(Husqvarna 430X)Volt SensorESP32
rotVin
schwarzGND
weißVCC
GND -> – (Brücke)
+IO25
IO26
SIO33

ESP-Schaltbox

Schema – Übersicht

Materialliste

Firebeetle ESP32mein ShopAliExpress
Solar Power ManagerEbayAliExpress
Grove 5V Relais – Habe ich leider nur
bei Reichelt gefunden
Reichelt
3000mAh 18650 BatterieAmazonAliExpress
18650 HalterAmazonAliExpress
128×64 OLED Display – 4Pin(I2C)AmazonAliExpress
Drucktaster – Schalter – Momentary – 12mmAmazonAliExpress
Box – Kiste – Klemmkasten
Meiner ist 175x151x95mm
Ebay
Solarmodul 6V 500mAhAmazon AliExpress

Zusammenbau

Der Zusammenbau wird Schritt für Schritt in dem obigen Video gezeigt und erklärt.

Anschlusstabelle:
Achtung, wird der ESP32 genutzt muss das in der Software für den Switch umgestellt werden!

// Which ESP32 Board is used. Pin Outs for the boards are different!
// Choices: Firebeetle32, devkit
#define FIREBEETLE32
// #define DEVKIT_V1

Ebenfalls kann man die Pins auch noch manuell anpassen in der Software. Beim ESP32 DEVKIT V1 kann das Display leider nicht direkt aufgesteckt werden, da die SDA und SCK auf den Board nicht nebeneinander liegen. Daher muss dort ein Verbindungskabel genutzt werden.

Firebeetle32ESP32DEVKIT V1
Grove Relais schwarzSolar Manager GND Pin
Grove Relais rotSolar Manager 5V Pin
Grove Relais gelbIO26GPIO26
Grove Relais weiß
Solar Manager EN(blauer Pin)IO25GPIO25
Solar Manager GND(blauer Pin)GNDGND
I2C OLED Module GNDIO12⚠️GPIO19
I2C OLED Module VCCIO14GPIO23
I2C OLED Module SCKIO22GPIO22
I2C OLED Module SDAIO21GPIO21
18650 Batterie +Solar Manager
Batt +
18650 Batterie – Solar Manager
Batt –
Switch GNDGNDGND
Switch SignalIO15GPIO15

⚠️ Hinweis zu IO12:
Der Pin wird auch für den Boot des ESP32 genutzt wird. Falls der Firebeetle32 verwendet wird, empfiehlt es sich, GND für das Display von woanders zu holen. Ansonsten kann es sein, dass der ESP nicht startet.
Vielen Dank an @Julian fürs aufdecken und untersuchen des Fehlers
Mögliche Lösungen:
– GND Pin am Display abknipsen und von oben ein Kabel an den Display GND Pin löten. Das Kabel dann irgendwo mit GND verbinden.
– GND Pin am Display wegknicken, sodass dieser nicht mit in den Pin Header vom Firebeetle32 kommt. Dann ein Jumper-Kabel an den Pin und irgendwo mit GND verbinden.

Bild einer fertigen Umschaltbox:

Nützliches Zubehör

„Ich habe mit Fusion360 ein Wandhalter für das 14x14cm Solarpanel erstellt. Falls jemand Interesse hat findet ihr es bei Thingiverse.“
https://www.thingiverse.com/thing:5280687
– Vielen Dank Gerd

Einstellungen Mäher

In der Software meines Husqvarna Rasenmähers musste ich GPS-Navigation abschalten und dann für die einzelnen Rasenflächen eigene Bereiche definieren. Wie das geht, kann der Anleitung des Herstellers entnommen werden.

Installation

Begrenzungsdraht

Der Draht für die Passage ist ebenfalls ganz normaler Begrenzungsdraht und wird wie im folgenden Foto in die Passage eingebaut:

Die Ladestation befindet sich in diesem Beispiel auf der rechten Rasenfläche.

Auf der rechten Rasenfläche wird an der Stelle, wo das rote Kabel anfängt die Umschaltbox angeschlossen.

Auf der linken Rasenfläche wird das rote Kabel mit einem der Begrenzungsdraht-Verbinder wieder mit dem normalen Begrenzungsdraht verbunden.

Das Suchkabel wird ebenfalls durch den Korridor gelegt:

Anschluss an die Umschaltbox

Die Bezeichnungen „NC“, „COM“ und „NO“ entsprechen der Beschriftung auf dem Grove Relais.

Links / Firmware

FAQ

Kann ich die Schaltbox auch per USB versorgen und die ganzen Solar Geräte weglassen?

Ja, das ist kein Problem. Dafür ist in der Software für die Schaltbox eine Einstellungsmöglichkeit vorgesehen. Folgende Zeile muss auskommentiert werden:

#define USE_SLEEP

zu:

// #define USE_SLEEP

Dann bleibt der ESP immer an und kümmert sich nicht mehr um Strom sparen. Eine USB Stromversorgung mit beispielsweise einem Handyladegerät ist dann natürlich empfehlenswert.
Wenn man den Solar Power Manager usw. auch weglässt, ändert sich außerdem, dass man das Relais nun folgendermaßen verbindet:
Da Energiesparen bei diesem Setup keine Rolle spielt(Stromverbrauch im 230V Netz wird immer noch sehr gering sein), kann man auch ein ganz normales 5V Arduino Relais verwenden:

ESPGrove Relais5V Arduino Relais
GNDGNDGND
IO26SignalSignal
IO25VCC
VCCVCC

26 Gedanken zu „Passagenschaltung Rasenroboter“

  1. Hallo Timo

    Vielen lieben Dank für deine Anleitung. Dank dieser war die Umsetzung sehr einfach und hat beim ersten Versuch funktioniert. Wir sind sehr zufrieden mit der Lösung. Die Verbindung ist sehr viel besser als es mit der Bluetooth Lösung war und deshalb sind wir auf deine Lösung umgestiegen.
    Vielen lieben Dank

    Antworten
  2. PASSAGE WIRD MANCHMAL GEÖFFNET, OBWOHL ROBBI NOCH IM MÄHMODUS IST

    Das tritt bei meinem 315X ca. 10 mal pro Mäheinsatz auf und ist auf dem seriellen Monitor gut zu sehen. Ich habe das sowohl mit dem gelben als auch mit dem weißen Motorkabel getestet.
    Temporär hab ich mal +5V statisch an den Spannungsteiler im Mower angelegt und eine Probefahrt gemacht. Die Passage blieb immer geschlossen, also kann man einen Übertragungsfehler ausschließen.
    Meine Vermutung ist, das es zu einem kurzfristigen Spannungseinbruch kommt, wenn der Radantriebsmotor nach einem Stopp wieder eingeschaltet wird. Das führt vermutlich auch zu einer temporären Absenkung der Spannung für den Mähmotor, sodaß die Software meldet, das der Robbi gerade nicht mäht und die Passage wird geöffnet.
    Daraufhin habe ich den Schwellwert für die Messung der Motorspannung als Indikator abgesenkt, programmtechnisch von 2 auf 1. Voller Erfolg, die Passage wurde innerhalb eines Mäheinsatzes nur einmal noch irrtümlich für 10 sec. geöffnet.
    Hier die Änderung des Programmcodes im Mower:

    // Set state according to the voltage, alt result > 2, neu result > 1
    if (result > 1)
    {
    // Mower is mowing
    dataToPassage.moverState = 1;

    VG Andreas

    Antworten
    • Das mit der Spannung auf <1 hatte ich jetzt auch nochmal probiert. Es funktioniert 2-3 Tage gut und dann ist bei mir die Passage immer auf, sie schliesst nicht mehr wenn der Mäher läuft. Als wenn die beiden nicht mehr miteinander sprechen. Starte ich den Mower neu funktioniert es wieder ein paar Tage, starte ich beim nächsten Fehler die Passagenschaltung neu dann geht es auch wieder für ein paar Tage. Was könnte ich wegen dem Kommunikationsporblem noch versuchen?
      Bin da echt ratlos, weil es immer erst gut funktioniert.
      Gruß Stefan

      Antworten
        • Das Display zeigt „Passage open“, den seriellen Monitor hatte ich noch nicht eingeschaltet. Werde es mal mitloggen übers Wochenende und dann berichten.

          Antworten
    • Hallo Andreas,

      mein Vater hatte das gleiche Problem.
      Auf dem Seriellen Monitor hat man gut beobachten können, dass sie eingelesenen Werte zwischen 0.0 und 6.8V lagen. Die Werte haben sich dabei völlig willkürlich verändert. Es liegt die Vermutung nahe, dass es sich bei der Spannung um eine PWM-Spannung handelt, da der Messermotor drehzahlgeregelt ist. Dadurch schaltet die Passage ständig auf und zu.
      Ich habe zuerst überlegt die Eingangsspannung mit einem Tiefpassfilter (RC-Glied) zu glätten.
      Da ich aber an der Schaltung nichts ändern wollte, habe ich einen Tiefpassfilter im Programm eingebunden, der jeden neu eingelesenen Wert jeweils nur zu einem bestimmten Anteil in den gefilterten Wert einrechnet.
      Durch den Tiefpassfilter schaltet die Passage ca. 5 Sekunden verzögert zu und ca. 10-15 Sekunden verzögert auf.
      Seit der Programmanpassung läuft die Schaltung problemlos und der Mäher hat sich nicht mehr in der Passage festgefahren. Durch die Verzögerung beim öffnen der Passage ist auch das Problem behoben, dass der Roboter kurz vor der Passage an ein Hindernis stößt und den Messermotor kurz abschaltet.
      Falls Interesse an dem Programmcode besteht, teile ich diesen gerne.

      VG Bernd

      Antworten
  3. Hi! I want to say thank you for providing this solution! With it I have managed to solve my problem with mowing my lawn in three levels. The ramps I used are now safe from random visits while mowing.
    I did some modifications to your code and removed the display and solar panel.
    Even if I live in Sweden there were no solutions to this Autmower problem here:)

    Antworten
  4. Hallo Timo,
    Bei meinem 315X war das Passagenmodul von Hrn. Häußler verbaut, welches jetzt leider kaputt ist und Ersatz ist nicht in Sicht.
    Also habe ich jetzt deine Schaltung nachgebaut, funktioniert im Labor einwandfrei.
    Beim Häußlerschen Modul ist das Motorkabel auch angezapft, einmal rot für +5V, einmal schwarz für Masse und einmal gelb. Bei deinem Modul wurde ja die weiße Leitung als Indikator für „Mähmotor ein“ verwendet.
    Weiß jemand, ob der gelbe Motoranschluß ebenfalls geeignet ist?

    Antworten
      • Habe gelb mal ausprobiert, klappt mit dieser Schaltung nicht so richtig. Hätte da noch ne andere Frage weil mit AM440 doch noch öfter durch die Passage fährt:
        Könnte man die Zeit nicht verlängern, bevor die Passage geöffnet wird? Wenn direkt neben der Passage der Mäher gegen ein Hindernis fährt und der Motor ausgeht dann wird die Passage sofort geöffnet. Das Schließen passiert für mein Gefühl zu spät, da der Mähmotor erst wieder eingeschaltet wird wenn der Mäher schon wieder fährt. Dann kann er unter Umständen schon in der Passage gelandet sein. Ist bei mir schon zweimal passiert. Das Signal könnte man doch 10 Sek. verzögern, juckt doch im Normalfall nicht, da er ja auf dem Suchkabel langsam angefahren kommt. Bringt aber Sicherheit beim normalen Mähen.
        Könnte das einer Umsetzen und mal posten. Weiß leider nicht wo ich das einbinden sollte.
        Das wäre toll.
        Ansonsten eine top Anleitung und Funktion.
        mfg. Stefan

        Antworten
        • Hallo Andreas, das dürfte nicht helfen, da er das ja nur 10 Sek verzögert, dann aber trotzdem einmal umschaltet. Ich habe es anders gemacht, indem ich dem Mower einfach gesagt habe warte 10 Sek und prüfe dann nochmal ob der Motor an ist. Das funktioniert schon besser.
          Habe jetzt aber festgestellt das die Passage manchmal einfach auf open stehen bleibt. Das ist natürlich auch nicht gut, als wenn sie abschmiert. Habe dann mal neu gebootet und sie hat dann die Passage sofort geschlossen. Der Mäher war unterwegs. Also eher ein Problem an der Passagenschaltung. Kann man die alle 24h automatisch resetten, oder auch hier eine doppelte Abfrage einbauen? Hab da noch keinen guten Ansatz.

          Antworten
          • Wie ist der ESP den bestromt? Die sind da ein wenig empfindlich, wenn ihre Spannungsspitzen nicht bedient werden können. Vielleicht hängt er sich ja deshalb auf? Bei mir hat sich noch nie einer aufgehangen.

        • Die Komponenten sind 1:1 die welche du oben angegeben hast, Solarpanel, Solarmanager, Firebeetle….
          Erklären kann ich es auch nicht, aber es läuft für nen Tag richtig gut, auch wenn ich das an der Passage mal provuzieren und ihn öfter dort rein lenke durch Hindernisse, aber einen Tag später fangen die Probleme wieder an. Könnte ich sonst den deepstandby abschalten, Sonne ist ja genug da das wieder aufgeladen wird. Oder mal mit nen Netzteil probieren?

          Antworten
  5. Moin,
    Kurzes Update: Das Problem liegt daran, dass das Display mit GND an dem Port IO12 hängt.
    Der IO12 ist beim ESP32 ein bootstrapping Pin welcher beim Bootvorgang bereits vor dem Bootloader ausgewertet wird.
    Über diesen Pin wird eingestellt, ob der verwendetet Flash-Baustein mit 1,8V (High) oder 3,3V (Low) versorgt wird.
    Der Pin ist mit einem Pulldown ausgestattet und daher im unbeschalteten Zustand sicher Low.
    Vermutlich sorgen Kondensatoren auf dem Board vom Display dafür, dass an dem Pin IO12 kein sicheres Low Signal anliegt was dazu führt, dass der Flash-Baustein nur mit 1,8V versorgt wird. Das erklärt auch, warum der Bootloader nicht auf Adresse 0x1000 lesen kann.

    Ich habe herausgefunden, dass man die Auswertung von Pin IO12 beim Bootvorgang in den eFuses-Bits abschalten kann. Eigentlich war das meine favorisierte Idee das Problem zu lösen. Allerdings weiß ich zum einen noch nicht, wie bzw. was genau ich dazu in der SDK-Config ändern muss und zum anderen bin ich mir nicht sicher, ob man das später noch mal zurück ändern kann oder das eFuses-Bit nur ein einziges Mal geschrieben werden kann.

    Weitere Ideen wären den GND vom Display nicht mit Pin IO12 sondern direkt mit GND zu verbinden. (Vermutlich die einfachste, schnellste und richtigste Lösung.)

    Andere Idee wäre das Display an vier andere Pin‘s vom Controller zu verbinden.
    Allerdings hatte ich hier noch keine Zeit mich einzuarbeiten wie das genau geht und wo man das überall anpassen muss. Gehen sollte es wohl.

    Gruß
    Julian

    Antworten
    • Oha, gute Beachtung und Erkenntnisse. Das hatte ich bei mir noch nicht festgestellt ist aber ein sehr guter Hinweis. Ich würde dann auch einfach Gnd woanders her holen. Ist glaube ich die einfachste Lösung.

      Antworten
  6. Hallo Timo,
    auch von mir ein großes Lob für die tolle Anleitung. Ich stecke zur Zeit noch in den Planungen und stelle mir die Frage, wie ich am besten die Leitungen unter meinen Pflastersteinen verlege. Wie hast Du das gemacht? Hast Du die Steine alle hochgenommen oder in den Fugen verlegt? Müssen Begrenzung- und Passagenkabel einen Mindestabstand haben oder kann ich sie ggf. gemeinsam in eine Fuge drücken? Vielen Dank!
    Grüße
    Christian

    Antworten
    • Hallo,
      ich habe bei mir beides gemacht. Habe teilweise Steiner hochgenommen und teilweise die Fugen genutzt.. Habe bei den fugen kurz ne Flex rein gehalten, damit genug Platz ist und das Kabel tief genug kam. Das ging erstaunlich gut und konnte man oberflächlich nachher nicht mehr sehen. Ich habe das Begrenzungskabel und das Passagenkabel bei mir zusammen in eine Fuge gequetscht.

      Antworten
  7. Hallo Timo,

    Super Schaltung!

    Habe alles so nachgebaut.
    Habe im Husqvarna 310 alles so eingebaut wie von dir beschrieben.
    Habe die Box mit Solar usw. jetzt auch fertig und lasse die jetzt erstmal ohne verkabeltem Relais
    mitlaufen und schau mir die Umschaltungen an. Was mir jetzt aufgefallen ist,
    wenn der Robbi im Mähmodus ist, kommt es trotzdem immer mal wieder vor dass das Relais umschaltet. Also von Close zu Open und dann aber wieder sofort zurück. Ist das bei dir auch aufgefallen? Also dass eine Relais Umschaltung kommt obwohl der Robbi im Mähmodus ist?

    Wenn der Robbi dann im Suchmodus ist und somit auf der Suchschleife zu/von der Ladestation fährt, steht die Passagenschaltung auf Open. Das würde ja dann soweit passen..

    Wäre super wenn du mir da eine Info geben könntest ob bei dir auch „ungeplante“ Relais Schaltungen zu beobachten sind.

    Vielen Dank!
    Beste Grüße
    Axel

    Antworten
    • Moin Axel.
      Ja das ist .or auch aufgefallen. Das tritt vor allem auf, wenn ich den Knopf drücke um das Display einzuschalten. Bin mir noch nicht sicher ob das ein Problem dee Software generell oder ein Fehler beim Auslesen des Zustands ist. Fand das aber zu unwichtig um das weiter zu verfolgen. Der Rasenmäher hat nun Monate ohne Probleme alle Passagen bei mir gemeistert. Falls du dich weiter damit beschäftigst und den Fehler findest, Gib gern bescheid 😉. Ich motte meinen demnächst erstmal ein und schaue vielleicht nächstes Frühjahr nochmal danach.

      Viele Grüße
      Timo

      Antworten
      • Danke für die schnelle Antwort!
        Ich lass es auch erstmal so;-).

        Mottest du die Schaltbox auch ein? Oder lässt du die den Winter über draußen stehen.

        Werde mit der Passagenverkabelung dann auch bis zum Frühjahr warten…

        Danke nochmal!
        Gruß
        Axel

        Antworten

Schreibe einen Kommentar