无人机救援系统基本组成
无人机救援系统基本组成
- 1. 源由
- 2. 组成
- 2.1 无人机载具
- 2.1.1 多旋翼
- 2.1.2 垂起固定翼
- 2.1.3 智能避障
- 2.1.4 物资投递
- 2.2 智能吊舱
- 2.2.1 云台
- 2.2.2 高清摄像
- 2.2.3 红外热成像
- 2.2.4 激光测距
- 2.2.5 目标跟踪
- 2.3 通讯链路
- 2.3.1 超长距离通信
- 2.3.2 长距离通信
- 2.3.3 中等距离通信
- 2.4 云端系统
- 2.4.1 数据面
- 2.4.2 业务面
- 2.4.3 控制面
- 2.4.4 管理面
- 2.4.5 应用面
- 3. 总结
- 4. 参考资料
1. 源由
鉴于《无人机救援系统简单解读》初步方案主要采用开源,因此需要开源清单需要整体梳理一遍。
2. 组成

2.1 无人机载具
PX4 & Ardupilot都能胜任上述无人机载具的构建,作者这边采用了开源程度更深的Ardupilot作为例子。
2.1.1 多旋翼
略,不做展开,详见:ArduPilot开源飞控系统之简单介绍
2.1.2 垂起固定翼
略,不做展开,详见:ArduPilot开源飞控系统之简单介绍
2.1.3 智能避障
略,不做展开,详见:ArduPilot开源飞控系统之简单介绍
2.1.4 物资投递
略,不做展开,详见:ArduPilot开源飞控系统之简单介绍
2.2 智能吊舱
2.2.1 云台
- 功能:稳定摄像设备或传感器,提供多轴控制以实现平稳拍摄。
- 类型:
- 单轴云台:通常用于单方向的轻量稳定控制,适用于低成本需求。
- 双轴云台:支持上下左右的角度调整,提高图像的稳定性和拍摄灵活性。
- 三轴云台:可以实现三维空间中的完全稳定控制,是无人机和专业摄像的常见选择。
- 关键技术:(如:STorM32)
- 陀螺仪与加速度计:用于实时感知云台的姿态变化,确保摄像机在移动中的稳定性。
- 无刷电机控制:提供平滑的转动和调节,减少震动,确保画面稳定。
- 姿态算法:通过PID控制等算法快速调整云台的角度,实现抗风和稳定补偿。
- 控制接口:支持PWM、串口或I2C等多种控制接口,便于与无人机主控制器整合。
2.2.2 高清摄像
- 功能:提供高分辨率的图像采集功能,支持实时传输和高清录制。
- 类型:
- 固定高清摄像头:常用于长时间定点监控和记录,不具备变焦功能。
- 变焦高清摄像头:支持多倍光学变焦,可根据目标距离调节焦距,适合搜索和跟踪任务。
- 关键技术:(如:OpenIPC)
- 高分辨率传感器:如CMOS、CCD传感器,支持高达4K甚至8K分辨率,提供清晰的图像细节。
- 视频编码与压缩:H.264、H.265等编码技术,可在带宽有限的情况下传输高质量视频。
- 自动对焦与光圈控制:自动适应环境亮度和距离,提升成像质量。
- 低光增强与HDR:用于增强低光条件下的成像效果,保证在夜间或光照不均时的清晰度。
2.2.3 红外热成像
- 功能:通过捕捉红外辐射生成热图像,广泛应用于夜间侦查、设备温度监测和人员搜救。
- 类型:
- 定焦红外成像:焦距固定,适合大面积温度检测,覆盖范围广。
- 变焦红外成像:支持放大功能,可调节视距,适用于远距离监控和精细检查。
- 关键技术:(仅摄像头差异,仍然可以采用OpenIPC)
- 非制冷红外探测器:适用于常规监控,结构简单、成本较低。
- 制冷红外探测器:具有更高灵敏度,适合高精度和远距离的温度测量应用。
- 图像增强与伪彩处理:提升图像对比度,通过伪彩色让温差更易辨识。
- AI目标识别:结合热成像数据,通过深度学习实现自动识别与跟踪特定目标,如人体或动物。
2.2.4 激光测距
- 功能:通过发射激光并计算反射时间或反射角度测定目标距离,应用于导航、避障和地形测量。
- 类型:
- 单点激光测距:发射单束激光,测量单个点的距离。
- 激光雷达(LiDAR):发射多束激光实现多点测距,生成3D点云数据。
- 关键技术:
- 飞行时间(ToF)测距:通过测量激光脉冲的飞行时间来计算距离,适合高精度测量。
- 相位测距:使用相位偏移原理进行距离测量,适用于高频测距应用。
- 多重回波处理:支持多回波检测,用于复杂地形或多物体环境中的测距。
- 数据融合:与其他传感器(如GPS、IMU)结合,提供更精确的位置信息,增强系统导航能力。
注:含有激光导引指示功能。
2.2.5 目标跟踪
- 功能:实现对指定目标的持续跟踪与定位,常用于监控、搜救和自动巡航。
- 类型:
- 视觉跟踪:基于摄像头数据,对图像中的目标进行识别和跟踪。
- 红外跟踪:通过红外热成像设备识别并跟踪具有热辐射的目标,适合夜间或低光环境。
- 多传感器融合跟踪:融合视觉、雷达、GPS等多传感器数据,提高跟踪精度和抗干扰能力。
- 关键技术:
- 目标识别与检测:采用深度学习模型,如YOLO、SSD等,实现目标的精确识别。
- 卡尔曼滤波与粒子滤波:用于在目标移动时预测其轨迹,减少定位误差。
- 数据关联与轨迹预测:基于历史轨迹预测未来位置,避免目标丢失。
- 实时跟踪算法优化:包括运动补偿和特征匹配算法,以提升跟踪的实时性和准确度。
2.3 通讯链路
2.3.1 超长距离通信
- 频率:卫星通信(L波段、C波段、Ku波段、Ka波段等)
- L波段适合移动设备
- C波段抗雨衰性强适合地面站
- Ku和Ka波段支持高带宽视频传输,适用于高速数据传输。
- 关键技术:???这块技术有待补全
2.3.2 长距离通信
- 频率:4G LTE/5G/6G???
- 作为蜂窝网络,具备较高的传输速率和覆盖范围
- 适用于城市、郊区等大面积覆盖,具有较强的抗干扰性
- 关键技术:Linux(PPP, VPN)
2.3.3 中等距离通信
- 频率:2.4GHz、5.8GHz & 433MHz、868MHz、915MHz
- 由于较高的频率,2.4GHz和5.8GHz可以传输较高带宽的数据,但在穿透墙体、地形阻挡下信号衰减明显
- 通过中继可适当拓展工作距离和范围;在自动导航状态下,对控制链路要求不高(可引入433MHz、868MHz、915MHz控制链路补充)
- 关键技术:实时IP通讯(wfb-ng)、RC控制链路(ELRS)
2.4 云端系统
无人机云端系统可以分为多个面来协同工作,包括数据面、业务面、控制面和管理面。每个部分负责不同的任务和功能,以保障无人机与云端系统的实时交互、高效数据处理、安全控制和业务应用。以下是更详细的划分:
2.4.1 数据面
- 功能:处理无人机与云端的数据流,包括数据采集、传输、存储和计算。
- 数据采集与传输:通过数据链路接收无人机传感器数据(如图像、视频、GPS位置信息、IMU数据)并上传至云端。
- 实时数据处理:对实时数据进行预处理或分析(如图像识别、航拍视频流处理),提供飞行过程中的实时反馈。
- 大数据存储:存储无人机收集的历史数据,用于后续分析和数据挖掘。
- 数据交换与分发:数据可以通过多种方式分发给不同的用户或业务服务,支持实时和非实时需求。
- 关键技术:边缘计算、分布式存储、数据流处理框架(如Apache Kafka、Flink)等。
2.4.2 业务面
- 功能:提供面向用户的服务,处理无人机的业务逻辑,如任务管理和调度。
- 任务调度与分配:根据任务需求,调度无人机执行特定任务(如航拍、巡检、物资投送)。
- 路径规划与导航:通过云端的计算能力,为无人机提供最优航线和路径规划服务。
- 任务反馈与监控:实时监控任务执行情况,将任务状态反馈给用户,支持异常情况下的任务调整。
- 多租户支持:支持不同用户或组织对无人机的独立管理,隔离任务和数据。
- 关键技术:任务调度系统(如Celery)、路径规划算法、负载均衡等。
2.4.3 控制面
- 功能:实现无人机的指挥和控制,保障无人机操作的安全和稳定。
- 无人机通信管理:负责无人机和云端之间的双向通信链路,包括命令下发和遥测信息的接收。
- 安全策略控制:设置飞行区域限制、飞行高度、速度等参数,防止无人机进入禁飞区。
- 资源管理与控制:管理无人机的分布、状态和可用性,为各个任务提供资源分配。
- 应急响应与恢复:当检测到异常情况时(如信号丢失、电量不足),控制面负责发出指令以保障无人机的安全返回或降落。
- 关键技术:飞行控制系统(如PX4、ArduPilot)、遥测与命令链路、虚拟围栏技术(geofencing)、自动返航等。
2.4.4 管理面
- 功能:主要负责系统整体的配置管理、监控、日志分析和安全审计。
- 配置与版本管理:对无人机和系统的各项配置进行管理,确保云端和无人机软件版本一致。
- 系统监控与告警:实时监控系统和无人机的运行状态(如电池电量、温度、飞行状态等),发现异常时自动告警。
- 日志记录与审计:记录飞行过程中的日志信息,用于任务回溯、行为审计、合规分析。
- 数据分析与优化:通过分析无人机任务数据,优化飞行参数和任务调度策略,提升整体系统的效率和可靠性。
- 关键技术:日志系统(如ELK栈)、监控工具(如Prometheus)、版本管理工具(如Git)、数据分析平台等。
2.4.5 应用面
- 功能:提供基于无人机和云端数据的定制化应用,如地图生成、智能监控、物资配送等。
- 地图与测绘:基于无人机影像生成高清地图,用于地理信息系统(GIS)、灾害应急等场景。
- 智能监控与分析:使用无人机采集的图像数据进行智能分析,如识别异常物体、环境监控等。
- 物流与配送:支持无人机的快递或物资运输功能,通过云端协调多无人机路径。
- 关键技术:图像识别与处理(如OpenCV、深度学习模型)、GIS平台、无人机编队控制等。
3. 总结
在民用级方面:
- 2.1 无人机载具:Ardupilot
- 2.2 智能吊舱:STorM32、OpenIPC、OpenCV、JetsonAI
- 2.3 通讯链路:wfb-ng、ELRS、Linux(PPP, VPN)
- 2.4 云端系统:专家系统、互联网成熟技术
当然,云端系统切割成业务逻辑、应用分析、以及无人机控制和管理。其中能够真正出彩的地方在于应用分析或者我们通常理解的专家系统。其应用从设计、研发、运行、维护、产品EOL整个生命周期为考察对象,提供基于全生命周期的系统级专家系统,提供服务。
这种划分结构便于无人机云端系统实现功能解耦,降低复杂性、提升系统的安全性和可扩展性。其中,数据面负责数据传输与处理,业务面关注任务执行和管理,控制面保障无人机的操作安全,管理面提供系统的维护和审计功能,应用面则为特定场景提供增值服务。
这里先简单罗列下整体的思路,以及一些考量,为后续进一步的设计以及落地提供依据。实际系统会涉及很多部门(政府的,民间的,媒体的),很多信息共享,推送,所以相关利益部门都会有各种业务流程以及绩效考核(比如:反应速度,出警速度,无人机定位速度等等)。因此,也需要更多的了解需求,这里仅仅从技术,甚至是开源技术的角度再思考一些问题以及应对的方案。
希望有兴趣的朋友多多提供建议和意见,请在下面评论批评指正!
4. 参考资料
【1】无人机救援系统简单解读
【2】ArduPilot开源飞控系统之简单介绍
【3】PX4开源软件框架简明简介
相关文章:
无人机救援系统基本组成
无人机救援系统基本组成 1. 源由2. 组成2.1 无人机载具2.1.1 多旋翼2.1.2 垂起固定翼2.1.3 智能避障2.1.4 物资投递 2.2 智能吊舱2.2.1 云台2.2.2 高清摄像2.2.3 红外热成像2.2.4 激光测距2.2.5 目标跟踪 2.3 通讯链路2.3.1 超长距离通信2.3.2 长距离通信2.3.3 中等距离通信 2.…...
git入门教程
git入门教程1:git简介git入门教程2:git发展历史git入门教程3:安装配置git入门教程4:git工作流程git入门教程5:git仓库操作git入门教程6:git基本版本控制git入门教程7:git与远程仓库的交互git入门…...
AMBA:AHB_Slave_Mux的解析与HREADY、HREADYOUT
相关阅读 AMBAhttps://blog.csdn.net/weixin_45791458/category_12800219.html?spm1001.2014.3001.5482 简介 从1999年的AMBA2发布以来,AHB协议中就存在数据选择器,如图1所示的AHB2协议的总线互连。 图1 AHB2的总线互连 这幅图画得比较粗糙࿰…...
初始Linux (2) : 权限
1. su [用户名]及权限概念 Linux中有两种用户:普通用户、超级用户 超级用户可以再 linux 系统下做任何事情,不受限制;而普通用户只能做有限的事情。 可以使用指令:su -快速进入root账户,但需要输入相关密码。 超级用…...
在Mac下安装时间序列软件Hector
1.软件介绍 Hector 是一款开源软件,专用于 GNSS 时间序列数据的处理与分析,广泛应用于地球科学研究。它帮助研究人员从 GNSS 数据中提取长期趋势、周期性成分,并建模噪声特性,用于地壳形变、地震影响和气候变化等方面的研究。Hec…...
JVM1.8内存模型
一、内存模型概览 本文介绍的是JDK1.8的内存模型。1.8同1.7相比,最大的差别就是元空间取代了永久代。元空间的本质和永久代类似,都是堆JVM规范中方法区的实现。不过元空间与永久代之间最大的区别在于:元空间并不存在虚拟机中,而是…...
windows C#-类型系统(上)
C# 是一种强类型语言。 每个变量和常量都有一个类型,每个求值的表达式也是如此。 每个方法声明都为每个输入参数和返回值指定名称、类型和种类(值、引用或输出)。 .NET 类库定义了内置数值类型和表示各种构造的复杂类型。 其中包括文件系统、网络连接、对象的集合和…...
【酷狗音乐】逆向登录参数分析
mid、uuid参数 从cookie里面取值kg_mid,没有就生成 dfid也是从cookie里面取的kg_dfid 清空cookie dfid "-"也是可以的 md5加密了一个随机uuid import uuid import hashlibuuid1 str(uuid.uuid4())def md5_encrypt(text):return hashlib.md5(text.enco…...
Jenkins面试整理-Jenkins Pipeline 是什么?
Jenkins Pipeline 是一种将 Jenkins 中的持续集成和持续交付(CI/CD)流程定义为代码的方式。Pipeline 提供了一种灵活、可维护的方式,通过脚本来描述构建、测试、部署等流程。Jenkins Pipeline 使用 Groovy 作为脚本语言,并可以通过 Jenkinsfile 来定义和管理流水线。 Jenki…...
RHCE第三次实验
要求 (1)学生信息网站只有song和tian两人可以访问,其他用户不能访问。 (2)访问缴费网站实现数据加密基于https访问。 架设一台NFS服务器,并按照以下要求配置 1、开放/nfs/shared目录,供所…...
基于LORA的一主多从监测系统_4G模块上巴法云
临时添加一个更新,更换云平台为巴法云,事情的起因是因为阿里云这个老六,早上睡了一觉起来发短信告诉我云平台给我停了,得交钱,好嘛,不过也没办法现在这基本都收费,当然还有onenet可以用…...
pip使用
pip全称pip install package,是python第三方包sitepackage管理的工具,安装,卸载第三方包。安装python时可以选择安装pip,或自己安装pip 查看pip是否安装:pip --version 安装pip :pip python -m pip install --upgrade…...
Django ORM详解:外键使用(外键逻辑关联)与查询优化
Django数据库迁移 # 创建迁移 python manage.py makemigrations your_app_name # 应用迁移 python manage.py migrate # 查看迁移状态 python manage.py showmigrations # 回滚迁移 python manage.py migrate your_app_name 0001 # 修改表后,删除迁移记录和表删除迁移记录后重…...
【Python】实战:使用input()从键盘获取一个字符串,判断这个字符串在列表中是否存在(函数体不能使用in),返回结果为True或False
使用input()从键盘获取一个字符串,判断这个字符串在列表中是否存在(函数体不能使用in),返回结果为True或False def exists_in_list(input_string, str_list):# 遍历列表中的每个元素for item in str_list:if item input_string: # 如果当前元素等于输…...
【YApi】接口管理平台
一、简介 YApi 是一个用于前后端开发团队协作的 API 管理平台,帮助团队更加高效地进行 API 接口的设计、测试、文档管理和版本控制等工作。 YApi 主要功能: API 设计和管理:提供 API 设计和文档生成工具,使开发者能够轻松创建、…...
QNAP威联通NAS忘记密码怎么办?
创作立场:原创不易,拒绝搬运~ hello 大家好,我是你们的老伙伴,稳重的大王~ 如题:在使用QNAP 威联通NAS期间,如果忘记密码,怎么去找回密码呢? 每台QNAP 威联通NAS,在机器…...
MySQL FIND_IN_SET 函数详解
文章目录 1. 基本语法2. 使用场景3. 实战示例3.1 基础查询示例3.2 与其他函数结合使用3.3 动态条件查询 4. 性能考虑5. 常见问题和解决方案5.1 大小写敏感问题5.2 空值处理5.3 模糊匹配 6. 总结 1. 基本语法 FIND_IN_SET 函数的基本语法如下: FIND_IN_SET(str, st…...
【零售和消费品&厨房】厨房食材检测图像分割系统源码&数据集全套:改进yolo11-goldyolo
改进yolo11-RepNCSPELAN等200全套创新点大全:厨房食材检测图像分割系统源码&数据集全套 1.图片效果展示 项目来源 人工智能促进会 2024.10.30 注意:由于项目一直在更新迭代,上面“1.图片效果展示”和“2.视频效果展示”展示的系…...
自制田字格word
背景 孩子上小学要开始学认字了,每周有好多字要打印,要是直接拿一张A4纸去打印,字的排版就显得尤为重要,排过来排过去,总感觉不够正式。就想去网上搜一个可以下载的田字格模板。某度搜了半天,倒是搜到一堆…...
微软官方 .NET 混淆软件 Dotfuscator
微软官方 .NET 混淆软件 Dotfuscator 1、前言2、Dotfuscator 特色2.1、强大的保护2.2、不需要顾问2.3、世界一流的支持2.4、广泛的平台支持 3、Dotfuscator 功能介绍3.1、.NET Obfuscator3.2、篡改防御和提示3.3、监控性能和使用情况3.4、Silverpght XAML Obfuscatio3.5、WPF B…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...
