Hardware Connection fix
This commit is contained in:
+13
-3
@@ -11,7 +11,7 @@ class ArduinoCommunication(Thread):
|
||||
def __init__(self, port=cfg.port, baudrate=cfg.baudrate, timeout=cfg.comm_timeout):
|
||||
super().__init__()
|
||||
self.daemon = True # Thread schlie�t sich beim Programmende
|
||||
self.serial_conn = serial.Serial(port, baudrate, timeout=timeout)
|
||||
self.serial_conn = serial.Serial(port, baudrate, timeout=timeout)
|
||||
time.sleep(2) # Warten bis Arduino ready
|
||||
|
||||
self.command_queue = Queue()
|
||||
@@ -19,6 +19,9 @@ class ArduinoCommunication(Thread):
|
||||
self.running = Event()
|
||||
self.running.set()
|
||||
|
||||
def send_motion(self, radial_array):
|
||||
self.write(radial_array)
|
||||
|
||||
def run(self):
|
||||
while self.running.is_set():
|
||||
# 1. Befehle senden
|
||||
@@ -70,5 +73,12 @@ class ArduinoCommunication(Thread):
|
||||
|
||||
def stop(self):
|
||||
self.running.clear()
|
||||
self.join()
|
||||
self.serial_conn.close()
|
||||
try:
|
||||
self.join(timeout=0.5)
|
||||
except RuntimeError:
|
||||
pass
|
||||
if self.serial_conn and self.serial_conn.is_open:
|
||||
self.serial_conn.close()
|
||||
|
||||
def close(self):
|
||||
self.stop()
|
||||
Reference in New Issue
Block a user