diff --git a/action.py b/action.py index 19c71b5..8b987dd 100644 --- a/action.py +++ b/action.py @@ -187,27 +187,40 @@ class cmd_cls(): class axis_cls(): def __init__(self) -> None: self.axis_queue = queue.Queue() + self.busy = False pass def axis_z(self, _distance, _time_via = -1): + while self.busy is True: + pass self.axis_queue.put(lambda: cmd.z(20, _distance, _time_via)) pass def axis_z2(self, _position, _time_via = -1): + while self.busy is True: + pass self.axis_queue.put(lambda: cmd.z2(20, _position, _time_via)) pass def axis_x(self, _distance, _time_via = -1): + while self.busy is True: + pass self.axis_queue.put(lambda: cmd.x(1, _distance, _time_via)) pass def axis_x2(self, _position, _time_via = -1): + while self.busy is True: + pass self.axis_queue.put(lambda: cmd.x2(1, _position, _time_via)) pass def pop(self): + self.busy = True while self.axis_queue.qsize() > 0: logger.info(f"axis cmd {self.axis_queue.qsize()}") self.axis_queue.get()() self.axis_queue.task_done() time.sleep(0.005) + self.busy = False pass def exec(self, _block:bool = True): + while self.busy is True: + pass if _block is True: self.pop() else: