Ankündigung

Einklappen
Keine Ankündigung bisher.

RasPi: (CPU) Temperatur aufzeichnen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Was genau ist an Executor Plugin Bahnhof?
    Zuletzt geändert von bmx; 03.09.2021, 12:41.

    Kommentar


      #17

      Nachdem ich auf das Plugin aufmerksam gemacht worden bin. Danke bmx

      Zitat von Sipple Beitrag anzeigen
      Vorschlag für eine kleine Logik, schnell mal hinger... und tut was es soll:

      Code:
      #!/usr/bin/env python3
      # cputemp.py
      import subprocess
      cputemp = subprocess.run(['cat', '/sys/class/thermal/thermal_zone0/temp'], stdout=subprocess.PIPE)
      sh.cpu.temp(round(int(cputemp.stdout.decode('utf-8')) / 1000, 1))
      Ergebnis
      Error ''SmartHome' object has no attribute 'cpu'' while evaluating

      bei nur
      "sh.cpu.temp(round(int(cputemp.stdout.decode(' utf-8')) / 1000, 1))" --> selbes Ergebnis




      Der Code von Morg liefert:

      Error 'name 'subprocess' is not defined' while evaluating


      " sh.hauspi.freq(frq)" --> Error 'name 'frq' is not defined' while evaluating
      Zuletzt geändert von Maexle; 05.09.2021, 08:14.

      Kommentar


        #18
        Zitat von Maexle Beitrag anzeigen
        Error ''SmartHome' object has no attribute 'cpu'' while evaluating
        Das item "cpu.temp" hast Du in shNG angelegt?

        Kommentar


          #19
          Also ganz von vorne. Trennen wir es sauber in Einzelteile.

          1. Erstelle im Verzeichnis /usr/local/smarthome/items eine Textdatei mit z.B. dem Namen "cpustuff.yaml". Sorge dafür, dass die Rechte passen, z.B. :

          Code:
          Besitzer/Gruppe: smarthome/smarthome
          Berechtigungen: -rw-rw-rw-
          2. Kopiere in diese neue Datei folgende Zeilen, EXAKT so, inkl. der Einrückungen, und speichere die Datei:

          Code:
          cpu:
              temp:
                  type: num
                  database: yes
          3. Erstelle im Verzeichnis /usr/local/smarthome/logics eine Textdatei mit z.B. dem Namen "cpustuff.py". Sorge wieder dafür, dass die Rechte passen, Siehe 1.

          4. Kopiere in diese neue Datei folgende Zeilen, EXAKT so, inkl. der Einrückungen, und speichere die Datei:

          Code:
          #!/usr/bin/env python3
          # cpustuff.py
          
          import subprocess
          
          cputemp = subprocess.run(['cat', '/sys/class/thermal/thermal_zone0/temp'], stdout=subprocess.PIPE)
          sh.cpu.temp(round(int(cputemp.stdout.decode('utf-8')) / 1000, 1))
          5. Öffne die bereits existierende Datei /usr/local/smarthome/etc/logic.yaml und füge hinzu, EXAKT so, inkl. der Einrückungen:

          Code:
          CPU_Stuff:
              filename: cpustuff.py
              crontab: init
              cycle: 300
          6. Speichere die Datei und starte SHNG neu.

          7. Im Itembaum gibt es jetzt das Item "cpu.temp" (oder in der Langform, so wie es in Logiken referenziert wird: sh.cpu.temp).

          8. Das Item zeigt die Temperatur in °C mit einer Nachkommastelle, Update alle 300s, also 5min.

          9. Du willst keine Nachkommastelle? -> Ändere in /usr/local/smarthome/logics/cpustuff.py ganz unten rechts die "1" in "0".

          10. Du willst eine andere Zykluszeit? -> Ändere in /usr/local/smarthome/etc/logic.yaml im Abschnitt "CPU_Stuff:" den cycle Wert nach Belieben (Sekunden).

          Kommentar


            #20
            Sipple


            Vielen Dan für deine ausführliche Hilfe nun zeigt das Item (und die VISU) die Temperatur an.

            Was ich jedoch anmerken möchte:
            Ich habe die vorherigen "Programmzeilen" (z.B. von Morg) über den Browser im Admin-Interface eingegeben; nicht über die Textdatei per SSH.
            Auch deinen Code habe ich über das Admin-Interface eingegeben - um möglichst wenige Unterschiede zum vorherigen Code zu haben - als ich die "logic.yaml" über ssh mit nano logic.yaml geändert habe --> SHNG Neustart, waren keine Logiken mehr vorhanden --> ich denke nano zerschießt die Formatierung??

            Da du auf die Rechte aufmerksam gemacht hast:
            - die jetzt funktionierende "cpustuff.yaml" (über Admin-Interface erstellt) hat die Rechte:

            "-rw-rw-rw- 1 smarthome users 70 Sep 6 09:31 cpustuff.yaml"

            eine per Notepad++ erstellte:"raspi_temp.yaml" -rw-rw-r-- 1 smarthome smarthome 95 Sep 6 09:52 raspi_temp.yaml --> bearbeite ich diese Datei anschließend im Admin-Interface ändern sich die Rechte nicht.


            Auf jeden Fall funktioniert es jetzt


            Vielen Dank

            Kommentar


              #21
              Das passt schon.

              Kommentar

              Lädt...
              X