Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ankündigung
Einklappen
Keine Ankündigung bisher.
Bug: Umwandlung von/nach DPT 5.001 nicht konsistent!
DPT5.001 ist definiert mit einer Auflösung von 0,01
Das sieht mir auf dem Bus auch noch so aus. Im sh.py halt dann leider nicht mehr.
Auch bei den Temperaturen (DPT9) habe ich manchmal mehr Stellen, als die defnierte Resolution von 0,01
Warum braucht man denn da dann ein Round?
Wo kommen die "Mehrstellen" denn her?
Gruß
Wo "definiert"? Quelle?
Wenn 0-100% mit 256 Stufen aufgelöst werden beträgt die Auslösung halt ca. 0,4% (oder eben 0,004). Sieht auch Tapko so: Tools - Tapko
Und bei einem 2 Byte breiten Datenpunkt (DPT 9) wäre das noch trauriger.
gleiches Seite 33, DPT 9.007 - 0,01%, also 0,0001.
Um bei 5.001 zu bleiben: Was genau wäre jetzt dein Wunschverhalten? Die Resolution ist halt nicht exakt 0,4% - sondern 0,39xxx% - ergo ist der korrekt umgerechnete Wert nach Vorschrift doch auch nicht in Mehrfache von 0,4% zu quetschen. Ich sehe daher an dieser Stelle ein Runden als Fehler an! Und selbst wenn, dann doch nicht auf 0,01 (also ganze %) sondern 0,1%?
Bei 9 ging es mir um 9.001, der ja schon gefixt ist:
9.001 DPT_Value_Temp 0,01 °C
Wunsch wäre, das da max 2 Nachkommastellen ankämen oder?
Wie gesagt, ich sehe halt im RRD scheinbare Genauigkeit Zu lösen wäre es an verschiedenen Stellen, deshalb habe ich ja alle mal angeschaut.
Vl. wärs auch ne Lösung, jedem Item die Anzahl Nachkommstellen mitzugeben (geht heute schon via eval denke ich).
Derzeit zwischen Kistenauspacken und Garten anlegen.
Baublog im Profil.
DPT 5.001 hat tatsächliche ein Auflösung von 0,4 %. Die Prozent (bei der Auflösung) sind hier aber nur als Einheit zu sehen, die sich nicht auf den Wert sondern auf die generellen Wertebereich von 0-100% bezieht.
Daher kann auf eine Nachkommastelle gerundet werden.
Ist in develop für 5 und 5.001 umgesetzt.
EDIT: diese komischen Werte kommen von Fließkomma-Arithmetik. Das ist ein gängiges Programmierproblem wenn man Fließkommanzahlen kodiert bzw. dekodiert.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar