Posts by gwaag

    Hallo Tell,

    habe Deinen Teil in mein Scritp eingefuegt, sieht jetzt so aus.

    Leider passiert gar nichts wenn ich das scrïpt starte.

    In Solransicht habe ich in var/www/html/shelly.php folgendes eingefuegt:

    Code
    if ($i == 1) {
    $funktionen->log_schreiben(var_export($aktuelleDaten,1),"        ",8);
    $funktionen->log_schreiben(print_r($Daten,1)," ",9);
    
    
    // Eingefuegt fuer PVLicht.py
    
    
    $params = "{$aktuelleDaten["AC Verbrauch"]} {$aktuelleDaten["AC Leistung"]}";
    exec("/usr/bin/python3 /home/pi/th/PVLicht.py $params > /dev/null &");

    Woher weiss dein Code, dass es das machen muss ?

    Code
    einspeisung = int(args.leistung) - int(args.verbrauch)

    wie Du siehst, kenne ich mich mit dem ubehaupt nicht aus, und waere fuer eine Erklaerung sehr dankbar.

    Gruss und Danke

    gwaag

    Hallo Guido64

    schoen hast du das bei Dir realisiert.

    Fuer mich als Anfaenger zu kompliziert. Alle Werte sehe ich ja schon in der auf den Handy mit der Solaranzeige.


    Um es fuer die ganze Familie etwas einfacher zu machen, schaut wenn die Lampe an ist (1W) koennt ihr waschen, buegeln, Heisswasser machen ect.

    Also etwas ganz einfaches, als immer das Handy anzumachen.


    Wenn noch jemand weiss wie man posting 1 umsetzten kann, würde ich mich auf Loeungen freuen.

    Danke und Gruss

    gwaag

    Hallo,

    seit langem habe ich wieder einmal ein neues Projekt und wuerde mich um Unterstüzung freuen.


    Habe seit kurzem eine Solaranlage und bekomme meine Daten mit Solaranzeige (Grafana) angezeigt,

    Der Wechselrichter und der Hauszaehler wird jeweils mit einem Shelly 3EM ausgelesen.


    Ich moechte gerne mit einer RGB Wifi LED Lampe folgendes anzeigen:

    Einspeisung < 0 , Lampe ist rot

    Einspeisung > 500 , Lampe ist gelb

    Einspeisung > 1000 , Lampe ist gruen.

    Die Daten sollen von der Solaranzeige kommen und mit einem Python script ausgewertet werden,


    Ich habe da schon ein Python script das eine weisse Wifi Lampe kontrollieren kann (Ein /Aus,Full Brightness)

    Hier das funktionierende Script: (/home/pi/th/PVLight.py)




    Wie wird jetzt zum anfangen, damit ich verstehe wie es geht, z.B. diese Script so erweitert , damit wenn Einspeisung > 1000 ist, das Kommando send_command(ZONE1_ON, IP, PORT) ausgefuehrt wird.?? Was muss in Solranzeige /var/www/html/shelly.php eingetragen werden, damit die Daten vom Python script gelesen werden koennen?


    so ?????

    Code
    if ($i == 1) {
    $funktionen->log_schreiben(var_export($aktuelleDaten,1),"        ",8);
    $funktionen->log_schreiben(print_r($Daten,1)," ",9);
    
    
    // Eingefuegt fuer PVLicht.py
    
    
    $params = "{$aktuelleDaten["AC Verbrauch"]} {$aktuelleDaten["AC Leistung"]}";
    exec("/usr/bin/python3 /home/pi/th/PVLicht.py $params > /dev/null &");




    Wie sieht das neue Python script aus? mit $params kenne ich mich ueberhaut nicht aus.

    Zusammen kopiert:

    Fehler=

    pi@solaranzeige:~/th $ /home/pi/th/PVLicht.py

    usage: PVLicht.py [-h] verbrauch leistung

    PVLicht.py: error: the following arguments are required: verbrauch, leistung



    Wenn ich das verstehe, kann ich hoffentlich auch spaeter das mit den 3 Farben umsetzen.

    Fuer jede Unterstuetzung bin ich sehr dankbar, da Anfaenger in Sachen php, Daten auslesen und uebertrage, etc.


    Vielen Dank und Gruss

    gwaag

    Hallo,

    In meinen script logget es ca. jede Minute. Gibt es eine Moeglichkeit das nur einmal zu loggen, oder nur jede Stunde?


    Woche 45 Mi 04.11.2020 14:49:18 Script geladen

    Woche 45 Mi 04.11.2020 14:50:49 Script geladen

    Woche 45 Mi 04.11.2020 14:52:19 Script geladen

    Woche 45 Mi 04.11.2020 14:53:50 Script geladen

    Woche 45 Mi 04.11.2020 14:55:20 Script geladen

    Woche 45 Mi 04.11.2020 14:56:51 Script geladen

    Woche 45 Mi 04.11.2020 14:57:30 Alarm AUS gesendet

    Woche 45 Mi 04.11.2020 14:58:21 Script geladen

    Woche 45 Mi 04.11.2020 14:59:52 Script geladen

    Woche 45 Mi 04.11.2020 15:01:22 Script geladen

    Woche 45 Mi 04.11.2020 15:02:53 Script geladen

    Code
    logging.basicConfig(filename='/home/pi/th/Alarm.log', format='%(asctime)s %(message)s', datefmt = "Woche %V %a %d.%m.%Y %H:%M:%S", level=logging.INFO)
    logging.info('Script geladen') # Logeintrag

    gruss

    gwaag


    edit// gerade gesehen dass das ev. das Problem ist.

    Failed to start ein_ausvonalarm Service.

    Nov 04 16:04:41 raspberrypi systemd[1]: ein_ausvonalarm.service: Unit entered failed state.

    Nov 04 16:04:41 raspberrypi systemd[1]: ein_ausvonalarm.service: Failed with result 'timeout'.

    Nov 04 16:04:41 raspberrypi systemd[1]: ein_ausvonalarm.service: Service hold-off time over, scheduling restart.

    Nov 04 16:04:41 raspberrypi systemd[1]: Stopped ein_ausvonalarm Service.

    Nov 04 16:04:41 raspberrypi systemd[1]: Starting ein_ausvonalarm Service...


    Jedesmal wenn es neu startet generiert es einen Logeintrag.


    edit 2 // das ist devinitiv das problem, bin m suchen..........

    Freude herscht!!:bravo2::bravo2::bravo2:

    Problem geloest, es geht jetzt auch wenn mit Putty eingeloggt.

    Nach langem probieren und testen bin ich ein einfach nicht weiter gekommen und wollte schon aufgeben.

    Heute habe ich das Programm PyCharm heruntergeladen und meine scripts mit dem Programm untersucht.

    Folgendes hat PyCharm herausgefunden:


    Falsch ist :


    def low(button): # od. def high(button)

    subprocess.call(["/home/pi/th/aus.py"]) # Licht aus


    This code is unreachable

    Parameter "button" value is not used

    Shadows name "button" is not used


    Richtig ist:


    def low():

    subprocess.call(["/home/pi/th/aus.py"]) # Licht aus


    Seit ich "button" aus den Klammer heraus habe, geht es einwandfrei.


    Warum das einen Unterschied macht wenn eingeloggt, weiss ich allerdings immer noch nicht, bin aber froh dass es jetzt geht.


    Gruss und Danke fuer eure Hilfe

    gwaag

    Keine Ahnung.

    Inhalt von:

    vte-2.91.sh

    gruss

    gwaag

    Hallo Rasp-Berlin,

    hier die Daten:

    Danke und Gruss


    Code
    pi@raspberrypi:~/th $ ls -la /etc/profile.d/
    total 28
    drwxr-xr-x   2 root root 4096 Okt 28 10:12 .
    drwxr-xr-x 121 root root 4096 Okt 28 12:14 ..
    -rw-r--r--   1 root root   95 Apr 29  2019 at-dbus-fix.sh
    -rw-r--r--   1 root root  664 Mär  1  2019 bash_completion.sh
    -rw-r--r--   1 root root  324 Feb 20  2020 sshpwd.sh
    -rw-r--r--   1 root root 1945 Dez 28  2018 vte-2.91.sh
    -rw-r--r--   1 root root  450 Jul 22  2019 wifi-check.sh
    pi@raspberrypi:~/th $



    Code
    /etc/profile.d
    
    at-dbus-fix.sh                     29.Apr 2019
    bash_completion.sh            1.Mär 2019
    sshpwd.sh                          20.Feb 2020
    vte-2.91.sh                          28.Dez 2018
    wifi-check.sh                       22.Jul 2019

    Sorry, war eine Woche weg.


    In der Zwischenzeit bin ich nur etwas weiter gekommen. Habe 4 script in eines gepackt, brachte aber nichts.

    Nach reboot alles ok. Log Info sagt geladen, Script funktioniert einwandfrei.

    Wenn ich mich mit Putty einlogge und sonst nichts mache, geht es nicht.

    Starte ich das Script in der Komandozeile, kommt Log Info, geladen, wenn ich jetzt Taster druecke /loslasse schickt es mail_alarmEin / Aus

    Log Info sagt Alarm Ein/Aus

    Stoppe ich das Script, geht es nicht mehr. Mit ps aux steht aber immer noch das ein_ausvonalarm.py läuft.

    Bin echt ratlos.

    Gruss

    gwaag


    Code
    root      1152  0.0  0.0      0     0 ?        I    12:46   0:01 [kworker/u2:0-events_unbound]
    root      1192  0.0  0.0      0     0 ?        I<   13:00   0:00 [kworker/0:2H-kblockd]
    root      1242  1.0  2.4  44580 10844 ?        Ssl  13:00   0:19 /usr/bin/python3 /home/pi/th/ein_ausvonalarm.py
    root      1267  0.0  1.4  12220  6284 ?        Ss   13:09   0:00 sshd: pi [priv]
    pi        1329  0.2  0.9  12220  4132 ?        R    13:09   0:02 sshd: pi@pts/0
    Code
    LOG_FILE
    
    
    Woche 44 Mi 28.10.2020 13:13:13 Reboot
    Woche 44 Mi 28.10.2020 13:15:59 Script geladen
    Woche 44 Mi 28.10.2020 13:16:29 Alarm EIN
    Woche 44 Mi 28.10.2020 13:16:37 Alarm AUS

    @_blackjack_,

    das nehm ich, mach Sinn.

    Code
     if testprocess and not (
            button.is_pressed and timewindow1_ok and timewindow2_ok
        ):
            ...



    @Rasp_Berlin


    das steht drin:

    Gruss

    gwaag

    aus.py is python script

    Zone1-4Morgen is basch scrip, also ohne Endung.

    Koenntest Du mit ev. sagen ob es in dieser Logik noch Klammern braucht, kenn mich da zuweng aus.

    Habe jetz4 scripte in eines geschmissen, daher brauce ich jetzt diese Logik.

    Code
    if not button.is_pressed and testprocess or not timewindow1_ok and testprocess or not timewindow2_ok and testprocess:

    Gruss

    und Danke

    gwaag

    Hallo Bernd666


    Danke fuer den Tipp mit dem logging.info.

    Habe es so eingebaut:

    Code
    logging.basicConfig(filename='/home/pi/th/Alarm.log', format='%(asctime)s %(message)s', datefmt = "Woche %V  %a   %d.%m.%Y  %H:%M:%S ", level=logging.INFO)
    logging.info('Anfang')
    
    sleep(2)
    
    def low(button):
        subprocess.run("/home/pi/th/aus.py") # Licht aus
        logging.info('Alarm AUS')  # Logeintrag

    Log sagt:

    Code
    Woche 42  So   18.10.2020  08:31:50  Reboot
    Woche 42  So   18.10.2020  08:32:24  Anfang
    Woche 42  So   18.10.2020  08:33:22  Alarm EIN
    Woche 42  So   18.10.2020  08:33:33  Alarm AUS


    Erst mit dieser Aenderung habe ich gesehen dass waehrend dem einloggen mit Putty das Licht kurz an und aus ging. ( Das was "aus.py" macht)

    Nach dem ich gesucht habe von wo das sonst noch her kommen kann, habe ich noch ein Script gefunden das etwas aehnliches macht.

    Nach dem ich das deaktiviert habe, funktioniert jetzt auch das ein_ausvonalarm.py wenn ich eingeloggt bin.

    D.h ich muss jetzt untersuchen wiso.


    Danke und gruss

    gwaag



    Script das ich deaktiviert habe und untersuchen muss:

    Bernd666


    Service ohne Auffaelligkeiten.



    pi@raspberrypi:~/th $ sudo systemctl status ein_ausvonalarm.service

    ● ein_ausvonalarm.service - ein_ausvonalarm Service

    Loaded: loaded (/lib/systemd/system/ein_ausvonalarm.service; enabled; vendor preset: enabled)

    Active: active (running) since Sat 2020-10-17 20:59:12 CEST; 30min ago

    Main PID: 1132 (python3)

    CGroup: /system.slice/ein_ausvonalarm.service

    └─1132 /usr/bin/python3 /home/pi/th/ein_ausvonalarm.py


    Okt 17 20:59:12 raspberrypi systemd[1]: Started ein_ausvonalarm Service.



    Gruss

    gwaag

    Habe gesehen dass mit sudo systemctl -f folgender eintrafg auf rot ist:


    ● dhcpcd.service loaded failed failed dhcpcd on all interfaces


    Einloggen per Putty und Wlan funktioniert aber ohne Problme-


    Wie muesen die files fuer dhcpd, wpa_ supplicant und interfaces genau aussehen? So richtig?


    Wie bringe ich die rote Meldung weg?


    gruss

    gwaag

    Hallo,

    habe gestern Abend nun die SD Karte mit Raspbian GNU/Linux 10 (buster) (5.4.51+) neu beschrieben und eingerichtet.

    Alle Scripte laufen wie zuvor, jedoch ist das Problem immer noch das gleiche.

    Einloggen mit Puyyt reicht, damit es nicht mehr geht, nur Putty verlasssen geht auch nicht, muss also reboot oder mittels eines Tasers heruntergefahren werden und neu gestartet werden, dnn geht es sofort wieder.

    Ich werde lansam verueckt:wallbash::wallbash::wallbash:.


    Wer hat noch eine Idee?

    gruss

    gwaag

    @ noisefloor,

    nein, nicht selbstkompilliert.


    Ausgabe bei mir:


    pi@raspberrypi:~/th $ ls -al /usr/local/bin/python3

    lrwxrwxrwx 1 root staff 9 Sep 15 2018 /usr/local/bin/python3 -> python3.6


    Demzufolge liegt es nicht an dem.

    Werde mal eine neue SD Karte mit allem neu aufsetzen, und schauen ob es dann geht.


    gruss

    gwaag