Seite 1 von 1

time

Verfasst: Freitag 18. August 2017, 19:22
von jan.b
hi leute,
ich wollte fragen wie man mit dem module "time"
den folgenden Code so erweitern kann, dass er zu einer bestimmten Uhrzeit ausgeführt wird.

Code: Alles auswählen

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)

GPIO.setup(11,GPIO.OUT)
GPIO.output(11,GPIO.LOW)

dauer = 0.5
for x in range(10):
    GPIO.output(11,GPIO.HIGH)
    time.sleep(dauer)
    GPIO.output(11,GPIO.LOW)
    time.sleep(dauer)

GPIO.cleanup()

Re: time

Verfasst: Freitag 18. August 2017, 20:03
von pixewakb
Hilft Dir das?

Code: Alles auswählen

>>> import time
>>> time.asctime()
'Fri Aug 18 20:52:55 2017'
>>> time.time()
1503082529.413232
>>> time.ctime(1503082529.413232)
'Fri Aug 18 20:55:29 2017'
Letztlich prüfst Du, ob ein Zeitpunkt (der ctime-Wert) größer oder gleich deinem Zeitpunkt ist, den Du suchst. Ich habe keine Ahnung, was Deine Funktionen da liefern und was Du ggf. schon verwenden kannst. Die Sache mit dem sleep() ist meiner Erfahrung nach nicht so glücklich, weil dein Quellcode in der Ausführung auch Zeit bei der Ausführung benötigt, bedeutet Du kannst nicht einfach immer genau 5 Sekunden vorstellen.

Re: time

Verfasst: Freitag 18. August 2017, 20:15
von jan.b
danke, ich glube schon, dass das helfen könnte probiere es morgen aus. falls es dich interessiert: der Code kann den angegebenen gpio pin eines rspberry pi 2 b+ modells an schalten, sodass man damit technische geräte an und aus stellen könnte. ich brauchte ihn für eine Wasserpumpe für ein Gewächshaus. :mrgreen:

Re: time

Verfasst: Freitag 18. August 2017, 20:32
von noisefloor
Hallo,
den folgenden Code so erweitern kann, dass er zu einer bestimmten Uhrzeit ausgeführt wird.
Wann das der tatsächliche Code ist, dann möchtest du dein Skript zum gewünschten Zeitpunkt über eine systemd Timer Unit starten. Dafür brauchst du keine Python-Endlosschleife bauen, die 99,5% ihrer Zeit mit warten verbringt.

Gruß, noisefloor

Re: time

Verfasst: Freitag 18. August 2017, 20:53
von jan.b
das war auch nur der erste test für die gpio's

Re: time

Verfasst: Freitag 18. August 2017, 22:32
von pixewakb
jan.b hat geschrieben:falls es dich interessiert: der Code kann den angegebenen gpio pin eines rspberry pi 2 b+ modells an schalten, sodass man damit technische geräte an und aus stellen könnte. ich brauchte ihn für eine Wasserpumpe für ein Gewächshaus. :mrgreen:
Wir haben ein eigenes Unterforum für "Raspberry Pi und Co.". Mir sagt das nichts, ich kann mir aber grob vorstellen, was es sein könnte...

Re: time

Verfasst: Freitag 18. August 2017, 23:08
von pixewakb
PS Klingt nach einem interessanten Projekt. Denk darüber nach das bei Gelegenheit in einer User Group in deiner Nähe vorzustellen. Falls es keine gibt, vielleicht kann man eine gründen...

Re: time

Verfasst: Samstag 19. August 2017, 09:30
von noisefloor
Hallo,
das war auch nur der erste test für die gpio's
Selbst wenn der Code länger wird und "nur" nacheinander div. Pumpen über die GPIOs gescahltet werden macht eine systemd Timer Unit (mehr) Sinn.

@pixewakb: Projekte zur Bewässerung inkl. solche mit Erdfeuchtemessung gibt es reichlich. Im deutschen Raspi-Forum gibt's diverse Threads dazu.

Gruß, noisefloor