Dann sensor = AM2315.AM2315(1)
Hast du das übernommen?
with i2c.I2CMaster(n=self.i2c_bus) as bus:
Und die Zeile?
Dann sensor = AM2315.AM2315(1)
Hast du das übernommen?
with i2c.I2CMaster(n=self.i2c_bus) as bus:
Und die Zeile?
AM2315: Github und google code archiv- Verzweiflung? Schau mal ob du hier fündig wirst!
pi@rpi3:/usr/local/lib/python3.4/dist-packages $ sudo nano AM2315_Abfrage.py
pi@rpi3:/usr/local/lib/python3.4/dist-packages $ sudo python3 AM2315_Abfrage.py
Temperatur: 22.7 °C
Luftfeuchtigkeit: 37.9 %
pi@rpi3:/usr/local/lib/python3.4/dist-packages $
Juhuuuuuuuuuuuuu ....es geht!
Vielen vielen vielen Dank!
Tatoal lieb von dir das du dir so viel Mühe gegeben hast und deine Zeit für mich geopfert hast ...DANKE!!!
Vielen vielen vielen Dank!
Tatoal lieb von dir das du dir so viel Mühe gegeben hast und deine Zeit für mich geopfert hast ...DANKE!!!
Sehr schön, freut mich!
Als "erledigt" markiert ist der Thread auch schon, wunderbar! Ein weiterer Tipp noch: du musst die Datei keinesfalls in dist-packages ablegen, ich würde es sogar nicht empfehlen. Bei einer korrekten Installation der Pakete werden diese auch gefunden, wenn du deine Dateien in /home/pi ablegst.
Huhu
Erstmal frohes Neues!
Ich hab da ein hoffentlich nur kleines Problem mit dem Temperaturfühler.
Sobald die Temperatur unter 0 Grad sinkt wird Blödsinn angezeigt.
"Temperatur: 3277.0 °C"
Was muss ich in dem Code nachtragen damit das richtig angezeigt wird?
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import AM2315
DATA_FILE = '/tmp/Temp.txt'
def measure(sensor):
"""Read temperature from the given sensor and return it.
"""
temperature = sensor.temperature()
return temperature
def save(data, filename):
"""This saves all values from the collection 'data' as a
new line to the file 'filename', each separated by a comma.
"""
with open(filename, 'w+') as f:
f.write(str("{:.1f}".format(data)))
def main():
"""Main Function. Available parameters for the AM2315 class:
sensor = AM2315(debug=False, adr=0x5c, bus=1)
This function initializes the sensor, reads temperature
and humidity and saves these in DATA_FILE.
"""
sensor = AM2315.AM2315(1)
data = measure(sensor)
save(data, DATA_FILE)
if __name__ == '__main__':
main()
Alles anzeigen
LG
Sylvia
Ebenfalls frohes Neues Jahr!
Das Datenblatt sagt zum "temperature output format" folgendes (leider als Bild, da Text im PDF nicht selektierbar):
Keine Ahnung, wer sich sowas ausdenkt, eine übliche Binärdarstellung negativer Zahlen ist das m.W. nicht.
Lösung: Wenn die gelesene Temperatur t*10 größer als 32767 ist, ist die tatsächlich gemessene Temperatur (32768-t*10)/10 oder (3276.8-t), in Deinem Fall also -0.2°C – kommt das hin?
Du kannst das entweder ins Skript oder ins Modul einbauen oder Du suchst Dir ein Python-Modul, das die Temperaturen gleich vernünftig zurückgibt. Ich würde zu letzterem neigen.
Die 10 Minuten zuvor gemessene Temperatur war 0.0 °C, also dürfte das mit den -0.2 °C passen.
Das oben gepostete Python-Script wird von einem .sh-Script aufgerufen. Damit ich nicht ganz von vorne anfange, werde ich das in das .sh-Script einbauen.
...zumindest werde ich es versuchen selbst hin zu bekommen
Vielen Dank erstmal
#!/bin/sh
sleep 236
python3 /home/pi/AM2315_Temperatur.py
sleep 2
read TEMP_AM2315 < /tmp/Temp.txt
if [ $TEMP_AM2315 * 10 >= 32767 ]
then [ 3276.8 - $TEMP_AM2315 ] > /var/www/html/Temp.txt
else [ cp -u /tmp/Temp.txt /var/www/html/Temp.txt ]
fi
Mein Script funktioniert leider nicht und ich weiß jetzt nicht mehr weiter
root@rpi3:~# python3 /home/pi/AM2315_Temperatur.py
Traceback (most recent call last):
File "/home/pi/AM2315_Temperatur.py", line 42, in <module>
main()
File "/home/pi/AM2315_Temperatur.py", line 37, in main
data = (32768 - t * 10) / 10
NameError: name 't' is not defined
root@rpi3:~#
t=data oder?
EDIT:
Temperatur: -1.0 °C
Ich glaub es funktioniert jetzt
Vielen lieben Dank für die Hilfe
Ja, copy und paste lässt grüßen
Hatte ich nachträglich im Beitrag korrigiert. Schön, dass es nun auch im Winter (oder Gefrierschrank) funktioniert
Falls die Bibliothek auf GitHub o.ä. noch aktiv entwickelt wird, könnte jemand einen PR erstellen. Oder es ist schon lange gefixt und du hast nur eine alte Version der Bibliothek auf dem Pi
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!