From 765be6d54731f0d44870baedbf1f8f152981350e Mon Sep 17 00:00:00 2001 From: Havoc <2993167370@qq.com> Date: Tue, 13 May 2025 18:34:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9turn=5Fdegree=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E7=9A=84=E5=8F=82=E6=95=B0=E5=90=8D=E7=A7=B0=EF=BC=8C?= =?UTF-8?q?=E4=BB=8Erelative=E6=94=B9=E4=B8=BAabsolute=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=80=BB=E8=BE=91=E4=BB=A5=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E7=BB=9D=E5=AF=B9=E8=A7=92=E5=BA=A6=E6=97=8B=E8=BD=AC=E3=80=82?= =?UTF-8?q?=E6=AD=A4=E6=9B=B4=E6=94=B9=E6=8F=90=E9=AB=98=E4=BA=86=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E7=9A=84=E7=81=B5=E6=B4=BB=E6=80=A7=E5=92=8C=E5=8F=AF?= =?UTF-8?q?=E8=AF=BB=E6=80=A7=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- base_move/turn_degree.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/base_move/turn_degree.py b/base_move/turn_degree.py index 02f7740..e0759f8 100644 --- a/base_move/turn_degree.py +++ b/base_move/turn_degree.py @@ -1,7 +1,7 @@ import math import time -def turn_degree(ctrl, msg, degree=90, relative=True): +def turn_degree(ctrl, msg, degree=90, absolute=False): """ 结合里程计实现精确稳定的旋转指定角度 @@ -9,7 +9,7 @@ def turn_degree(ctrl, msg, degree=90, relative=True): ctrl: Robot_Ctrl 对象,包含里程计信息 msg: robot_control_cmd_lcmt 对象,用于发送命令 degree: 要旋转的角度,正值表示逆时针,负值表示顺时针,默认为90度 - relative: 是否相对于当前角度,默认为True + absolute: 是否绝对角度,默认为True 返回: Bool: 是否成功旋转到指定角度 @@ -21,10 +21,10 @@ def turn_degree(ctrl, msg, degree=90, relative=True): current_yaw = ctrl.odo_msg.rpy[2] # 计算目标朝向 - if relative: - target_yaw = current_yaw + target_rad - else: + if absolute: target_yaw = target_rad + else: + target_yaw = current_yaw + target_rad # 标准化目标角度到 [-pi, pi] 范围 if target_yaw > math.pi: