Posts by rpivpn

    Moin,


    schalten macht Du mit:
    !!!!WENN MODE OUT ANLIEGT!!!

    Code
    gpio -g write 5 1


    Zustand V sollte jetzt 1 sein (sudo gpio readall oder sudo gpio -g read 5)
    und

    Code
    gpio -g write 5 0


    Zustand V sollte jetzt 0 sein (sudo gpio readall oder sudo gpio -g read 5)


    Bye


    Jürgen

    Moin,


    bitte mach mal folgendes:

    Code
    sudo gpio readall


    BCM GPIO 5 hat Mode IN und V 1 (default Zustand nach dem Hochfahren)
    dann

    Code
    sudo gpio export 5 out


    und nochmals

    Code
    sudo gpio readall


    Ist der Mode immer noch auf IN ?
    Gibt es eine Fehlermeldung?


    Bye


    Jürgen

    Moin,


    Du musst den GPIO erst einmal auf OUT setzen:

    Code
    sudo gpio mode 21 out


    Den Schaltzustand des jeweiligen Relais ändert Du mit:

    Code
    sudo gpio write 21 0


    Relais zieht an


    und


    Code
    sudo gpio write 21 1


    Relais neutral


    Bye


    Jürgen


    PS.:
    Mit export out/in und -g write sprichst Du BCM,
    mit mode out/in und write die unter Namen (gpio readall) aufgeführten GPIO´s an.
    (wPi) sudo gpio mode 21 out ist somit (BCM) gpio export 5 out
    ebenso wie
    sudo gpio write 21 1 und gpio -g write 5 1


    Sofern ein Relais an einem GPIO angeschlossen ist sollte dieser unmittelbar beim Hochfahren/reboot in dem Modus OUT geschaltet werden.


    wenn ich jetzt alle minute (testweise) die scripte ausführen will per crontab:
    */1 * * * * /home/pi/test/temp.sh


    bekomme ich in /var/mail/pi die Fehlermeldung im Anhang angezeigt:
    /bin/sh: 1: /home/pi/test/temp.sh: not found


    Moin,


    versuche es mal mit:

    Code
    * * * * * /home/pi/test/temp.sh


    Dann wird es jede Minute ausgeführt.


    * = jede Minute/Stunde/u.s.w.
    Schreibweise */x .....
    Wenn´s alle x Minuten ausgeführt werden soll muss x grösser sein als 1
    Z. B. ALLE 2 Minuten */2 * * * *


    Bye


    Jürgen


    Hat es bereits ein solches Projekt gegeben?


    Moin,


    unzählige.....:D


    Als Einstieg mal dieser Link:
    CAM & more


    Bei einer "guten" CAM erübrigt sich ein Belichtungsberechnung, diese pegelt sich mit ein paar "Vorab-frames" (z. B. fswebcam -S 2 ..... ) selbst ein.


    Den NAS kannst Du mounten oder das Bild per FTP übertragen.


    Aufnahmen nur bei Tageslicht, Jahreszeit unabhängig, für den Pi kein Problem, kann er berechnen (Sonnenauf.-/Untergang).


    Viel Spass


    Jürgen

    Moin,


    für den Fall, dass der Prozess klemmen sollte, kannst Du diesen vor einem erneuten Durchlauf beenden:


    Bash
    #!/bin/bash
    # Prozess beenden
    sudo killall -q loldht  > /dev/null 2>&1
    #Ausgabe des Befehl in Datei temp.Hum.txt umleiten und Prozess in den Hintergrund schicken
    sudo /home/pi/lol_dht22/loldht 7 > /home/pi/scripts/tempHum.txt &


    Bye


    Jürgen


    Du betreibst den DHT22 mit 5V. Somit besteht zwischen DATA und GND auch eine Potentialdifferenz von 5V.


    So ein .... :wallbash:, laut vorgelegter Schaltung liegen 3,3 Volt an VCC an!!


    Rainer


    3,3 Volt an VCC


    GPIO7 an Data


    0/Masse an GND


    sonst nix.


    loldht fragt die Daten recht "tolerant" ab.
    Wenn nur Treffer ausgegeben werden sollen kann die dht22.c angepasst werden.
    (printf Zeilen anpassen im letzten Drittel)
    Und dann ./configure & make


    Bye


    Jürgen

    Moin,


    dann schmeiss doch mal den Widerstand weg, jetzt besser?


    Ich frage einige AM2302 Sensoren mit 30 cm bis 50 Meter Kabellänge ab OHNE Widerstandsgeraffel.


    Bye


    Jürgen


    Niemand eine Idee?


    Moin,


    klar, siehe oben, nur wenn Du dir nicht mal die Mühe machst das bash-script vollständig rüberzubringen .....


    Nochmal, schau dir die Ausgabe von uptime an.
    Die "Übergabe" von &laufzeit=x days, xx:xx:xx wird wohl scheitern, dein password ist ja fix und nicht das Übel.


    Bye


    Jürgen


    ...
    Wie gesagt auf einem anderen PC funktioniert es problemlos


    Moin,


    wird von dem anderen PC auf den gleichen DHT22 Sensor zugegriffen?????


    Die DHT22 sind Zicken ..... zumindest verhalten sie sich so.
    Wenn die Abfrage in die Hose geht ist meist ein langes/ungeeignetes Kabel oder Spannungsunterversorgung die Ursache.
    Solange der Sensor keine Daten liefert ackert loldht und blockiert eine 2. Parallelabfrage.


    1)
    Was für Kabel verwendest Du, wie lang, Widerstand ?, wie am Pi angeschlossen...


    2)
    Hast Du loldht ausführbar gemacht?
    Wenn ja kannst Du dieses im bash-script wie folgt aufrufen:

    Bash
    #!/bin/bash
    #Ausgabe des Befehl in Datei temp.Hum.txt umleiten
    sudo /home/pi/lol_dht22/loldht 7 > /home/pi/scripts/tempHum.txt


    Bye


    Jürgen

    Moin,


    typischer Fehler, wenn die Abfrage des/der DHT22 misslingt und das Programm weiterhin ausgeführt wird.
    Möglicher Bugfix:
    Vor der Abfrage des DHT22 das Programm killen (hier loldht):

    Code
    killall -q loldht


    Bitte stelle doch mal dein Script ein.


    Bye


    Jürgen

    ...`uptime | awk '{print $3}'` "Minu$


    Moin,


    bitte vollständig posten.


    Aber schon das bisschen uptime Zeile ist nicht schlüssig.
    Die Ausgabe von uptime ändert sich nach 24 Stunden Betrieb.
    awk '{print $3}'` gibt dann 1 aus für TAG und die Angabe hh:mm rückt an awk '{print $4}'`, somit eine "Zeichenkette" weiter.


    Bye


    Jürgen


    PS,: Vermutlich klemmt dein pythoncode durch Übergabe eines "fehlerhaften Wertes".

    Moin,


    ja, nc muss ebenfalls beim Windoofs PC installiert werden und der Datenstrom wird an z.B. VLC übergeben.
    Lief bei mir eine zeitlang über VPN und sollte ansonsten nur im eigenen Netzwerk verwendet werden.
    Win-NC wird von Virenscannern als schädlich eingestuft -> ignorieren.
    Beim Pi / raspivid muss die Ausgabe auf stdout (-o -) umgelenkt werden.


    Ist bei mir auch nicht mehr aktuell, da ich auf hochwertige IP-CAM´s mit besserer Nachtsicht/Blende umgestellt habe.




    Bye


    Jürgen

    Und noch eine Frage:
    Welche Pi-PIN´s (1 - 26 - nicht GPIO-Nr.) sind mit der Relaiskarte verbunden:
    Pi-Pin........Relaiskarte
    4 an VCC
    6 - GND
    18 - IN1
    % - IN2
    12 - IN3
    16 - IN4
    7 - IN5
    11 - IN6
    15 - IN7
    % - IN8


    #!/bin/sh
    ...
    gpio export in


    Grrrrr... verabschiede dich bitte vom Modus IN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Der hat hier nix zu suchen.


    Basic:


    Was für eine Last (genaue Angabe bitte) möchtest Du schalten, nur LED ist zu dürfig, bitte den Typ und Anzahl je Relais angeben. Unter Umständen können diese, mit einem Vorwiderstand, direkt am GPIO betrieben werden.


    Bitte mache einen reboot und stelle dann die Ausgabe von ... ein:


    Code
    gpio -v


    und

    Code
    gpio readall


    Nach dem reboot dürften alle mit Name: GPIO. x aufgeführten PIN´s den Mode: IN haben.


    1) Um einen Mode OUT und Schaltzustand 1 beim Hochfahren/reboot zu erhalten muss dieser für jeden GPIO, der ein Relais steuert, gesetzt werden.
    z. B. per cronjob ( x = GPIO Nr.)

    Code
    @reboot  /usr/local/bin/gpio mode x out && /usr/local/bin/gpio write x 1


    oder per bash:
    Crontab-Eintrag:

    Code
    @reboot  /usr/local/bin/gpiomode.sh


    Inhalt von /usr/local/bin/gpiomode.sh:

    Bash
    #!/bin/bash
    # GPIO-Status definieren
    # GPIO x
    /usr/local/bin/gpio mode x out && /usr/local/bin/gpio write x 1
    # GPIO xx
    /usr/local/bin/gpio mode xx out && /usr/local/bin/gpio write xx 1
    # weitere GPIO´s .....


    Relais schalten z. B. per cronjob:

    Code
    00 12 * * * /usr/local/bin/gpio write x 0 # LEDx an
    20 12 * * * /usr/local/bin/gpio write x 1 # LEDx aus
    # weitere Schaltvorgänge ....


    Du kannst hierfür auch meigrafds Beispiel verwenden, clever, die GPIO´s definieren und den Schaltzustand übergeben.


    Die elekrische Komponente:
    mode out und Zustand 0 = Masse liegt am GPIO an
    mode out und Zustand 1 = 3,3 Volt liegen am GPIO an


    Bei 0 "leuchte" der Optocoupler (intern) und schaltet die am JD-VCC anliegenden 5 Volt gegen Masse, das Relais zieht an.


    Der Steuerteil A (VCC/Optocoupler) der Relaiskarten ist für den 5 Volt Betrieb ausgelegt.
    Um den Pi, der für 3,3 Volt ausgelegt ist, zu schützen können Massnahmen wie Vorwiderstand oder/und ULN2803 greifen.
    Meiner Ansicht nach ist dieses nicht zwingend notwendig und meine Pi´s bisher ohne Schaden, sofern unmittelbar beim Hochfahren mode out gesetzt wird!!!


    Bye


    Jürgen

    led direkt an die GPIO klemme, mit relais hat das nicht geklappt. So wie ich es nun habe schalten die Relais.


    Du hast drei unterschiedliche Baustellen:
    1) Steuerung wann > cronjob
    2) Steuerung wie > xxx.sh / bash
    3) Schaltung > Relais


    Zu 3)
    das Relais hat 3 "Stufen"


    A) VCC und GND steuert die "Vorstufe", den Optocoupler


    B) JD-VCC und GND steuert die (5 Volt) Relaisspule


    C) die Relaisspule schaltet einen UM-Schalter und ist nicht mit GND, VCC und JD-VCC verbunden und schaltet bis 220 Volt / 10 A


    Wenn Du die Relais mit 5 Volt vom Pi versorgst (Jumper auf VCC + JD-VCC) kann es zu einem Dauerschaden beim Pi kommen, dieser ist nur für 3,3 Volt ausgelegt.


    Daher auch meine Anfrage.


    Geringe Last (Watt) kann unmittelbar über die GPIO´s geschaltet werden z. B. LED´s mit entsprechend dimensioniertem Widerstand, nein, keine "Power-LED´s".
    Dieses sollte aber niemals mit dem GPIO-Status IN erfolgen.
    Hier lauscht der Pi am GPIO (Eingang), bei mode OUT kann geringe Last geschaltet werden...salopp ausgedrückt.


    Wenn viele Relais gleichzeitig anziehen entsteht zudem eine "grosse" Last (durch Stufe B), die den Pi in die Knie zwingen können und sollten möglichst durch eine eigene Stromversorgung abgedeckt werden (zumindest bei Typ A + B. (Typ B+ habe ich keine Ahnung))


    Bye


    Jürgen


    PS.: vermutlich glimmen bei dir einige Relais-LED´s nach dem Hochfahren des Pi.

    Moin,


    nochmal Relaiskarte, wie ist die Jumperstellung??
    VCC + JD-VCC oder abgezogen und Pi-GPIO-5 Volt an JD-VCC oder externe 5 Volt Stromquelle an JD-VCC....
    VCC an ????, Volt ????


    Offensichtlich nutzt Du wiringPi und schaltest über MODE out/in und nicht per write 0/1.
    Die bash umstellen, zuerst per dem GPIO auf OUT setzten und dann per write 1 / 0 den Schaltzustand bestimmen.
    gpio mode 22 out
    gpio write 22 1
    gpio write 22 0


    Liegen 5 Volt an VCC an und GPIO ist im mode in wird das auf Dauer zu einem Grillfest...


    Bye


    Jürgen


    PS.: Wann was per cronjob gesteuert wird ist unerheblich!!!

    Moin,


    bitte den Inhalt der bash-Dateien posten, wann was aufgerufen wird per cronjob ist nicht so hilfreich.


    Und wie schaut es mit der Stromversorgung + Jumper der Relaiskarte aus.



    Bye


    Jürgen


    ...autofs ist schon die neueste Version.


    0 aktualisiert, 0 neu installiert, 0 zu entfernen und 70 nicht aktualisiert.
    15 nicht vollständig installiert oder entfernt.



    Moin,


    autofs ist doch schon vorhanden, s.o.


    Aber folgendes könnte deinem System gut tun, waschen, legen, föhnen :angel:, das volle Programm:


    Code
    sudo su
    apt-get autoremove && apt-get update && apt-get upgrade && apt-get dist-upgrade


    (Gelegentliche Bestätigung mit J von Nöten aber vorher die Ausgabe lesen)


    Zu:
    insserv: warning: script 'mathkernel' missing LSB tags and overrides
    Sofern Mathematica nicht benötigt wird:

    Code
    sudo apt-get remove wolfram-engine


    oder /etc/init.d/mathkernel anpassen.


    Bye


    Jürgen