ArduPilot开源飞控之硬件SBC分析

news2024/11/29 12:42:53

ArduPilot开源飞控之硬件SBC分析

  • 1. 源由
  • 2. Companion Computer
    • 2.1 APSync【不推荐,无更新】
    • 2.2 DroneKit【不推荐,无更新/SDK】
    • 2.3 FlytOS【不推荐,闭源】
    • 2.4 Maverick【不推荐,闭源】
    • 2.5 ROS【专门讨论,开源/复杂】
    • 2.6 Rpanion-server【推荐,简单】
    • 2.7 BlueOS【推荐,完备】
  • 3. Turnkey Solutions
    • 3.1 Horizon31 - PixC4-Jetson
    • 3.2 Horizon31 - PixC4-Pi
    • 3.3 UAVcast-Pro - Raspberry Pi software for LTE / WiFi Drones
    • 3.4 XBStation - Platform For Internet Drone Base On Real Time 4G/5G Connectivity
  • 4. 总结
  • 5. 参考资料

1. 源由

随着当下的技术发展,开源无人机的技术日趋成熟!

因此,如何来完成一架DIY的开源无人机,相信一定是大家感兴趣的。

根据以下文档,资料的研究:

  • ArduPilot开源飞控之Companion Computers简单分析
  • ArduPilot - Companion Computers
  • ArduPilot - Turnkey Companion Computer Solutions

整理、汇总、分析SBC的硬件形态,以便提供普适性更好的基础硬件环境,用于后续的研究、开发、适飞。

2. Companion Computer

2.1 APSync【不推荐,无更新】

最近一次更新(Jun 30, 2022):ROS Navigation: Updated navigation params

主要功能:APSync 开源代码库

  • WiFi Telemetry
  • DataFlash logging
  • Real-time video streaming

支持硬件:

  • Raspberry Pi 3
  • NVidia TX1
  • NVidia TX2
  • Intel Edison

2.2 DroneKit【不推荐,无更新/SDK】

最近一次更新(Jun 15, 2023):Make HEARTBEAT handler ignore non-vehicle HEARTBEATs

主要功能:DroneKit SDK开源代码库

  • Python SDK for MAVLink development

支持硬件:

  • Linux based board

2.3 FlytOS【不推荐,闭源】

主要功能:

  • FlytOS, Drone APIs and SDKs for building high-level drone applications

支持硬件:

  • Raspberry Pi 3
  • Odroid XU4
  • NVidia TX1
  • Intel Edison
  • Intel Aero
  • FlytPOD

2.4 Maverick【不推荐,闭源】

主要功能:

  • Maverick商业系统闭源

支持硬件:

  • Raspberry Pi 1/2/3/Zero/Zero W/Model A/B 3+/4
  • Jetson Nano
  • Aaeon Up
  • NVidia TX1
  • NVidia TX2

2.5 ROS【专门讨论,开源/复杂】

主要功能:ROS - Robot Operating System

支持硬件:无明确指定硬件,系统是基于Linux的。

2.6 Rpanion-server【推荐,简单】

最近一次更新(Feb 11, 2024):Video: Fix stream saving for CSI cameras

主要功能:Rpanion-server系统

  • Flight Controller telemetry forwarding
  • Network control - configurable Wifi and Ethernet
  • Video streaming
  • Telemetry log management
  • NTRIP streaming to flight controller

支持硬件:

  • Raspberry Pi 2/3/3+/4
  • Intel Edison

2.7 BlueOS【推荐,完备】

最近一次更新(Feb 15, 2024):core: services: ardupilot_manager: AbstractRouter: Add better message…

主要功能:BlueOS开源代码

  • Ardupilot固件更新/参数调整
  • 支持Linux命令行/配置
  • 日志记录
  • 支持MAVLink
  • 支持TCP/UDP串口
  • 支持UDP NMEA Injector
  • 支持摄像头高清服务

支持硬件:

  • Raspberry Pi 3/3+/4

3. Turnkey Solutions

3.1 Horizon31 - PixC4-Jetson

The PixC4-Jetson is a professional-quality NDAA Compliant Flight Management Unit (FMUv5) which supports ArduPilot and is tightly integrated with an Nvidia Jetson (Nano, Xavier NX or TX2 NX) SBC and peripheral support system (USB, MIPI, Ethernet, M.2 slot, etc.).

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.2 Horizon31 - PixC4-Pi

