pixhawk硬件设计粗略解析

文章目录

  • 前言
  • 一、pixhawk是什么?
  • 二、pixhawk硬件解析
  • 总结


前言

本片是个人对NFCYv5飞控的硬件设计的个人分析与笔记。为什么要这么做呢?原因很简单,一是对pixhawk硬件组成有更加深入的理解;二是为以后回顾留下一个较全的笔记。这里我选择NFCYv5的硬件原理图来解析,一是因为怒飞老师这款硬件全部开源了;二是原理图的颜色呀风格更合我胃口,感觉看着更舒服。另外需要说明的一点是,就像题目所写的我目前还是个硬件小小白,下面的解析想来必有不少缺漏可称之粗略,所以大佬就不必看了*_*(不过要是好奇看到了错误,还请大佬们多多斧正)。


一、pixhawk是什么?

首先在开始分析硬件组成之前,还是有必要回顾一下pixhawk是什么?那我们不妨看看pixhawk官网是如何说的(官网yyds)!
pixhawk硬件设计粗略解析_第1张图片OK,一进入官网我们就可以看到这个说明。pixhawk是为无人机硬件所打造的开源标准。它为无人系统的发展提供了现成可得的硬件规范与指南。我靠,这一听起来很厉害吧。pixhwak不生成硬件也不提供原理图啥的,而是专注于提供标准与规范。我不是很熟悉硬件,但是就我有限的认知。我感觉这和ARM卖内核设计是一样一样的。当然了,pixhawk是开源的,不收钱!目前pixhawk更新出的最新硬件标准是FMUv6X,具体推出标准的如下所示:

pixhawk硬件设计粗略解析_第2张图片
所以呢,大家直观地看到每代标准的升级呢,大概是就MCU升级一波,或者传感器冗余升级一下。又或者通过传感器冗余和横温系统来定义一下有无X。高度总结就是内核+IMU的变化。这里大家可以注意到是pixhawk开源硬件标准不仅仅是一个标准。pixhawk也是硬件产品的名字哦,但是这个名字的使用是有讲究的,可不能乱用。是需要经过pixhawk官方授权,该硬件生产厂商才能使用上面的那些名字作为硬件产品的名称。这样的产品的是经过了pixhawk官方认证了,所以质量是有保证的。因此虽然这是开源硬件标准,其硬件却有正版和盗版之分。所以你在某宝搜到的什么pixhawk 2.4.8那玩意儿吧,说它是盗版并没啥问题。(我年少无知时也买过,做工怎么样就不说了懂的都懂)靠谱的生成符合pixhawk硬件标准的大厂也在这里也提一句:Hex,CUAV,holybro,穹人。然后你就会发现他们的名字有些是pixhawk,有些不是,因为并不是他们都授权了。但是他们都是按照pixhawk开源硬件设计标准和规范以及优秀的pcb设计得出的飞控,也是官方支持认可的,都是很不错的产品,这几家的产品也受到市场和玩家的广泛认可的。

ok,唠了这么多,现在让我们再来看看pixhawk标准规范都定义了些什么。
pixhawk硬件设计粗略解析_第3张图片这一部分是定义了自驾仪的硬件标准,大概就是用啥MCU,用啥传感器,MCU的引脚又该如何分配的。

pixhawk硬件设计粗略解析_第4张图片
这一部分呢,定义了pixhawk的总线标准,比如用啥接线端子,共同的外部接口有哪些,PAB是啥样,PCB布线指导原则等等。
pixhawk硬件设计粗略解析_第5张图片
这一部分呢,主要定义了每个对外接口的和对内debug接口线序是啥样的
pixhawk硬件设计粗略解析_第6张图片
还有这一部分呢,是定义了载荷总线的标准,大概就是用啥协议,用啥接口这样。

好了,在我现在的认知范围里,pixhwak差不多就是这样的。也许有些不对,但应该大差不差吧。以后有进一步认识再补充。

二、pixhawk硬件解析

相信通过刚才的介绍,大家应该已经知道了我选择的NFCYv5硬件呢,它是一款符合pixhawk开源硬件标准的一个硬件产品,但肯定不该称为pixhwak。好了好了,不说了,现在来看原理图吧。
pixhawk硬件设计粗略解析_第7张图片
pixhawk硬件设计粗略解析_第8张图片
怒飞老师的原理图,第一张和第二张是主控单片机的IO和电源部分。作为一个电子小白,一开始我最好奇的是这上面的这些网络标号:SD_3V3_EN,Sensor_3V3_EN,MCU_3V3,USB_VCC,VDD5V。这些和电源有关的标号。我想这电源咋怎么多,这和我以前粗鄙的硬件使用经验形成了极大反差。为啥要这样呢?接着看一图
pixhawk硬件设计粗略解析_第9张图片诶,这一看,所有的传感器的电源都是Sensor_3V3诶。虽然不懂,但我大为震撼。我想这就是规范,标准的力量吧,这一看就很合理的样子。继续往下看:
pixhawk硬件设计粗略解析_第10张图片
这个是存储部分,诶,我一看FRAM作为MCU的扩展memory,它和MCU一样使用MCU_3V3供电也很合理诶。然后可以看到SD卡的上拉电阻都采用了SD_3V3这看起来也很合理的样子,毕竟这玩意儿是可分离,应该是有实际区别的。这里说明一下这个FRAM的作用:

 { StorageParam,   4096,  1280},

 { StorageRally,   5376,   300},

 { StorageFence,   5676,   256},

 { StorageMission, 5932,  2132}, 

