开源飞控笔记

开源飞控对于嵌入式学习是很好的模板。以下是一些学习摘要,主要记录了开源飞控有哪些种类,它们的软硬件平台都是什么。

硬件平台:

1.pixhawk, CPU是stm32(软件基于Nuttx RTOS),板子上有两个MCU,一个是FMU(STM32F765),一个是IO(STM32F100

2.raspberry配合NAVIO2的传感器接口板。在pi上安装Emlid的RT Linux(还是这个?这个RT Raspebrrian含驱动)按照如下步骤进行配置,在pi上编译或者在PC上用pi toolchain进行交叉编译,得到可执行文件,放在pi上执行即可。这里是一个build问题的记录。

3.高通骁龙flight,主要SoC是801

4.APM(Ardu Pilot Mega),主要MCU是arduino平台(atmega)

5.Intel Aero Compute Board,包括Atom CPU和STM32

除此之外,还可以给上述平台搭配一个companion computer(跑Linux+ROS),用于做一些复杂计算,比如光流、避障等,比如上面的5。

固件:

px4 autopoliot:由 ETH Zurich创建,后来并入dronecode管理。

Ardupilot: 原来是Jordi Munoz(后来也是3D robotics的CEO)在arduino平台上写的一个自驾仪,后来由DIY drones社区的一些程序员开发的。在2014年并入dronecode,后于2016年分出。分出去之后的ardupilot也类似于一个platform而不单单是自驾仪,包括地面站Mission planner、硬件APM、飞控ardupilot。

相关组织:

dronecode:Opensource UAV Platform由 3D robotics和Yuneec International创建,受Linux基金会管理[1]。dronecode platform包括px4自驾仪、pixhawk等硬件平台、地面站QGroundControl等。

3D robotics:一家位于美国加州的公司,制造商用无人机和自驾仪(包括APM和pixhawk)等硬件。

相关介绍:

https://en.wikipedia.org/wiki/ArduPilot

https://en.wikipedia.org/wiki/PX4_autopilot

https://docs.px4.io  --用户手册

https://dev.px4.io/  --开发者手册(gitbook上中文的pdf,不过不全)

http://ardupilot.org/dev/index.html

px4的软件架构:

主要包括flight stack和middleware,前者是estimator等各种app,后者是uORB和各类驱动。

https://dev.px4.io/en/concept/architecture.html

px4的资源在https://github.com/PX4中,包括firmware(含nuttx)、driverframework(linux、nuttx等)、bootloader(pixhawk)、hardware(FMU的V3才有schematic、V4/5只有pinout说明,不过后期也会发布)

相关论文:

PX4: A Node-Based Multithreaded Open Source Robotics Framework for Deeply Embedded Platforms. 可以了解一下PX4的设计理念,软件架构等。

猜你喜欢

转载自blog.csdn.net/zinnc/article/details/81232988