FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: devien am 28 Juni 2017, 19:05:44

Titel: userreading nutzen
Beitrag von: devien am 28 Juni 2017, 19:05:44
Hallo,
ich habe ein userreading definiert
defmod Solar_temp_01 FRM_AD 14
attr Solar_temp_01 IODev Arduino_02
attr Solar_temp_01 event-aggregator reading::none:median:300
attr Solar_temp_01 event-min-interval 60
attr Solar_temp_01 fp_Solar 63,1120,2,Solar_temp_01,
attr Solar_temp_01 room Arduino,Solarsteuerung
attr Solar_temp_01 stateFormat reading
attr Solar_temp_01 userReadings Resistance {(5-(5*ReadingsVal("Solar_temp_01","reading",0) /1024))*1000/(5-(5-(5*ReadingsVal("Solar_temp_01","reading",0) /1024)))}
attr Solar_temp_01 verbose 5


leider bekomme ich immer wenn ich get Solar_temp_01 Resistance aufrufe ein leeres Feld angezeigt.

was mache ich falsch?
Titel: Antw:userreading nutzen
Beitrag von: DeeSPe am 28 Juni 2017, 19:10:53
Nur weil Du ein userReading einfügst gibt es noch lange keinen get Befehl dafür!

Gruß
Dan

EDIT: Was willst Du mit dem get  erreichen?
Titel: Antw:userreading nutzen
Beitrag von: marvin78 am 28 Juni 2017, 20:55:54
Alle Readings bekommt man auf Perlebene per ReadingsVal oder im set mit der übrliichen und dokumentierten Vorgehensweise. Dazu verweise ich auf die commandref zu set und eben ReadingsVal.
Titel: Antw:userreading nutzen
Beitrag von: amenomade am 28 Juni 2017, 21:44:34
Ausserdem würde ich nicht im 2. Teil der Formel einen Default Wert von "0" nehmen. Wenn Solar_temp_01 kein Reading "reading" hat, hast Du ein DIV/0

/(5-(5-(5*ReadingsVal("Solar_temp_01","reading",0) /1024)))
Ich sehe auch nicht die Notwendigkeit von "5-5"...
Reicht nicht /(5*ReadingsVal("Solar_temp_01","reading",0) /1024) ?
Titel: Antw:userreading nutzen
Beitrag von: devien am 30 Juni 2017, 22:55:39
Zitat von: amenomade am 28 Juni 2017, 21:44:34
Ausserdem würde ich nicht im 2. Teil der Formel einen Default Wert von "0" nehmen. Wenn Solar_temp_01 kein Reading "reading" hat, hast Du ein DIV/0
/(5-(5-(5*ReadingsVal("Solar_temp_01","reading",0) /1024)))
danke für den Hinweis, hab ich vermerkt und ist auch eine Super Sache, die viv/0 hatte ich bereits im Log

Zitat von: amenomade am 28 Juni 2017, 21:44:34
Ich sehe auch nicht die Notwendigkeit von "5-5"...
Reicht nicht /(5*ReadingsVal("Solar_temp_01","reading",0) /1024) ?
nein reicht leider nicht, ich könnte das kürzen indem ich 10-(5*ReadingsVal("Solar_temp_01","reading",0) /1024) nutzen würde, die Trennung dient mir als erinnerung, das erste "5-" ist wie im davor aufgeführten Teil dem Umstand geschuldet das ich die Spannung unfeiner Weise am festen Widerstand des Spannungsteilers messe anstelle am PT1000 direkt. Daher muss ich erst die Differenz aus der anliegenden Versorgungsspannung 5V ziehen um berechnen zu können.
Titel: Antw:userreading nutzen
Beitrag von: amenomade am 01 Juli 2017, 00:03:11
(5 - (5 - ( X ))) = 5 - 5 + X = X
oder ?
Titel: Antw:userreading nutzen
Beitrag von: devien am 01 Juli 2017, 00:26:18
ja, rein logisch ist das korrekt

*AscheaufmeinHaupt*

vieleicht reichen 4 Stunden Schlaf am Tag doch nicht....