rrdtool installieren für Wetterstation (für Python3)

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen

    Ich habe ein Problem mit meinem Raspberry pi 4 der trotz mit

    Code
    sudo apt-get install rrdtool

    installiertem rrdtool den befehl import rrdtool nicht nimmt.

    Mein Plan ist eine Wetterstation zu bauen aber ich kann keine echte Alternative zu rrdtool finden. ich glaube nämlich das es am pi4 liegt.

    mein cod sieht bis jetzt so aus. ohne den rrdtool part funktioniert das Programm. Hat irgendjemand Erfahrungen mit dem pi4 und rrd tool oder weiß jemand woran das liegt?

    ich wäre auch bereit für eine Fertigungslösung wenn jemand eine kennt

    das ist die fehlermedung

    pi@raspberrypi:~ $ /home/pi/Desktop/Wetterstation/TEST.py

    Traceback (most recent call last):

    File "/home/pi/Desktop/Wetterstation/TEST.py", line 5, in <module>

    import rrdtool

    ModuleNotFoundError: No module named 'rrdtool'


    wenn ich erneut versuche das rrdtool zu installieren passiert dass:


    pi@raspberrypi:~ $ sudo apt-get install rrdtool

    Paketlisten werden gelesen... Fertig

    Abhängigkeitsbaum wird aufgebaut.

    Statusinformationen werden eingelesen.... Fertig

    rrdtool ist schon die neueste Version (1.7.1-2).

    Das folgende Paket wurde automatisch installiert und wird nicht mehr benötigt:

    python3-thonny

    Verwenden Sie »sudo apt autoremove«, um es zu entfernen.

    0 aktualisiert, 0 neu installiert, 0 zu entfernen und 191 nicht aktualisiert.


    Schöne Grüße

    und Danke

    PS: Keine Ahnung ob dass das Richtige Unterthema ist

  • rrdtool installieren für Wetterstation (für Python3)? Schau mal ob du hier fündig wirst!

    • Offizieller Beitrag

    Hallo lukas12,

    willkommen im Forum!

    Ich habe es hier gerne etwas ordentlich, was Thementitel und Forenbereich betrifft. Deshalb sieh mal hier als Anregung: Wie frage ich nach Hilfe? ;)

    //Edit

    Python Module installiert man üblicherweise mit pip und speziell Module für Python 3 mit pip3.

    Also versuchs mal mit pip3 install rrdtool.

  • Du solltest den Dateiname inklusive Pfad, so wie er dort in den "-Zeichen steht, in eine Variable schreiben und die Variable dann nehmen. Dann hast du nur eine Stelle in deinem Code (meist oben bei den Definitionen) die du ändern musst.

    Glaube ersetzt kein Wissen

  • danke hyle

    pip3 install rrdtool hat funktioniert

    leider kommt trotzdem keine Daten bei der Datenbank an. Die mit

    Code
    rrdtool graph /home/pi/Desktop/Wetterstation/bild/tempweek.png \
      -s 'now - 1 week' -e 'now' \
      DEF:temp0=/home/pi/Desktop/Wetterstation/temparatur.rrd:temp0:AVERAGE \
      LINE2:temp0#0000FF:Außen
    "GPRINT:temp0last:%.1lf °C" \

    erstellte Diagramm bleibt leer.

    Die Datenbank habe ich so erstellt.

    Code
    rrdtool create /home/pi/Desktop/Wetterstation/temparatur.rrd --step 60 \                  
    DS:temp0:GAUGE:1200:-40:80 \
    RRA:AVERAGE:0.5:1:14400 \
    RRA:MIN:0.5:96:3600 \
    RRA:MAX:0.5:96:3600 \
    RRA:AVERAGE:0.5:96:3600

    Mein Python script sieht so aus

    Wenn ich eine Grafik erstellen will kommt das.

    Code
    pi@raspberrypi:~ $ /home/pi/Desktop/Wetterstation/TemparaturGrafikErstellenweek.sh
    481x155
    /home/pi/Desktop/Wetterstation/TemparaturGrafikErstellenweek.sh: Zeile 6: GPRINT:temp0last:%.1lf °C: Kommando nicht gefunden.
  • Ich habe es hier gerne etwas ordentlich, was Thementitel und Forenbereich betrifft. Deshalb sieh mal hier als Anregung: Wie frage ich nach Hilfe? ;)

    lukas12 das Thema sollte Dein Problem beschreiben. "Raspberry pi 4" ist zu allgemein und deshalb nichtssagend, das wollte hyle Dir u.a. sagen. Auch ist Dein Problem nicht speziell für Raspberry Pi 4. Ändere Dein Thema doch bitte in z.B. "rrdtool installieren für Wetterstation".

    Das geht mit dem Button und "Erweitert" oben rechts.

    Schönen Gruß, kle

  • Tell Danke

    Ich hab jetzt

    Code
    rrdtool graph /home/pi/Desktop/Wetterstation/bild/tempweek.png \
      -s 'now - 1 week' -e 'now' \
      DEF:temp0=/home/pi/Desktop/Wetterstation/temparatur.rrd:temp0:AVERAGE \
      LINE1:temp0#0000FF:Außen \
    "GPRINT:temp0 last:%.1lf °C" \

    leider funktioniert es immer noch nicht

    Code
    pi@raspberrypi:~ $ /home/pi/Desktop/Wetterstation/TemparaturGrafikErstellenweek.sh
    ERROR: undefined vname temp0 last
  • bombom ups hab ich gar nicht gesehen:wallbash::danke_ATDE:

    Danke

    leider hab ich noch ein anderes problem. Mein Cod seiht jetzt so aus.

    Wenn ich ihn ausführe passiert dass

    Code
    pi@raspberrypi:~ $ /home/pi/Desktop/Wetterstation/TEST.py
    The temperature is 20.875 celsius
    Traceback (most recent call last):
      File "/home/pi/Desktop/Wetterstation/TEST.py", line 15, in <module>
        "/home/pi/Desktop/Wetterstation/temparatur.rrd" % (os.path.dirname(os.path.abspath(__file__))),
    TypeError: not all arguments converted during string formatting
  • Die Zeilen mit "/home/pi... und temp0) müssen eingerückt werden, also 2x4 Leerzeichen.

    Wie ich schon in #4 schrieb, solltest du den Dateinamen in eine Variable packen. Dann kannst du aus den drei Zeilen 14-16 eine kurze machen.

    Glaube ersetzt kein Wissen

  • bombom

    Hat leider nicht geholfen

    Code
    pi@raspberrypi:~ $ /home/pi/Desktop/Wetterstation/TEST.py
    The temperature is 20.875 celsius
    Traceback (most recent call last):
      File "/home/pi/Desktop/Wetterstation/TEST.py", line 15, in <module>
        "/home/pi/Desktop/Wetterstation/temparatur.rrd" % (os.path.dirname(os.path.abspath(__file__))),
    TypeError: not all arguments converted during string formatting

    mit in Variable packen hast du das so gemeint?

    Einmal editiert, zuletzt von lukas12 (30. Oktober 2019 um 17:48)

  • Glaube ersetzt kein Wissen

  • bombom

    Danke geht jedoch auch nicht

    Code
    pi@raspberrypi:~ $ /home/pi/Desktop/Wetterstation/TEST.py
    The temperature is 20.812 celsius
    Traceback (most recent call last):
      File "/home/pi/Desktop/Wetterstation/TEST.py", line 11, in <module>
        rrdtool.update(Wetter_db,temp0)
    TypeError: Argument 1 must be str or a list of str
  • Hallo,

    So wie ich das verstanden hab ja

    Wo hast du das denn so verstanden bzw. woran machst du fest, dass `temp0` ein String ist?

    (Hint: ist es nicht. a) würdest du dann die Fehlermeldung nicht bekommen und b) warum soll der W1ThermSensor eine Zahl als String liefern?).

    Wenn man den Typ eines Variablen nicht kennt, kann man sich diesen mit `type` anzeigen lassen.

    Gruß, noisefloor

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!