Ankündigung

Einklappen
Keine Ankündigung bisher.

Wert zu Text

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

    HS/FS Wert zu Text

    Hallo,
    Anfängerfrage:
    ich bekomme von meiner Wärmepumpe numerische Werte für Status und Störmeldung auf den Bus. Diese würde ich gerne durch Klartextmeldungen ersetzen. Es sind u.a. 23 Störmeldungen und 30 verschiedene Status-Meldungen.
    Gibt es dafür einen eleganten Weg dies zu übersetzen - oder muss man da jeden Wert separat in einer Logik übersetzen?

    Sowas wie "Bedingungs-Text" von hier
    HomeServer 2 Logik Archiv
    könnte gehen - ich hoffe aber auf was "smarteres" wo ich einfach eine Werteliste hinterlegen kann oder so.
    Alternativ könnte man sich ja seinen eigenen Logikbaustein basteln - so kompliziert sieht das ja nicht aus (wenn ich mir "Bedingungs-Text" anschaue)

    Gruß
    Thorsten

    #2
    Ich würde schon die Bedingunstexte nehmen.

    Hatte zwar zuerst überlegt das man auch einen Logikbaustein erstellen könnte, der Alle Meldungen in einem Dict hätte. Das hätte aber den Nachteil, das wenn eine Störnummer ankommt, die nicht im DICT enthalten ist, eine Exception entsteht. Diese könnte man zwar im ByteCode mit try except abfangen, aber ....

    Wenn du willst schreib ich dir den Baustein, schick mir einfach die Daten die ich brauch, du hast noch ein gut bei mir
    Nils

    aktuelle Bausteine:
    BusAufsicht - ServiceCheck - Pushover - HS-Insight

    Kommentar


      #3
      Hi Niels,
      so schnell wollte ich den gefallen nicht einlösen - aber bei dem Wetter lacht das Bier einen so sehr an :-)

      Die Werte die kommen sind ansich fest vorgegeben - zumindest sind hier definiert:
      https://knx-user-forum.de/attachment...en_h50-h61.pdf

      Interessant dürfte sein:
      Seite 4 / Adresse 13: "Störmeldung"
      0 keine Störung
      3 Last Verdichter WP Störung
      4 Codierung WP Störung
      5 Niederdruck WP Störung
      6 Frostschutz WP Störung
      7 Aussenfühler Kurzschluss o. Bruch
      8 Rücklauffühler Kurzschluss o. Bruch
      9 Warmwasserfühler Kurzschluss o. Bruch
      10 Frostschutzfühler Kurzschluss o. Bruch
      11 2.Heizkreis Fühler Kurzschluss o. Bruch
      12 Eingefrierschutzfühler Kurzschluss o. Bruch
      13 Niederdruck Sole Anlagen Störung
      14 Motorschutz Primär Anlagen Störung
      15 Durchfluss Anlagen Störung
      16 Warmwasser Störung
      17 Hochdruck Anlagen Störung
      18 dig. Sperreingang WP Aus
      19 Heissgasthermostat WP Störung
      20 Einsatzgrenze Kühlung
      21 Regler 2 Störung
      22 Fühler Regler 2 WP Aus
      23 Temperatur Differenz Anlagen Störung

      Auch Seite 4 Register 14: "Statusanzeige"
      0 WP Aus
      1 WP Ein 1.Verdichter
      2 WP Ein Heizen
      3 WP Ein Schwimmbad
      4 WP Ein Warmwasser
      5 WP + ZWE Heizen
      6 WP + ZWE Schwimmbad
      7 WP + ZWE Warmwasser
      8 Primärpumpenvorlauf WP wartet
      9 Heizung Spülen WP wartet
      10 Sperre WP wartet
      11 Untere Einsatzgrenze WP wartet
      12 Niederdruckgrenze WP wartet
      13 Niederdruckabschalt WP wartet
      14 Hochdrucksicherung WP Aus
      15 Schaltspielsperre WP wartet
      16 Mindeststandzeit WP wartet
      17 Netzbelastung WP wartet
      18 Durchflussüberwachung WP Ein
      19 2.Wärmeerzeuger WP gesperrt
      20 Niederdruck Sole
      21 Abtauen WP Ein
      22 Obere Einsatzgrenze WP wartet
      23 Sperre Extern WP wartet
      24 Betriebsart Kühlung Verzögerung
      25 Frostschutz Kälte Kälteerzeuger wartet
      26 Vorlaufgrenze Kälteerzeuger wartet
      27 Taupunktwächter Kälteerzeuger wartet
      28 Taupunkt Kälteerzeuger wartet
      29 Kühlen passiv WP Aus
      30 WP Ein Kühlen

      Und Seite 6 Register 94: "Sperre WP Ursache"
      0 keine Sperre
      1 Aussentemperatur
      2 Bivalent-Alternativ
      3 Bivalent-Regenerativ
      4 RL
      5 Warmwasser
      6 Systemkontrolle
      7 EVU

      Wenn man hierfür einen oder 3 Bausteine zusammenbastelt ist dieser Sicherlich auch von anderen wiederverwendbar....

      Copy & Paste für den 2 & 3 Baustein kann ich gerne ünbernehmen - wenn ich einen kurzen Tipp bekommen was man sonst bei eigenen Logikbausteinen beachten muss (Nummerierung etc)

      Gruß
      Thorsten

      Kommentar


        #4
        Ich hab mir schon was überlegt, das das auch generell Nutzbar bleibt

        SimpleDict wird er heißen, werd Morgen oder heute Abend mal sehen wie schnell das umzusetzen ist. spätestens zum WE.
        Nils

        aktuelle Bausteine:
        BusAufsicht - ServiceCheck - Pushover - HS-Insight

        Kommentar


          #5
          super Idee.

          Wo wird denn die Liste hinterlegt? Baustein per Webabfrage befüllen oder die Werte direkt in den Baustein schreiben? Beides vermutlich nicht ideal. Am besten wäre einfach die Liste mit im upload-Order zu platzieren und im Baustein den Pfad zu hinterlegen. Dann könnte man den Baustein problemlos mehrmals benutzen.

          Kommentar


            #6
            Die Liste wird einfach auf einen Eingang gelegt.

            Code:
            {0:'keine Sperre',1:'Aussentemperatur',2:'Bivalent-Alternativ'}
            und kann so auch per iKO geändert werden.
            Nils

            aktuelle Bausteine:
            BusAufsicht - ServiceCheck - Pushover - HS-Insight

            Kommentar


              #7
              Logisch :-)))

              Kommentar


                #8
                https://knx-user-forum.de/downloads.php?do=file&id=323
                Done
                Nils

                aktuelle Bausteine:
                BusAufsicht - ServiceCheck - Pushover - HS-Insight

                Kommentar


                  #9
                  Hi Nils,
                  bisher funktioniert das Modul noch nicht bei mir.
                  Ich habe die GA 4/0/13 mit einem 8-Bit (0..255/EIS 2,6) Datentyp auf den E2 gelegt.

                  E0 ist nicht verbunden
                  E3 ist nicht verbunden und hat folgenden Inhalt:
                  {'0':'Sommer','1':'Auto','2':'Urlaub','3':'Party', '4':'nicht Belegt','5':'Kühlen'}
                  E4 ist nicht verbunden und hat folgenden Inhalt:
                  fehler im Eingangswert.

                  Auf A1 bekomme ich immer "fehler im Eingangswert" angezeigt.

                  Ist das Dict so richtig? In der Modulbeschreibung hast du die Zahlen in '-Zeichen erfasst - in dem Beispiel hier noch ohne '-Zeichen...

                  Reichten diese Infos als Input für deine Glaskugel?

                  Gruß
                  Thorsten

                  Kommentar


                    #10
                    Hab mal den Debugger angeschmissen


                    '3.0' nicht in der Liste

                    2 Möglichkeiten.
                    du machst das dict
                    {'0.0':'Sommer','1.0':'Auto','2.0':'Urlaub','3.0': 'Party', '4.0':'nicht Belegt','5.0':'Kühlen'}
                    oder du (oder ich ändern die Logik)

                    Code:
                    5012|0|"EC[1]"|"SN[1].get(EN[1])"|""|1|0|0|0
                    5012|0|"EC[2]"|"SN[1].get(str([COLOR="Red"]int[/COLOR](EN[2])))"|""|1|0|0|0
                    Nils

                    aktuelle Bausteine:
                    BusAufsicht - ServiceCheck - Pushover - HS-Insight

                    Kommentar


                      #11
                      hi
                      der erste versuch hat schonmal nicht geklappt (ich habe wie werte alle als 1.0 2.0 3.0 usw. eingetragen)
                      jetzt versuche ich mal den anderen weg...

                      Gruß
                      Thorsten

                      Kommentar


                        #12
                        Hallo Nils,

                        Ich habe gerade die Bauwstein geandert, wie du vorgestellt hasst,
                        aber, gerade habe ich die Korrekte 'Dictionary, aber keine Fehler Tekste mehr.

                        Kanst du mir dagen, who ich eine Fehler mache?

                        gruss, Marco Douwma

                        Kommentar


                          #13
                          Hi,
                          mit den Änderungen im Source-Code funktioniert alles wie gewünscht.
                          Auch die Fehlermeldung kommt wenn ein Wert nicht gefunden wird.
                          Vielen Dank!

                          Gruß
                          Thorsten

                          Kommentar


                            #14
                            Update ist im Download.
                            https://knx-user-forum.de/downloads.php?do=file&id=323

                            @Marco
                            Dictformat bleibt wie am Anfang
                            {'0':'Sommer','1':'Auto','2':'Urlaub','3':'Party', '4':'nicht Belegt','5':'Kühlen'}
                            Nils

                            aktuelle Bausteine:
                            BusAufsicht - ServiceCheck - Pushover - HS-Insight

                            Kommentar


                              #15
                              OK,

                              Hab es geandert, war meine fehler...

                              gruss, Marco

                              Kommentar

                              Lädt...
                              X