Plot für PKW Tank verhalten

Begonnen von Tueftler1983, 10 Oktober 2017, 01:36:04

Vorheriges Thema - Nächstes Thema

Tueftler1983

Hallo ich würde gerne einen Plot erstellen der mit den Tank Daten von meinem Auto gefüttert wird.
Konkret heißt das
Bei welchem Kilometerstand (km), wieviel Liter (l), wieviel bezahlt (€) und wieviel Kilometer seid dem letzten tanken(kmT).

Jetzt habe ich das Problem das ich gerne alle 4 werte in dem plot sehen möchte das geht aber nicht bzw ich weiß nicht wie da der Kilometerstand um die 125000 liegt die Liter zahl so um die 55, der Preis um die 67 und Trip so um die 890

Ergeben sich für den Plot zum darstellen:
(km) 125000           
(l) 55
(€) 67
(kmT) 890

Wie bekomme ich das in den Plot sodass ich alles sehen kann?

Amenophis86

Zitat von: Tueftler1983 am 10 Oktober 2017, 01:36:04
Wie bekomme ich das in den Plot sodass ich alles sehen kann?

Musst du denn alles sehen? Hauptproblem werden ja scheinbar die gesamt KM machen. Entweder die nicht als 125000, sondern als 125tkm anzeigen, oder kmT, l, € auf eine Seite und km auf die andere Seite.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

chris1284

#2
du musst dich halt entscheiden. km links und liter/ € rechts zb. wobei ich überlegen würde ob gesamtkilometer des fahrzeuges überhaupt ein sinnvoller wert in so einer auswertung bzw überhaupt ein sinnvoller wert sind. die werden in der regl nur steigen, außer du kaufst ein neues auto mit weniger km oder manipulierst den tacho  ;)

da eigentlich nur die l/km interessant sind um evtl einen erhöhten verbrauch festzustellen (zb auf grund eines defektes) würde ich nur diese errechnen und darstelllen. auf grund von schwankenden getankten litern (zb bei 75% tank getankt weils in urlaub ging) oder den schwankenden preisen/l (mal an der autobahn getank zb) sind das eigentlich auch keine werte aus denen man wertvolle schlüsse per plot ziehen kann. evtl ist noch spritkosten/km interessant zu errechnen.


edit: ok mit den 125k für km als anzeige macht evtl eine anzeige verbrauch/km(100km)  und gesamtkm sinn. so könnte man evtl sehen ob der motor mit steigender km-zahl mehr verbraucht

Tueftler1983

Danke schonmal für die Antworten

Versuche Grade aus dem Reading km das 3 stellige gerundete Reading km_rund zu bekommen,
Allerdings bekomme ich mit meinem versuch:

km_rund {sprintf("%.1f", ReadingsVal($name,"km",0)) / 1000}

Nur 124.678 aus dem Wert 124678

Wo mache ich den fehler?

Morgennebel

Du teilst ein sprintf durch 1000...?

Ciao, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA

Tueftler1983

Ziel soll es sein aus den 124678 125 zu bekommen also mathematisch auf 3 stellen runden bzw kürzen

Morgennebel

Ja, schon verstanden.

Du teilst jedoch den Rückgabewert von sprintf durch 1000.

Ciao, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA

Tueftler1983

So geht es akzeptabel

km_rund {int(0.5+(ReadingsVal($name,"km",0) / 1000))}

Aus 124678 wird 125
Aus 124490 wird 124 sollte zwar mathematisch auch 125 ergeben aber damit kann man leben

Esseidenn jemand kennt ne besseren genaueren weg

chris1284

es gibt in per math::round. ob das modul durch fhem geladen wird weiss ich jedoch nicht
http://search.cpan.org/dist/Math-Round/Round.pm

dev0

FHEM stellt einen eigenen round Befehl zur Verfügung:
my $rounded = round($value,$num_of_decimal);