Benutzer-Werkzeuge

Webseiten-Werkzeuge


wetterstation:ds18b20

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
wetterstation:ds18b20 [2019/11/12 16:54] adminwetterstation:ds18b20 [2020/01/23 13:59] (aktuell) marlon
Zeile 27: Zeile 27:
  
 ==== Verkabelung ==== ==== Verkabelung ====
-[[https://pinout.xyz/pinout/1_wire|GPIO-Leiste Abbildung]] +Das gelbe Kabel und das rote Kabel (bzw. das rechte und mittlere Beinchen) **müssen mit einem 4,7kOhm Widerstand** (gelb-lila-pink-[gold]) verbunden werden. Die Pins werden von links nach rechts und oben nach unten durchnummeriert. Beachte: Die Bezeichnungen sind dabei aber völlig unterschiedlich (siehe: [[https://pinout.xyz/pinout/1_wire|GPIO-Leiste Abbildung]])
- +
-Das gelbe Kabel und das rote Kabel (bzw. das rechte und mittlere Beinchen) müssen mit einem 4,7kOhm Widerstand (gelb-lila-pink-[gold]) verbunden werden.+
  
 **Für den wasserdichten Sensor mit Kabel gilt:**\\ **Für den wasserdichten Sensor mit Kabel gilt:**\\
Zeile 36: Zeile 34:
 gelbes Kabel: BCM/GPIO 4 (PIN 7) gelbes Kabel: BCM/GPIO 4 (PIN 7)
  
-**Für das Bauteil gilt (flache Seite mit Beschriftung zugewandt):**+**Für das Bauteil gilt (flache Seite mit Beschriftung zugewandt):**\\
 linkes Beinchen: GND (bspw. PIN 6)\\ linkes Beinchen: GND (bspw. PIN 6)\\
 mittleres Beinchen: BCM/GPIO 4 (PIN 7)\\ mittleres Beinchen: BCM/GPIO 4 (PIN 7)\\
 rechtes Beinchen: 3V3 (PIN 1) rechtes Beinchen: 3V3 (PIN 1)
  
-Die Pins werden von links nach rechts und oben nach unten durchnummeriert. Die Bezeichnungen sind dabei aber völlig unterschiedlich.+{{:wetterstation:ds18b20-verkabelung.png|}} 
  
 ==== Beispiel ==== ==== Beispiel ====
Zeile 67: Zeile 66:
     time.sleep(1)     time.sleep(1)
 </code> </code>
 +
 +==== Beispiel 2 ====
 +
 +In diesem Beispiel wird die Temperatur mit °C und nur dann ausgegeben, wenn diese sich ändert.
 +
 +
 +<code python>
 +import time
 + 
 +def get_temp(filename):
 +    f = open(filename, 'r')
 +    content = f.readlines()
 +    f.close()
 + 
 +    temp = "error"
 +    if (content[0].strip())[-3:] == "YES":
 +        index = content[-1].find('t=')
 +        if index != -1:
 +            temp = float(content[-1][index+2:-1].strip())
 +            temp = temp/1000.0
 +    return temp
 + 
 +sensor_path = "/sys/bus/w1/devices/28-00000ade081f/w1_slave"
 +y = 100
 +
 +while True:
 +        Temperatur = get_temp(sensor_path)
 +        Temperatur = round(Temperatur, 1)
 +        if Temperatur != y:
 +                print(str(Temperatur) + "°C")
 +                y = Temperatur
 +
 +</code>
 +
wetterstation/ds18b20.1573577642.txt.gz · Zuletzt geändert: 2019/11/12 16:54 von admin