A26-超聲波模塊實驗

回覆文章
cajhbb
系統管理員
文章: 914
註冊時間: 2018年 6月 30日, 02:16

A26-超聲波模塊實驗

文章 cajhbb »

超音波感測器(老外好像把它叫作 PING Sensor)是由超音波發射器、接收器和控制電路所組成。當它被觸發的時候,會發射一連串 40 kHz 的聲波並且從離它最近的物體接收回音。超音波是人類耳朵無法聽見的聲音,因為它的頻率很高。
A26-超聲波模塊實驗
HC-SR04模組應先插好在電路板上再通電,避免產生高電平的誤動作,如果產生了重新通電就可以恢復了。
※HC-SR04模組工作原理:
(1)使用用IO觸發測距,給至少10us的高電平信號
(2)模組自動發送8個40khz的方波,自動檢測是否有信號返回
(3)有信號返回時通過IO輸出一高電平,高電平持續的時間就是超聲波從發射到返回的時間
(5)測試距離=(高電平時間*聲速(340M/S))/2
(6)本產品使用方法簡單,一個控制口發一個10US以上的高電平,就可以在接收口等待高電平輸出,一有輸出就可以開定時器計時,當此口變為低電平時就可以讀定時器的值,此時就為此次測距的時間,方可算出距離,如此不斷的週期測試,就可以達到你移動測量的值了。
(7)偵測距離:輸入DC5V時、偵測距離2cm~450cm
超音波模組.jpg
超音波模組.jpg (20.97 KiB) 已瀏覽 1065 次
接線方式:
HC-SR04超音波–>Arduino主控板,
VCC –> +5V
trig (控制端) –> 任意Digital Pin
echo(接收端) –> 任意Digital Pin
GND(接地端) –> GND
※trig引腳是內部上拉10K的電阻,用單片機的IO口拉低TRIP引腳,然後給一個10us以上的脈沖信號。

代碼: 選擇全部

//感測模組HC-SR04超音波模組
int trigPin=7; //第7腳接HC-SR04的Trig
int echoPin=8; //第8腳接HC-SR04的Echo
float duration,cm;//時間間隔,距離
//-------------------------------
void setup() {
 Serial.begin(9600);//串列port
 pinMode(trigPin,OUTPUT);//第7腳輸出模式
 pinMode(echoPin,INPUT);//第8腳輸出模式
}

void loop() {
digitalWrite(trigPin,LOW);//初始設定
delayMicroseconds(5);
digitalWrite(trigPin,HIGH);//至少給觸發腳位7,10us高電位
delayMicroseconds(10);
digitalWrite(trigPin,LOW);//送出觸發訊號,模組會送8個40kHZ的方波
duration=pulseIn(echoPin,HIGH);//回收訊號
cm=(duration/2)/29.1;//換算成公分
Serial.print("距離;");
Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(250);
}
pingsensor.zip
(803 Bytes) 已下載 104 次
https://youtu.be/w4eGVOpD-Ig
回覆文章