ardupilot开发 --- 机载计算机-软件方案 篇

马儿跑马儿不吃草

  • 0. 概述
  • APSync
  • BlueOS
  • DroneKit
  • FlytOS
  • Maverick
  • ROS
  • Rpanion-server
  • 结论

0. 概述

The Companion Computer software refers to the programs and tools that run on the Companion Computer. They will take in MAVLink telemetry from the Flight Controller and can route and process the telemetry data. Specific tutorials for popular Companion Computer software tools/suites are listed below.

  • APSync
  • BlueOS
  • DroneKit
  • FlytOS
  • Maverick
  • ROS
  • Rpanion-server

应该选哪个方案好呢??????

APSync

提供日志下载和视频流转发到地面站的功能;
机载计算机通过串口与飞控连接,将飞控的log转存到自己的文件系统中,并创建一个网络热点,用于给运行地面站的PC连接,PC连接该热点后可以:1)从机载计算机下载日志;2)查看视频流;3)连接热点后地面站可以通过UDP连接到飞控;4)PC连接热点后可通过SSH工具来连接到机载计算机的cmd/bash/shell/命令窗口;

BlueOS

BlueOS是一个模块化、强大且高效的平台,用于通过车载计算机管理 vehicle 或 robot。BlueOS是模块化的核心,这使它具有可移植性、更新健壮性和可扩展性。

有哪些特性?
目前是有一些基本的功能,没有视觉定位、视觉避障、SLAM等功能。

  • 参考:https://blueos.cloud/docs/blueos/1.2/overview/#feature-comparison
  • Onboard Computer
  • Flight Controller
  • Video Streams
  • WIFI Manager
  • Ethernet Manager
  • Notification system
  • File Browser
  • Log Browser
  • MAVLink inspector
  • Network test
  • System information
  • Web Terminal
  • Autopilot Firmware
  • Autopilot Parameters
  • Version Chooser
  • MAVLink Endpoints
  • NMEA support
  • Ping Sonar Devices
  • Serial Bridges
  • Water Linked
  • Extensions

DroneKit

DroneKit-Python allows you to control ArduPilot using the Python programming language.
DroneKit-Python’s documentation
特性:
在这里插入图片描述

FlytOS

FlytOS是一个软件框架,提供无人机API和SDK,用于构建高水平的无人机应用程序,如空中运输精准农业勘测摄影工业检测灾害管理。它旨在使无人机开发人员能够使用其开放API构建高级无人机应用程序。
FlytOS基于Linux和ROS,是构建商业和科研无人机应用程序的理想平台。它支持多种硬件平台,如Raspberry Pi 3、Odroid XU4、Nvidia TX1、Intel Edison、Intel Aero和FlytPOD。它使用MAVLink与飞控通信,并在ROS、CPP、Python、REST和Websocket中暴露高级FlytAPI。
这使得使用计算机视觉、机器学习和云连接构建高级应用程序变得容易,FlytOS旨在为无人机应用程序开发人员提供一种与无人机对话的标准语言。

  • 支持的硬件平台:
    在这里插入图片描述
  • 模块化结构
    在这里插入图片描述
  • 一些应用场景
    • Vision-based Object-Tracking and Following 基于视觉的目标跟踪
    • Deep Learning with Nvidia 机器学习
    • GPS based Object Following 目标跟踪
    • SONAR based obstacle detection 基于声呐的障碍物检测

Maverick

Maverick是一个用于创建、维护和控制无人机机载计算机的系统。
Maverick没有为每种不同类型的计算机和操作系统创建、分发和维护单独的逻辑和大型完整的操作系统映像以及包存储库,而是允许通过更熟悉的编码和github工作流程敏捷、协作地开发配套计算机,并且与操作系统和硬件无关。在任何受支持的计算机上,在任何受支撑的操作系统上都会创建相同的环境,因此底层平台在很大程度上变得无关紧要。
为了方便起见,Maverick提供了易于安装的操作系统映像,但只需几K的github代码就可以完全安装。当使用Maverick开发新功能时,只需一个命令即可快速安全地更新现有安装,而不会对数据或运行的服务造成任何干扰。
希望通过在很大程度上自动化并将复杂的系统安装和配置简化为简单的安装,这将有助于减少潜在无人机开发人员的进入障碍,他们可以快速开始使用完整的开发堆栈。

