樹莓派連線超聲波感測器

2021-07-04 09:04:15 字數 2196 閱讀 4607

你知道蝙蝠是個「瞎子」嗎?那它怎麼看東西呢?好吧,它是通過超聲波來探路的。下面我要介紹的就是超聲波模組,有了它你的樹莓派就再也不用當心會「撞牆」了!

該模組會發出超聲波,在聲波碰到障礙物時會立刻返回被該模組接收到。通過超聲波模組來測距的原理就是,計算聲波返回的時間,然後與聲波的傳遞速度相乘,就能得到距離了。

我們知道,溫度為15度時,聲音的傳遞速度為340公尺/秒。

另外,大家可以思考一下,為什麼非要用超聲波來測距呢,別的聲波不可以嗎?因為,超聲波指向性強,能量消耗緩慢,在介質中傳播的距離較遠。

但是,本文介紹的超聲波模組只能探測到4、5公尺遠的距離。

[caption id="attachment_1593" align="alignnone" width="354"]

公對母麵包線(4根),超聲波模組(1個)

該模組有四個介面,分別如下:(需要使用兩個gpio)

vcc 5v

trig 控制發射超聲波

echo 接收超聲波

gnd 負極

[codesyntax lang="python"]

#!/usr/bin/python

# from

import rpi.gpio as gpio

import datetime

import time

def gpio_init():

gpio.setmode(gpio.bcm)

pass

def ultrasound_init(echo, trig):

gpio_init()

gpio.setup(echo, gpio.in)

gpio.setup(trig, gpio.out)

pass

def get_distance(echo, trig):

ultrasound_init(echo, trig)

send_time = 0

rece_time = 0

gpio.output(trig, gpio.low)

time.sleep(0.002)

gpio.output(trig, gpio.high)

time.sleep(0.000015)

gpio.output(trig, gpio.low)

while gpio.input(echo) == 0:

send_time = time.time()

pass

while gpio.input(echo) == 1:

rece_time = time.time()

pass

distance = (rece_time - send_time) * 340 / 2 * 100

return distance

pass

#車位左側距離

def get_left_distance():

trig = 23

echo = 24

return get_distance(echo, trig)

#車位右側距離

def get_right_distance():

trig = 17

echo = 27

return get_distance(echo, trig)

#車位背後距離

def get_back_distance():

trig = 5

echo = 6

return get_distance(echo, trig)

#程式入口

if __name__ == '__main__':

try:

left_dis = get_left_distance()

right_dis = get_right_distance()

back_dis = get_back_distance()

print '車位左側距離:', left_dis

print '車位右側距離:', right_dis

print '車位背後距離:', back_dis

time.sleep(5)

except keyboardinterrupt:

gpio.cleanup()

[/codesyntax]

**——觀月堂

這裡是用wiringpi實現的,

不知道你的樹莓派的gpio介面分布?請看這裡。

樹莓派C語言超聲波感測器測距

分享乙個樹莓派超聲波測距教程。非常基礎的小製作,可以激發一下樹莓派或其它基礎嵌入式開發興趣。首先準備乙個超聲波感測器 這裡是hc hr04型 樹莓派及連線排線。參考對照表將感測器引腳與樹莓派連線,連線方式不唯一,一定仔細連線。感測器vcc引腳連線樹莓派5v引腳,gnd連線0v接地引腳,trig ec...

超聲波感測器 單介紹超聲波

超聲波是聲波的一部分,是人耳聽不見 頻率高於20khz的聲波,它和聲波有共同之處,即都是由物質振動而產生的,並且只能在介質中傳播 同時,它也廣泛地存在於自然界,許多動物都能發射和接收超聲波,其中以蝙蝠最為突出,它能利用微弱的超聲回波在黑暗中飛行並捕捉食物。但超聲還有它的特殊性質 如具有較高的頻率與較...

樹莓派學習筆記003 超聲波距離感測器

感測器供電問題 工作原理和使用方法主要參考了 這是感測器使用樹莓派的5v電源的方案,親測可行。hc sr04超聲波模組工作原理 1 給trig口至少10us的高電平訊號觸發測距 2 之後模組自動傳送8個40khz的方波 3 之後echo口輸出高電平 這也是為什麼測量距離有下限而不能無限小 4 自動檢...