Ankündigung

Einklappen
Keine Ankündigung bisher.

Virtueller UDP Eingang mit Text

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

  • Virtueller UDP Eingang mit Text

    Hallo und guten Tag!

    Ich bekomme an einem Virtuellen Ausgang den folgenden Wert:

    "USB-1=Mo 11 02 24,7\xB0CAnlage Aus \r\n (Paradigma Disp1 "

    Auslesen möchte ich den Wert "Anlage Aus". Da kann zB auch stehen "Sommerbetrieb".
    Das ich den Text nicht direkt verarbeiten kann, habe ich gelesen und es würde ausreichen, wenn ich einen ASCII Wert von "S" oder "A" bekomen würde.
    Aber wie kann ich das aus dem String ermitteln? Das "xB0C" verstehe ich nicht. Ein "/v" liefert "0" zurück.

    Dankbar für einen Tipp, Frank

  • #2
    Schon mal in die Doku geschaut?
    https://www.loxone.com/dede/kb/kommunikation-mit-udp/
    -

    Kommentar


    • #3
      Hallo,
      Befehlserkennung
      Code:
      B0C\1
      würde im obigen Beispiel den Wert 65, ASII-Wert für A, ausgeben.

      Die Befehlserkennung für den ganzen Text bis zu "Anlage Aus" müsste wie folgt eingetragen werden:
      Code:
      USB-1=Mo 11 02 24,7\x5CxB0C\1
      Als Ergebnis kommt auch hier der Wert 65.
      lg Romildo

      Kommentar


      • #4
        Hallo und Danke :-)

        @Leo: Danke für den Link. In die Doku schaue ich seit über 2 Wochen immer wieder. So lange probiere ich schon daran rum. Geholfen hat es leider nix.

        @romildo: Vielen Dank aber leider klappt das auch bisher nicht. "USB-1=Mo 11 02 24,7\x5CxB0C\1" kann ich so nicht verwenden, denn MO steht für Montag und da steht morgen DI. Danach kommt die Uhrzeit und die Raumtemperatur. Als da verändern sich alle Werte permanent.
        Ich wollte eigentlich den Wert hinter dem "\xB0C" auslesen. Das wäre dann eigentlich "65" und ich könnte es damit als "Anlage Aus" identifizieren.

        Happy Day und Dank, Frank

        Kommentar


        • romildo
          romildo kommentierte
          Kommentar bearbeiten
          Steht doch in Post #3
          Befehlserkennung:
          B0C\1

          Wenn Du den \ auch noch einlesen möchtest musst Du \x5C dafür eingeben.
          Also für \xB0C Befehlserkennung: \x5CxB0C
          Zuletzt geändert von romildo; In den letzten 3 Wochen.

      • #5
        Befehlserkennung:
        USB-1=\ixB0CAnlage \i\1

        xB0CAnlage Aus würde 65 ergeben
        xB0CAnlage Ein würde 69 ergeben
        xB0CAnlage Sommerbetrieb würde 83 ergeben

        Auswertung der Zahlen über einen Statusbaustein!
        Zuletzt geändert von AlexAn; In den letzten 3 Wochen.
        Grüße Alex


        MS, MS Go, 5 Smart Socket´s Air, Airbase, Modbusext.,2*Eastron Sdm630 Modbus, Zählerinterface,3 S0 Zähler, Wetterstation Elsner P03 Modbus, Fronius Symo 10 - Überschusslieferung, WP Waterkotte DS5017.3, WW WP M-Tec WPE2000 + WW Speicher Stiebel Eltron 400 + 6kW E-Patrone mit Leistungssteller, DM7020hd, Husqvarna Automower 330x

        Kommentar


        • #6
          Hallo again,

          ich habe tatsächlich jetzt ein Ergebnis. Allerdings hat "B0C\1" nicht geklappt und auch "USB-1=\ixB0CAnlage \i\1" nicht.
          Anscheinend ist B0C ein Steuerzeichen, welches nicht erkannt wird. Ich hab dann noch mal ganz anders gedacht und "\s22\1" genommen.

          "USB-1=Mo 11 02 24,7\xB0CAnlage Aus \r\n (Paradigma Disp1 "

          Dabei muss "USB-1=" wohl die Angabe sein, woher der String kommt. Danach ist das 23. Zeichen dann in dem Fall das "A" von Anlage. Verstanden habe ich es noch nicht aber es klappt :-)

          Danke für die Tipps, die mich auf die richtige Idee gebracht haben!

          Happy Day, Frank

          Kommentar


          • #7
            Des Rätsels Lösung:

            Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Unicode.PNG
