Hex-Werte addieren

  • Hallo,

    Ich bekomme von meinem Stromzähler Zeilen von Hexwerten in der Form :

    11:02:06.892 : 77 07 01 00 10 07 00 ff 01 01 62 1b 52 ff 55 00 00 0a 6a 01

    laut Beschreibung ist das die aktuelle Leistung.

    ab der Stelle ff 55 folgen dann 5 Bytes, die die Leistung representieren.

    Ich habe nun folgendes mit RegEx rausgefiltert :

    Code
    55 00 00 0a 6a 01 
    55 00 00 0a 1e 01 
    55 00 00 0a 7a 01 

    Laut Doku kennzeichnet die 55 die Variable als Integer und die nächsten 5 Bytes sind die Werte.

    Da käme ich auf :

    Code
    00 00 0a 6a 01 
    00 00 0a 1e 01 
    00 00 0a 7a 01 

    Diese müßten dann von High nach Low aufaddiert werden.

    Da reicht wohl nicht $00 + $00 + $0a + $6a + $01

    Da müßten Werte so um die +/- 200 rauskommen.

    Wie macht man das ?

    Wir sind die XProfaner.

    Sie werden von uns assimiliert.

    Widerstand ist zwecklos!

    Wir werden alle ihre Funktionen und Algorithmen

    den unseren hinzufügen.

    Einmal editiert, zuletzt von H.Brill (9. Februar 2023 um 09:47)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress, WoltLab & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Der Hex-Wert muss in ein Dezimalwert umgewandelt werden und dann brauchst du sie nur zusammenziehen.

    Wenn Du dies selber erledigen möchtest, dann folgende Regel: 01=1; 02=2 ... 09=9; 0A=10; 0F=15; 10=16; 11=17; 1F=31; 20=32 ... FF=255

    In Deinem Fall sind das: 85 + 0 + 0 + 10 + 106 + 1 = 202

  • Abifiz 9. Februar 2023 um 17:48

    Hat den Titel des Themas von „Hexwerte addieren“ zu „Hex-Werte addieren“ geändert.
  • Ganz zu stimmen scheint es noch nicht.

    Da komme ich auf Werte zwischen 95 und 270.

    Soviel schwanken dürfte die momentane Leistung ja nicht.

    Die Werte müßten, wie gesagt bei 210 bis etwa 260 W liegen.

    Es sei denn, man schaltet plötzlich eine Waschmaschine, Trockner

    und einen Backofen dazu.

    Aber so schnell war ich in der 2minütigen Aufzeichnung nicht.

    Wir sind die XProfaner.

    Sie werden von uns assimiliert.

    Widerstand ist zwecklos!

    Wir werden alle ihre Funktionen und Algorithmen

    den unseren hinzufügen.

    2 Mal editiert, zuletzt von H.Brill (9. Februar 2023 um 18:23)

  • Meine Beispielrechnung bezog sich jetzt auf die erste Zeile aus Codeblock 1; also: 55 00 00 0A 6A 01

    Deine zweite und dritte Zeilen sind fast Analog bis auf den 5 Wert, der um einiges niedriger/höher ist (1E = (16 + 14 = 30)) statt 6A. Wäre einer Differenz von (106 - 30 =) -76?

    Bei der 3'ten Zeile ist eine Differenz von +16

    Aufgedröselt:

    Zeile 2: H55 00 00 0A 1E 01 : D85 + 0 + 0 + 10 + 30 + 1 = 126

    Zeile 3: H55 00 00 0A 7A 01 : D85 + 0 + 0 + 10 + 122 + 1 = 218

    Die Angaben in Codeblock 2? Stimmen die wirklich, denn da fehlen bei jedem Ergebnis 85?

  • Ich habe diese Seite hier gefunden mit ein paar Infos: https://www.stefan-weigert.de/php_loader/sml.php

    Wenn ich es richtig verstehe, dann sind die 4 Bytes nach "55" relevant. Die "01" am Ende hingegen ist egal.

    Das "52 ff" aus deiner Byte-Sequenz bedeutet wohl, dass die Werte immer durch 10 geteilt werden müssen, um auf die Wattangabe zu kommen.

    In deinem Fall wären es also:

    0x00000a6a => 2666 (=266,6 W)

    0x00000a1e => 2590 (=259,0 W)

    0x00000a7a => 2682 (=268,2 W)

  • Den Wert 0x01 weg zu lassen, hatte ich auch schon in Erwägung gezogen, doch da kamen dann eben immer Werte über 2000 heraus:) Das diese dann noch geteilt werden müssen, wurde leider nicht angeführt :)

    Ich habe mal den betreffenden Ausschnitt als Bild angehangen.

    Vielleicht kannst du noch was anderes erkennen.

    Das bestätigt dann auch die obere Berechnung von cx01.

    Gut! Das wusste ich dann nicht und bin nur mit den Zahlen in die Berechnungen gestartet :)

    War aber mal wieder sehr amüsant in alten Zeiten zu schwelgen ;) (KC85 / VC20-Zeiten)

  • Vielen Dank, so kommen richtige Werte raus.

    Da die Sequenzen immer feste Längen (bis zu 52 ff) haben, ist das andere ja leicht.

    Anbei mal meine Prog, falls es noch mehr Interessierte geben sollte. Ein paar Messungen

    zum Probieren habe ich auch mal angefügt.

    Da könnte man jetzt noch Uhrzeiten dabei machen oder eine Tagesübersicht machen.

    Da gibt es ja eine Menge von Sequenzen.

  • Was auch noch interessant bei so einem Wlan IR Stromzähler ist :

    WIFI WLAN IR Schreib Lesekopf Volkszähler Smart Meter (Optokopf) EHZ | eBay
    WIFI WLAN Infrarot Lese- und. Der USB Anschluss dient lediglich der Stromversorgung, daher kann der Lesekopf nicht als USB-Lesekopf genutzt werden, oder…
    www.ebay.de

    Wer einen Alexa Show hat, kann die Tasmota Webseite auch

    schön auf dem Alexa Show anzeigen lassen. Ist zwar mehr

    Spielerei, aber auch interessant für die, die Alexa mögen.

    Dafür braucht man nur den auf Alexa Show vorinstallierten Browser Silk

    und den Skill Mypage. Dann einfach eine Routine erstellen, in

    der man zu Alexa etwas sagt (z.B. Stromzähler) und die IP (192.168.2.xxx)

    von Mypage starten läßt.

    Der Skill ist auch deshalb interessant, da man bis zu 10 Weblinks

    speichern und aufrufen kann.

    Da braucht man keinen PC mehr anzuwerfen oder Handy bemühen.

    Wir sind die XProfaner.

    Sie werden von uns assimiliert.

    Widerstand ist zwecklos!

    Wir werden alle ihre Funktionen und Algorithmen

    den unseren hinzufügen.

    3 Mal editiert, zuletzt von H.Brill (14. Februar 2023 um 19:44)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!