Posts by Wiesenpieper

    Hallo,
    ich möchte für mein Gewächshaus die Lüftung über ein Programm in Python steuern.
    Die Hardware (DHT22, Ausgänge über 8-fach Relay für Motoren und Wendepolschalter,
    Eingänge über Optokoppler) habe ich in kleinen Programmen mit Erfolg getestet.
    Bei der eigentlichen Programmierung (siehe unten) scheitere ich schon beim Definieren der Ausgänge
    in Zeile 48 GPIO.setup(wps2, GPIO.OUT) mit der Meldung: SyntaxError: invalid syntax
    Wenn ich diese Zeile mit einem # auskommentiere erschein die selbe Fehlermeldung, nur eben
    in Zeile 49 GPIO.setup(mot1, GPIO.OUT).
    Kann mir bitte jemand einen Rat geben.
    Vielen Dank.

    #!/usr/bin/python
    # coding=utf-8
    import RPi.GPIO as GPIO
    import time, sys

    # Pin-Nummern verwenden (nicht GPIO-Nummern!)
    GPIO.setmode(GPIO.BOARD)

    # Pin-Nr. den Variablen zuweisen
    # über Relay 1 24V schalten
    v24 = 38
    # mit Relay 2 und Relay 3 einen Wendepolschalter realisieren
    wps1 = 40
    wps2 = 15
    # mit Relay 4, 5 und 6 die Motoren schalten
    mot1 = 16
    mot2 = 18
    mot3 = 22
    # über Kippschalter und Relay 8 die Beleuchtung im Gewächshaus schalten
    kipp = 7
    licht = 13
    # manuelle oder automatische Steuerung des Gewächshauses
    man = 26
    auto = 24
    # rechte oder linke Fensterreihe oder Lamellentür ansprechen
    frlinks = 21
    frrechts = 19
    tuer = 23
    # Reed-Kontakt linke Fensterreihe zu
    reedlzu = 32
    # Reed-Kontakt linke Fensterreihe bei automatischem Betrieb bis Mitte auf
    # bzw. bei manuellem Betrieb und drücken des Tasters Fenster auf
    reedtasterlinks = 33
    # Reed-Kontakt linke Fensterreihe ganz weit auf
    reedlmaxauf = 8
    # Reed-Kontakt rechte Fensterreihe zu
    reedrzu = 36
    # Reed-Kontakt rechte Fensterreihe bei automatischem Betrieb bis Mitte auf
    # bzw. bei manuellem Betrieb und drücken des Tasters Fenster auf
    reedtasterrechts = 11
    # Reed-Kontakt rechte Fensterreihe ganz weit auf
    reedrmaxauf = 12


    # GPIO x als Ausgang setzen
    GPIO.setup(v24, GPIO.OUT)
    GPIO.setup(wps1, GPIO.OUT
    GPIO.setup(wps2, GPIO.OUT)
    GPIO.setup(mot1, GPIO.OUT)
    GPIO.setup(mot2, GPIO.OUT)
    PIO.setup(mot3, GPIO.OUT)
    GPIO.setup(licht, GPIO.OUT)

    # GPIO x als Eingang setzen
    GPIO.setup(kipp, GPIO.IN)
    GPIO.setup(man, GPIO.IN)
    GPIO.setup(auto, GPIO.IN)
    GPIO.setup(frlinks, GPIO.IN)
    GPIO.setup(frrechts, GPIO.IN)
    GPIO.setup(tuer, GPIO.IN)
    GPIO.setup(reedlzu, GPIO.IN)
    GPIO.setup(reedtasterlinks, GPIO.IN)
    GPIO.setup(reedlmaxauf, GPIO.IN)
    GPIO.setup(reedrzu, GPIO.IN)
    GPIO.setup(reedtasterrechts, GPIO.IN)
    GPIO.setup(reedrmaxauf, GPIO.IN)

    # Relays in Grundstellung
    GPIO.output(v24, 0)
    GPIO.output(wps1, 0)
    GPIO.output(wps2, 0)
    GPIO.output(mot1, 0)
    GPIO.output(mot2, 0)
    GPIO.output(mot3, 0)
    GPIO.output(licht, 0)

    # Variablen definieren
    # Wendepolschalter in Richtung auf = 1 / in Richtung zu = 0
    wpsaufzu = 0

    # Hauptprogramm
    # Schleife über alles
    while TRUE:
    # feststellen, ob automatische oder manuelle Steuerung
    input = GPIO.input(man)
    while input == 1: # manuelle Steuerung
    inlinks = GPIO.input(frlinks)
    inrechts = GPIO.input(frrechts)
    intuer = GPIO.input(tuer)
    if inlinks == 1: # Schalter auf linke Fensterreihe gestellt
    intaster = 1


    # Motor auswählen und 10 Sekunden laufen lassen
    # GPIO.output(mot1, 1)
    # time.sleep(1)
    # GPIO.output(v24, 1)
    # time.sleep(10)

    # Motor und Strom abstellen
    # GPIO.output(v24, 0)
    # GPIO.output(mot1, 0)

    # alle Ein- und Ausgänge zurücksetzen

    GPIO.cleanup()