Hallo
Hat jemand bereits Erfahrung mit dem Bosch Sensor BME280 gesammelt ? Im
vergleich zu einer Wetterstation zeigt der Sensor bei der Luftfeuchte
ca. 20% zuwenig an. Ist das Normal ?? Die Temperatur und Luftdruck
stimmen perfekt. Meine Formel sollte eigentlich stimmen, habs nun schon
x-mal kontrolliert und sollte mit dem Datenblatt übereinstimmen.
Hier mal mein Code, vielleicht hab ich wirklich was übersehen:
Function Humidity() As Dword
Local Var1 As Long
Local X As Long
Local Y As Long
Local Z As Long
Var1 = T_fine - 76800
X = Uh
Shift X , Left , 14 , Signed
Y = Dig_h4
Shift Y , Left , 20 , Signed
X = X - Y
Y = Dig_h5 * Var1
X = X - Y
X = X + 16384
Shift X , Right , 15 , Signed
Y = Var1 * Dig_h6
Shift Y , Right , 10 , Signed
Z = Var1 * Dig_h3
Shift Z , Right , 11 , Signed
Z = Z + 32768
Y = Y * Z
Shift Y , Right , 10 , Signed
Y = Y + 2097152
Y = Y * Dig_h2
Y = Y + 8192
Shift Y , Right , 14 , Signed
Var1 = X * Y
X = Var1
Shift X , Right , 15 , Signed
X = X * X
Shift X , Right , 7 , Signed
X = X * Dig_h1
Shift X , Right , 4 , Signed
Var1 = Var1 - X
If Var1 < 0 Then
Var1 = 0
End If
If Var1 > 419430400 Then
Var1 = 419430400
End If
Shift Var1 , Right , 12 , Signed
Humidity = Var1 / 102.4
End Function
Hallo Michael, den Sensor habe ich auch gerade ausprobiert, aber bei mir scheint alles richtig zu sein. Eine genaue Referenz habe ich natürlich nicht. Das Programm habe ich für einen ATMEL in C geschrieben. Bei deinem Programm könnte die letzte Zeile Humidity = Var1 / 102.4 eventuell den Fehler verursacht haben. Var1 liegt im Format 22.10 vor, also 22Bit Ganzzahl und 10 Bit Nachkommazahl. Ändere doch einfach mal in der letzten Zeile die Zahl 102.4 in 1024 um, dann müsste das Ergebnis als Feuchte (Ganzzahl) in % erscheinen. Die Nachkommastellen müssen extra berechnet werden. Besten Gruß Peter
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.