# prometheus_competition **Repository Path**: saumonk/prometheus_competition ## Basic Information - **Project Name**: prometheus_competition - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-06-14 - **Last Updated**: 2024-07-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 一、飞行避障比赛编译 ## 1.1 编译common模块 ```bash catkin_make --source Modules/common --build build/common ``` ## 1.2 编译experiment模块 ```bash catkin_make --source Experiment/sensor/livox_ros_driver2 --build build/sensor/livox_ros_driver2 catkin_make --source Experiment/sensor/px4 --build build/sensor/px4 catkin_make --source Experiment/sensor/realsense2_camera --build build/sensor/realsense2_camera catkin_make --source Experiment/sensor/tfmini_ros --build build/sensor/tfmini_ros catkin_make --source Experiment/toolkit/pose_utils --build build/toolkit/pose_utils catkin_make --source Experiment/toolkit/cmake_utils --build build/toolkit/cmake_utils catkin_make --source Experiment/toolkit/multi_map_server --build build/toolkit/multi_map_server catkin_make --source Experiment/toolkit/odom_visualization --build build/toolkit/odom_visualization catkin_make --source Experiment/toolkit/pub_goal --build build/toolkit/pub_goal catkin_make --source Experiment/toolkit/rviz_plugins_3d_goal --build build/toolkit/rviz_plugins_3d_goal catkin_make --source Experiment/toolkit/uav_utils --build build/toolkit/uav_utils catkin_make --source Experiment/toolkit/LiDAR_IMU_Init --build build/toolkit/LiDAR_IMU_Init catkin_make --source Experiment/toolkit/selected_points_publisher --build build/toolkit/selected_points_publisher ``` ## 1.3 控制 ```bash catkin_make --source Modules/uav_control --build build/uav_control ``` ## 1.4 规划 ```bash catkin_make --source Modules/uav_plan/ego_planner_v2/main_ws --build build/uav_plan/ego_planner_v2/main_ws ``` ## 1.5 穿圆 ### 1.5.1 yolo圆环检测识别 ```bash catkin_make --source Modules/uav_detection/yolov5_tensorrt_v5.0/tensorrtx --build build/uav_detection/yolov5_tensorrt_v5.0/tensorrtx ``` ### 1.5.2 穿圆 ```bash catkin_make --source Modules/uav_circle/yolo_ring --build build/uav_circle/yolo_ring ``` ## 1.6 降落 ### 1.6.1 对地相机驱动 ```bash catkin_make --source Experiment/sensor/camera_pub --build build/sensor/camera_pub ``` ### 1.6.2 对地二维码检测 ```bash catkin_make --source Modules/uav_detection/object_detection --build build/uav_detection/object_detection ``` ### 1.6.3 固定降落 ```bash catkin_make --source Modules/uav_auto_land/autonomous_landing --build build/uav_auto_land/autonomous_landing ``` ### 1.6.4 移动降落 ```bash catkin_make --source Modules/uav_plan/perch --build build/uav_plan/perch ``` # 二、启动 ## 2.1 动态降落 二维码检测:获取二维码在相机坐标系下的位置 ```Bash roslaunch prometheus_detection market_landpad_det.launch ``` 触发条件 ```Bash rostopic pub /uav0/prometheus/switch/landpad_det std_msgs/Bool "data: true" ``` target_ekf_sim_node:通过EKF处理二维码惯性系下位置信息,估计二维码的位置、移动速度 ```Bash roslaunch landpad_ekf landpad_ekf.launch ``` nodelet:通过二维码在相机坐标系下的位置、无人机姿态位置信息,解算二维码惯性系下位置信息 获得二维码的位置、移动速度后,根据无人机位姿信息,规划轨迹 ```Bash roslaunch planning perching_ekf.launch ``` 考虑加ToF,在降落最后阶段判断强制上锁降落。 ### 节点图 ![](./move_landing.png) # 比赛修改流程 飞控校准传感器 修改规划航路点exp.launch 规划限制高度 修改task_complete.launch 任务点 修改advanced_param_exp.xml中穿圆后规划点 修改穿完第一个圆后的控制yaw的数据 圆的检测直径范围yolov5_ros.cpp 759行 if (fabs(diameter) < 1.7 && fabs(diameter) > 0.4) 穿圆过程中的控制增益 穿圆过程z写死,修改z 使用rtk lidar融合定位,修改定位源话题 ## 优化Tips 提高速度 飞行前先时间同步