特性:
在这里插入图片描述

ROS

特性:

在这里插入图片描述

Rpanion-server

Rpanion Server 是一个用于配套计算机(如Raspberry Pi)的开源软件包,它提供了一个基于网络的接口,用于配置网络、遥测(MAVLink)路由和从连接的飞行控制器进行日志记录。

在这里插入图片描述

结论

推荐使用Maverick方案,因为Maverick方案不仅包含了ROS、视觉方案(如避障和SLAM),还拥有其他方案的特性如视频流、log、云服务、无线热点、飞控控制等功能。

最终方案:

  • APSync+ROS+Visp+Rpanion-server
  • APSync+ROS+Maverick

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

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

相关文章

Swift 中 @preconcurrency 修饰符使用浅谈

概述 Swift 6.0 与我们越来越近了,如何将旧范儿的并发代码装换为严格遵守 Swift 6.0 并发模型( Strict Concurrency)的新代码,这往往使得秃头码农们又要多抓掉几根头发了。 所以,为了最大限度的保持新旧两个并发世界暂…

模拟人为操作并获取数据

问题 假设需要获取一个微信公众号h5应用的某些数据,而这个应用存在如下一些反爬措施,从而决定了获取数据的方式。 每一个操作都有类似埋点行为,这样即可收集每个用户的操作轨迹。通过轨迹正常与否,很容易判断一个用户是否在恶意获…

【Spring Cloud Alibaba】开源组件Nacos及安装与配置

目录 什么是NacosNacos的关键特性服务发现和服务健康监测动态配置服务动态 DNS 服务服务及其元数据管理 Nacos的架构Nacos的用户Nacos的安装预备环境准备安装方式有两种:源码安装和下载编译好的安装包Nacos 支持三种部署模式,分别是单机、集群和多集群。…

性能飙升50%,react-virtualized-list如何优化大数据集滚动渲染

在处理大规模数据集渲染时,前端性能常常面临巨大的挑战。本文将探讨 react-virtualized-list 库如何通过虚拟化技术和 Intersection Observer API,实现前端渲染性能飙升 50% 的突破!除此之外,我们一同探究下该库还支持哪些新的特性…

【Git篇 二】idea中使用git合并分支(拉取分支)

idea中使用git合并分支 前言idea使用git合并分支1) 将主分支(master)更新到自己的分支(dev)① checkout到自己分支② 目标分支(dev)更新到当前分支(dev_KC240524)③ 当前分支出现“绿…

【Python】 Python网络请求库大比拼:urllib、urllib2、urllib3与requests

基本原理 在Python中,进行网络请求是常见的任务之一,无论是下载网页内容、获取API数据还是进行文件上传。Python社区提供了多种库来帮助开发者完成这些任务。其中,urllib、urllib2、urllib3和requests是最为流行的几个。了解它们之间的区别对…

促进设备缺陷闭环管理,引入智能巡检系统正当时

经过近些年的应用与发展,智能巡检系统的功能与可操作性已经非常成熟,在巡检工作整合管理、与其他系统调用对接、促进设备缺陷闭环管理方面的优秀表现,使其在安全管理工作中的发挥了超预期的工具价值。 一、巡检工作整合管理 设备巡检管理、安…

QT 编译Lua 动态库,使用Lua脚本混合编程

一,编译Lua动态库 1,下载lua源码 地址:Lua: downloadhttps://www.lua.org/download.html 2,配置 解压lua源码压缩包,里面有个src文件夹,里面的代码就是lua的源码

Paper Survey——3DGS-SLAM

