当前位置: 首页 > news >正文

一键起飞条件分析

一键起飞条件分析

根据代码分析,一键起飞功能涉及前端检查后端校验用户确认三个层面的条件约束:


一、前端条件检查

1. 电量限制

文件:[droneCommon.ts](file:///d:/java/Dji/dji-cloud-main/wvp-ui/src/views/auth/system/air/components/droneCommon.ts#L45-49)

exportconstTAKEOFF_MIN_BATTERY_PERCENT=30exportfunctionisTakeoffBlockedByBattery(osd:any):boolean{constbattery=osd?.battery?.capacityPercentreturnNumber(battery)<=TAKEOFF_MIN_BATTERY_PERCENT}

条件:电池电量 ≤ 30% 时禁止起飞


2. 信号质量检查

文件:[droneCommon.ts](file:///d:/java/Dji/dji-cloud-main/wvp-ui/src/views/auth/system/air/components/droneCommon.ts#L52-71)

检查项阈值处理方式
电量警告30% < 电量 < 60%警告提示
搜星质量RTK/GPS 数量 < 10警告提示

3. 多机高度冲突检测

文件:[droneCommon.ts](file:///d:/java/Dji/dji-cloud-main/wvp-ui/src/views/auth/system/air/components/droneCommon.ts#L80-100)

条件:多架次无人机之间的安全起飞高度返航高度需间隔10米,否则冲突检测失败。


二、后端核心校验

1. 起飞条件校验(核心)

文件:[ControlServiceImpl.java](file:///d:/java/Dji/dji-cloud-main/dji-cloud/wvp-server/src/main/java/com/gbcom/wvp/dji/control/service/impl/ControlServiceImpl.java#L162-173)

privatevoidcheckTakeoffCondition(StringdockSn){Optional<DeviceDTO>dockOpt=deviceRedisService.getDeviceOnline(dockSn);// 条件1:设备必须在线 且 状态必须是 IDLEif(!dockOpt.isPresent()||DockModeCodeEnum.IDLE!=deviceService.getDockMode(dockSn)){thrownewRuntimeException("The current state does not support takeoff.");}// 条件2:必须获取飞行控制权HttpResultResponseresult=seizeAuthority(dockSn,DroneAuthorityEnum.FLIGHT,null);if(HttpResultResponse.CODE_SUCCESS!=result.getCode()){thrownewIllegalArgumentException(result.getMessage());}}

后端起飞条件

条件说明失败时异常信息
设备在线无人机/基站必须处于在线状态“The current state does not support takeoff.”
设备空闲基站状态必须为IDLE“The current state does not support takeoff.”
飞行权限平台必须获取飞行控制权权限获取失败信息

2. 飞行配置限高检查

文件:[ControlServiceImpl.java](file:///d:/java/Dji/dji-cloud-main/dji-cloud/wvp-server/src/main/java/com/gbcom/wvp/dji/control/service/impl/ControlServiceImpl.java#L189-238)

配置项检查规则失败时异常信息
安全起飞高度≤ 系统限高配置“安全起飞点高度超过限高”
返航高度≤ 系统限高配置“返航高度超过限高”
目标高度≤ 系统限高配置(默认20米)“目标高度超过限高”

三、用户确认(UI层)

起飞前检查弹窗

文件:[takeoff-check-modal.vue](file:///d:/java/Dji/dji-cloud-main/wvp-ui/src/views/auth/system/air/components/takeoff-check-modal.vue#L1-152)

必须确认的信息

项目说明
安全起飞高度(ALT)默认为50米
返航高度(ALT)默认为100米
目标点高度可选显示
失联动作非M300/M350机型显示

强制要求:必须勾选“已确认周边环境安全”复选框才能点击"立即执行"。


完整起飞条件流程图

用户点击"一键起飞" ↓ ┌─────────────────────────────────────┐ │ 前端检查层 │ │ ├─ 电量 ≤ 30% ? → 禁止起飞 │ │ ├─ 搜星质量 < 10 ? → 警告 │ │ └─ 多机高度冲突检测 → 冲突则提示 │ └─────────────────────────────────────┘ ↓ 通过 ┌─────────────────────────────────────┐ │ UI确认层 │ │ ├─ 显示起飞配置信息 │ │ └─ 必须勾选"周边环境安全"确认 │ └─────────────────────────────────────┘ ↓ 确认 ┌─────────────────────────────────────┐ │ 后端校验层 │ │ ├─ 设备在线 + 状态IDLE ? │ │ ├─ 飞行权限获取成功 ? │ │ └─ 配置高度 ≤ 系统限高 ? │ └─────────────────────────────────────┘ ↓ 通过 ┌─────────────────────────────────────┐ │ 发送起飞命令到无人机 │ └─────────────────────────────────────┘

总结

一键起飞需同时满足以下全部条件

层级条件严格程度
前端硬限制电池电量 > 30%必须满足
前端警告搜星质量 ≥ 10建议满足
前端冲突检测高度间隔 ≥ 10米(多机场景)必须满足
用户确认勾选环境安全确认必须满足
后端状态校验设备在线 + 状态IDLE必须满足
后端权限校验获取飞行控制权必须满足
后端配置校验各高度值 ≤ 系统限高必须满足
http://www.jsqmd.com/news/996283/

相关文章:

  • Django图书管理系统实战源码包:含MySQL建库脚本、带注释Python代码与运行截图
  • 基于SpringBoot+Vue的民族婚纱预定系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】
  • KMS激活技术:从神秘黑盒到透明工具箱的认知升级
  • 从DQN到DDPG:深入理解‘演员-评论家’如何解决连续动作难题
  • 从SORT到DeepSORT:深入浅出图解多目标跟踪中的‘数据关联’与‘ID保持’难题
  • AI Agent 人机协作:从自主决策到人工审批的混合编排模式
  • 2026杭州商超卡回收市场深度盘点:谁在诚信经营?五大维度实测六家本地回收机构 - 优质品牌商家
  • JVM对象创建与内存分配机制深度解析
  • CANoe高手进阶:如何像搭积木一样管理你的工程文件?.vxp、.tse、.cdd等核心文件实战解析
  • 当InfiniBand网络“大脑”宕机时:深入理解Mellanox SM HA的故障切换机制与业务影响
  • 混合密度网络与条件流匹配:概率建模与风电预测实践
  • 从视频到标签:利用Labelme高效构建视频标注工作流
  • 从手机芯片到显卡:看懂宣传页里的算力(TOPS/FLOPS)到底靠不靠谱
  • 告别103Ω高阻抗!手把手教你用Smith圆图优化不等分Wilkinson功分器设计
  • 汽车ECU诊断会话控制:10服务(0x10)从入门到实战,手把手教你玩转UDS诊断
  • Python+Django实战|线上问卷与投票调研系统:自定义题型、问卷发布、链接分享、答卷收集、数据可视化、报表导出
  • openclaw数字员工解决方案哪个技术强
  • 暗黑破坏神2存档编辑器:三步可视化修改你的游戏角色
  • 2026年广州除甲醛公司哪家效果好?地域化服务对比与避坑指南 - 观域传媒
  • mbedtls RSA签名验签踩坑记:PKCS#1 V1.5和V2.1填充模式到底怎么选?
  • 如何用Arduino打造低成本多功能硬件工具:Flopper Ziro完整指南
  • 别再只盯着BIOS了!聊聊主板上的‘隐形管家’:Embedded Controller (EC) 到底管啥?
  • Nucleus Co-Op完整教程:Windows单机游戏分屏多人本地同乐终极指南
  • 细胞衰老的机制概述
  • 2026年西北地区钢结构加工厂怎么选?从资质、产能到案例的全维度拆解 - 优质品牌商家
  • HarmonyOS6 Flex 垂直布局实战:个人中心分组菜单从零搭建
  • 别再只盯着CD和EMD了!点云补全评估指标F-Score与DCD实战解读(附代码示例)
  • 原神祈愿记录终极导出指南:免费工具让你掌握抽卡全数据
  • Charles:软件能力深度解析 / 跨平台 HTTP/HTTPS 代理调试工具 / 客户端与互联网之间的中间人代理 / 拦截、查看、篡改所有网络流量
  • 从np.zeros到np.ones/np.full:NumPy数组初始化全家桶保姆级指南