threading Problem
Verfasst: Montag 27. Februar 2023, 19:01
Hallo,
ich bin neu hier und bastel gerade an meinem ersten Python/Pi Projekt. Es geht hauptsäachlich darum, 2 Motoren mit Hallsensoren so ca alle 10min eine vorher berechnete Anzahl Umdrehungen machen zu lassen. Nun bin ich gerade an der Stelle, wo die Motoren laufen und eben nach x Umdrehungen wieder stoppen oder langsamer werden sollen. Leider kann ich normal nicht gleichzeitig mitzählen und dden Motor laufen lassen. Ich denke, dazu brauch ich das Threading. Nun hab ich mich umgeschaut und verschiedene Anleitungen gelesen und versuche nun, ein Beispielskript zum laufen zu bekommen, um dann meine Steuerung zu bauen. Hier is jetzt das Problem, das Script läuft in Thonny einwandfrei, aber in der Shell auf dem Pi scheinbar nicht. Die Zeilen, die die Threads erzeugen sollen, erscheinen nicht, aber der print Befehl am Ende des Scripts wird ausgeführt. Ich habe Python 3.9 installiert, der Pi ist ein 3B.
Hier nun das script:
import time
import _thread
def thread_test(name, wait):
i = 0
while i <= 3:
time.sleep(wait)
print("Running %s\n" %name)
i = i + 1
print("%s has finished execution" %name)
if __name__ == "__main__":
_thread.start_new_thread (thread_test, ("First Thread", 1))
_thread.start_new_thread (thread_test, ("Second Thread", 2))
_thread.start_new_thread (thread_test, ("Third Thread", 3))
print("Los gehts")
Wo kann das Problem liegen? Ich als Anfänger weiss da nich richtig weiter.
Alternativ hab ich noch ein anderes Script mit dem Modul threading, aber das macht nur Fehlermeldung:
sunny@raspberrypi:~ $ python3 /home/sunny/ST/Threadtest.py
Traceback (most recent call last):
File "/home/sunny/ST/Threadtest.py", line 4, in <module>
class threadtester (threading.Thread):
AttributeError: module 'threading' has no attribute 'Thread'
Exception ignored in: <module 'threading' from '/home/sunny/ST/threading.py'>
AttributeError: module 'threading' has no attribute '_shutdown'
Is aber ein anderes Problem
Vielen Dank erstmal
Ed
ich bin neu hier und bastel gerade an meinem ersten Python/Pi Projekt. Es geht hauptsäachlich darum, 2 Motoren mit Hallsensoren so ca alle 10min eine vorher berechnete Anzahl Umdrehungen machen zu lassen. Nun bin ich gerade an der Stelle, wo die Motoren laufen und eben nach x Umdrehungen wieder stoppen oder langsamer werden sollen. Leider kann ich normal nicht gleichzeitig mitzählen und dden Motor laufen lassen. Ich denke, dazu brauch ich das Threading. Nun hab ich mich umgeschaut und verschiedene Anleitungen gelesen und versuche nun, ein Beispielskript zum laufen zu bekommen, um dann meine Steuerung zu bauen. Hier is jetzt das Problem, das Script läuft in Thonny einwandfrei, aber in der Shell auf dem Pi scheinbar nicht. Die Zeilen, die die Threads erzeugen sollen, erscheinen nicht, aber der print Befehl am Ende des Scripts wird ausgeführt. Ich habe Python 3.9 installiert, der Pi ist ein 3B.
Hier nun das script:
import time
import _thread
def thread_test(name, wait):
i = 0
while i <= 3:
time.sleep(wait)
print("Running %s\n" %name)
i = i + 1
print("%s has finished execution" %name)
if __name__ == "__main__":
_thread.start_new_thread (thread_test, ("First Thread", 1))
_thread.start_new_thread (thread_test, ("Second Thread", 2))
_thread.start_new_thread (thread_test, ("Third Thread", 3))
print("Los gehts")
Wo kann das Problem liegen? Ich als Anfänger weiss da nich richtig weiter.
Alternativ hab ich noch ein anderes Script mit dem Modul threading, aber das macht nur Fehlermeldung:
sunny@raspberrypi:~ $ python3 /home/sunny/ST/Threadtest.py
Traceback (most recent call last):
File "/home/sunny/ST/Threadtest.py", line 4, in <module>
class threadtester (threading.Thread):
AttributeError: module 'threading' has no attribute 'Thread'
Exception ignored in: <module 'threading' from '/home/sunny/ST/threading.py'>
AttributeError: module 'threading' has no attribute '_shutdown'
Is aber ein anderes Problem
Vielen Dank erstmal
Ed