之前博客对多个3DGS SLAM的工作进行了复现及代码解读 学习笔记之——3DGS-SLAM系列代码解读_gs slam-CSDN博客文章浏览阅读1.9k次,点赞15次,收藏45次。最近对一系列基于3D Gaussian Splatting(3DGS)SLAM的工作的源码进行了测试与…

广东肇庆mes系统服务商 盈致科技

广东肇庆MES系统服务商盈致科技为企业提供专业的MES系统解决方案,帮助企业实现生产过程的数字化管理和优化。盈致科技的服务包括但不限于以下方面:MES系统定制开发:盈致科技可以根据企业的实际需求定制开发MES系统,满足企业特定的…

《猎杀:对决》是适合什么样的人玩 Mac电脑怎么玩《猎杀:对决》

《猎杀:对决》是一款集合了生存、竞技和恐怖元素的多人在线游戏,自推出以来受到了广大玩家的热爱。本文将详细探讨《猎杀:对决》适合什么样的人玩以及Mac电脑怎么玩《猎杀:对决》。本文将一一解析,帮助你了解这款游戏是…

maven中央仓库手动下载到本地仓库

1.maven中央仓库网址 maven中央仓库 2.搜索需要的jar包 3.点击坐标mybatis坐标进入 4.winR输入cmd打开命令窗口 mvn dependency:get -DremoteRepositoriesurl -DgroupIdgroupId -DartifactIdartifactId -Dversionversion5.maven本地仓库

判断JavaScript对象是否为空,最佳方法与性能对比

引言:在日常开发中,你是否经常需要判断一个对象是否为空?你知道有哪些高效的方法可以做到这一点吗?今天,我们不仅要探讨这些方法,还要通过性能对比找出最优解。快来看看,你平常用的方法是最佳选…

Linux安装gpu驱动

安装rpm包 进入官网 ,选择机器的配置和环境。 下载完rpm之后,运行下面的命令。 i) sudo rpm -i nvidia-driver-local-repo-rhel8-550.54.15-1.0-1.x86_64.rpm ii) sudo dnf clean all iii) sudo dnf -y module install nvidia-driver:latest-dkms 安…

2024/5/30

In recent weeks, Target and Aldi have broadcast price cuts on thousands of items, while Walmart unveiled a new private label lineup of quality “chef-inspired food” mostly in the $5-and-under range. The shift comes as U.S. consumers have been signaling th…

煤矿塌陷位移监测站-全天候监测

TH-WY1煤矿塌陷位移监测站,作为矿山安全监测系统的重要组成部分,其设计、构建和功能均针对煤矿塌陷等地质灾害的实时监测与预警。 煤矿塌陷位移监测站,简称位移监测站,是一种利用先进传感器和仪器设备,对煤矿及周边区…

QML信号连接到c++的槽函数(五)

文章目录 前言一、QML Signal and Handler Event System二、QML信号连接到c++的槽函数代码实例1. 创建一个QML 工程2. 用C++ 实现一个QML Types3. 代码实例4. 运行结果总结参考资料前言 本文主要介绍,如何将QML 中的信号连接到C++ 中的槽函数 软硬件环境: 硬件:PC 软件:wi…

以hive metastore报错举例,远程调试hadoop服务

项目场景: CDH集群CM切换hive元数据库报错: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)at…

步进电机噪音大?抖动厉害?-TMC4361步进闭环方案轻松解决

步进电机的闭环控制,实现与伺服电机功能媲美及超越的特点。在电机控制过程中如果想要高效、更高精度以及绝对的可靠性,我们为您推荐在无传感器及将体积做到最小的更高性价比的驱动方案。 我们都知道,在步进电机无反馈时,电机的高…

【刷题(16)】子串

一 子串基础 二 和位K的子数组 1 题目 2 解题思路 前缀和哈希(两数之和) 假如存在区间[left,right],使得在[left,right]这个区间的子数组的和为k。换句话说,就是前right项和减去前left-1项和等于k,即前left-1项和等…