Arduino第十六課(主動式紅外線感測器)

Arduino第十六課(主動式紅外線感測器)
宜蘭縣竹林國小 陳金助老師

紅外線避障模組:

左邊一般用於循跡自走車,右邊常用於避障小車,原理都是如同第十五課的說明,紅外線感測器可分為主動式和被動式兩種。

紅外線避障模組是屬於主動式的紅外線感測器,感測器本身會發射紅外線光束,當紅外線光束被物體擋住後,紅外線光束就會反射,接收器接收反射的紅外線,做出動作。例如:廁所的自動沖水小便斗、感應式水龍頭、機器人避障、避障小車、計數器及黑白線循跡自走車等。

特性:

該感測器模組對環境光線適應能力強,其具有一對紅外線發射與接收器,發射器發射出一定頻率的紅外線,當檢測方向遇到障礙物(反射面)時,紅外線反射回來被接收器接收,經過電路處理之後,輸出介面輸出數位訊號(一個低電位訊號)。可透過電位器旋鈕調節檢測距離(順時針,距離增加;逆時針,距離減少。),有效距離範圍2~80cm,檢測角度35°。 

一、感應式水龍頭

紅外線避障模組有3個接腳,VCC接5V,GND接地,OUT接數位腳D6當成Arduino的輸入訊號。

另外接一組紅色LED當作感應燈,正極接數位腳D7。(請參考第二課)

接好線路後,沒有遇到障礙物時,數位腳D6的輸入訊號為高電位(數值1)

當遇到障礙物時,數位腳D6的輸入訊號變為低電位(數值0)

不停重複的偵測數位腳D6的輸入訊號,如果是高電位(數值1)表示沒有遇到障礙物,紅色LED就不亮。

否則就是遇到障礙物,讓數位腳位D7變成高電位,紅色LED亮起來,並且說[沖水了]、發出水滴的聲音。

程式下載:感應洗手.sb2

二、計數器

接線圖跟上面一樣

接好線路後,沒有遇到障礙物時,數位腳D6的輸入訊號為高電位(數值1)

當遇到障礙物時,數位腳D6的輸入訊號變為低電位(數值0)

當物體經過感應區時,累計加1,可以計算出經過的物體總共有多少個。

每次感應時,同時發出聲音可以增加趣味。

程式設計:

做一個計數的變數,一開始設為0

不停重複的偵測數位腳D6的輸入訊號,如果是高電位(數值1)表示沒有遇到障礙物(東西),紅色LED就不亮。

否則就是遇到障礙物(東西),讓數位腳位D7變成高電位,紅色LED亮起來,並且將計數變數加1、發出鼓聲。

程式下載:計數.sb2

 

三、應用:

廁所的自動沖水小便斗:接收訊號後啟動繼電器讓沖水開關打開

感應式水龍頭:接收訊號後啟動繼電器讓水龍頭開關打開

機器人避障:裝置在機器人身上偵測障礙物,控制機器人避免碰撞。

避障小車:裝置在自走車上偵測障礙物,控制自走車避免碰撞。

自走車黑白線循跡:裝置在自走車上偵測地面黑線或白線,控制自走車沿著路線行走。

文章來源:Arduino第十六課(主動式紅外線感測器) 由 roc 發表。

作者: roc

宜蘭縣國小資訊小站