From 97dd5a22dce35bfad01ce4871e75301d174dcfcf Mon Sep 17 00:00:00 2001 From: havoc420ubuntu <2993167370@qq.com> Date: Sat, 17 May 2025 03:39:27 +0000 Subject: [PATCH] =?UTF-8?q?refactor(task):=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=89=A7=E8=A1=8C=E6=B5=81=E7=A8=8B=E5=92=8C=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 move_base_hori_line.py 中添加了返回中间状态的逻辑,提高了代码的可扩展性 - 优化了 QR 码扫描的处理流程,增强了代码的鲁棒性 - 在 task_1.py 中调整了任务 1 的执行流程,缩短了模拟装货的等待时间 --- base_move/move_base_hori_line.py | 11 +++++++---- task_1/task_1.py | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/base_move/move_base_hori_line.py b/base_move/move_base_hori_line.py index 60ec019..c5571d6 100644 --- a/base_move/move_base_hori_line.py +++ b/base_move/move_base_hori_line.py @@ -347,6 +347,10 @@ def arc_turn_around_hori_line(ctrl, msg, angle_deg=90, left=True, target_distanc bool或元组: 如果scan_qrcode为False,返回bool表示是否成功完成操作; 如果scan_qrcode为True,返回(bool, str)元组,表示(是否成功完成操作, QR码扫描结果) """ + + # 返回此任务的中间状态 + res = {} + # 启动异步QR码扫描(如果需要) qr_result = None if scan_qrcode: @@ -388,16 +392,15 @@ def arc_turn_around_hori_line(ctrl, msg, angle_deg=90, left=True, target_distanc camera_height = 0.355 # 单位: 米 r = calculate_distance_to_line(edge_info, camera_height, observe=observe) - - # 减去目标距离 - r -= target_distance - if r is None: print("无法计算到横向线的距离,停止动作") if scan_qrcode: ctrl.image_processor.stop_async_scan() return False, qr_result return False + + # 减去目标距离 + r -= target_distance if observe: print(f"当前距离: {r:.3f}米") diff --git a/task_1/task_1.py b/task_1/task_1.py index 4af1c5b..af550d7 100644 --- a/task_1/task_1.py +++ b/task_1/task_1.py @@ -58,7 +58,7 @@ def run_task_1(ctrl, msg): # move_to_hori_line(ctrl, msg, target_distance=0.6, observe=observe) print('😺 task 1 - 5 休眠,模拟装货') - ctrl.base_msg.lie_down(wait_time=5000) + ctrl.base_msg.lie_down(wait_time=3000) # TODO 比赛时改成 5s # 站起来 ctrl.base_msg.stand_up()