Ardupilot开源无人机之Geek SDK讨论
- [1. 源由](#1. 源由)
- [2. 假设](#2. 假设)
- [3. 思考](#3. 思考)
-
- [3.1 结构形态](#3.1 结构形态)
- [3.2 有限资源](#3.2 有限资源)
- [3.3 软硬件构架](#3.3 软硬件构架)
- [4.Ardupilot构架 - 2024kaga Update](#4.Ardupilot构架 - 2024kaga Update)
- [5. 讨论](#5. 讨论)
-
- [5.1 话题1:工作模式](#5.1 话题1:工作模式)
- [5.2 话题2:关键设计](#5.2 话题2:关键设计)
- [5.3 话题3:产品设计](#5.3 话题3:产品设计)
- [6. Geek SDK - OpenFire](#6. Geek SDK - OpenFire)
-
- [6.1 开源技术](#6.1 开源技术)
- [6.2 品牌概念](#6.2 品牌概念)
- [6.3 产品清单](#6.3 产品清单)
- [6.4 DEMO视频](#6.4 DEMO视频)
1. 源由
其实这个标题是有点大的,或者说这里更多的吸引眼球。
而真正的目的,还是想围绕具有广泛群众基础,成熟、可靠、安全的无人机开源项目,讨论一些无人机展望的话题,根据话题想做一个快速原型Demo。
所以,这个标题在个人看来并不重要,重点是期望在开源无人机项目上,考虑无人机的架构发展趋势,在应用和性能设计层面的思考,更好,更快的实现项目落地。
2. 假设
开放性的话题,可以天马行空,相对来说也不容易达成一些共识,或者怎么说都有道理。
因此,缩小一些范围或者具体化一些内容,使得在边界范围内进行讨论,会能够更加聚焦话题。
- 电子硬件:能够支撑开源软件的硬件,比如:穿越机飞控
- 开源软件:具备开源权限的软件代码,比如:ardupilot
- 结构形态:能够匹配开源软件飞机结构,比如:多旋翼
3. 思考
3.1 结构形态
话说无人机结构形态,一拍脑袋:固定翼、多旋翼、VTOL、直升机等等
概念角度简单可以把有人飞机的人"去掉",加之进行小型化,通常就是现在我们看到的,比较"时髦"的无人机,比如:全球鹰、DJI无人机、穿越机等
无人机首先实际解决的问题就是飞行,而这个问题最为直接的底层理论就是空气动力学,是飞机结构形态在飞行中遇到的控制问题。
显然,牛顿力学/空气动力学是能够初步一探这个问题的。感兴趣的朋友,倒是有学习笔记:
当然,这里讨论的话题并非围绕这个结构形态展开,因为研究飞行,飞行器结构有着悠久的历史,成熟的理论。
3.2 有限资源
承上启下,围绕本文标题和目标,谈谈有限资源的问题。
- 无人机结构并非本人专业。
- 物理/化学/数学,几乎万能。哪怕是芯片也无非是P/N沟道,电子跃迁等问题,电子在量子力学中更是使用了概率表达方式。
- 研发在一些老板眼中,也是万能。因为,研发可以去研究问题解决问题,也可以做前台,甚至去扫地。 -- 呵呵,无非没有理解有限资源的利用问题。
好,回到有限资源上,我们最通俗表达:"专业的人解决专业的问题"。
毕竟去研究一个领域,需要大量的时间、精力、资源,会碰到大量的具体问题和解决方法。所以在领域方面,通常会有深度与广度的讨论:矛与盾,鱼与熊掌不可都得。
这就是典型的有限资源问题。名人名言:
- "吾生也有涯,而知也无涯。" ------ 人的生命是有限的,而知识是无限的。用有限的生命去追求无限的知识显然是不可能的,因此需要有选择地学习和追求真正有价值的东西。
- "学无止境,力有所及。" ------ 学习永无止境,但人的能力总有一个限度,需量力而行。
- "Art is long, life is short." ------ 技艺无涯,而人生短暂。
希望大家了解,有限资源的使用一定有侧重面,大而全,十全十美的东西在人类有限生命时间内是不存在的。专注于重点,把握方向,有所取舍。
3.3 软硬件构架
当前开源无人机飞行控制角度已经相对成熟,当然也有一些极限飞行控制方面的问题,但是通常应用场景是能够满足的。
更多目前急需拓展和面对的,将会是传感器的扩展以及智能视频分析方面的瓶颈性能问题,以及满足行业应用。
数据总线:引入主干总线,适用于高速、大数据分析
Ethernet (backbone高速总线,可用于视频及伴机电脑)
├──> TTL (穿越机,传统飞控总线)
└──> CAN (更加灵活,更多设备,更加可靠)
硬件设备:配合主干总线,以及BLHELi非开源软件设备带来的问题
- Ethernet switch
- 开源ESC:AM32
4.Ardupilot构架 - 2024kaga Update
围绕全球著名的Ardupilot开源飞控代码项目后续整体架构介绍(Andrew Tridgell ):
[2024 kaga] Andrew Tridgell Systems update
5. 讨论
5.1 话题1:工作模式
在互联网日益发展的当今行业应用,分化为两个极端:在线 & 离线 & 在/离线(hybrid)
- 在线模式:作为端设备,与系统实时连接,执行任务
- 离线模式:根据模型、算法进行自主飞行控制,执行任务
- Hybrid模式:(在线/离线) 混合模式,具备执行任务的鲁棒性,确保高质量完成任务
通常无人机都是在Hybrid模式下工作,但是依赖的程度或多或少有所差异。
- 航模大部分时间通过RC控制链路执行在在线模式;当丢失RC信号后,进入离线模式(RTL/Land/Drop)
- 无人机、植保机通过电传信号,工作在Hybrid模式,通常电传传递的是任务指令,而非飞行操控指令;当丢失电传信号,进入离线模式(RTL/Land)
- 特殊应用类无人机,比如:自动拍照,跟拍无人机 (根据姿势、菜单选择当前工作模式)
5.2 话题2:关键设计
结合无人机软硬件架构,并满足上述工作模式需求,就需要解决以下几方面问题:
- 通讯:可靠/距离/性能
- 传感:种类/融合/可信度
- 智能:VIO/AI/SLAM
- 成本:应用&部署
- 开源:拓展
注:私有设备,尤其是非开源软件的私有设备,会存在巨大的不稳定性问题,比如:BLHELi事件。
5.3 话题3:产品设计
产品的概念比较广泛,通俗的可以理解:
- 单品:单一产品,与周边设备有明确的界限
比如:穿越机、记录类无人机等
- 系统:多个产品形成的系统解决方案
比如:救援无人机、巡检无人机等
参考:
【2】无人机救援系统基本组成
【3】Ardupilot & OpenIPC & 基于WFB-NG构架分析和数据链路思考
6. Geek SDK - OpenFire
通过上面的思考、讨论,想构建一套 Geek SDK
,主要应用于智能化快速原型。
注:软件是弹性部署,因此不同的部署方式应对不同的需求!
6.1 开源技术
借鉴以下技术基础,搭建 OpenFire
原型,有兴趣的朋友可以到jetson-fpv Forum参与讨论。
【2】ArduPilot开源飞控之MAVProxy深入研读系列 - 2蜂群链路
【4】Ardupilot & OpenIPC & 基于WFB-NG构架分析和数据链路思考
6.2 品牌概念
OpenFire
品牌定位和想传达的含义:
- 开放之火 //强调"开放"和"火焰"的意象,适用于追求自由、创新和激情的品牌。
- 点燃未来 //带有更具象化的意义,适合科技、教育或启发类产品。
- 烈火之焰 //星星之火可以燎原,吞噬黑暗,炽烈重生;光芒万丈,焚尽束缚,燃起希望。
6.3 产品清单
OpenFire
品牌 - 拟产品清单:
-
OpenIPC 摄像头 (数字摄像头、SSC338Q【20x20mm/25x25mm】,8812AU/EU【20x20mm/25x25mm】,天线【如棒棒糖、铜管天线】),结构25转30适配
-
OpenFire一代 OpenIPC数字接收机【结构适配,DJI/HDZero/HDO2等主流眼镜】
-
OpenFire二代 OpenIPC智能接收机【RK3588、Jetson Orin等】
6.4 DEMO视频
-
jetson-fpv开源项目
全网首台 jetson-fpv | posenet | AKM ArduRover 4.5.7