ArduPilot开源飞控之Companion Computers简单分析

96 篇文章 64 订阅

1. 源由

从稳定性,社区群体,以及开源方式的角度看,Ardupilot是不错的选择之一。

主要有以下几个特点:

  1. 【操控性】手动
  2. 【稳定性】自动导航
  3. 【安全性】异常场景
  4. 【普及性】社区受众群体广泛

为了更好的实现智能飞行,就需要融合传感和空间感知技术。这些内容显然并非当前任意一个飞控软件能解决的,更多依赖计算能力更强大的伴机电脑系统。

在入手companion computer之前,就Ardupilot生态圈内部提供的几个伴机方案进行研习和分析。

伴机电脑就选个手边简单的板子吧,主要还是分析软件这块内容。!

在这里插入图片描述

2. 伴机系统 & 软件

注1:这里仅根据companion computer提供的信息进行简单分析。

注2:当然也有提供完整解决方案Turnkey Companion Computer Solutions - 软硬件一体的,这里将不会展开。

2.1 APSync

【1】APSync介绍
【2】APSync代码

  • WiFi电传
  1. WiFi Access Point
  2. UDP Telemetry (port:14550)
  3. Log Download Script

在这里插入图片描述

  • WEB配置
  1. View and modify parameters
  2. View sensor information and trigger some calibrations
  3. Modify the Wifi access point name and password
  4. View and download log files if they are stored on the companion computer
    URL http://10.0.1.128

在这里插入图片描述- 视频传输

video stream
http://10.0.1.128:8000

在这里插入图片描述

从上面特性看,更像一个摄像头+电传模块的功能集成。

2.2 DroneKit

【1】DroneKit介绍
【2】DroneKit代码

该开发工具主要应用python编程,支持Ardupilot的MAVLink接口,详见:API资料

  1. Connect to a vehicle (or multiple vehicles) from a script
  2. Get and set vehicle state/telemetry and parameter information.
  3. Receive asynchronous notification of state changes.
  4. Guide a UAV to specified position (GUIDED mode).
  5. Send arbitrary custom messages to control UAV movement and other hardware (GUIDED mode).
  6. Create and manage waypoint missions (AUTO mode).
  7. Override RC channel settings.

2.3 FlytOS

【1】FlytOS介绍

在这里插入图片描述
该系统方案分析了众多应用场景,从行业应用的角度做了平台整合。

在这里插入图片描述

显然,这个是商业运作,开源代码是木有的,呵呵。

2.4 Maverick

【1】 Maverick介绍
【2】Maverick代码

该系统从功能角度来说很多:

  1. Downloadable, ready to flash, ready to fly images for Raspberry Pi (all models), NVidia Tegra TX1/TX2, Up (Up, Squared, Core), Odroid XU4, Intel Joule
  2. Downloadable VM image for developers in OVA (Open Virtual Appliance) and Parallels formats, should run in VirtualBox, VMware, Parallels etc
  3. Permissive MIT licensing, absolute minimum restrictions on opensource or commercial usage
  4. Ability to bootstrap from any donor/vendor OS (only Debian/Ubuntu based OS supported so far, but possible to support any base OS) and create custom images
  5. Single ‘maverick’ command provides system/network info, self updating, system configuration, service control
  6. Self-contained, consistent software environments and versions across different platforms
  7. Automatic detection and configuration of platform hardware and peripherals
  8. Easy modular network configuration including managed wireless, monitor/injection, Host Access Point, Avahi, Dnsmasq, DHCP client/server, wifibroadcast
  9. Built-in security, firewall, antivirus, scanners
  10. Selective, modular Mavlink proxy, Dronekit and MAVROS configuration, supports MAVProxy, mavlink-router, cmavnode
  11. Rich web-based IDE (Integrated Development Environment) - Cloud9
  12. Full SITL environment with separate mavlink proxy, dronekit and MAVROS instances
  13. Extensive consistent software components installed on all platforms - ROS Kinetic/Lunar, ROS2, Tensorflow 1.3, OpenCV 3.4, Gstreamer 1.12.4, FPV video (visiond, camera-streaming-daemon), Orb_slam2, RTABMAP, Aruco
  14. ArduPllot development environment, compiled ArduPilot for SITL, everything necessary setup to compile and upload to Flight Controllers direct from companion computer
  15. PX4 development environment, compiled PX4 for SITL, everything necessary setup to compile and upload to Flight Controllers direct from companion computer
  16. Vision functions - automatic detection and configuration of attached digital cameras for FPV (visiond), Precision Landing with vision_landing, experimental collision avoidance with RealSense depth cameras, Thermal Image streaming with Seek Thermal and Flir One devices, experimental SLAM components ORB_SLAM2 and RTABMAP

在这里插入图片描述但是从整体架构上不难看出围绕MAVLink/ROS/Vision在做数据分析,是一个整合的系统。

注:最近一次更新Nov 12, 2021,感觉有点缺少维护了。

2.5 ROS

【1】ROS介绍
【2】ROS代码

ROS(Robot Operating System)是机器人操作系统。因为SLAM (Simultaneous Localization and Mapping)/Vision等传感器和空间定位技术的应用,随着MAVROS组件的发展,现在这块非常热门。

这里不多做介绍,其系统也是非常庞大的。
在这里插入图片描述

2.6 Rpanion-server

【1】Rpanion-server介绍
【2】Rpanion-server代码

  1. Flight Controller telemetry routing to udp outputs
  2. Video Streaming via an RTSP server
  3. Network configuration
  4. NTRIP Streaming
  5. Logging (tlog and bin logs)

该服务是基于node.js开发的,其最终应用的还是MAVLink与飞控通信。鉴于其SBC可以做视频RTSP服务,因此可以进行相关视频图像流处理。

3. 总结

从上述几个Ardupilot伴机电脑上常用的软件来看,考虑如下:

  • 不考虑商业软件(学习研究角度)
  • 从不同的维度考虑
  1. 应用角度:SLAM/Vision/SensorFusion
  2. 飞控技术:MAVLink API
  3. 仿真角度:SITL in Gazebo

4. 参考资料

【1】Ardupilot-APSync
【2】Ardupilot-DroneKit
【3】Ardupilot-FlytOS
【4】goodrobots-Maverick
【5】Ardupilot-ROS
【6】Ardupilot-Rpanion-server
【7】ArduPilot开源飞控系统之简单介绍

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值