Ansichten: 80
Größe: 5,8 KB
ID: 255757
            Miniserver v11.0.5.5, 9x Extension, 2x Relay Extension, 4x 1-Wire, Türkontakte, Mobotix T25

            Wenn der Herr nicht das Haus baut, dann ist alle Mühe der Bauleute umsonst. (Psalm 127,1)

            Kommentar


            • #8
              Zitat von Gerd Clever Beitrag anzeigen
              Des Rätsels Lösung:

              Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Unicode.PNG Ansichten: 0 Größe: 5,8 KB ID: 255757
              °C ... Ich werf' mich weg. Danke dafür ... und "C\1" reicht tatsächlich, um "83" zu bekommen für "Sommerbetrieb".

              Kommentar


              • #9
                Also wenn ich z.B. über Hercules
                Code:
                USB-1=Mo 11 02 24,7\xB0CAnlage Aus \r\n (Paradigma Disp1
                sende, kommt bei Loxone
                Code:
                USB-1=Mo 11 02 24,7\x5CxB0CAnlage Aus \x5Cr\x5Cn (Paradigma Disp1
                an.
                Daher funktionier bei mir sowohl B0C\1 wie auch \x5CxB0C.

                Es wird halt immer der erste übereinstimmende Suchtext gefunden.
                Wenn die Suche nach B0C nicht das gewünschte Ergebnis bringt, könnte es auch sein, dass dieser Text mehrfach vorkommt?

                Ich kann mir nicht vorstellen, dass bei der Befehlserkennung \s22\1 der Wert vom "Anlage Aus" kommt, ausser der Text in Post #1 stimmt nicht mit dem überein was in Loxone reinkommt.
                lg Romildo

                Kommentar


                • #10
                  Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Unbenannt.JPG Ansichten: 0 Größe: 21,1 KB ID: 255790​​

                  Die Ausgabe stimmt auf jeden Fall. Aber man kann anscheinend nicht nach "B0C" suchen. Es wird nicht gefunden. Wenn ich nach "C" suche, klappt es.
                  Zuletzt geändert von hmpf99; In den letzten 2 Wochen.

                  Kommentar


                  • #11
                    Zitat von hmpf99 Beitrag anzeigen
                    ...man kann anscheinend nicht nach "B0C" suchen...
                    Man vielleicht nicht aber wie ich schon geschrieben habe, geht das bei mir. Config V11.0.5.5

                    Kommt denn was mit folgender Befehlserkennung?
                    \x42\x30\x43\1



                    lg Romildo

                    Kommentar


                    • #12
                      Zitat von romildo Beitrag anzeigen
                      Man vielleicht nicht aber wie ich schon geschrieben habe, geht das bei mir. Config V11.0.5.5

                      Kommt denn was mit folgender Befehlserkennung?
                      11.0.5.5 habe ich auch. Mein String kommt ja aus einem USB Port über den Loxberry. Ich kann nur vermuten, dass der angezeigt String im Monitor nicht mit dem übereinstimmt, was da wirklich ankommt.

                      Mit \x42\x30\x43\1 kommt 0,0

                      Kommentar


                      • romildo
                        romildo kommentierte
                        Kommentar bearbeiten
                        Verstehe ich das jetzt richtig, das Bild mit der Ausgabe in Post #10 ist nicht vom Loxone UDP Monitor?
                        Wenn ja, schau doch mal im Loxone UDP Monitor was da kommt.

                        Die Version 11.0.5.5 wurde kurz nach deren Erscheinung nochmals ohne Versionierung ausgetauscht.

                    • #13
                      Könnte es sein, dass im ankommenden Text \x+HEX-Wert automatisch in das zugehörige ANSI-Zeichen umgesetzt wird, und zwar vor der Auswertung der vorgegebenen Befehlserkennung.

                      Beispiel: \xB0 wird in ANSI(176) also in "°" (Grad) umgesetzt. Wenn dem so ist, müsste die Befehlserkennung °C\1 funktionieren.

                      Naja, alles so ein bisschen nach der Methode Trial and Error.
                      Miniserver v11.0.5.5, 9x Extension, 2x Relay Extension, 4x 1-Wire, Türkontakte, Mobotix T25

                      Wenn der Herr nicht das Haus baut, dann ist alle Mühe der Bauleute umsonst. (Psalm 127,1)

                      Kommentar


                      • #14
                        Die Version ist aktuell. Das Bild ist ein Screenshot vom UDP-Monitor.

                        Ich schau gerade nochmal einiges nach:

                        \s20\1 bringt 176 - also "B0"
                        \s21\1 bringt 67 - also "C"
                        B0C\1 bringt 67 - also "C"


                        C\1 bringt 83 - also "S"

                        bei String aus dem UDP Monitor "USB-1=Di 16:56 26,8\xB0CSommerbetrieb \r\n"

                        Kommentar


                        • #15
                          Zitat von hmpf99 Beitrag anzeigen
                          ... B0C\1 bringt 67 - also "C"
                          Das kann eigentlich gar nicht sein ... Kannst Du das nochmal überprüfen?
                          Miniserver v11.0.5.5, 9x Extension, 2x Relay Extension, 4x 1-Wire, Türkontakte, Mobotix T25

                          Wenn der Herr nicht das Haus baut, dann ist alle Mühe der Bauleute umsonst. (Psalm 127,1)

                          Kommentar

                          Lädt...
                          X