Variabel eines Programms importieren

  • Hallo,


    kannst du das folgende Programm mal kurz ausführen lassen und dabei darauf achteten, dass sich der Sensorabstand verändert? Ich setze das updaten mal auf 2 Sekunden, dass es dir das Terminal nicht so zumüllt. Sollte dir Python Listen ausgeben, die mehr wie zwei Werte enthalten, dann versuche mal das zweite Skript das ich darunter poste.

    Zu dem Fehler beim schließen kann vielleicht jemand anders etwas sagen. Ich vermute dass das mit der kurzen Update-Zeit zusammenhängt und man muss die 'after'-Funktion eventuell vor dem schließen beenden?


    Wenn die Liste '[]' mit der Zeit immer mehr Einträge enthält, dann bitte folgendes Skript testen:



    Ist natürlich wieder alles ungetestet, da ich hier keine Möglichkeit habe.


    Grüße

    Dennis

    ... ob's hinterm Horizont wirklich so weit runter geht oder ob die Welt vielleicht doch gar keine Scheibe ist?

  • Das erste Skript hat genau das gemacht was du sagtest. Es kam eine Liste wo immer mehr Werte der Abstandsmessung kam. Die Werte stimmen auch hab nachgemessen. Es kam hier auch keine Fehlermeldung

    Das zweite lies sich leider nicht starten, aber es wurde einmal gemessen

    Code
    [6.48, 39.0]
    Traceback (most recent call last):
      File "/home/pi/lcd/forumhilfe.py", line 35, in <module>
        main()
      File "/home/pi/lcd/forumhilfe.py", line 31, in main
        app.read_sensors()
      File "/home/pi/lcd/forumhilfe.py", line 22, in read_sensors
        self.distance_left.configure(text = f'Die Entfernung beträgt {SENSOR_VALUE[0]} cm')
    NameError: name 'SENSOR_VALUE' is not defined
  • Hallo,


    okay, sorry da habe ich nicht alles richtig geändert. Ändere im zweiten Code alle 'SENSOR_VALUE' in 'sensor_value'. Das müssten nur noch zwei Stück sein.


    Grüße

    Dennis

    ... ob's hinterm Horizont wirklich so weit runter geht oder ob die Welt vielleicht doch gar keine Scheibe ist?

  • Das freut mich.


    Denk daran, dass deine Sensorwerte "nur" alle 2 Sekunden geupdatet werden. Wenn dir das zu langsam ist, kannst du in der Zeile self.update_distance = self.after(2000, self.read_sensors) mit dem Wert '2000' spielen. Dieser gibt in Millisekunden an, in welchem Abstand die Funktion 'read_sensors' aufgerufen wird und damit dann auch deine Werte aktualisiert.


    Viel Spass

    Dennis

    ... ob's hinterm Horizont wirklich so weit runter geht oder ob die Welt vielleicht doch gar keine Scheibe ist?

  • Hallo Dennis89 ich hätte noch eine kleine frage wüsstest du wie man das GUI bzw die Schriftart größer macht?

  • Hi,


    ich bräuchte nochmal eure Hilfe....


    Bei einem programmier Versuch hab ich mir den Raspberry zerschossen und musste ihn komplett neu einrichten.

    Dadurch ging auch das Programm von Dennis89 verloren. Ich habe es gesichert aber bei dem versuch es einfach wieder auf dem neuem Raspberry zu starten kam folgender Fehlercode:

    Code
    >>> %Run Spreader.py
    Traceback (most recent call last):
      File "/home/pi/Spreader.py", line 33, in <module>
        if _name_ == '_main_':
    NameError: name '_name_' is not defined
    >>> /usr/lib/python3/dist-packages/gpiozero/input_devices.py:997: DistanceSensorNoEcho: no echo received
      warnings.warn(DistanceSensorNoEcho('no echo received'))

    Ich kann diesen nicht genau deuten....

    Muss ich noch irgendwas installieren damit der Code gelesen werden kann?

    Danke für eure Hilfe!