## 超聲波距離傳感器

>注意:上圖中面包板和超聲波距離傳感器可以不用杜邦線連接:直接把超聲波傳感器插入面包板,這里不過是為了演示更加清晰所以用了杜邦線。
用`DistanceSensor`類檢測距離超聲波距離傳感器最近的物體:
~~~
from gpiozero import DistanceSensor
from time import sleep
sensor = DistanceSensor(23, 24)
while True:
print('Distance to nearest object is', sensor.distance, 'm')
sleep(1)
~~~

>距離傳感器有2個引腳:?一個是?**trigger**?(marked
TRIG?on?the?sensor)?,一個是**echo**(marked?ECHO?on?the?sensor).
ECHO引腳需要加一個分壓電阻防止ECHO引腳5v電壓損害樹莓派.?按照下面說明連接距離傳感器:???
1.傳感器GND引腳連接樹莓派接地引腳?
2.TRIG引腳連接到一個GPIO引腳。?
3.ECHO引腳末端連接330Ω電阻。?
4.GND引腳末端連接470Ω電阻。?
5.?把電阻未連接的一端連接到其他GPIO引腳,這種形式需要分壓器。???
6.最后把創阿奇的VCC引腳接到樹莓派5v引腳。
Alternatively,?the?3V3?tolerant?HC-SR04P?sensor?(which?does?not?require?a
voltage?divider)?will?work?with?this?class.
為了讓代碼更具有可讀性,還可以指定echo和trigger引腳分別連接到哪個引腳,如下圖:

```
from?gpiozero?import?DistanceSensor
from?time?import?sleep
sensor?=?DistanceSensor(echo\=18,?trigger\=17)
while True:
print('Distance:?',?sensor.distance?\*?100)
????sleep(1)
```
當超聲波距離傳感器探測到的距離小于特定值的時候,執行特定的函數。
~~~
from gpiozero import DistanceSensor, LED
from signal import pause
sensor = DistanceSensor(23, 24, max_distance=1, threshold_distance=0.2)
led = LED(16)
sensor.when_in_range = led.on
sensor.when_out_of_range = led.off
pause()
~~~
- 簡介
- 更新樹莓派源
- GPIO Zero基礎案例
- 導入GPIO Zero庫
- 引腳編碼
- 樹莓派代碼編輯器
- LED
- 電磁繼電器
- 呼吸燈
- LED條形圖
- led條
- 交通燈
- 按鈕
- 按鈕控制LED燈
- 用按鈕控制攝像頭
- 舵機
- 關機按鈕
- 按鈕拍照
- 反應速度游戲
- 音樂盒子
- 單個按鈕控制多個元件
- 全彩燈
- 人體紅外傳感器
- 亮度傳感器
- 距離傳感器
- 馬達控制
- 機器人
- 按鈕控制機器人
- 鍵盤控制機器人
- 紅外感應機器人
- 電位器
- 用數模轉換器測量溫度
- 通過3個電位器控制全彩燈
- 時控加熱燈
- 聯網狀態指示
- CPU溫度條形圖
- 更多
- OLED屏幕
- GPIO Zero基礎案例2
- 古德微樹莓派案例
- ws2812燈帶python案例
- ads1115
- 高級秘籍
- 4 配置遠程GPIO
- 5 遠程GPIO案例
- 5.1 LED和按鈕
- 6 樹莓派Zero OTG USB數據線
- 7.數據源和值
- 微信發送疫情
- 8. 命令行工具
- 9. 常見問題
- 10. 從RPi.GPIO庫遷移到GPIO Zero
- 公眾號文章
- Python繪制疫情圖表
- 百度人工智能案例
- vscode配置樹莓派遠程開發環境
- Jupyter Notebook相關
- 樹莓派拍攝定格動畫
- oled
- 創客與音樂
- 如何入門Python
- 交通標志