From c493db818a0df92d186883adacab66aa1bd582da Mon Sep 17 00:00:00 2001 From: havoc420ubuntu <2993167370@qq.com> Date: Thu, 15 May 2025 15:22:26 +0000 Subject: [PATCH] refactor(base_move): improve rotation accuracy and adjust task execution - Enhance rotation feedback by printing current angle during and after rotation - Adjust angles and add target distance in task 1 execution - Modify stop method in BaseMsg class to use milliseconds for duration --- base_move/move_base_hori_line.py | 3 +++ task_1/task_1.py | 10 +++++----- utils/base_msg.py | 6 +++--- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/base_move/move_base_hori_line.py b/base_move/move_base_hori_line.py index eaa8aae..8fd1ecf 100644 --- a/base_move/move_base_hori_line.py +++ b/base_move/move_base_hori_line.py @@ -483,7 +483,10 @@ def arc_turn_around_hori_line(ctrl, msg, angle_deg=90, left=True, target_distanc if observe: print(f"旋转过程结束,当前速度: [{current_v:.3f}, 0, {current_w:.3f}]") + print(f'{math.degrees(ctrl.odo_msg.rpy[2]):.2f}') ctrl.base_msg.stop() + if observe: + print(f'{math.degrees(ctrl.odo_msg.rpy[2]):.2f}') # 记录停止前的角度 pre_stop_yaw = ctrl.odo_msg.rpy[2] diff --git a/task_1/task_1.py b/task_1/task_1.py index 05a2fbd..c875957 100644 --- a/task_1/task_1.py +++ b/task_1/task_1.py @@ -13,15 +13,15 @@ def run_task_1(ctrl, msg): # v2 print('😺 task 1 - 1') - arc_turn_around_hori_line(ctrl, msg, angle_deg=70, left=False, observe=observe) - + arc_turn_around_hori_line(ctrl, msg, angle_deg=85, left=False, observe=observe) + print('😺 task 1 - 2') move_to_hori_line(ctrl, msg, target_distance=1, observe=observe) - return - print('😺 task 1 - 3') - arc_turn_around_hori_line(ctrl, msg, angle_deg=160, left=True, observe=observe) + arc_turn_around_hori_line(ctrl, msg, angle_deg=180, target_distance=0.4, left=True, observe=observe) + + return print('😺 task 1 - 4') move_to_hori_line(ctrl, msg, observe=observe) diff --git a/utils/base_msg.py b/utils/base_msg.py index 3e93298..6f27025 100644 --- a/utils/base_msg.py +++ b/utils/base_msg.py @@ -13,13 +13,13 @@ class BaseMsg: self.ctrl.Send_cmd(self.msg) self.ctrl.Wait_finish(0, 0) - def stop(self, wait_time=1): + def stop(self, wait_time=200): self.msg.mode = 11 self.msg.gait_id = 26 self.msg.vel_des = [0, 0, 0] - self.msg.duration = wait_time * 1000 + self.msg.duration = wait_time self.msg.life_count += 1 self.ctrl.Send_cmd(self.msg) if wait_time: - time.sleep(wait_time) + time.sleep(wait_time / 1000) \ No newline at end of file