Refactor main execution flow by enabling task 2.5 with arrow direction detection and adjusting task 3 back execution. Update task 2.5 parameters for distance and speed, and modify task 5's horizontal line movement distance. Set observe flag to False in track detection functions for consistency.
This commit is contained in:
parent
e0961fcdd9
commit
3b2fc33bf7
22
main.py
22
main.py
@ -17,9 +17,8 @@ from utils.robot_control_cmd_lcmt import robot_control_cmd_lcmt
|
||||
from utils.robot_control_response_lcmt import robot_control_response_lcmt
|
||||
from utils.localization_lcmt import localization_lcmt
|
||||
from utils.image_raw import ImageProcessor
|
||||
# from utils.marker_client import MarkerRunner
|
||||
# from utils.marker_client import MarkerRunner
|
||||
from utils.base_msg import BaseMsg
|
||||
# from utils.marker_client import MarkerRunner
|
||||
|
||||
from task_1.task_1 import run_task_1
|
||||
from task_2_5.task_2_5 import run_task_2_5
|
||||
@ -30,11 +29,10 @@ from task_2_5.task_2_5 import run_task_2_5, run_task_2_5_back
|
||||
from task_4.task_4 import run_task_4, run_task_4_back
|
||||
from task_test.task_left_line import run_task_test
|
||||
from task_5.task_5 import run_task_5
|
||||
# from task_test.go_to_xy_example import run_go_to_xy_example
|
||||
|
||||
|
||||
from base_move.turn_degree import turn_degree, turn_degree_v2
|
||||
from base_move.go_to_xy import go_to_y_v2
|
||||
|
||||
from utils.log_helper import info
|
||||
|
||||
pass_marker = True
|
||||
|
||||
@ -50,14 +48,13 @@ def main():
|
||||
Ctrl.base_msg.stop() # BUG 垃圾指令 for eat
|
||||
|
||||
# time.sleep(100) # TEST,
|
||||
# run_task_1(Ctrl, msg)
|
||||
run_task_1(Ctrl, msg)
|
||||
|
||||
# arrow_direction = run_task_2(Ctrl, msg, xy_flag=False)
|
||||
arrow_direction = run_task_2(Ctrl, msg, xy_flag=False)
|
||||
# arrow_direction = 'right' # TEST
|
||||
|
||||
# print(f"arrow_direction: {arrow_direction}")
|
||||
# run_task_2_5(Ctrl, msg, direction=arrow_direction)
|
||||
|
||||
arrow_direction = 'right' # TEST
|
||||
info(f"识别到箭头方向: {arrow_direction}", "info")
|
||||
run_task_2_5(Ctrl, msg, direction=arrow_direction)
|
||||
|
||||
if arrow_direction == 'left':
|
||||
run_task_4(Ctrl, msg)
|
||||
@ -68,8 +65,7 @@ def main():
|
||||
run_task_5(Ctrl, msg, direction=arrow_direction)
|
||||
|
||||
if arrow_direction == 'left':
|
||||
# run_task_3_back(Ctrl, msg)
|
||||
pass
|
||||
run_task_3_back(Ctrl, msg)
|
||||
else:
|
||||
run_task_4_back(Ctrl, msg)
|
||||
|
||||
|
@ -26,12 +26,12 @@ def run_task_2_5(Ctrl, msg, direction='left'):
|
||||
Ctrl,
|
||||
msg,
|
||||
angle_deg=90 if direction == 'left' else -90,
|
||||
target_distance=0.3,
|
||||
target_distance=0.2,
|
||||
detect_func_version=3,
|
||||
observe=observe,
|
||||
)
|
||||
|
||||
go_straight(Ctrl, msg, distance=0.2, speed=0.5, observe=observe)
|
||||
go_straight(Ctrl, msg, distance=0.1, speed=0.5, observe=observe)
|
||||
|
||||
section('任务2.5-2:第二次旋转', "移动")
|
||||
|
||||
|
@ -495,7 +495,7 @@ def run_task_3(ctrl, msg):
|
||||
info('开始执行任务3...', "启动")
|
||||
|
||||
turn_degree_v2(ctrl, msg, 90, absolute=True)
|
||||
go_lateral(ctrl, msg, distance=0.2, speed=0.1, observe=True)
|
||||
# go_lateral(ctrl, msg, distance=0.2, speed=0.1, observe=True)
|
||||
|
||||
section('任务3-1:up', "开始")
|
||||
pass_up_down(ctrl, msg)
|
||||
@ -520,3 +520,6 @@ def run_task_3(ctrl, msg):
|
||||
time.sleep(3)
|
||||
info("完成原地站立", "站立")
|
||||
|
||||
|
||||
def run_task_3_back(ctrl, msg):
|
||||
return
|
@ -244,7 +244,7 @@ def run_task_5(ctrl, msg, direction='left', observe=False):
|
||||
|
||||
# section('任务5-4:返回', "移动")
|
||||
go_straight(ctrl, msg, distance=-1, speed=0.5, observe=observe)
|
||||
move_to_hori_line(ctrl, msg, target_distance=1.2, observe=observe)
|
||||
move_to_hori_line(ctrl, msg, target_distance=1.3, observe=observe)
|
||||
|
||||
section('任务5-5:转弯', "转弯")
|
||||
turn_degree_v2(ctrl, msg, degree=90)
|
||||
|
@ -817,6 +817,7 @@ def detect_horizontal_track_edge_v3(image, observe=False, delay=1000, save_log=T
|
||||
edge_point: 赛道前方边缘点的坐标 (x, y)
|
||||
edge_info: 边缘信息字典
|
||||
"""
|
||||
observe = False
|
||||
# 如果输入是字符串(文件路径),则加载图像
|
||||
if isinstance(image, str):
|
||||
img = cv2.imread(image)
|
||||
@ -1418,6 +1419,7 @@ def detect_left_side_track(image, observe=False, delay=1000, save_log=True):
|
||||
返回:
|
||||
tuple: (线信息字典, 最佳跟踪点)
|
||||
"""
|
||||
observe = False
|
||||
# 如果输入是字符串(文件路径),则加载图像
|
||||
if isinstance(image, str):
|
||||
img = cv2.imread(image)
|
||||
|
Loading…
x
Reference in New Issue
Block a user