Hilfe für ein Bash-Script

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Hilfe für ein Bash-Script

      Hi,

      hab da so n kleines Problem und wenig bis keine Ahnung vom scripten.

      Hab seit neustem ein Picam Full HD 1080P Kamera Modul Nacht Vision+ 2 IR LED Licht für Raspberry Pi Model | eBay

      Hab sie zusammen mit einer zweiten USB-Cam mit motion am laufen.
      Die Picam verwende ich praktisch als PIR für mein Flurlicht weil die durch ihr Infrarot auch in absoluter Dunkelheit Bewegung erkennt und mein Flurlicht zuverlässig schaltet.

      So jetzt zum Problem. Das Flurlicht lasse ich mit einem Countdown von 60sec. angehen. Problem dabei ist, wenn motion innerhalb von den 60sec. sagen wir mal fünf Bewegungen erkennt, wird das Licht auch fünf mal 60sec. erneut nacheinander angeschaltet.

      Bis jetzt hab ich die so gelöst:

      Shell-Script

      1. #!/bin/bash
      2. ###
      3. # Flurlicht durch PiCam und einem Countdown von 60 sec. anschalten
      4. ###
      5. cd /var/www/shc
      6. # Befehl von SHC > ID´s sind Funksteckdosen (id2=SHC-Countdown)
      7. php index.php app=shc -sw id=2 --on
      8. # Motion-Deamon für 50 sec. stoppen
      9. sudo /etc/init.d/motion stop
      10. sleep 50s
      11. sudo /etc/init.d/motion start
      12. # Motion neu strarten
      13. sudo killall motion
      14. sudo motion
      15. exit 0
      Display All
      Ab Zeile 9 bin ich aber damit unzufrieden, weil sich damit die USB-Cam natürlich auch abschalte.
      Meine Idee ist jetzt das schöner mit if, than, und einer while-schleife zu machen.
      Weiß aber nicht wie bzw. was ich für if abgreifen kann. Vielleicht den Countdown?
      Mein Gedanke ist:
      Wenn Licht an > schauen ob licht an dann nichts tun (also kein erneutes Auslösen des Countdowns) > wenn Licht nach 60sec. aus dann Licht wieder an (wenn Bewegung erkannt).
      Vielleicht etwas mit den Sekunden spielen, dass das Licht sofort wieder an geht, also der Befehl schon warten um gleich wieder an zu gehen wenn das Licht ausgegangen ist.

      Hoff Ihr könnt mir da n paar Zeilen zusammenbauen und mir dabei helfen das eleganter zu lösen.

      Danke euch schon mal
      Karsiacar
      Was will ich? Und was muss ich dafür tun?
    • Nehme doch einen PIR Bewegungsmelder HC-SR501.
      Damit kannst du dann ohne Picam das Flurlicht steuern.

      Source Code

      1. 1. Unter "Schaltfunktionen" ein "Element erstellen" mit Name
      2. "Bewegungsmelder", GPIO (Wiringpi) angeben, Raum..., dann speichern.
      3. 2. Unter "Schaltbare Elemente verwalten" Countdown wählen
      4. und weiter drücken.
      5. Einen Namen vergeben, bei mir "Bewegunsmelder Countdown".
      6. Intervall z.b. "5 sek."
      7. Schaltpunkte keine.
      8. Erlaubte Benutzer "jede Gruppe" und abspeichern.
      9. Jetzt unter "Schaltbare Elemente verwalten" bei Bewegungsmelder Countdown Liste bearbeiten (vor dem Bleistift Symbol) eine Steckdose (bei dir Flurlicht) oder anderes Element mit "an" hinzufügen.
      10. 3. Bei Adminitrator steht nun das Schaltelement "Bewegungsmelder Countdown".
      11. Beim betätigen des Schaltelementes auf "An" schaltet für ca. 5 Sek.
      12. die Steckdose oder gewähltis Element an und wieder aus.
      13. 4. Unter Ereignisse "neues Ereignis" " Eingang positive Flanke" erstellen
      14. Name z.b. Bewegung, bei "Eingänge" Bewegungsmelder nehmen, Sperrzeit
      15. 10 sek. und speichern.
      16. 5. Jetzt noch unter "Ereignisse verwalten" bei "Bewegung" Liste bearbeiten (vor dem Bleistift Symbol) und "Bewegungsmelder" mit "an" hinzufügen.
      17. 6. Wenn jetzt eine Bewegung erfasst wird dann schaltet die Funksteckdose Flurlicht für die erstellte Countdownzeit ein.
      Display All
      Files
      • index.jpg

        (5.63 kB, downloaded 55 times, last: )
      Kann besser Hardware als Software !
    • Hallo,

      Danke für eure Antworten.

      @premo: Den PIR hatte ich so wie du beschrieben hast lange im Einsatz. Nur leider wenn es komplett dunkel war, schaltete der PIR nicht mehr zuverlässig. Nochmal einen extra Dank für deine Mühe und die genaue Beschreibung.

      @MRenner und madknut: Das ich da nicht selbst drauf gekommen bin :) Danke, werde es versuchen wenn ich wieder am Rechner sitz.

      Grüße
      Karsiacar
      Was will ich? Und was muss ich dafür tun?