树莓派教程——HC-SR04 超声波测距模块

超声波测距模块

###超声波测距模块简单介绍

电压:5V
静态电流:小于2mA
电平输出:高5V
电平输出:底0V
感应角度:不大于15度
探测距离:2cm-450cm

接线方式,VCC、trig(控制端)、echo(接收端)、 GND
一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出。一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,即可算出距离.如此不断的周期测,就可以达到移动测量的目的了
接线图:
超声波测距模块接线图
GPIO口是3.3V的,所以中间接了电阻
下面看测试程序:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)

TRIG = 18
ECHO = 16

GPIO.setup(TRIG, GPIO.OUT)
GPIO.setup(ECHO, GPIO.IN)

try:
while True:
GPIO.output(TRIG, 0)
time.sleep(0.01)

GPIO.output(TRIG, 1)
time.sleep(0.00001)
GPIO.output(TRIG, 0)
start = time.time()

while GPIO.input(ECHO) == 0:
start = time.time()

while GPIO.input(ECHO) == 1:
stop = time.time()

distance = (stop - start) * 34000 / 2 #声波的速度是340m/s
print distance
except KeyboardInterrupt:
GPIO.cleanup()

还是很简单的,理解一下就行
下面的视频里我做了一个根据测的距离每隔两厘米亮一个灯的DEMO
如果你看过我写的前几篇教程,相信你很快就能做出来了,我这里只是抛砖引玉


推荐两个用树莓派超声波模块做的游戏,感兴趣的同学可以玩一下:
基于RasberryPi的体感音乐游戏:http://homeway.me/2015/03/30/play-music-through-senses
基于RasberryPi的打地鼠游戏: http://homeway.me/2015/05/26/play-hamster-game-through-raspberry