Qualcomm技术论坛
直播中

李玉林

7年用户 218经验值
私信 关注
[经验]

基于Dragonboard 410c的智能小车(三)

      进入正文之前先讲两句大家都懂的道理,当你面对一些没有接触过的事情时,你可能会畏惧或茫然不知所措抑或不知该如何下手,那就不断去尝试,不要总是停留在想象,放手去做,你会惊奇的发现,你知道了99%的错误方法,最终也知道了那1%的正确方法,但是让你提升最多的是那99%的错误方法。

     思绪拉回,开始进入正题了。前面已经讲过了硬件准备,对电机的基本了解以及如何控制。所以接下来就是软件上驱动代码的实现了。

     410c的开发板,为了做到低功耗,每个引脚输出的电压基本上都是1.8V,但是我们选择的这个电机是直流12V的电机,所以,需要进行电压站换,庆幸的是,在低速接口上的一个引脚输出是12V,所以这里添加了一个降压模块“LM2596 DC-DC”用来给直流电机供电,但是仅仅有了电源还是不够的,所以又加了一个带有“7688 EH5E9K”的电机驱动模块用来驱动点击并实现正反转。



图 LM2596 DC-DC







图  7688 EH5E9K


     基本上的控制都可以了,此时还有一个问题,这样的控制只是控制前进、后退、左转、右转等,这时候一上电,速度就比较快,而且不能调节速度,那如何实现速度控制呢,我们都知道,电机的速度是用PWM来控制的,所以又加了一个PWM发生器pca9685用来产生PWM,通过改变占空比来改变速度,采用这个芯片即可以实现调速,还可以减少gpio的占用,因为这个模块是用i2c控制的,所以控制起来就比较简单了。




图 pca9685


   既然是做小车,避障肯定是必不可少的,我们做的这个也不例外,最常用的是红外避障模块




图 红外避障模块


    红外避障模块的检测距离太近了,一般理论上说最大可以达到80cm,但是不管我如何调节,最大也就5、6厘米的样子,所以又加了一个超声波模块用来进行远距离的检测,当检测到远处有障碍物时及时减速防止撞车。




图 超声波模块


   最后是供电了,410c开发板都是用适配器进行供电的,但是小车是要到处跑的,所以必须更换成电池供电,适配器是12V 2A的,所以买个相同标准的电池就可以了,其实并没有想象中那么好找。




图 电池





   在做的过程中才发现有很多东西需要完善的,所以不知不觉中又添加了很多模块,功能也越来越完善了。到此,小车的硬件部分可以说完成了。下一篇将简单介绍一下驱动部分。












































更多回帖

发帖
×
20
完善资料,
赚取积分