110.custom-flight-area

功能概述

上云 API 开放自定义飞行区功能。用户可以将敏感地点设定为禁飞区,并将这些信息同步给项目内的大疆机场。当无人机执行任务时,它会自动绕行禁飞区,从而确保作业的安全和规范性。本功能通过自定义飞行区文件圈定飞行器的飞行区域,点击下载自定义飞行区文件协议模板

该功能支持用户在地图上规划自定义飞行区。自定义飞行区包括两种类型:

  1. 自定义作业区:在自定义作业区内,飞行器可以起飞并进行作业,但无法飞出该区域。

  2. 自定义限飞区:在自定义限飞区外,飞行器可以进行作业,但无法飞入该区域。

交互时序图

sequenceDiagram

participant geo_service as Cloud Server
participant Dock as DJI Dock
participant Drone as Aircraft
participant web as Web Page

geo_service -->> geo_service: 打包自定义飞行区文件,上传到存储桶
geo_service -->> Dock: 通知自定义飞行区文件更新 <br/>Topic: thing/product/{gateway_sn}/services <br/>Method: flight_areas_update
Dock -->> geo_service: 拉取自定义飞行区文件信息 <br/>Topic: thing/product/{gateway_sn}/requests <br/>Method: flight_areas_get
geo_service -->> Dock: 返回云端最新的自定义飞行区信息
Dock -->> Drone: 开启飞行器,请求升级自定义飞行区数据,携带文件下载地址和文件MD5
Drone -->> Dock: 返回飞行器自身自定义飞行区的文件信息
Dock -->> Dock: 自定义飞行区文件版本判断
alt 文件版本判断一致
   Dock -->> geo_service: 上报同步完成 <br/>Topic: thing/product/{gateway_sn}/events <br/>Method: flight_areas_sync_progress
   geo_service -->> web: 返回已经完成同步状态 
else 文件版本判断不一致(不一致则以云端的版本为准)
   Dock -->> geo_service: 上报同步进行中,进入数据同步升级
   Dock -->> Drone: 从存储桶下载最新文件,上传自定义飞行区数据
   Drone -->> Dock: 发送自定义飞行区同步进度状态
   Dock -->> geo_service: 上报自定义飞行区同步进度状态 <br/>Topic: thing/product/{gateway_sn}/events <br/>Method: flight_areas_sync_progress
   geo_service -->> geo_service: 本地状态持久化处理
   geo_service -->> web: 推送自定义飞行区最新同步进度状态
end
Drone -->> Dock: 飞行器向机场推送飞行区信息
Dock -->> geo_service: 飞行区告警信息推送 <br/>Topic: thing/product/{gateway_sn}/events <br/>Method: flight_areas_drone_location
geo_service -->> web: 上报飞行器和各个区域的告警信息

接口详细实现

自定义飞行区

Last updated