文件路径 | 主要内容组件 | 功能说明 |
---|---|---|
RflySimSDK | AutoMAVDB | 测试用例库与数据管理库,支持数据库/文件的自动操作 |
AutoMAVCmd | 测试序列解析,将高层测试序列映射为控制指令(如 MAVLink)驱动无人载具 | |
AutoMAVCtrl | 无人载具进程管理,含测试环境配置、任务调度、载具参数等 | |
PX4MavCtrlV4 | 通信管理模块,封装用户指令为 MAVLink 消息,实现通信初始化与联动控制 | |
CameraCtrlApi / VisionCaptureApi | 视觉控制与采集模块,配置视觉参数、捕捉图像帧等操作 | |
src/autotest/ | AutoTest | 自动化测试主入口,配置并一键运行载具测试任务 |
src/openSHA/ | ProfitsSA/Ass | 健康与安全评估算法库(示例:率模可靠性),支持自定义评估模型在线验证 |
src/model/Quadrotor/ | db.json , ModelHITL , ModelSITL | 四旋翼模型配置与测试用例绑定,支持 HITL 与 SITL 仿真 |
src/model/Fixedwing/ | 同上结构 | 固定翼机型模型配置,支持同样的多模式测试 |
data/SITL/ 与 data/HITL/ | single/sInstance , multi/mInstance 等 | 自动收集 SITL/HITL 仿真数据,支持单/多机型、单/多实例四种结构 |
case/ | 数据库文件(如 case.db) | 储存无人机测试用例数据库,亦可通过 tools 文件夹工具可视化编辑 |
tools/ | Navicat for SQLite 等 | 可视化数据库配置工具,简化测试用例管理 |
docs/ | Readme , Platform handbook 等 | 平台说明文档,介绍使用方法、原理结构、模块接口等 |
好的,以下是补充后的教材内容小节,围绕你提供的图示、控制协议与 JSON 配置文件说明,已以结构化方式整理为:
为了实现高效、批量化的无人系统自动测试,RflySim 自动化测试平台基于**控制指令序列标准化协议**,采用结构清晰的数字字符串方式表达控制逻辑,并通过 JSON 配置文件 db.json
进行集中管理与解析。
每一条控制指令以逗号分隔、以分号结尾,表示一个标准化动作;其结构如下:
字段序列 | 说明 |
---|---|
X (第一位) | 操控类别(时间/控制) |
Y (第二位) | 类内功能编号 |
后续参数 | 函数的输入参数,按顺序排列 |
操控类别 | 功能编号 | 功能说明 | 示例 |
---|---|---|---|
1 时间类 | 1 | 等待时间:Wait(times) | 1,1,5 → 等待5s |
2 | 等待复位:WaitReset(pos) | 1,2,0 | |
2 控制类 | 1 | 解锁:Arm() | 2,1 |
2 | 上锁:Disarm() | 2,2 | |
3 | 位置控制:FlyPos(x,y,z) | 2,3,0,0,-20 | |
4 | 速度控制:FlyVel(vx,vy,vz) | 2,4,1,0,0 | |
5 | 降落:Land() | 2,5 | |
6 | 故障注入:FaultInject(params) | 2,6,ID,... |
控制序列如下所示:
解析如下:
步骤 | 指令 | 含义描述 |
---|---|---|
① | 2,1 | 解锁(Arm) |
② | 1,1,5 | 等待 5 秒 |
③ | 2,3,0,0,-20 | 飞至位置 [0,0,-20] |
④ | 1,1,15 | 等待 15 秒 |
⑤ | 2,6,... | 故障注入(如电机故障,附带多个参数) |
⑥ | 1,1,10 | 等待 10 秒 |
FAULT_CASE
:核心测试用例配置项,含以下字段:字段 | 含义 |
---|---|
CaseID | 测试用例唯一编号(主键) |
Subsystem | 故障所属子系统(如 Power, Sensor) |
Component | 故障部件(如 Motor, Magnetometer) |
FaultID | 故障编号 |
FaultType | 故障类型说明 |
FaultMode | 故障模式描述 |
FaultParams | 故障注入参数 |
ControlSequence | 控制流程字符串(按上述协议格式) |
TestStatus | 当前测试状态(例:Finished) |
TEST_CASE
:用于自动测试执行顺序管理"1,2"
(用英文逗号分隔)表示依次执行第1、2号用例"All"
"1,2;1,3"
,表示VISION
:视觉模块开关(用于图像采集接口)"on"
:开启摄像头图像发布"off"
:关闭视觉采集功能是否需要我进一步为“控制协议格式”绘制结构图、状态流图或生成教材中的 LaTeX 代码格式?