Hallo Zusammen,
ich habe ein script was mir die geschwindigkeit anzeigen lässt als tachoanzeige.
Python
# /home/pi/App/TachoAnzeigeFertig.py
import time
from tkinter import *
from RPi import GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.IN)
impuls = 0
wegZeit = 1.89 # 2.1 /4=0.525 * 3.6=1.89
def Interrupt(channel):
global impuls
if GPIO.input(11):
impuls += 1
GPIO.add_event_detect(11, GPIO.RISING, callback=Interrupt, bouncetime = 50)
# bouncetime kleiner Einstellen für genauere Ergebnisse ,
# Problem: kann zu großen abweichungen kommen Falls Flanken nicht erkannt werden.
def getSpeed():
global impuls
speed = (impuls * wegZeit)
speed = round(speed, 0)
#print(speed) Fehlerfeststellung
#print(impuls) Fehlerfeststellung
impuls = 0
return speed
class Pointer:
def __init__(self, canvas):
self.canvas = canvas
self.id = self.canvas.create_line(100, 100, 150, 200, width=4, fill="black")
def read(self):
self.canvas.delete(self.id)
x = getSpeed() / 5 * 50 + 37.5
self.id = self.canvas.create_line(x, 100, 150, 200, width=4, fill="black")
#print(x) Fehlerfeststellung
class Speedometer:
def __init__(self):
self.window = tkinter.Tk()
self.window.title("TachoAnzeige")
self.canvas = tkinter.Canvas(master=self.window,
width=300, height=200,
bg="white")
img = tkinter.PhotoImage(file="tacho.gif")
self.canvas.create_image(0, 0, anchor=NW, image=img)
self.pointer = Pointer(self.canvas)
self.canvas.pack()
for i in range(7):
self.canvas.create_text(37.5*(i+1), 100, text=str(i*5))
def start(self):
self.run()
self.window.mainloop()
def run(self):
self.pointer.read()
self.window.after(500, self.run)
Speedometer().start()
Alles anzeigen
Dieses ist in diesem Pfad gespeichert: /home/pi/App/TachoAnzeige.py
Dieses möchte ich nun per Autostart starten lassen. ich haben schon viele Themen gelesen über autostart uaf dieser Plattform und im Internet.
Habe auch vieles ausprobiert wie in diesem Thema beschrieben ist: Automatisches Starten von Scripte / Programme ( Autostart )
aber es funktioniert nichst. Ich bekomme das Programm auch nicht über das Terminal gesartet.
Was kann ich tun damit es funktioniert?
MfG Tim