操控App系统 产品需求文档
| 字段 | 内容 |
|---|---|
| 文档编号 | SUB-APP-V0.1 |
| 版本 | V0.1 |
| 状态 | 草稿 |
| 作者 | 产品团队 |
| 日期 | 2026-04-15 |
| 审核人 | [待定] |
修订记录
| 版本 | 日期 | 修订人 | 修订内容 |
|---|---|---|---|
| V0.1 | 2026-04-15 | 产品团队 | 初稿 |
| V0.2 | 2026-04-16 | 产品团队 | 架构澄清修订,App直接持有MAVLink协议栈,删除AIDL/RC SDK依赖 |
1. 概述
1.1 目的
本文档定义操控App系统(APP)的产品需求,涵盖平台架构、飞行控制界面、航线规划、作业管理、设备管理、地图服务、性能需求及安全需求,作为操控App设计、开发、测试的依据。
1.2 适用范围
- 适用产品型号:XX 农业无人机(内部代号待定)
- 适用版本:V1.0 种子用户版
1.3 关联文档
| 文档编号 | 文档名称 | 关系 |
|---|---|---|
| PRD-MASTER-V0.1 | 总体产品需求文档 | 上位需求来源 |
| SUB-RC-V0.1 | 遥控器系统PRD | App运行宿主平台 |
| SUB-FC-V0.1 | 飞控系统PRD | 飞行数据来源 |
| SUB-NAV-V0.1 | 导航定位系统PRD | RTK/定位数据来源 |
| SUB-OA-V0.1 | 避障系统PRD | 避障状态数据来源 |
| SUB-SP-V0.1 | 喷洒系统PRD | 喷洒参数配置 |
| ICD-06-V0.1 | 遥控器与操控App接口 | App↔遥控器接口定义 |
| ICD-07-V0.1 | 飞控与App远程接口(4G) | App↔飞控远程接口定义 |
1.4 术语定义
| 术语 | 定义 |
|---|---|
| OSD | On-Screen Display,叠加在图传视频画面上的飞行参数信息 |
| FPV | First Person View,第一人称视角图传画面 |
| KML | Keyhole Markup Language,地理标注文件格式,用于地块导入导出 |
| CORS | Continuously Operating Reference Station,连续运行参考站网络 |
| NTRIP | Networked Transport of RTCM via Internet Protocol,网络RTK传输协议 |
| WGS84 | World Geodetic System 1984,全球定位系统使用的大地坐标系 |
| CGCS2000 | China Geodetic Coordinate System 2000,2000国家大地坐标系 |
| GCJ-02 | 国家测绘局02号坐标偏移标准(高德坐标) |
| BD-09 | 百度坐标系,在GCJ-02基础上二次加密 |
| CV | Coefficient of Variation,变异系数,衡量喷洒均匀度的统计指标 |
2. 系统描述
2.1 子系统职责
操控App系统负责为用户提供作业规划、飞行实时监控、参数设置、设备管理和数据记录的图形化交互界面。App运行于遥控器内置Android系统上,直接通过底层网卡(SIYI以太网口或AR8131虚拟网卡)与飞控进行MAVLink UDP通信,直接接收RTP视频流,并将用户操作指令以MAVLink消息形式发送至飞控。
2.2 系统边界
┌──────────────────┐
地图服务/云端 ──→ │ │
│ 操控App系统 │ ──→ 作业记录文件(本地/SD卡)
用户触屏操控 ──→ │ (APP) │
│ │ ──→ MAVLink指令(经网卡直达飞控)
遥测数据 ──→ │ 运行于RC内置 │
(MAVLink UDP) │ Android系统 │ ──→ 用户操作指令(MAVLink直达飞控)
│ │
图传视频流 ──→ │ │ ──→ 屏幕显示输出
(RTP直收) └──────────────────┘
↕
┌──────────────┐
│ 遥控器硬件 │
│ 网卡+摇杆 │
│ ICD-06定义 │
└──────────────┘数据输入:
- 飞行器遥测数据:App直接通过MAVLink UDP(端口14550)从飞控接收
- 图传视频流:App直接接收RTP流并解码
- RTK状态、避障状态等:通过MAVLink自定义消息从飞控接收
- 摇杆/按键输入:通过Android标准InputEvent API从Linux input设备读取
- 链路状态(RSSI):通过AR8131驱动sysfs接口轮询
- 用户触屏操控输入(地图标绘、参数设置、按钮操作)
- 在线/离线地图数据
数据输出:
- 航线规划参数(地块边界、航线间距、飞行高度、速度、亩用量等)→ MAVLink直达飞控
- 用户操控指令(一键起飞/返航/暂停等)→ MAVLink直达飞控
- 参数配置指令(飞控参数、喷洒参数、避障参数)→ MAVLink PARAM_SET直达飞控
- 遥控通道数据(摇杆→RC_CHANNELS_OVERRIDE)→ MAVLink直达飞控
- 作业记录文件(JSON/CSV格式,存储于遥控器SD卡)
- 屏幕图形化显示输出
网络接口检测逻辑:App启动时检测可用网络接口,自动判断当前连接的是SIYI网口还是AR8131虚拟网卡,自动适配IP和端口配置。两种网卡对App业务层完全透明。
2.3 工作环境
| 项目 | 规格 |
|---|---|
| 运行平台 | 遥控器内置Android系统(Android 12+) |
| 显示屏 | 7.02寸触控液晶屏,分辨率1920×1200,最大亮度1400 cd/m² |
| 工作温度 | -20°C ~ 50°C(随遥控器工作环境) |
| 存储温度 | -30°C ~ 45°C |
| 网络环境 | 农田环境可能无蜂窝网络覆盖,核心功能须离线可用 |
| 光照条件 | 户外强光环境(需适配高亮度屏幕及高对比度UI) |
| 操控方式 | 触屏操控为主,遥控器实体按键辅助(自定义功能键L1/L2/L3/R1/R2/R3/C3) |
3. 功能需求
3.1 平台与架构
| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-001 | App应运行于遥控器内置Android系统(Android 12及以上),作为遥控器预装应用 | P0 | 安装验证 | SYS-F-040 |
| APP-F-002 | App应通过底层网卡(SIYI网口或AR8131虚拟网卡)直接与飞控进行MAVLink UDP通信,直接接收RTP视频流,不经RC固件中转 | P0 | 接口联调 | ICD-06, ICD-02 |
| APP-F-003 | App界面设计应参考大疆农业App操作逻辑和布局风格,沿用农业无人机操作人员的使用习惯 | P0 | UI审查+用户测试 | 项目总纲 |
| APP-F-004 | App核心功能(飞行控制、航线执行、作业记录)应在无互联网环境下正常运行 | P0 | 断网测试 | 使用场景 |
| APP-F-005 | App应支持中文简体界面,预留多语言扩展接口 | P0 | UI检查 | 产品规划 |
| APP-F-006 | App启动后应默认进入作业主界面,显示地图视图+图传画面+飞行参数仪表盘 | P0 | UI检查 | 参考大疆农业App |
| APP-F-007 | App应支持遥控器自定义功能按键(L1/L2/L3/R1/R2/R3/C3)的功能映射配置,用户可在设置中自定义按键对应功能 | P1 | 功能测试 | T100手册p20 |
3.2 飞行控制界面
界面布局描述(文字线框图):
┌─────────────────────────────────────────────────────────────┐
│ [模式选择▼] [RTK:●] [GPS:12颗] [信号:████] [电量:78%] [100%]│ ← 顶部状态栏
├────────────────────────────────┬────────────────────────────┤
│ │ │
│ │ 地图视图 / FPV切换 │
│ FPV图传视频画面 │ · 飞行器位置图标 │
│ + OSD参数叠加 │ · 航迹实时绘制 │
│ · 高度 · 速度 │ · 作业区域边界 │
│ · 距离 · 方向 │ · 航线规划显示 │
│ · GPS状态 │ · 障碍物/禁飞区标记 │
│ │ │
│ │ │
├────────────────────────────────┴────────────────────────────┤
│ [高度:5.0m] [速度:5.5m/s] [亩用量:12.3L] [已完成:65.12亩] │ ← 底部作业参数栏
│ [暂停] [返航] [执行▶] │ ← 底部操控按钮
└─────────────────────────────────────────────────────────────┘注:FPV画面与地图视图可通过遥控器FPV/地图切换按键或App触屏按钮全屏切换(参考T100手册p20)
| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-101 | App应在作业主界面实时显示图传视频画面,支持全屏/分屏两种显示模式,分屏模式下同时显示地图视图 | P0 | 功能测试 | SYS-F-010 |
| APP-F-102 | App应在图传视频画面上叠加OSD飞行参数,包括:飞行高度、水平飞行速度、与返航点距离、飞行方向、GPS卫星数、RTK状态 | P0 | 数据比对验证 | 参考T100 AB点界面 |
| APP-F-103 | App顶部状态栏应持续显示以下关键信息:作业模式、RTK连接状态(图标颜色)、GPS卫星数量、遥控器信号强度、飞行器电池电量(百分比)、遥控器电池电量 | P0 | UI检查 | 参考T100手册p52截图 |
| APP-F-104 | App应提供地图视图,实时显示飞行器位置图标(含航向指示)、飞行航迹、作业区域边界、已作业区域(绿色填充)和未作业区域 | P0 | 功能测试+轨迹比对 | SYS-F-010 |
| APP-F-105 | 地图视图应支持卫星图和地形图两种底图模式切换 | P1 | 功能测试 | 参考大疆农业App |
| APP-F-106 | App底部作业参数栏应显示:当前飞行高度(m)、飞行速度(m/s)、亩用量(L/亩)、已作业面积(亩)、药液余量(L/百分比) | P0 | 数据验证 | 参考T100 AB点界面 |
| APP-F-107 | App应提供以下飞行操控按钮:一键起飞、一键降落、一键返航、暂停/继续作业、紧急停机(需二次确认弹窗) | P0 | 功能测试 | SYS-F-001/002/022 |
| APP-F-108 | App应提供虚拟摇杆作为备用操控方式(非主要操控方式),虚拟摇杆仅在设置中开启后显示 | P2 | 功能测试 | 产品规划 |
| APP-F-109 | 飞行器异常状态(低电量、失控、避障触发、电机异常等)发生时,App应在屏幕中央弹出醒目告警弹窗,同时顶部状态栏图标变红闪烁 | P0 | 异常模拟测试 | SYS-S-001~007 |
| APP-F-110 | App应支持FPV相机俯仰角调节,用户可通过触屏滑块或遥控器右拨轮调整FPV画面角度 | P1 | 功能测试 | T100手册p20 |
3.3 航线规划
航线规划界面布局描述:
┌─────────────────────────────────────────────────────────────┐
│ [← 返回] 航线规划 [保存] [执行▶] │ ← 顶部导航栏
├──────────────┬──────────────────────────────────────────────┤
│ │ │
│ 作业参数面板 │ 地图视图(卫星底图) │
│ │ │
│ 作业类型: │ · 十字准星打点工具 │
│ [大田航线▼] │ · 地块边界多边形绘制 │
│ │ · 航线自动生成预览(弓字形/回字形) │
│ 喷洒用量: │ · 障碍物标记区域 │
│ [— 5.5 +] │ · 不喷区标记 │
│ L/亩 │ · 航线间距标注 │
│ │ │
│ 雾滴大小: │ ┌────┐ │
│ [200 μm ▼] │ A ── │地块│ ── B │
│ │ │航线│ │
│ 飞行速度: │ ──── │弓字│ ──── │
│ [— 5.5 +] │ │形 │ │
│ m/s │ └────┘ │
│ │ │
│ 相对作物高度: │ │
│ [— 3.0 +] │ [+ 放大] [- 缩小] [◎ 定位] │
│ m │ │
├──────────────┴──────────────────────────────────────────────┤
│ [作业行距(m)] [路线L/R] [障碍物▲] [不喷区■] [中转点●] │ ← 底部工具栏
└─────────────────────────────────────────────────────────────┘| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-201 | App应支持大田航线作业规划:用户在地图上通过十字准星打点标绘地块边界(多边形),系统自动生成弓字形/回字形喷洒航线 | P0 | 实地作业验证 | SYS-F-010、T100手册p49 |
| APP-F-202 | App应支持A-B点作业规划:用户通过App界面A/B按钮或遥控器C1/C2自定义按键记录A、B两点,系统自动生成平行航线,支持路线L/R方向切换 | P0 | 实地作业验证 | SYS-F-011、T100手册p52 |
| APP-F-203 | App应支持果树航线作业规划:在高清地图或航测重建地图上规划果树航线,支持3D视图查看航线与地面/周围物体的相对高度 | P1 | 实地作业验证 | SYS-F-013、T100手册p50 |
| APP-F-204 | App应支持航测作业规划:选择航测模式后,自动按弓字形规划航测航线,飞行器按航线采集FPV影像用于本地离线地图重建 | P2 | 实地测试+地图比对 | SYS-F-014、T100手册p48 |
| APP-F-205 | App应支持手动作业模式:用户选择基础或增强模式后,通过遥控器手动操控飞行和喷洒 | P0 | 功能测试 | SYS-F-012、T100手册p53 |
| APP-F-206 | 大田航线规划应支持配置以下作业参数:喷洒用量(L/亩)、雾滴大小(μm)、飞行速度(m/s)、相对作物高度(m)、作业行距(m) | P0 | 参数校验测试 | T100手册p49-51 |
| APP-F-207 | 航线规划应支持在地块内手动标记障碍物区域和不喷区域,航线自动绕开标记区域(参考T100手册p49"添加障碍物及不喷区") | P0 | 航线仿真+实地测试 | T100手册p49 |
| APP-F-208 | 航线规划应支持添加中转点,用于避开续航/返回路径上的障碍物(参考T100手册p51) | P1 | 功能测试 | T100手册p51 |
| APP-F-209 | App应支持地块划分功能,大面积地块可切割为多个作业区域,分别设置作业参数(参考T100手册p50) | P1 | 功能测试 | T100手册p50 |
| APP-F-210 | App应支持KML文件导入/导出地块数据,兼容第三方农业管理软件的地块数据 | P1 | 文件导入导出测试 | 产品规划 |
| APP-F-211 | App应支持航线方案保存为模板,再次调用地块时无需重设作业参数(参考T100手册p51) | P1 | 功能测试 | T100手册p51 |
| APP-F-212 | 果树航线规划应支持按亩用量或流量面板两种方式设置作业参数(参考T100手册p51) | P1 | 功能测试 | T100手册p51 |
| APP-F-213 | App应支持处方图作业:下载处方图至遥控器后导入App,实现变量喷洒(参考T100手册p49"下载处方图") | P2 | 功能测试 | T100手册p49 |
| APP-F-214 | 航线规划完成后,App应支持纠正偏移功能,通过微调按键调整地块位置以匹配实际作业区(参考T100手册p51) | P1 | 实地测试 | T100手册p51 |
| APP-F-215 | App应支持从云端下载和通过microSD卡导入作业方案(参考T100手册p49) | P1 | 功能测试 | T100手册p49 |
3.4 作业管理
| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-301 | App应完整记录每次作业信息,包括:作业日期时间、地块名称、作业面积(亩)、药液用量(L)、飞行轨迹、作业时长、断点坐标 | P0 | 数据完整性校验 | SYS-C-032 |
| APP-F-302 | App应支持断点续喷功能:中途退出作业(换药/换电/手动退出)时自动记录断点坐标,支持后续从断点恢复作业(参考T100手册p54) | P0 | 实地作业测试 | SYS-F-015 |
| APP-F-303 | 断点续喷恢复时,App应显示可选的断点和返回点(E1/E2/E3等),用户选择返回点后飞行器沿垂直于航线的路径返回并继续作业(参考T100手册p55) | P0 | 实地作业测试 | T100手册p55 |
| APP-F-304 | App应支持智能断点续航功能:根据断点位置和飞行器当前位置计算最优返回点,减少空载飞行距离(参考T100手册p55) | P1 | 实地作业测试 | SYS-F-017 |
| APP-F-305 | App应支持多地块连续作业:选中多个地块后按序号排列,飞行器按顺序自动执行各地块作业,每块完成后App显示确认书并自动飞往下一地块(参考T100手册p53) | P1 | 实地作业测试 | SYS-F-016 |
| APP-F-306 | App应支持无药点显示:开启"显示无药点"开关后,在地图上标示药液耗尽的预计位置,并设置药箱喷完后的飞行器行为(参考T100手册p56) | P0 | 实地作业测试 | SYS-F-018、SYS-S-012 |
| APP-F-307 | App应提供作业统计报表功能,按日/周/月汇总:作业总面积、总用药量、总飞行架次、总飞行时长 | P1 | 数据汇总验证 | 产品规划 |
| APP-F-308 | App应支持作业记录导出功能,支持导出为CSV/JSON格式,可通过遥控器USB或Wi-Fi传输至外部设备 | P1 | 导出验证 | SYS-C-032 |
| APP-F-309 | App应在作业列表中显示每次作业的进行中/已暂停/已完成状态标签,支持查看历史作业详情和航迹回放 | P1 | UI功能检查 | 产品规划 |
| APP-F-310 | App应记录完整的飞行日志(飞行数据黑匣子),包含全量遥测数据,支持导出用于事后分析和监管审查 | P0 | 数据完整性校验 | SYS-C-004 |
3.5 设备管理
| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-401 | App应支持飞行器绑定与解绑,通过扫码或手动输入序列号完成设备配对 | P0 | 功能测试 | 产品规划 |
| APP-F-402 | App应提供设备状态总览页面,显示飞行器各子系统状态:飞控(正常/异常)、电调(正常/异常)、电池(电量/温度/循环次数)、遥控器信号、RTK状态、避障传感器状态 | P0 | 状态比对验证 | 产品规划 |
| APP-F-403 | App应支持OTA固件升级功能,支持飞控、电调、遥控器、避障模块的固件在线检查和升级,升级过程中显示进度条并禁止断电 | P1 | 升级测试 | 产品规划 |
| APP-F-404 | App应支持充电器设备激活功能,首次使用C12000充电器时通过USB-C连接遥控器进行激活(参考C12000使用说明p2) | P0 | 激活流程测试 | C12000使用说明 |
| APP-F-405 | App应提供飞控参数调整界面,支持修改:飞行速度限制、高度限制、返航高度、失控行为(返航/降落/悬停)等参数 | P0 | 参数写入验证 | SYS-F-024 |
| APP-F-406 | App应提供喷洒参数调整界面,支持修改:亩用量、雾滴大小、喷头开关控制、流量校准触发 | P0 | 参数写入验证 | SYS-F-010 |
| APP-F-407 | App应提供避障参数调整界面,支持:避障模式选择(全向避障/定高及绕行/关闭)、作业场景选择(平地/山地或果树/水面)、避障灵敏度调节(参考T100手册p13-14) | P0 | 功能测试 | T100手册p13-14 |
| APP-F-408 | App应提供传感器校准引导功能,支持:指南针校准、IMU校准,以动画或图文引导用户完成校准步骤(参考T100手册p35) | P0 | 校准流程测试 | SYS-F-044 |
| APP-F-409 | App应提供流量计校准功能:用户在作业箱加入约2升水后,点击校准按钮自动完成流量校准(参考T100手册p48) | P0 | 校准流程测试 | SYS-S-014 |
| APP-F-410 | App应支持RTK配置管理:开启/关闭RTK定位、选择RTK信号源(D-RTK基站/网络RTK/自定义网络RTK),配置自定义NTRIP服务器参数(参考T100手册p17) | P0 | RTK联调测试 | SYS-F-041/042 |
| APP-F-411 | App应显示飞行器累计飞行时长、飞行架次、总作业面积等生命周期数据,辅助用户判断维护周期 | P1 | 数据验证 | 产品规划 |
| APP-F-412 | App应支持夜航灯开关控制,在设置界面中提供开启/关闭夜航灯选项(参考T100手册p16) | P1 | 功能测试 | T100手册p16 |
| APP-F-413 | App应支持飞行挡位姿态模式解锁功能:默认锁定姿态模式,用户在设置中手动解锁后方可切换至姿态挡(参考T100手册p16) | P0 | 功能测试 | T100手册p16 |
3.6 地图服务
| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-501 | App应集成在线地图服务,支持卫星影像图和地形图两种底图模式 | P0 | 功能测试 | 产品规划 |
| APP-F-502 | App应支持离线地图下载和管理:用户在有网络时预下载作业区域地图瓦片,离线环境下使用本地缓存地图 | P0 | 断网测试 | APP-F-004 |
| APP-F-503 | App应正确处理坐标系转换:内部使用WGS84坐标系,显示时根据地图服务商自动转换为GCJ-02(高德)或BD-09(百度)坐标,确保地块标绘与地图底图精确对齐 | P0 | 坐标偏移测试 | 产品规划 |
| APP-F-504 | App应支持CGCS2000坐标系输入/输出,兼容国家测绘标准 | P1 | 坐标转换验证 | 产品规划 |
| APP-F-505 | App应支持航测成果地图显示:航测作业重建的高清正射地图可作为底图叠加显示(参考T100手册p48-49"成果应用") | P2 | 功能测试 | SYS-F-014 |
| APP-F-506 | App应支持高清地图上传云端并跨设备同步,登录同一账号的遥控器可下载共享高清地图(参考T100手册p49) | P2 | 云端同步测试 | T100手册p49 |
| APP-F-507 | App应支持二级高清地图切换:可将航测生成的高清地图或个人账号高清地图选择为底图(参考T100手册p49) | P2 | 功能测试 | T100手册p49 |
3.7 安全辅助功能
| 编号 | 需求描述 | 优先级 | 验证方式 | 来源 |
|---|---|---|---|---|
| APP-F-601 | App应在每次起飞前显示飞行前检查清单,引导用户完成:螺旋桨安装检查、电池电量确认、GPS/RTK状态确认、作业区域障碍物确认、喷头安装检查等项目(参考T100手册p35) | P0 | 流程测试 | SYS-S-024 |
| APP-F-602 | App应显示GEO地理围栏信息,在地图上标示禁飞区/限飞区/授权区边界,飞行器接近限制区时提示告警(参考T100手册p32) | P0 | GEO系统联调 | SYS-F-023 |
| APP-F-603 | App应支持限飞区域解锁流程,用户需通过实名认证后在App中申请解锁授权区域(参考T100手册p32-33) | P0 | 流程测试 | SYS-F-023 |
| APP-F-604 | App应在起飞前根据飞行器状态和周围环境智能推荐装载量,避免超过最大起飞重量150kg(参考T100手册p30注释[5]) | P0 | 重量计算验证 | SYS-C-001 |
| APP-F-605 | App应提供实名登记引导功能,指引用户通过民航局无人机实名登记系统(uom.caac.gov.cn)完成实名登记(参考T100手册p3) | P0 | 流程检查 | SYS-C-002 |
| APP-F-606 | App应提供图传信号质量指示,图传信号不良时(图标显示红色或断开)提示用户"请勿起飞"(参考T100手册p30注释) | P0 | 信号模拟测试 | 使用安全 |
| APP-F-607 | App应在创建自动飞行航线时提示用户确认预设飞行区域(含备降点)无影响飞行安全的障碍物,且备降点无第三方人员进入(参考T100手册p30) | P0 | 流程检查 | T100手册p30 |
4. 性能需求
| 编号 | 性能指标 | 我方目标值 | T100参考值 | 优先级 | 验证方式 |
|---|---|---|---|---|---|
| APP-P-001 | App冷启动时间 | ≤5 秒 | [TBD-需测试T100实际启动时间] | P0 | 计时测试 |
| APP-P-002 | 地图加载时间(在线) | ≤3 秒(首屏瓦片加载完成) | [TBD] | P1 | 计时测试 |
| APP-P-003 | 地图加载时间(离线) | ≤1 秒 | [TBD] | P0 | 计时测试 |
| APP-P-004 | 图传显示延迟(端到端) | ≤200 ms | [TBD-需测试T100实际延迟] | P0 | 同步时钟延迟测试 |
| APP-P-005 | OSD数据刷新频率 | ≥5 Hz | [TBD] | P0 | 刷新率测试 |
| APP-P-006 | 航线规划计算时间(≤100亩地块) | ≤3 秒 | [TBD] | P0 | 计时测试 |
| APP-P-007 | 航线规划计算时间(100-1000亩地块) | ≤10 秒 | [TBD] | P1 | 计时测试 |
| APP-P-008 | 地图操作帧率(缩放/拖拽) | ≥30 fps | [TBD] | P1 | 帧率检测 |
| APP-P-009 | App运行内存占用 | ≤512 MB | [TBD] | P1 | 内存监控 |
| APP-P-010 | App连续运行稳定性 | 连续运行8小时无崩溃或卡死 | — | P0 | 压力测试 |
| APP-P-011 | 作业记录存储效率 | 单次作业记录文件≤10 MB(含完整轨迹数据) | [TBD] | P1 | 文件大小检查 |
| APP-P-012 | 飞行参数响应延迟 | 参数修改下发至飞控≤100 ms(经遥控器中转) | [TBD] | P0 | 延迟测试 |
5. 安全需求
| 编号 | 安全需求描述 | 触发条件 | 系统响应 | 优先级 | 验证方式 |
|---|---|---|---|---|---|
| APP-S-001 | App应在飞行器电池严重低电量时全屏显示红色告警弹窗,提示"电池电量极低,飞行器即将强制降落",并播放连续告警音 | 飞行器电池电量降至严重低电量阈值 | 全屏告警+告警音+禁止取消降落 | P0 | 电量模拟测试 |
| APP-S-002 | App应在遥控器信号丢失时显示"信号丢失"告警弹窗,并显示当前失控保护设置(返航/降落/悬停) | 遥控器↔飞行器通信中断 | 告警弹窗+显示失控保护状态 | P0 | 信号屏蔽测试 |
| APP-S-003 | App应在避障触发时在图传画面上叠加红色距离指示条,显示障碍物方向和距离 | 避障系统检测到障碍物 | 红色距离指示+告警提示 | P0 | 障碍物模拟测试 |
| APP-S-004 | App紧急停机操作必须要求二次确认(弹窗确认或长按按钮),防止误触 | 用户点击紧急停机按钮 | 弹出确认弹窗,确认后下发停机指令 | P0 | UI测试 |
| APP-S-005 | App应在GPS/RTK信号异常时在状态栏显示黄色/红色警示图标,若卫星定位也不可用则弹窗提示"请谨慎飞行"并建议降落 | RTK丢失/卫星数不足 | 图标变色+弹窗提示 | P0 | 信号模拟测试 |
| APP-S-006 | App应在飞行器电机异常(如断桨检测)时立即弹出告警,提示"动力异常,请立即降落"并高亮返航/降落按钮 | 飞控上报电机/电调异常 | 告警弹窗+声音+振动 | P0 | 故障模拟测试 |
| APP-S-007 | App应在飞行器电池过温时弹出告警,提示用户立即遥控降落或返航(参考T100手册p43) | 电池温度超过告警阈值 | 告警弹窗+建议降落 | P0 | 温度模拟测试 |
| APP-S-008 | App应禁止在以下条件下起飞,并显示对应阻止原因:指南针未校准、GPS卫星数不足、电池电量过低、固件版本不匹配、飞行器自检未通过 | 起飞前自检 | 阻止起飞+显示具体原因 | P0 | 条件模拟测试 |
| APP-S-009 | App应对所有数据传输(云端同步、固件下载)使用HTTPS加密传输,防止中间人攻击和数据篡改 | 任何网络数据传输 | 强制HTTPS | P0 | 安全审计 |
| APP-S-010 | App应实现用户账号登录机制,敏感操作(GEO解锁、设备解绑、远程指令)需账号认证 | 敏感操作触发 | 要求登录验证 | P0 | 安全测试 |
6. 合规需求
| 编号 | 法规/标准 | 需求描述 | 优先级 | 认证周期预估 |
|---|---|---|---|---|
| APP-C-001 | 个人信息保护法 | App应符合《个人信息保护法》要求,收集用户位置、账号等个人信息须取得用户明确同意,提供隐私政策说明 | P0 | — |
| APP-C-002 | 数据安全法 | App存储的飞行数据(轨迹、地块信息)涉及地理信息安全,云端存储须使用中国境内服务器 | P0 | — |
| APP-C-003 | 测绘法 | App使用的地图服务须来自具有测绘资质的地图服务商(高德/百度/腾讯),不得使用未经审批的境外地图数据 | P0 | — |
| APP-C-004 | GB/T 43071-2023 | App应支持记录和导出喷洒作业数据(时间、地块、用药量),满足植保作业可追溯性要求 | P0 | — |
| APP-C-005 | 无人机实名登记 | App应集成无人机实名登记引导功能,协助用户完成民航局实名登记(参考T100手册p3) | P0 | — |
7. 接口需求
| 接口编号 | 对端子系统 | 接口类型 | 详细定义文档 | 说明 |
|---|---|---|---|---|
| APP-I-001 | 遥控器硬件 (RC) | 网卡接口 + Linux Input | ICD-06-V0.2 | App通过网卡发送/接收MAVLink和视频流,通过Input读取摇杆/按键 |
| APP-I-002 | 飞控系统 (FC) | MAVLink over 4G | ICD-07-V0.1 | App通过4G远程通道直接与飞控通信(增强模式) |
| APP-I-003 | 地图服务商 | HTTPS REST API | — | 在线地图瓦片加载、POI查询、坐标转换 |
| APP-I-004 | 云平台 | HTTPS REST API | [TBD] | 用户账号、设备管理、作业数据同步、GEO数据库更新 |
| APP-I-005 | 充电器 (C12000) | USB-C(经遥控器中转) | ICD-06-V0.1 | 充电器激活、固件升级、状态查看 |
8. 约束与假设
8.1 设计约束
- 硬件约束:App运行于遥控器内置Android平台,CPU/GPU/内存资源有限,须优化图形渲染和内存占用
- 屏幕约束:7.02寸固定尺寸屏幕(1920×1200),无需适配其他屏幕尺寸;户外强光使用场景要求高对比度UI
- 网络约束:农田环境可能无网络覆盖,所有核心飞行和作业功能须离线可用;地图和云同步功能仅在有网络时可用
- 接口约束:App直接通过底层网卡与飞控进行MAVLink通信,不经RC固件中转;摇杆/按键通过标准Android InputEvent读取
- 成本约束:地图服务须控制API调用成本,优先使用离线地图方案
8.2 假设条件
- 假设遥控器Android系统提供稳定的驱动接口(网卡、Input设备、sysfs),在V1.0开发周期内不发生重大变更
- 假设底层网卡能够稳定提供≥5Hz的MAVLink遥测数据和≥720p的RTP图传视频流
- 假设遥控器内置存储空间≥32GB,其中至少8GB可用于App数据(离线地图、作业记录等)
- 假设遥控器内置GPS模块可提供遥控器自身定位(用于遥控器打点功能)
- 假设V1.0版本仅支持单机单控模式,多机协同功能不在本版本范围内
9. 验收标准
9.1 种子用户版(V1.0,10月交付)必须通过项
| 测试项 | 通过标准 | 对应需求编号 |
|---|---|---|
| App启动与稳定性 | 冷启动≤5秒,连续运行8小时无崩溃 | APP-P-001, APP-P-010 |
| 图传显示 | 图传画面流畅,端到端延迟≤200ms | APP-P-004 |
| 大田航线规划与执行 | 规划100亩地块航线≤3秒,执行航线偏差≤0.5m | APP-F-201, APP-P-006 |
| AB点作业 | 记录AB点→生成航线→自动喷洒完整流程通过 | APP-F-202 |
| 手动作业 | 基础/增强模式手动操控喷洒正常 | APP-F-205 |
| 断点续喷 | 退出作业后恢复,断点坐标偏差≤0.5m | APP-F-302, APP-F-303 |
| 作业记录 | 作业数据完整记录并可导出 | APP-F-301, APP-F-310 |
| 离线功能 | 断网环境下飞行控制、航线执行、作业记录正常工作 | APP-F-004 |
| 安全告警 | 低电量/失控/避障触发时告警弹窗正确显示 | APP-S-001~003 |
| 飞行前检查 | 起飞前检查清单正常引导,异常条件正确阻止起飞 | APP-F-601, APP-S-008 |
| RTK配置 | D-RTK基站和网络RTK配置后定位精度达标 | APP-F-410 |
| 传感器校准 | 指南针/IMU校准流程引导完整可用 | APP-F-408 |
| 流量校准 | 流量计校准功能正常 | APP-F-409 |
9.2 应当通过项
| 测试项 | 通过标准 | 对应需求编号 |
|---|---|---|
| 果树航线作业 | 果树航线规划+3D视图基本可用 | APP-F-203 |
| 多地块连续作业 | 多地块顺序执行正常 | APP-F-305 |
| 作业统计报表 | 按日/周/月统计数据准确 | APP-F-307 |
| OTA固件升级 | 飞控/电调/遥控器固件升级流程完整 | APP-F-403 |
| KML导入导出 | KML文件导入地块边界正确 | APP-F-210 |
| UI易用性 | 种子用户培训后30分钟内独立完成一次完整作业 | Master PRD B-03 |
9.3 可延后项
| 测试项 | 计划版本 | 对应需求编号 |
|---|---|---|
| 航测作业 | V1.5 | APP-F-204 |
| 处方图变量喷洒 | V1.5 | APP-F-213 |
| 高清地图云端同步 | V1.5 | APP-F-506 |
| 虚拟摇杆 | V2.0 | APP-F-108 |
10. 待决事项 (TBD)
| 编号 | 事项描述 | 责任人 | 期望决定日期 | 影响范围 |
|---|---|---|---|---|
| TBD-APP-001 | T100实际图传延迟测试值,用于确定APP-P-004目标值 | 测试团队 | 2025-06 | 图传性能指标 |
| TBD-APP-002 | AR8131虚拟网卡接口规格确认(设备名、IP段、RSSI读取方式) | 驱动工程师 | 2025-05 | App通信架构设计 |
| TBD-APP-003 | 地图服务商选型(高德/百度/腾讯)及商务合同签署 | 产品/商务 | 2025-05 | 地图功能开发 |
| TBD-APP-004 | 云平台架构设计(用户系统、设备管理、GEO数据库、数据同步) | 后端团队 | 2025-06 | 联网功能开发 |
| TBD-APP-005 | App UI/UX详细设计稿(交互设计师输出Figma原型) | UI团队 | 2025-05 | UI开发 |
| TBD-APP-006 | App是否需要支持外接Android平板(非遥控器)运行场景 | 产品经理 | 2025-05 | 平台适配范围 |
| TBD-APP-007 | 4G远程控制功能的安全认证方案细节(ICD-07相关) | 安全团队 | 2025-06 | 远程控制安全 |
附录
附录A:需求追溯矩阵
| 子系统需求编号 | 系统级需求来源 | 验证方式 | 验证状态 |
|---|---|---|---|
| APP-F-001~007 | 项目总纲、SYS-F-040 | 功能测试 | 未验证 |
| APP-F-101~110 | SYS-F-001/002/010/022 | 功能测试 | 未验证 |
| APP-F-201~215 | SYS-F-010~018 | 实地作业测试 | 未验证 |
| APP-F-301~310 | SYS-F-015~018, SYS-C-004/032 | 数据验证 | 未验证 |
| APP-F-401~413 | SYS-F-041/042/044, SYS-S-014 | 功能测试 | 未验证 |
| APP-F-501~507 | SYS-F-014 | 功能测试 | 未验证 |
| APP-F-601~607 | SYS-F-023, SYS-S-024, SYS-C-001/002 | 流程测试 | 未验证 |
| APP-P-001~012 | 性能基准 | 性能测试 | 未验证 |
| APP-S-001~010 | SYS-S-001~007 | 安全测试 | 未验证 |
| APP-C-001~005 | SYS-C-001~004 | 合规审查 | 未验证 |
