DS2450 Umweltsensor Platine

Begonnen von Tobias, 27 November 2013, 08:11:28

Vorheriges Thema - Nächstes Thema

PeMue

Hallo Tobias,

habe Deinen Umweltsensor (2xLicht, 1xLuftfeuchte, 1xTemperatur, 1xVersorgungsspannung) seit ein paar Wochen im Einsatz und logge nur die Spannungen mit (so sind die E-Techniker halt).
Jetzt habe ich versucht, den Kanälen über userReadings die Umrechnung beizubringen, habe auch im Wiki geschaut.
Mein AD-Wandler ist so definiert:
define AZ_AD1 OWAD DS2450 DC3E0C000000
Ich kann auch die Luftfeuchtigkeit mit
attr AZ_AD1 userReadings AZ_RH1 { sprintf("%3.1f", (((ReadingsVal("$name", "A",0) / ReadingsVal("$name", "D",0)) - 0.1515)/0.00636));; }
sauber ausrechnen lassen. Allerdings habe ich folgendes festgestellt:
- es geht wohl nur ein userReading pro Device, wenn ich ein neues anlege, verschwindet das alte
- wenn ich mir das OWAD Modul anschaue, wäre es vermutlich besser, die [ABCD]Function von OWAD zu verwenden, diese kann dann auch den Luftfeuchtigkeitswert mit der (im anderen Device gemessenen) Temperatur kompensieren, vermutlich muss ich dann auf das Loggen der Spannung verzichten
- wann die beiden Strichpunkte kommen und wann nicht ist mir auch nicht ganz klar  :(
- ich wage leise anzudeuten, dass die Kanalzuordnung im Wiki nicht so ganz passt, bei mir ist
# DS2450 A HIH5030 (Feuchte)
# DS2450 B TSL250 (Helligkeit)
# DS2450 C TSL260 (Solarstrahlung)
# DS2450 D Ubat (normalerweise Luftdruck -> nicht verwendet)

Ein (nicht eiliger) Tipp wäre echt toll (die Lichtsensoren sind sowieso die meiste Zeit übersteuert und die Luftfeuchtigkeit wird ja angezeigt (derzeit noch nicht temperaturkompensiert).

Danke + Gruß

Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Joachim

Moin Peter,

Zitat- es geht wohl nur ein userReading pro Device, wenn ich ein neues anlege, verschwindet das alte
userReadings durch Komma trennen, Beispiel:
attr FS_Bad userReadings VAD {(ReadingsVal("FS_Bad","VAD",0) eq "0") ? ReadingsVal("FS_Bad","voltage",0):int((((ReadingsVal("FS_Bad","VAD",0) * 4 ) + ReadingsVal("FS_Bad","voltage",0)) / 5) * 1000 + 0.5) / 1000 },V {(ReadingsVal("FS_Bad","V",0) eq "0") ? ReadingsVal("FS_Bad","VDD",0):int((((ReadingsVal("FS_Bad","V",0) * 4) + ReadingsVal("FS_Bad","VDD",0)) / 5 ) * 1000 + 0.5) / 1000 },Temperatur { ReadingsVal("TS_Bad","Temperatur",0) },Feuchte:V { int((((((ReadingsVal("FS_Bad","VAD",0)) + 0.0)/(ReadingsVal("FS_Bad","V",0)) - 0.1515) / 0.00636) / (1.0546 - 0.00216 * (ReadingsVal("FS_Bad","Temperatur",0)))) * 10 + 0.5 ) / 10 }
so direkt aus einem funktionierenden Sensor 2438 mit OWX herauskopiert.
Sinn ist, dass ich natürlich auch VAD haben will, und Bitkipper etwas gätten wollte. Das ganze ist aber gnadenlos unübersichtlich. Deshalb am besten jeden einzelnen Teil ersteinmal aufbauen, und dann zusammenfügen.
Die Temperatur wird in diesem Beispiel von einem 18B20 abgegriffen

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

DJAlex

Hallo,

ich such schon ne ganze Weile. Ich bin mit den ganzen Jumpern auf der Platine absolut ueberfordert. Kann mir jemand sagen welche ich wie setzen muss?
Wuerd gern Luftdruck und die beiden Lichtsensoren laufen lassen. Waer super wenn mir jemand helfen kann.

Alex

Tobias

Standardmäßig musst du keine Jumper setzen. Die sind nur dafür da wenn keine Sensoren am jeweiligen Eingang angeschlossen sind oder du VCC messen willst.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

DJAlex

Wenn ich das richtig verstanden habe kann ich nicht bei der Licht, den Luftdruck und die Luftfeuchte gleichzeitig messen. des heist ich muss bei einem Vcc messen. In dem Fall am besten am Feuchte Sensor. welcher Jumper ist das und ich in welche Stellung muss ich den stellen. Ich versteh die Beschriftung nicht ganz. Danke nochmal für die Hilfe.

PeMue

Zitat von: DJAlex am 14 September 2015, 00:34:38
Wenn ich das richtig verstanden habe kann ich nicht bei der Licht, den Luftdruck und die Luftfeuchte gleichzeitig messen.
Nein, es sollte die Messung von allen Größen gehen siehe http://forum.fhem.de/index.php?action=dlattach;topic=16896.0;attach=8946;image. In diesem Fall braucht kein Jumper gesetzt sein. Die Jumper sind nur dafür da, wenn ein Sensor nicht bestückt ist, dass der AD-Wandler keinen offenen Eingang hat bzw. man die Versorgungsspannung messen kann.

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

Tobias

Wenn du die Luftfeuchte messen willst musst  du zwingend VCC messen. Am besten du lässt einen TSL deiner Wahl unbestückt und setzt den Jumper direkt neben dem unbestückten TSL auf +Stellung
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

DJAlex

Super vielen Dank! Probier ich aus.
Grüße

Alex