Abfrage einbauen : Sensor vorhanden?

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
__deets__
User
Beiträge: 14536
Registriert: Mittwoch 14. Oktober 2015, 14:29

Was meinst du genau mit Input? Den Befehl Input, oder allgemein einen Weg, einen Eingabe zu tätigen?
Umulmer
User
Beiträge: 11
Registriert: Samstag 20. November 2021, 12:27

in meinem laufenden Programm, in der try schleife eine Eingabe ( Änderung einer Variablen ) zu machen. Diese darf auch beim Programmstart erscheinen.
__deets__
User
Beiträge: 14536
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das du was ändern willst, ist mir schon klar. Was mir nicht klar ist: wie soll die Änderung erfolgen? Einen Wert über die Tastatur einzulesen ist schlecht aus mehreren Gründen: es blockiert, darum muss man also herum arbeiten. Es erfordert Tastatur und Monitor und Terminal. Haben deine Familienmitglieder da Bock drauf, nur weil es 2 Grad wärmer werden soll? Und auch gestalterisch ist das eine Sackgasse. Was willst du also warum ändern?
Umulmer
User
Beiträge: 11
Registriert: Samstag 20. November 2021, 12:27

Code: Alles auswählen

def grad_lesen9():
    try:
        file = open('/sys/bus/w1/devices/28-3c01e076f457/w1_slave')
        time.sleep(0.2)  #Wartezeit ja/nein?
        filecontent = file.read()
        file.close()

        pos = filecontent.rfind('t=') + 2
        temperature_string = filecontent[pos:]
        temperature = float(temperature_string) / 100 #temperatur in 1/10tel Grad
        return temperature
    except FileNotFoundError:
        temperature = 0
        print(" Sensor nicht vorhanden")
        snvh = snvh + 1 #Zähler der Störungen
        restart() # Unterbrechung des Pluspol der Onewire, Pause 20 sec
        return temperature
Ich habe eine neue Definition fürs auslesen der ds18b20 Sensoren erstellt. Der Vorteil ist das der Programmabsturz vermieden wird.
Vielleich hilft ja die Def für Funktionen bei der eine Pause keine Rolle spielt.
__deets__
User
Beiträge: 14536
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich halte das für einen Rückschritt. Das du eine reset Funktion hast, ist natürlich gut. Aber dann einfach 0 zurück zu geben, statt in einen Fehlerzustand zu wechseln, wenn es nicht geklappt hat, erweckt doch nur die Illusion, dass da etwas funktioniert.
Antworten