Ankündigung

Einklappen
Keine Ankündigung bisher.

Smartes Rasenmähen mit Robonect

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #76
    Guten Tag, kann mir jemand sagen welche Werte ich aus A6 mode rausbekomme und was diese bedeuten?

    Ich sehe nur 0 - für auto und 2 - für alles anderes. Ist das richtig so?

    Sehe ich nicht ob er im stop, eod,home, manuell ist?

    Gruß Hardi

    Kommentar


      #77
      Zitat von elkomaster91 Beitrag anzeigen
      Guten Tag, kann mir jemand sagen welche Werte ich aus A6 mode rausbekomme und was diese bedeuten?

      Ich sehe nur 0 - für auto und 2 - für alles anderes. Ist das richtig so?

      Sehe ich nicht ob er im stop, eod,home, manuell ist?

      Gruß Hardi
      Du bekommst die den Status zurück als Zahlenwert. EOD gibt es so nicht für den Mäher ist das auch Home. Guck dir mal meine Logik aus dem Beitrag 73 an. Da siehst du wie man das als Text ausgeben kann.

      Grüße

      Kommentar


        #78
        Zitat von skyacer Beitrag anzeigen
        Moin,

        hat eigentlich noch jemand zwischendurch diese Fehlermeldungen im Log?
        Code:
        Datei: /usr/local/edomi/www/data/liveproject/lbs/EXE19000974.php | Fehlercode: 8 | Zeile: 31 | Trying to access array offset on value of type null
        Datei: /usr/local/edomi/www/data/liveproject/lbs/EXE19000974.php | Fehlercode: 2 | Zeile: 47 | count(): Parameter must be an array or an object that implements Countable
        Kann mir jemand sagen was ich tun bzw. ändern muss damit der Fehler nicht mehr auftritt. Edomi 2.03 mit CentOS 7 und PHP 7.4x

        Grüße
        Ich habe auch regelmäßig diese Meldungen im Log. Es kann durchaus sein, dass mein Mäher das WLAN-Signal verliert, da meine Gartenabdeckung nicht die beste ist.
        skyacer Hast du das Problem zwischenzeitlich in den Griff bekommen?
        Jemand eine Idee, was man hier Coding-technisch tun könnte?
        Gruß,
        Matthias

        Kommentar


          #79
          Ich weiß gar nicht mehr was ich da alles gemacht hatte. Kann sein das der Fehler immer kommt wenn der Mäher nicht mehr erreichbar ist aber er trotzdem den Status abfragen wollte. Ich hab das mit einer Vorschaltlogik gelöst indem der Status nur abgefragt werden kann wenn dieser auch wirklich erreichbar ist.
          Ich habe einmal meine Logik angehangen....

          Grüße
          Angehängte Dateien

          Kommentar


            #80
            Danke für den Input, ich versuche mal eine ähnliche Logik.
            Gruß,
            Matthias

            Kommentar


              #81
              Das Thema ist grade bei mir hochgepoppt.
              Ich habe bei uns seit 2 Jahren den Robonect mit Edomi laufen und habe zur Fernsteuerung einen Telegramm bot erstellt welche auf Basis von jonofeTelegramm&MQTT LBS funktioniert und alle (für mich) notwendigen Interaktionen ermöglicht.
              Implementierte Funktionen:
              - Messerwechsel Zähler zurücksetzen
              - "Messerstatus erfragen"
              - Fehlerzurücksetzen bei festfahren
              - Pause(nimmt Betrieb nach x-Zeiteinheiten wieder auf)
              - eod
              - Start
              - status abfrage

              Wenn Interesse besteht teile ich gerne.

              Kommentar


                #82
                Guten Morgen,
                ich habe Interesse!
                Gruß Ralf

                Kommentar


                  #83
                  Ok dann versuche ich das am WE mal rauszuziehen. Gibt es eine best practice wie man dann doch recht komplexe Logiken anderen zu Verfügung stellt?

                  Kommentar


                    #84
                    So ich versuche mal mein Glück. Ich hoffe es ist halbwegs nachvollziehbar.


                    Generelle Infos
                    • MQTT funktionierend wird angenommen.
                      • Robonect muss auf MQTT schreiben und auch Befehle entgegen nehmen können.
                    In meinem Fall sieht es bei Robonect so aus:robonect.png
                      • Edomi MQTT LBSe müssen installiert sein.
                    • Telegramm LBSe müssen installiert sein und funktionieren
                    • Ich lasse den Roboter in eine Gruppe schreiben/lesen wenn dies auch gewünscht wird -> Telegrammgruppe anlegen und ID ermitteln. Sowie die User IDs ermitteln.
                    • Die Telegramm antworten des Bots sind darauf ausgelegt das der Bot einen Namen hat. Als Platzhalter habe ich hier den Namen ROBI verwendet. Einfach ersetzen nach belieben.
                    Behandelte Schritte:
                    Schritt 1) notwendige WebHooks
                    Schritt 2) notwendige IKOs
                    Schritt 3) MQTT-kommunikation einrichten
                    Schritt 4) Telegramm-Bot konfigurieren

                    Schritt 1) WebHooks einrichten:
                    IP: IP des Robonect
                    USER/PASS: Benutzername/Passwort für das Webinterface
                    Code:
                    Webhook1)
                    Name: Messer_Status_zurücksetzen
                    URL: http://IP/status?btexe=&user=USER&pass=PASS
                    Webhook2)
                    Name: Fehler_Status_zurücksetzen
                    URL: http://IP/json?cmd=error&reset&user=USER&pass=PASS
                    Webhook3)
                    Name: Maehroboter_starten
                    URL: http://IP/json?cmd=start&user=USER&pass=PASS
                    Schritt 2)
                    Genutzte IKOs erstellen (meine IKO# als Referenz zur Übersicht sieht bei euch natürlich anders aus):
                    IKO# Name IKO DPT Anmerkung
                    2591 Maehroboter_Pause 1 Initialwert:0
                    Remanent
                    2610 telegramm_MaehrobiStatuskodiert variant Remanent
                    2354 telegramm_MaehrobiStatus variant Remanent
                    2591 Maehroboter_Pause 1 Initialwert:0
                    Remanent
                    2605 telegramm_MaehrobiMesserqualität variant Remanent
                    Schritt 3)
                    Erläuterung LBS#3111 liest den Status vom Roboter an „rasen/mower/status“ und gibt den 1:1 über LBS#3129 an IKO#2610 aus. Ich benötige dies nur um festzustellen, ob der Roboter in einem Fehlerstatus ist. In LBS#3113 wird der Status lesbar gemacht (ist schon was älter mittlerweile gibt es einen lesbaren TOPIC aber jetzt ist es halt so). Dies wird auf IKO#2354 ausgegeben und auch zurück auf den MQTT mit LBS#3112 (dies ist für mich sehr spezifisch und wird hier nicht weiter benötigt).
                    Auf der Linken Seite werden mit LBS#3124, LBS#3122 und LBS#3116 noch diverse Taster abgefragt, auch sehr spezifisch für mein Setup und bis auf LBS#3116 kann alles gelöscht werden. In LBS#3116 ist an A1 IKO#2591 beschrieben welcher im weiteren Verlauf benötigt wird. LBS#3115 sendet schließlich auf den MQTT die diversen beschriebenen Payloads an „rasen/control/mode“.
                    LBS#3121 definiert die Pausenzeit für den Roboter. Ich habe hier eine Stunde gewählt.


                    002.png
                    Angehängte Dateien
                    Zuletzt geändert von dirkie; 01.05.2022, 14:12.

                    Kommentar


                      #85
                      Schritt 4) Telegramm Bot
                      Generelle Konfiguration der Telegramm LBSe:
                      Channel/ChatID: ist bei mir eine Gruppe in die mehrere Leute schreiben dürfen.
                      IDS: sind die ChatIDS der Personen die den Bot bedienen dürfen

                      Telegramm_001.png
                      LBS#3130 ist ein eigenständiger LBS Receiver nur für den Roboter, der alle 5 Minuten neugestartet wird. In der Mitte sind die Befehle definiert, welche der Bot verstehen soll, welche alle an LBS#3202 gesammelt werden um dann über LBS#3131 zurück an den Telegrammkanal gesendet werden.
                      Konfiguration:
                      LBS#3131 E4: „hilfe“
                      LBS#3133 E2: „Befehle für ROBI:\n\n<b>hilfe</b> - Zeigt diesen Hilfetext an\n\n<b>status</b> - Status von ROBI ausgeben\n\n<b>stop</b> - ROBI macht Feierabend bis zum nächsten Tag\n\n<b>start</b> - ROBI startet den Automatikbetrieb\n\n<b>pause</b> - ROBI macht eine Stunde Pause\n\n<b>Messer</b> - Zeigt an ob die Messer bald gewechselt werden müssen“
                      LBS#3135 E4: „status“
                      LBS#3141 prüft ob der Roboter eine Pause macht und passt die Antwort entsprechend an:
                      E3: „Mähroboter macht Pause und nimmt seine Arbeit bald wieder auf!“
                      LBS#3140 E1: <i>Status von ROBI:</i>


                      Telegramm_002.png LBS#3136 E4: „stop“
                      LBS#3137 E4: „start“
                      LBS#3138 E4: „pause“
                      LBS#3164 E4: „messer“
                      LBS#3187 E4: „messer_gewechselt“
                      LBS#3188 E4: „messer_nicht_gewechselt“
                      LBS#3201 E4: „freigesetzt“
                      LBS#3150 E2: „<b>ROBI</b> macht bis morgen <b>Feierabend</b>!“
                      LBS#3151 E2: „<b>ROBI</b> nimmt den <b>Automatikbetrieb</b> wieder auf!“
                      LBS#3152 E2: „<b>ROBI</b> macht <b>eine Stunde Pause</b> und nimmt dann die Arbeit wieder auf!“
                      LBS#3145: IKO#2591 setzen (Pausenmodus aufrufen)
                      LBS#3191 E2: „Danke das du die Messer gewechselt hast.\nIch setze den Zähler zurück und melde mich wenn die Messer erneut abgenutzt sind.“
                      LBS#3193 E2: „Die Messer wurden nicht getauscht \xF0\x9F\x98\x92. Ich erinnere dich <b>morgen</b> erneut die Messer zu wechseln.“
                      LBS#3204 E2: „Danke das du mich <b>gerettet</b> hast. Ich nehme die Arbeit wieder auf!“
                      LBS#3189: Webhook „Messer_Status_zurücksetzen“ aufrufen
                      LBS#3205: Webhook „Fehler_Status_zurücksetzen“ aufrufen
                      LBS#3210: Webhook „Maehroboter_starten“ aufrufen
                      Die Timer LBS#3206 und LBS#3209 sind Erfahrungswerte aus meinem Aufbau. Ggf muss hier angepasst werden.
                      LBS#3178 E5: „rasen/control/mode“ (identisch zur MQTT Konfiguration)
                      Telegramm_003.png Erläuterung: Liest die Messerqualität aus und gibt eine Abschätzung wie lange diese noch halten.
                      LBS#3166 E3: „halten noch sehr lange.“
                      LBS#3166 E5: „halten noch lange.“
                      LBS#3166 E7: „müssen bald getauscht werden.“
                      LBS#3165 E1: „Die Messer“
                      LBS#3186 E2: „Die Messer müssen <b>dringend</b> gewechselt werden.\nHast du die Messer gewechselt?“
                      LBS#3185 E13: „ja,messer_gewechselt|nein,messer_nicht_gewechselt “

                      Telegramm_004.png
                      Erläuterung: oberer Teil erinnert wenn erforderlich um 12:00 Uhr das die Messer gewechselt werden müssen. Der untere Teil stellt fest das der ROBI sich festgefahren hat und bittet um Hilfe alle 30 Minuten
                      LBS#3154 E9: „rasen/mower/blades/quality“
                      LBS#3155: an IKO#2605
                      LBS#3163: „Die Messer sind abgenutzt und müssen gewechselt werden.\nWenn die Messer gewechselt sind schreibe mir den Befehl <b>messer</b>.“
                      LB#3200 E13: „Ja,freigesetzt“

                      Angehängte Dateien
                      Zuletzt geändert von dirkie; 03.05.2022, 08:54. Grund: Beschreibung LBS#3210 korrigiert

                      Kommentar


                        #86
                        Alter Schwede, vielen Dank, ich werde mich mal dransetzen!
                        Gruß Ralf

                        Kommentar

                        Lädt...
                        X