如上所示,主要是存储系统参数、地理围栏、飞行任务、集结点这些数据。为什么这些东西要存储在FRAM里呢?因为FRAM读写速度快(不需要像flash那样需要先擦除)且功耗低,具有极大的读写次数寿命,掉电数据不丢失。
pixhawk硬件设计粗略解析_第11张图片哦,这里就到了电源部分了。我们可以看到VDD5V,通过MIC5332-SSYMT-TR转换成了两个双路3.3v。他们分别是SD_3V3,MCU_3V3,Sensor_3V3,EXT_IO_3V3。这样我们就找到了那些电源的出处了。所以核心板的3v3电源都是由VDD5V通过LDO转换得到的。这里也会看见之前出现的SD_3V3_EN, Sensor_3V3_EN连接在IC的EN脚。看图盲猜也知道,EN1对应VOUT1,且高电平有效。所以MCU可以通过控制SD_3V3_EN, Sensor_3V3_EN电平来决定Sensor_3V3, SD_3V3的有效。这有什么好处呢,我听课里讲的是,可以保证IMU的正常上电初始化(可由MCU来确定IMU的上电时间,看bootloader和固件初始化来看都要求MCU初始化时,IMU不上电)。这个具体有啥用不太懂,因为我也见过一些简单的飞控硬件设计,IMU直接就和MCU一起上电了,但也运行良好。
pixhawk硬件设计粗略解析_第12张图片
接下来这个是CAN接口集成转发电路,这个没啥好说的。再往下看:
pixhawk硬件设计粗略解析_第13张图片
这部分是飞控的ADC电源电压电流的监测部分,使得我们可以监视电压电流,不过我自己有一个小小疑问,监测MCU_3V3和VDD5V有啥用呢?要是这两个凉了,MCU监测到也没用呀,MCU自己也会凉凉,emmmm?应该是有啥知识盲区,先记在这里。
pixhawk硬件设计粗略解析_第14张图片
很快就到了核心板的最后部分了,这里是IIC的上拉电路和地板接口部分,这里没啥要提的。接下来,我们来看飞控底板部分。
pixhawk硬件设计粗略解析_第15张图片

先总览一下,那么核心板接口部分没啥好说的了,略去。SD卡座,固定孔,对外接口,USB,5V转3.3v也没啥好说的了,略去。这里我们主要看看,三排排针,PWM缓冲,信号调理部分。
pixhawk硬件设计粗略解析_第16张图片
这个地方我们就可以清楚的看到,除了RC_IN口有VDD5V电源输出(这个飞控电源就完成了提供),其他servo输出口的电源口都连接在VDD_Servo上。而VDD_Servo是需要自己在这里插入外置BEC进行提供的,不然只插舵机是不会有任何反应的。显然这里在设计PCB时走线需要挺宽挺厚的。不然舵机工作起来电流大了,可能扛不住,相对应的隔离与屏蔽应该也需要注意。
pixhawk硬件设计粗略解析_第17张图片然后是PWM缓冲电路,这里怒飞老师对FMU_CH和FMU_AUX的输出电平不同。我不是很确定这样的作用,因为我看了CUAV的硬件设计VCCB都是3V3。但这貌似也不是很重要了。这里这两个缓冲IC的作用可以归纳为以下4点:1.可以进行信号电平的电压转换 2. 提高PWM信号驱动能力 3.防反灌保护主控芯片 4.对外部干扰有抑制作用,保护PWM信号。
pixhawk硬件设计粗略解析_第18张图片
这里怒飞老师对其他信号的调理都采用了电阻串联的方案,对比CUAV的硬件设计这里基本也是采用了TXS0108E。我个人认为两者的设计都是合理的,首先直接用
TXS0108E肯定不会有啥问题。但是考虑到这些串口线,IIC线对外都是GH端子,所以基本不可能插错,另一方面如果外接设备正负极有问题那也只会烧掉外接设备且好像没啥办法避免。所以基于上述分析直接用电阻调理信号也是合理的。这里串联电阻的作用主要如下:
1.阻抗匹配。因为信号源的阻抗很低,跟信号线之间阻抗不匹配,串上一个电阻后,可改善匹配情况,以减少反射,避免振荡等。
2.可以减少信号边沿的陡峭程度,从而减少高频噪声以及过冲等。因为串联的电阻,跟信号线的分布电容以及负载的输入电容等形成一个RC 电路,这样就会降低信号边沿的陡峭程度。大家知道,如果一个信号的边沿非常陡峭,含有大量的高频成分,将会辐射干扰,另外,也容易产生过冲。
pixhawk硬件设计粗略解析_第19张图片
最后呢,是电源模块的设计,就是使用了TPS54560DDAR,来获得VDD_5V, 然后加入分压电路得到电池检测电压。这里这个电源模块并没有电流检测,不过老实说电流检测确实用的也不多。不过飞控本身是支持电流检测的。目前看到市面上常见的pixhawk电流计也应该都是模拟输入的。基本都是利用采样电阻的压降来确定电流,具体的电路原理图设计没有找到,不过基本是如下图所示的原理:
pixhawk硬件设计粗略解析_第20张图片
详细说明大家可以跳到这篇文章观看:电流检测电路

最后粘贴一张总的结构图,我觉得这个图做的还是很好的虽然年头应该有点久了,其具体出处应该是阿木实验室做的吧,我也不是很清楚,反正感谢原作者的总结。
pixhawk硬件设计粗略解析_第21张图片


总结

OK,止此pixhawk的硬件设计的粗略分析就结束了,通过自己这么写一通,感觉自己对硬件设计有了进一步的理解,也给自己留下了一些有用的笔记。也谈不上什么有什么深刻总结,但是我自己有了基本认知,当遇到真正的大佬,我知道该提些什么问题,也能大概和别人交流起来,我以为这样就很有意义了。当然我也希望能给看到的朋友带来一些帮助,那样就更好了,那我们下篇博客再见了。

你可能感兴趣的:(自动驾驶,stm32,arm,嵌入式硬件)