十六届智能车全向组硬件开源

前言:算法开源已经开始

第一章信号的预处理
第二章边界的提取

写在前面

我是一个做了三年智能车比赛的本科学生,也是挺菜鸡的一个。国奖也只有一个一等一个二等,和一个划水的三等。说来也挺可惜的,本来今年全向组也是可以拿国一的,结果赛前被前面的强校打击到了。只敢比赛前几分钟把速度降了下来,只希望完赛,给自己三年的做车生涯画一个不完整的句号吧。说实在的,今年的形式可惜的肯定不是我一个,但这或许就是智能车的魅力吧,不到比赛结束,一切都是未知,三年下来,在我这里智能车已经不分成败了,只求对得起自己一年一年的努力。

无奈的是智能车的付出很大概率会和结果不成正比,就拿我自己来说吧,前两年比赛也是一直认真调车,没有节假日的待在实验室。可是呢,第一年,华东赛决赛第二次发车,驱动板在最后5m处烧了,当时只以为是程序故障,结果最后一次发车时,车模直接不受控制,冲出赛道。在学姐去确认成绩的时候,在赛道旁的我整个人腿是软的,一瞬间,失去了精气神。看着之后没我们跑的好的队伍一组组完赛,心里很不是滋味,感慨万千,只是很不甘,很不甘自己一年的辛苦就在烧毁在了华东赛的赛场,没有一丝挽回的机会。第二年,十五届转战四轮,没有学长,实验室也没有摄像头的国赛传承。只能靠着自己的经验去摸索,拼命的调车也就把车速提到了2m5,是的,四轮跑这样真的很拉胯了。但这个速度十五届在华东赛进入决赛还是能够的。可惜啊,似乎我身上根本就没有运气一说,在南信的第一天比赛,他们场地的电磁信号和在实验室的时候完全不一样。所有参数全不行,场上的15分钟,冷汗一直不受控制得流着,直道下场时候问了裁判才知道,几乎所有组的队员都会换上自己的信号发生器。所以第二天,作为第一个上场的我们,换上了信号发生器,名次正好落在了决赛最后一名。很可惜哈,别人经过一晚上也不是白休息的,该加速的加速,该超过的超过。写到这里,属实是揭自己的伤疤了。

今年的十六届自己参加了全向和百度,先说结果吧,百度国一,全向国二。全向是完全自己一个人做的,所以开源起来也好开源,可以完整的把做车的经历复现出来。百度是做好了下位机主控和驱动之后,丢给了学弟。遇到问题了给他们解决解决,也挺好,两个组也都获得了不错的成绩,对得起自己一年的努力了。废话说的也挺多的了,也只是想告诉后来者,努力是有回报,但这份回报不仅仅是一个奖,还有你认识的那些朋友,学到的知识,做竞赛的责任,以及耐得住寂寞的韧性。

正文开始:

这次开源的是全向组,采用双核双摄方案。电路板有逐飞核心板,主控板,陀螺仪,按键板,驱动板,运放板,我也不是专业学电路的,设计板子全是靠自己的经验,以及数据手册,难免有些不合适的地方,并不是什么十分高深的技术,但至少对于做车入门使用我感觉还是够了。

先从主控开始。主控最主要的目的就是给车上的各个模块供电,因为我们比赛时只能采用一块电池作为总的供电电源,但我们车上使用的各种模块的需求供电电压是不一样,因此,我们需要通过电路来将一个电池电源,分成不同的供电端,以期给各个模块输入稳定的电压,保持正常工作。为了减轻车重,我用的是7.2v/2200mah的锂电池。容量也能支持麦轮完整的跑下全程,质量轻,体积也不大,直接放在主控板下方。这里我主要将电源分成单片机供电,5v模块,3v3以及总钻风3v3电源,每部分电源都给了一个LED灯作为通电参考。

首先是5V的单片机电源,我采用的TPS7350。也是比较常用的一款吧,大部分学校可能都用过。纹波还行,压降很小,可以在电源电压不足时也还可以工作,但最大过流较小,所以我便拿来做单片机的供电芯片。

                                                    单片机供电

这里我在输入和输出都用了10uf的钽电容和0.1uf的电容作为滤波,但其实,如果在焊接的时候电容没焊好的话,输出电压可能会在4.97左右。并且在焊接好了之后一定要用洗板水刷洗干净,不然不仅不好看,有时候焊锡丝的助焊剂还有可能粘上一些铁屑之类或者导电粉末。这种问题遇到好几次了,每次都后悔不已。

下面是各个模块的供电,其中5v的电源采用的是LM2940,过流比TPS7350要大一点,但压降要大一点,主要是相比7350要便宜,2块左右,电路还简单,但有一个缺点就是容易发烫。而3V3相关的模块我选用的AMS117,输入电压是通过LM2940输出的5v电压,低价好用,就算是买到盗版也能用。说到盗版这里还是提一下吧,大家尽量买正版芯片,虽说有的盗版可以继续用,效果还行。但万一买到一批假到离谱的芯片,板子怎么烧的都不知道。我之前就买过一批TPS7350的盗版,引脚的电气特性都不一样,上一块炸一块。
在这里插入图片描述

                                                   5v供电

在这里插入图片描述

                                                   总钻风供电

在这里插入图片描述

                                                    3.3v模块供电

同样的在芯片的输入输出端加上了滤波电容,希望输出的电源噪声小一点。到这里我主板上的各个电源部分就结束了。
在这里插入图片描述

                                                 主控3D仿真图

说完了主控,下面写下ICM20602。ICM20602是近年来用的计较多的一款陀螺仪了,温漂很小,用起来搭配逐飞和龙邱的库都很方便。唯一不好的就是太贵了,所以我便从网上买了裸片,开始价格只要4块多,后来涨价到了20多。幸好之前买了一批,做的陀螺仪模块完全够自己用了。根据icm20602的官方手册配好了外置的电容和电阻,这些在数据手册上都可以找到。之后便要考虑陀螺仪的供电了,我是单独做一个模块,体积不大,电流也不大,所以便挑选了和商家卖的模块差不多类型的稳压芯片-----MIC5205-3.3。3.3V的稳压芯片。只需要搭配一个0.47uf和106的滤波电容即可使用,电容如果搭配不对,电压会在3.7V左右,但对于ICM20602也可以使用。同时再陀螺仪的数据口,加上上拉电阻,不确定的信号通过电阻钳位在高电平。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

                                    陀螺仪的原理图截图

在这里插入图片描述

                                         陀螺仪和主控实物图

写在最后:

上面是自己做的主板和陀螺仪,当然不是全部的文件,比如一些主板上的数据口,排针排母之类的,这些也都是根据自己的需要做的。陀螺仪的部分呢,它的芯片焊接比较麻烦,需要用到风枪,不过,做全向的大部分人应该都会焊接这种封装。如果有人看到这里可能会觉得没什么东西,但要知道,开源不仅仅是开源文件,更重要的是开源方法。下一篇文章开源驱动和运放,分别是一个PWM口控制HIP4082驱动的方法,以及opa2350检波电路。对于驱动如果是今年做麦轮的同学可能比较感兴趣吧,毕竟大家几乎用的都是DRV8701方案,最后文末附上主板和陀螺仪的PDF超链接。