2026.6.12小更新
This commit is contained in:
@@ -10,14 +10,16 @@
|
|||||||
- fc_test:获取飞控信息的测试脚本;
|
- fc_test:获取飞控信息的测试脚本;
|
||||||
- infer_camera_direct.py:通过摄像头检测目标并调用方法控制无人机;
|
- infer_camera_direct.py:通过摄像头检测目标并调用方法控制无人机;
|
||||||
- infer.py:使用图片检测目标,仅用于测试环境;
|
- infer.py:使用图片检测目标,仅用于测试环境;
|
||||||
- infer_camera_modular.py:模块化处理过的摄像头检测与控制(未测试)
|
- infer_camera_modular.py:模块化处理过的摄像头检测与控制(以确认链路基本通顺,但是无人机追踪效果如何尚未测试)
|
||||||
- infer_camera_video.py:使用视频检测目标并调用方法控制无人机(用于测试,未调参)
|
- infer_camera_video.py:使用视频检测目标并调用方法控制无人机(用于测试,未调参)
|
||||||
- gent_mission.py:尝试将视觉追踪与自动巡点飞行相结合(未测试,这应该是本项目一阶段的最终预期)
|
- gent_mission.py:尝试将视觉追踪与自动巡点飞行相结合(未测试,这应该是本项目一阶段的最终预期)
|
||||||
- run_mission.py:自动巡点飞行的业务测试(未测试)
|
- run_mission.py:自动巡点飞行的业务测试(未测试)
|
||||||
#### drone_controller:控制模块
|
#### drone_controller:控制模块
|
||||||
- base_control.py:定义了部分基本动作的方法
|
- base_control.py:定义了部分基本动作的方法(最新规划已改用路由,已弃置)
|
||||||
- pid_counter.py:抽离出来的PID计算器
|
- pid_counter.py:抽离出来的PID计算器
|
||||||
- mission_manager.py:自动巡点飞行的控制模块
|
- mission_manager.py:自动巡点飞行的控制模块(最新规划已改用路由,已弃置)
|
||||||
|
- router_proxy.py:基于新路由的路由规则编写的相关代码
|
||||||
|
- target_tracker.py:通过math库和numpy编写的简单目标跟踪
|
||||||
#### 其他目录以及文件:
|
#### 其他目录以及文件:
|
||||||
- om:推理使用的.om文件
|
- om:推理使用的.om文件
|
||||||
- asset:用于基础测试的文件
|
- asset:用于基础测试的文件
|
||||||
|
|||||||
@@ -13,6 +13,15 @@
|
|||||||
"udp_port": 9999
|
"udp_port": 9999
|
||||||
},
|
},
|
||||||
"flight_control": {
|
"flight_control": {
|
||||||
|
"req_endpoint": "tcp://127.0.0.1:5555",
|
||||||
|
"sub_endpoint": "tcp://127.0.0.1:5556",
|
||||||
|
"takeoff_alt": 5.0,
|
||||||
|
"control_hz": 20,
|
||||||
|
"target_tracker": {
|
||||||
|
"max_lost_frames": 8,
|
||||||
|
"max_asscociation_dist": 200.0,
|
||||||
|
"min_hits": 3
|
||||||
|
},
|
||||||
"connection_string": "/dev/ttyAMA1",
|
"connection_string": "/dev/ttyAMA1",
|
||||||
"baud_rate": 57600
|
"baud_rate": 57600
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import json
|
|||||||
import sys
|
import sys
|
||||||
|
|
||||||
# ================== 昇腾 NPU SDK(保护性导入) =====================
|
# ================== 昇腾 NPU SDK(保护性导入) =====================
|
||||||
# 说明:本机可能无昇腾环境,try-except 确保 import 错误仅告警不崩溃。
|
# 开发机可能无昇腾环境,try-except 确保 import 错误仅告警不崩溃。
|
||||||
# 部署到香橙派 AI Pro 时只需安装 ais_bench 即可无缝运行。
|
# 部署到香橙派 AI Pro 时只需安装 ais_bench 即可无缝运行。
|
||||||
try:
|
try:
|
||||||
from ais_bench.infer.interface import InferSession
|
from ais_bench.infer.interface import InferSession
|
||||||
@@ -290,7 +290,7 @@ class UAVControlLoop:
|
|||||||
# ------------------------------------------------
|
# ------------------------------------------------
|
||||||
|
|
||||||
# 控制参数(按协议改为 20Hz,§4.1 要求 ≥20Hz)
|
# 控制参数(按协议改为 20Hz,§4.1 要求 ≥20Hz)
|
||||||
self.control_hz = 20.0
|
self.control_hz = fc_cfg.get("control_hz", 20.0)
|
||||||
self.control_interval = 1.0 / self.control_hz
|
self.control_interval = 1.0 / self.control_hz
|
||||||
|
|
||||||
# 线程控制
|
# 线程控制
|
||||||
@@ -355,7 +355,7 @@ class UAVControlLoop:
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
# ---- ④ 起飞到目标高度(如高度不足) ----
|
# ---- ④ 起飞到目标高度(如高度不足) ----
|
||||||
takeoff_alt = self.fc_cfg.get("takeoff_alt", 15.0)
|
takeoff_alt = self.fc_cfg.get("takeoff_alt", 5.0)
|
||||||
|
|
||||||
if alt_rel < takeoff_alt * 0.9:
|
if alt_rel < takeoff_alt * 0.9:
|
||||||
print(f"🛫 高度 {alt_rel:.1f}m < 目标 {takeoff_alt:.1f}m,执行起飞...")
|
print(f"🛫 高度 {alt_rel:.1f}m < 目标 {takeoff_alt:.1f}m,执行起飞...")
|
||||||
|
|||||||
Reference in New Issue
Block a user