
【树莓派入门】(七)| 树莓派避障小车
一、 买材料:
① 一个树莓派(我用的是三代B型),智能小车底盘,两个L298N电机驱动板,两个超声波模块HC-SR04,电源,杜邦线若干。(上某宝都能买到) 图片如下:
二、 材料都买来了,就开始调试了。
①:先装系统,我用的是Ubuntu16.04 Mate(我的上一篇教程中有教大家怎么装,不一定非要这个系统),要装wiringPi,那就从如何装wiringPi这个库开始吧。
上面这个图很重要的,不同的树莓派对应的wPi可能不同。
② :调试L298N电机驱动模块,百度了一下怎么用。下了一个手册。
我定义了,wPi码是22,23,24,25的三个gpio口。 代码如下:
编译的时候要注意,要链接wiringPi库, 如:gcc –o demo demo.cpp –lwiringPi
然后./demo 运行。
具体小车的轮子怎么转请看L298N那个手册。
然后多加控制,就可以控制车轮怎么转了。 默认ENA是接高电平的,你也可以用PWM来控制,当然只要你感兴趣就去看手册。 到这里,电机驱动起来了,看,是不是很简单啊。
③:驱动HC-SR04超声波模块,首先去问度娘手册。
打开手册看了一会,开始驱动吧。
一个VCC一个GND,一个发送,一个接收。
该模块的工作原理为,先向TRIG脚输入至少10us的触发信号,该模块内部将发出 8 个 40kHz 周期电平并检测回波。一旦检测到有回波信号则ECHO输出高电平回响信号。回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式: 距离=高电平时间*声速(340M/S)/2。 Trig是发送端,Echo是接收端,这两个要接在gpio口上, 这次我接的wPi码是15,16 代码如下:
④ :你看一点也不难吧,不知不觉已经搞定两个模块了。其实这个时候,避障小车已经完成了。
