当前位置: 首页 > news >正文

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

相关文章:

  • 基于单片机的超声波倒车雷达设计
  • 汇舟问卷:国外问卷调查怎么样?
  • mysql like 查询优化
  • 遥感卫星影像处理流程
  • 3403(3519Dv500)算子精度比对工具标杆数据生成环境搭建指导(Caffe)
  • 【Python Cookbook】S01E15 将名称映射到序列的元素中
  • Next.js API Routes:构建服务端功能
  • vue限制日期选择器不能选今年后的日期
  • Unity开发——编辑器打包、3种方式加载AssetBundle资源
  • day25-XML
  • 二叉树非递归遍历(C++)
  • springcloud Feign调用拦截器(统一处理拷贝请求头实现透传信息、内部调用鉴权、打印feign调用)
  • 【C++入门到精通】C++ thread线程库 [ C++入门 ]
  • 就凭这张图,下订华为享界S9
  • Linux系统使用Docker安装Drupal结合内网穿透实现远程访问管理后台
  • [译]前端离线指南(上)
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • Docker: 容器互访的三种方式
  • Java 多线程编程之:notify 和 wait 用法
  • JSDuck 与 AngularJS 融合技巧
  • mac修复ab及siege安装
  • Mocha测试初探
  • nodejs实现webservice问题总结
  • Phpstorm怎样批量删除空行?
  • Protobuf3语言指南
  • Vue官网教程学习过程中值得记录的一些事情
  • vue--为什么data属性必须是一个函数
  • 从0实现一个tiny react(三)生命周期
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 强力优化Rancher k8s中国区的使用体验
  • 微信小程序--------语音识别(前端自己也能玩)
  • 想写好前端,先练好内功
  • 消息队列系列二(IOT中消息队列的应用)
  • 学习使用ExpressJS 4.0中的新Router
  • 积累各种好的链接
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • $nextTick的使用场景介绍
  • (2020)Java后端开发----(面试题和笔试题)
  • (7) cmake 编译C++程序(二)
  • (CVPRW,2024)可学习的提示:遥感领域小样本语义分割
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第6节 (嵌套的Finally代码块)
  • (STM32笔记)九、RCC时钟树与时钟 第二部分
  • (笔记)M1使用hombrew安装qemu
  • (二)丶RabbitMQ的六大核心
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (四)stm32之通信协议
  • (新)网络工程师考点串讲与真题详解
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .Net Core与存储过程(一)
  • .Net mvc总结
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .Net 路由处理厉害了
  • .NET 命令行参数包含应用程序路径吗?