From 3ccc49d6cf0aa8060209bdebdefb900dc4cc6ab8 Mon Sep 17 00:00:00 2001 From: ywb <347742090@qq.com> Date: Thu, 28 May 2026 15:22:27 +0800 Subject: [PATCH] - --- agv_app/utils/mission_executor.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/agv_app/utils/mission_executor.py b/agv_app/utils/mission_executor.py index b591eb6..ec531fd 100644 --- a/agv_app/utils/mission_executor.py +++ b/agv_app/utils/mission_executor.py @@ -253,6 +253,7 @@ class MissionExecutorV3: has_back = pr > 0 and MissionExecutorV3._has_machine(grid, pr - 1, c) if not has_front and not has_back: + self._log(f"📍 点位 ({pr},{c}) → 空位") pi += 1 continue @@ -522,18 +523,17 @@ class MissionExecutorV3: # ==================== 二维码扫描 ==================== - def _wait_arm_ready(self, target_angles: list, timeout: float = 10.0, tolerance: float = 3.0) -> bool: + def _wait_arm_ready(self, target_angles: list, timeout: float = 15.0, tolerance: float = 2.0) -> bool: """等待机械臂稳定到目标角度(±tolerance 度),超时返回 False""" if not self.arm_client: return True deadline = time.time() + timeout while time.time() < deadline: try: - ok, current_rad = self.arm_client.get_angles() - if ok and current_rad and len(current_rad) >= 6: - # get_angles() 返回弧度,target_angles 是角度,需转换后比较 - current_deg = [math.degrees(a) for a in current_rad] - if all(abs(current_deg[i] - target_angles[i]) < tolerance for i in range(6)): + ok, current = self.arm_client.get_angles() + if ok and current and len(current) >= 6: + # get_angles() 返回角度(度),与 target_angles 直接比较 + if all(abs(current[i] - target_angles[i]) < tolerance for i in range(6)): return True except Exception: pass