FHEM Forum

Verschiedenes => Bastelecke => Thema gestartet von: Tom111 am 14 August 2015, 21:55:24

Titel: Python shutdown script ändern !?
Beitrag von: Tom111 am 14 August 2015, 21:55:24
Hallo,
erst einmal vorweg, ich habe keine Ahnung von Python und werde nun das erste mal mit dieser Programmiersprache konfrontiert, ich bitte also um Nachsicht!

Folgendes Problem:
ich betreibe meinen Raspberry Pi über die hausinterne USV-Anlage um vor Spannungsausfällen geschützt zu sein; da die USV aber nicht ewig hält, habe ich über eine
Netzsteckdose die nicht über die USV läuft und einem Relai´s als Schalter einen GPIO Port angeschlossen (GPIO4 Pin), so, dass wenn das Netz ausfällt der Raspberry Pi runter fährt
über das unten angegebene Script.

# shutdown script for Raspberry Pi
import RPi.GPIO as GPIO
import os
import time

GPIO.setmode(GPIO.BOARD)

GPIO.setup(13, GPIO.OUT)
GPIO.output(13, True)
GPIO.setup(7, GPIO.IN)

while True:
        if not (GPIO.input(7)):
                GPIO.output(13, False)
                time.sleep(.1)
                GPIO.output(13, True)
                time.sleep(.1)
                GPIO.output(13, False)
                time.sleep(.1)
                GPIO.output(13, True)
                os.system("sudo shutdown -h now")
        time.sleep(.5)


Das Script funktioniert soweit.
Ich hätte aber gerne dass bei Netzausfall, also wenn das Relai´s abgefallen ist und den Kontakt schließt (Relai´s Öffner; low-Level an GPIO4 Pin) eine von mir vorgegebene Zeit gewartet wird
bis der Pi runterfährt, sollte vor Ablauf der Zeit das Netz wieder da sein (also GPIO4 Pin wieder high-Level), sollte nichts passieren und die Zeit sollte wieder auf 0 gesetzt werden.

Kann mir da ein Experte evtl. solch eine Zeitstufe in das Script einfügen, denn ich weiß nicht wie ich das anstellen soll.

Gruß
Tom
Titel: Antw:Python shutdown script ändern !?
Beitrag von: Puschel74 am 15 August 2015, 10:16:36
Frag den GPIO per Fhem ab -da gibt es sogar ein Modul dafür.
Dann kannst du per at den RasPi runter fahren oder eben nicht und du brauchst dich nicht mit einer weiteren Sprache rumschlagen.
Titel: Antw:Python shutdown script ändern !?
Beitrag von: Tom111 am 15 August 2015, 13:04:35
Zitat von: Puschel74 am 15 August 2015, 10:16:36
Frag den GPIO per Fhem ab -da gibt es sogar ein Modul dafür.
Dann kannst du per at den RasPi runter fahren oder eben nicht und du brauchst dich nicht mit einer weiteren Sprache rumschlagen.
Ja, danke für diesen Vorschlag, aber genau DAS möchte ich nicht! Ich möchte den Raspberry Pi so unabhängig wie möglich von einem Programm runterfahren können! Der von mir im Netz gefundene Code ist ja schon ausreichend, ich möchte halt nur den Zusatz der Zeit eingebaut haben.