Refactor task 3 execution flow by enabling key movement commands and updating message parameters for improved control. Add section handling for task phases to enhance clarity and organization.
This commit is contained in:
		
							parent
							
								
									0979d10415
								
							
						
					
					
						commit
						74571e9c92
					
				@ -494,25 +494,25 @@ def run_task_3(ctrl, msg):
 | 
			
		||||
    section('任务3:上下坡', "启动")
 | 
			
		||||
    info('开始执行任务3...', "启动")
 | 
			
		||||
 | 
			
		||||
    # turn_degree_v2(ctrl, msg, 90, absolute=True)
 | 
			
		||||
    # go_lateral(ctrl, msg, distance=0.2, speed=0.1, observe=True)  # TEST
 | 
			
		||||
    turn_degree_v2(ctrl, msg, 90, absolute=True)
 | 
			
		||||
    go_lateral(ctrl, msg, distance=0.2, speed=0.1, observe=True)  # TEST
 | 
			
		||||
 | 
			
		||||
    # section('任务3-1:up', "开始")
 | 
			
		||||
    # pass_up_down(ctrl, msg)
 | 
			
		||||
    section('任务3-1:up', "开始")
 | 
			
		||||
    pass_up_down(ctrl, msg)
 | 
			
		||||
 | 
			
		||||
    turn_degree_v2(ctrl, msg, 90, absolute=True)
 | 
			
		||||
    center_on_dual_tracks(ctrl, msg, max_time=15, max_deviation=10.0, observe=False)
 | 
			
		||||
 | 
			
		||||
    # section('任务3-2:yellow stop', "开始")
 | 
			
		||||
    section('任务3-2:yellow stop', "开始")
 | 
			
		||||
    go_until_yellow_area(ctrl, msg, yellow_ratio_threshold=0.15, speed=0.3)
 | 
			
		||||
    
 | 
			
		||||
    # 原地站立3秒
 | 
			
		||||
    section("原地站立3秒", "站立")
 | 
			
		||||
    msg.mode = 11  # Locomotion模式
 | 
			
		||||
    msg.gait_id = 26  # 自变频步态
 | 
			
		||||
    msg.duration = 0  # wait next cmd
 | 
			
		||||
    msg.step_height = [0.06, 0.06]  # 抬腿高度
 | 
			
		||||
    msg.vel_des = [0, 0, 0]  # 零速度,原地站立
 | 
			
		||||
    msg.mode = 12
 | 
			
		||||
    msg.gait_id = 0
 | 
			
		||||
    msg.duration = 0
 | 
			
		||||
    msg.step_height = [0.06, 0.06]
 | 
			
		||||
    msg.vel_des = [0, 0, 0]
 | 
			
		||||
    msg.life_count += 1
 | 
			
		||||
    ctrl.Send_cmd(msg)
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
@ -16,6 +16,7 @@ from utils.detect_track import detect_horizontal_track_edge
 | 
			
		||||
from utils.detect_dual_track_lines import detect_dual_track_lines
 | 
			
		||||
from base_move.move_base_hori_line import calculate_distance_to_line
 | 
			
		||||
from task_4.pass_bar import pass_bar
 | 
			
		||||
from base_move.center_on_dual_tracks import center_on_dual_tracks
 | 
			
		||||
 | 
			
		||||
# 创建本模块特定的日志记录器
 | 
			
		||||
logger = get_logger("任务4")
 | 
			
		||||
@ -48,7 +49,7 @@ def run_task_4_back(ctrl, msg):
 | 
			
		||||
        image_processor: 可选的图像处理器实例
 | 
			
		||||
    """
 | 
			
		||||
    turn_degree_v2(ctrl, msg, degree=-90, absolute=True)
 | 
			
		||||
    # center_on_dual_tracks(ctrl, msg, max_time=30, observe=False, stone_path_mode=False)
 | 
			
		||||
    center_on_dual_tracks(ctrl, msg, max_time=30, observe=False)
 | 
			
		||||
 | 
			
		||||
    # 向右移动0.5秒
 | 
			
		||||
    section('任务4-回程:向右移动', "移动")
 | 
			
		||||
 | 
			
		||||
@ -19,6 +19,8 @@ from base_move.move_base_hori_line import (
 | 
			
		||||
from base_move.center_on_dual_tracks import center_on_dual_tracks
 | 
			
		||||
# from base_move.follow_dual_tracks import follow_dual_tracks
 | 
			
		||||
 | 
			
		||||
SLEEP_TIME = 3000
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def go_straight_to_horizontal_line_with_qr(ctrl, msg, target_distance=0.5, speed=0.5, 
 | 
			
		||||
                                           max_distance=10, detect_func_version=2,
 | 
			
		||||
@ -210,7 +212,6 @@ def run_task_5(ctrl, msg, direction='left', observe=False):
 | 
			
		||||
    """
 | 
			
		||||
    走向卸货
 | 
			
		||||
    """
 | 
			
		||||
    center_on_dual_tracks(ctrl, msg, max_time=15, max_deviation=10.0, observe=False)
 | 
			
		||||
    section('任务5-1:直线移动并扫描二维码', "移动")
 | 
			
		||||
    
 | 
			
		||||
    # 最大移动距离为8米
 | 
			
		||||
@ -238,22 +239,22 @@ def run_task_5(ctrl, msg, direction='left', observe=False):
 | 
			
		||||
        move_to_hori_line(ctrl, msg, target_distance=2, observe=observe, detect_func_version=4)
 | 
			
		||||
 | 
			
		||||
    section('任务5-3:卸货', "卸货")
 | 
			
		||||
    ctrl.base_msg.lie_down(wait_time=3000)
 | 
			
		||||
    ctrl.base_msg.lie_down(wait_time=SLEEP_TIME)
 | 
			
		||||
    ctrl.base_msg.stand_up()
 | 
			
		||||
 | 
			
		||||
    section('任务5-4:返回', "移动")
 | 
			
		||||
    go_straight(ctrl, msg, distance=-1, speed=0.5, observe=observe)
 | 
			
		||||
    move_to_hori_line(ctrl, msg, target_distance=1.3, observe=observe)
 | 
			
		||||
    move_to_hori_line(ctrl, msg, target_distance=1.35, observe=observe)
 | 
			
		||||
 | 
			
		||||
    section('任务5-5:转弯', "转弯")
 | 
			
		||||
    turn_degree_v2(ctrl, msg, degree=90)
 | 
			
		||||
    go_straight(ctrl, msg, distance=1.2, speed=0.5, observe=observe)
 | 
			
		||||
    go_straight(ctrl, msg, distance=1.2, speed=0.6, observe=observe)
 | 
			
		||||
 | 
			
		||||
    section('任务5-6:转弯', "转弯")
 | 
			
		||||
    arc_turn_around_hori_line(ctrl, msg, angle_deg=-90, target_distance=0.3, observe=observe)
 | 
			
		||||
 | 
			
		||||
    section('任务5-5:上货', "卸货")
 | 
			
		||||
    ctrl.base_msg.lie_down(wait_time=3000)
 | 
			
		||||
    ctrl.base_msg.lie_down(wait_time=SLEEP_TIME)
 | 
			
		||||
    ctrl.base_msg.stand_up()
 | 
			
		||||
 | 
			
		||||
    section('任务5-7:返回', "移动")
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user