The PixC4-Pi is a professional-quality NDAA Compliant Flight Management Unit (FMUv5) which supports ArduPilot and is tightly integrated with a Raspberry Pi 4 compute module and peripheral support system (USB, MIPI, Ethernet, M.2 slot, etc.).

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.3 UAVcast-Pro - Raspberry Pi software for LTE / WiFi Drones

最近一次更新(Jul 26, 2022):spellling

主要功能:UAVcast-Pro, uavcast开源代码

  • UDP & TCP Telemetry
  • Connect Flight Controller to RPI by USB => USB or Telem => GPIO
  • UDP & TCP Video Stream
  • HD Video
  • Custom Video Pipelines
  • VPN with NAT Traversal (Zerotier)
  • Multiple Telemetry Destinations

支持硬件:

  • Model Pi0w - (with Raspian stretch lite or desktop)
  • Model Pi2 - (with Raspian stretch lite or desktop)
  • Model Pi3 - (with Raspian stretch lite or desktop)

3.4 XBStation - Platform For Internet Drone Base On Real Time 4G/5G Connectivity

主要功能:XBStation, 闭源

  • UDP & TCP Telemetry
  • HD Video
  • Multiple Vehicles Control with MissionPlanner
  • Sharing Telemetry Data and Video Streaming to Your Partners/Customers
  • Realtime Vehicle Informations (GPS, Battery, Roll, Pitch, Yaw, …) API
  • HD Streaming Live ArduPilot Drone Footage to Your Application/Youtube/Facebook
  • OpenVPN
  • XB Server for reliable connections

支持硬件:

  • Raspberry Pi 2/3B/3B+/4
  • Odroid XU4

4. 总结

从上述硬件SBC设计规格、开源支持情况、功能特性等看:

  1. TrunKey Solutions 整体会更加偏向产品化,功能完善
  2. Companion Computer 存在较多长时间不再更新Git库,但也存在研究性精简CC系统
  3. NDAA Compliant 产品架构设计完善,规格完备,规划周祥
  4. 发展趋势的角度:高清摄像头/AI智能分析/高规格飞控/中远距离控制 系统级集成应用

暂时没有其他想法,不过拓展了一下眼界,思维层面上有了更多的参考和依据。

5. 参考资料

【1】ArduPilot开源飞控之Companion Computers简单分析
【2】ArduPilot开源代码之CompanionComputer上天计划
【3】ArduPilot开源飞控系统之简单介绍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1450128.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【STM32 CubeMX】串口编程DMA

文章目录 前言一、DMA方式1.1 DMA是什么1.2 CubeMX配置DMA1.3 DMA方式函数使用DMA的发送接收函数 总结 前言 在嵌入式系统中,串口通信是一项至关重要的功能,它允许单片机与外部设备进行数据交换,如传感器、显示器或其他设备。然而&#xff0…

基于GPT-4一键完成数据分析全流程的AI Agent: Streamline Analyst

大型语言模型(LLM)的兴起不仅为获取知识和解决问题开辟了新的可能性,而且催生了一些新型智能系统,例如旨在辅助用户完成特定任务的AI Copilot以及旨在自动化和自主执行复杂任务的AI Agent,使得编程、创作等任务变得高效…

每日OJ题_递归②_力扣21. 合并两个有序链表

目录 力扣21. 合并两个有序链表 解析代码 力扣21. 合并两个有序链表 21. 合并两个有序链表 难度 简单 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 [1,2,4], l2 [1,3,4]…

Three.js学习9:Three.js 响应式设计

