#!usr/bin/env python3 # -*- coding: utf-8 -*- #benötigte Bibliotheken import os import glob import time #benötigte Kernelmodule os.system("modprobe w1-gpio") os.system("modprobe w1-therm") #Variablen definieren temperatur = 0 #Pfad zum Sensor angeben bzw. finden lassen base_dir = "/sys/bus/w1/devices/" device_folder = glob.glob(base_dir + "28-e837*")[0] device_file = device_folder + "/w1_slave" #Funktion um die Sensordatei in eine Variable einzulesen def read_sensor(): with open(device_file, "r") as f: sensor_data = f.readlines() return sensor_data #Funktion um die Temperatur aus der Datei auszulesen #Ein return führt zum verlassen der Funktion! def read_temperature(): while True: sensor = read_sensor() if sensor[0].strip()[-3:] == "YES": equals_pos = sensor[1].find("t=") if equals_pos != -1: temp_string = sensor[1][equals_pos+2:] temp_c = float(temp_string) / 1000.0 return temp_c time.sleep(1) #Hauptfunktion def main(): while True: temperature = round(read_temperature(), 2) print(f"Temperatur: {temperature:.2f} °C") print("") time.sleep(3) if __name__ == "__main__": main()