Ankündigung

Einklappen
Keine Ankündigung bisher.

Logik 4byte HEX => IEEE 754 float point

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

  • sti87
    antwortet
    Wow, danke Strolchi das ist ja wesentlich einfacher!

    Mal eine doofe Frage.. Ich hab einen Dezimalwert (Datentyp: 14-Byte Text) wo offensichtlich alle 4Bytes beinhaltet. Den schicke ich dann durch den Hex2Dec Baustein und verarbeite den Rest.

    Du hast ja die 4 Bytes separat gespeichert. Wie muss ich das nun anwenden, dass ich Deine - übersichtlichere Logik - anwenden kann?

    Danke Dir vielmals!

    VG
    Stefan

    Einen Kommentar schreiben:


  • Strolchi
    antwortet
    Hallo,
    hab die Berechnung mal vereinfacht.

    Ergebnisse passen.

    Gruß
    Michael
    Angehängte Dateien

    Einen Kommentar schreiben:


  • sti87
    antwortet
    Hallo zusammen,

    ich komme hier leider gar nicht weiter, es scheint einfach an meinem Verständnis für die unterschiedlichen Datentypen zu scheitern :-(
    Wie gesagt erhalte ich von meiner PV-Anlage über eine Webabfrage einen HEX-Wert (bsp. 0x4411e244) diesen sollte ich für meine Frau und mich lesbar (Dezimal?) machen. Gemäss IEEE754 Konverter würde der Wert ja 583,53 Watt entsprechen.

    Nun habe ich im Homeserver (für mich) alles erdenkliche getestet.

    So habe ich den Hex Wert als Klartext in ein iKO gespeichert, ein anderes Mal als Binärdaten (4-Byte Fliesskomma).
    Das iKO hat ebenso den Datentyp 4-Byte IEEE-Fliesskomma.

    Wie muss ich vorgehen, dass ich aus 0x4411e244 entsprechend 583,53 Watt erhalte?

    BESTEN Dank Euch

    Einen Kommentar schreiben:


  • AdamTK
    antwortet
    Hallo fredd45.

    Evtl. hilft dir dieses Thema weiter:

    https://knx-user-forum.de/forum/%C3%...ira-homeserver

    Gruß Stefan

    Einen Kommentar schreiben:


  • sti87
    antwortet
    Guten Abend zusammen,

    ich stehe gerade vor der selben Herausforderung: aus Bsp. HEX 4411e244 soll DEC 583.53 werden.
    Gibt es mittlerweile einen Logikbaustein, oder darf man das immer noch so lösen wie wampie es aufgezeigt hat?

    Vielen Dank und schöne Grüsse
    Stefan

    Einen Kommentar schreiben:


  • freed45
    antwortet
    Hat jemand bereits eine Lösung für 4-Byte -> Dezimalzahl? Ich lese vom SMA Energy Meter die unterschiedlichen Werte binär aus, allerdings zeigt der HS sehr seltsame Ziffernstränge, die anscheinend nicht im HEX-Format ankommen.

    Einen Kommentar schreiben:


  • Kuredu
    antwortet
    Hallo,
    Wenn ich mir die Logic von der Post Nr. 6 ansehen dann komme ich mit meinen 2x2bytes (hex aus der ETS) auch zu meiner ieee 754 float. Ich müsste nur aus meinen zwei knx Gruppenadressen eine zusammenfügen welche dann die benötigten 4byte Hex beinhaltet aber wie bekomme ich dass hin?
    Eine fertige logic für den HS von 4byte auf ieee754 gibt es noch nicht, oder doch?
    Lg Christian

    Einen Kommentar schreiben:


  • NilsS
    antwortet
    Also da es die beiden 2Byte Werte ja nicht IEEE 754zu sein scheinen, dann nimm doch einfach das das Highbyte * 65535 + LowByte.
    Multiplikation und Additionsbaustein.

    Einen Kommentar schreiben:


  • Kuredu
    antwortet
    Hallo,
    ich habe von openhab modbus tcp binding via knx Gruppenadresse die 2x 2byte welche auf zwei Modbus input register und auch auf zwei knx gruppenadressen verteilt sind, wenn ich diese 2x 2byte hintereinander auf 4byte zusammenfüge erhalte ich eine Temperatur (float 4 byte). Deshalb möchte ich diese 2x 2byte auf 4byte zusammenfügen. Wenn möglich mit meinem Homeserver.
    Lg Christian

    Einen Kommentar schreiben:


  • NilsS
    antwortet
    Du solltest vielleicht mal genauer beschreiben was du machen möchtest, z.B. wo die Daten herkommen.

    Kommen der 4Byte vom Bus oder die 2Byte Werte, worum handelt es sich?

    Ein Gerät im Netz? sind es vielleicht garnicht 4Byte sondern 2x 2Byte die einfach nur in einem String sind.

    Willst du die per 4Byte dann auf den Bus senden. All das solltest du vielleicht mal genauer beschreiben damit dir jemand helfen kann.

    Einen Kommentar schreiben:


  • Kuredu
    antwortet
    Hallo,
    ich habe nun herausgefunden dass es sich um zwei 2byte Hex Daten bzw. um zwei Dec (U) Zahlen handelt.
    Nun möchte ich diese zwei 2byte Hex Daten zu einen 4byte Hex zusammenfügen wie mache ich dies am einfachsten mit meinem HS?
    lg Christian

    Einen Kommentar schreiben:


  • Kuredu
    antwortet
    Hallo,
    Ich möchte auch 4byte hex auf float point umwandeln mit meinem HS gibt es dafür ev. einen Baustein.
    Lg Christian

    Einen Kommentar schreiben:


  • wampie
    Ein Gast antwortete
    Anbei die Lösung meiner Berechnung.



    Beim 4ByteTo32Bit Baustein wird als Eingang 2byte geschrieben.
    Der Eingang ist jedoch ein 4byte Wert.
    Nicht verwirren lassen ;-)
    Angehängte Dateien

    Einen Kommentar schreiben:


  • wampie
    Ein Gast antwortete
    Zitat von jonofe Beitrag anzeigen
    Womit sollst du das denn machen? HS?

    Prinzipiell geht das so.
    Ja mit ner HS LOGIK wäre es gewünscht
    Das Prinzip hab ich. Aber an der Umsetzung im HS scheiter ich bis jetzt.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Womit sollst du das denn machen? HS?

    Prinzipiell geht das so.

    Einen Kommentar schreiben:

Lädt...
X