当浏览器窗口尺寸变化的时候,Three.js 渲染的场景,也就是 canvas 不会变化。 让 canvas 随着窗口的尺寸变化,可以利用 window 对象的 resize 事件实现响应式变化。 window.onresize function(){winH window.innerHeight;winW window.inn…

leetcode:343.整数拆分

解题思路: 拆分的越多越好(暂且认为),尽可能拆成m个近似相等的数,会使得乘积最大 dp含义:将i进行拆分得到最大的积为dp[i] 递推公式:j x dp[i-j](固定j,只通过凑dp[i-j]进而实现所…

C++ 动态规划 计数类DP 整数划分

一个正整数 n 可以表示成若干个正整数之和,形如:nn1n2…nk ,其中 n1≥n2≥…≥nk,k≥1 。 我们将这样的一种表示称为正整数 n 的一种划分。 现在给定一个正整数 n ,请你求出 n 共有多少种不同的划分方法。 输入格式 共一行&…

SpringCloud第二天

1.Nacos配置管理 Nacos除了可以做注册中心,同样可以做配置管理来使用。 1.1.统一配置管理 当微服务部署的实例越来越多,达到数十、数百时,逐个修改微服务配置就会让人抓狂,而且很容易出错。我们需要一种统一配置管理方案&#x…

【AIGC】Stable Diffusion之模型微调工具

推荐一款好用的模型微调工具,cybertron furnace 是一个lora训练整合包,提供训练 lora 模型的工具集或环境。集成环境包括必要的依赖项和配置文件、预训练脚本,支持人物、二次元、画风、自定义lora的训练,以简化用户训练 lora 模型…

Linux中sigaction函数和SIGCHLD信号的使用

sigaction函数: 函数说明:注册一个信号处理函数 函数原型:int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact); 函数参数: signum:捕捉的信号act:传入参数,…

【C++笔记】第一阶段:C++基础入门

C基础入门 1 C初识1.1 创建一个C程序1.1.1 创建项目1.1.2 创建文件1.1.3 编写代码1.1.4 运行程序 1.2 注释1.3 变量1.4 常量1.5 关键字1.6 标识符命名规则 2 数据类型2.1 整型2.2 sizeof关键字2.3 实型(浮点型)2.4 字符型2.5 转义字符2.6 字符串型2.7 布…

单源最短路建图方式例题整理

1129. 热浪(活动 - AcWing) 思路:题目只是加了一个背景,但实际上还是很裸的单源最短路问题。我们有四种写法,bellman_ford算法时间复杂度不如spfa,而且这里对边数没有限定,所以没必要使用bellma…

爱上JVM——常见问题:JVM组成(一)

1 JVM组成 1.1 JVM由那些部分组成,运行流程是什么? 难易程度:☆☆☆ 出现频率:☆☆☆☆ JVM是什么 Java Virtual Machine Java程序的运行环境(java二进制字节码的运行环境) 好处: 一次编写&…

【AIGC】Stable Diffusion的模型入门

下载好相关模型文件后,直接放入Stable Diffusion相关目录即可使用,Stable Diffusion 模型就是我们日常所说的大模型,下载后放入**\webui\models\Stable-diffusion**目录,界面上就会展示相应的模型选项,如下图所示。作者…

【JAVA-Day81】 线程休眠: Java 中暂停线程执行的方法 ⏸️

线程休眠: Java 中暂停线程执行的方法 ⏸️💤 线程休眠: Java 中暂停线程执行的方法 ⏸️💤摘要 📝引言 🚀正文 📚一、什么是线程休眠 ⏸️二、线程什么情况下会休眠 ❓三、模拟线程休眠 &#…

jenkins-maven环境的安装

jenkins-maven环境的安装

leetcode 160 相交链表

题目 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结…

Gemini 1.5 Pro揭秘:Google DeepMind新一代AI模型如何突破千万级别词汇限制?

Gemini 1.5 Pro 发布! 这款模型凭借其超长的上下文处理能力脱颖而出,支持10M tokens。 它的多模态特性意味着,无论面对多么庞大复杂的内容,Gemini 1.5 Pro都能游刃有余地应对。 在AI的世界里,上下文的理解如同记忆的…

【类与对象(1)】类的引入、访问及封装、定义、作用域、实例化、类大小的计算、this指针

1.类的引入 C兼容了C语言结构体的用法,但是同时又升级成了类。结构体中只能定义变量,类中不仅可以定义变量,还可以定义函数。 例如,数据结构中实现栈,结构体stack中只定义了变量,要实现的函数在结构体外定…

npm使用国内淘宝镜像(最新地址)

目录 前言 一、命令配置 二、使用cnpm安装 三、常见包地址 四、总结 往期回顾 前言 我们前端程序员在使用国外的镜像源速度很慢并且容易下载失败,有时候需要尝试多次才有可能下载成功,很麻烦,但是可以切换为国内镜像源,下…

Node.js开发-express框架

express框架 1) 介绍2) express 路由3) express 响应设置4) express 其他响应5) express中间件6) 静态资源中间件7) 获取请求体数据 body-parser8) Router 路由模块化9) EJS 模板引擎 1) 介绍 express 是一个基于 Node.js 平台的极简、灵活的 WEB 应用开发框架,官方…