最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Arduino超聲波傳感器教程 (Ultrasonic Sensor)

2023-03-16 00:23 作者:宇宙很大腦洞很圓  | 我要投稿

視頻教程:?【Arduino超聲波傳感器HC-SR04教程】?

圖一:超聲傳感器HC-SR04


什么是超聲傳感器HC-SR04?

超聲傳感器的英文是Ultrasonic Sensor。它有如下特點:

* 利用聲納(SONAR)來測量物體的距離,?測量角度<15°。

*?準確度高、性價比高、讀數(shù)穩(wěn)定、且便于使用。

* 可應(yīng)用于非接觸范圍檢測, 檢測范圍是2厘米-400厘米(+/-3毫米偏差)。

* 雖然它的操作很少受陽光或黑色材料的影響,但是柔軟的材料(如布料等)可能較難檢測到。

* 傳感器有四個引腳:

·?????? VCC 接到5V電源;

·?????? Trig 接到任何數(shù)字口;

·?????? Echo接到任何數(shù)字口;

·?????? GND 接到地。


測距的工作原理?

1)????? 傳感器會朝某一方向發(fā)射40K赫茲的超聲波,同時開始計時。

2)????? 聲波會在空氣中傳播,一旦遇到障礙物,聲波就會立刻返回。

3)????? 傳感器一旦接收到反射波就立刻停止計時。

4)????? 已知聲波在空氣中的傳播速度為340米/秒=34K厘米 / 秒= 0.034厘米/微秒。根據(jù)計時器的時間t, 我們可以計算出,從發(fā)射點到障礙物的距離為= 0.034厘米/微秒 * t超秒/2

?

超聲波傳感器的工作原理?

1) 利用 Arduino 的數(shù)字引腳給超聲波傳感器的 Trig 引腳至少 10 微秒的高電平信號,這會讓HC-SR04 超聲波測距模塊發(fā)射出8個40K赫茲的超聲波脈沖(ultrasonic burst)。

2) 8個超聲波脈沖發(fā)出后,echo引腳會輸出高電平。假如沒有聲波返回,echo引腳會在38微秒后輸出低電平。假如有聲波返回,echo引腳會進入低電平狀態(tài)。

3)? ? Echo輸出高電平的時間就是超聲波從發(fā)射到返回的時間。

圖二: 超聲波傳感器工作原理


材料清單

-?超聲傳感器HC-SR04 x1

- 面包板 x1

- 面包線(雙公頭) x4 - 面包線顏色不影響結(jié)果,但有助于理解教程

- Arduino Uno 開發(fā)板 x1

- USB接線 x1

- 裝有Arduino IDE/集成開發(fā)環(huán)境的電腦 x1?


電路圖

圖三: 電路圖


接線細節(jié)

圖四: 接線細節(jié)


代碼

const int trigPin = 3;? ? ?// 傳感器trig引腳連接到開發(fā)板模擬口3

const int echoPin = 2; // 傳感器Echo引腳連接到開發(fā)板模擬口2

long duration, distance;


void setup() {

? ?Serial.begin(9600); ? ? ? ?// 開始 Serial Terminal 串口監(jiān)視器

? ?pinMode(trigPin, OUTPUT);? // 將trigPin設(shè)置為輸出

? ?pinMode(echoPin, INPUT);? //將echoPin設(shè)置為輸入

}


void loop() {

? ?digitalWrite(trigPin, LOW); ?// 先將trigPin設(shè)置為低電平狀態(tài)2微秒

? ?delayMicroseconds(2); ? ? ?


? ?digitalWrite(trigPin, HIGH); //再將trigPin設(shè)置為高電平狀態(tài)10微秒

? ?delayMicroseconds(10);

? ?digitalWrite(trigPin, LOW);


? ?duration = pulseIn(echoPin, HIGH); //計算echoPin在高電平狀態(tài)的時長?

? ?distance = duration * 0.034 / 2; ?// 計算傳感器跟物體之間的距離

? ?

? ?Serial.print(distance);????????//在串口監(jiān)視器打印出距離

? ?Serial.print("cm");

? ?Serial.println();

? ?delay(1000);

}


如何上傳代碼?

a)? ? ? ?雙擊Arduino圖標, 一個Sketch會跳出來

b)????? 點擊文件(F) 新建項目, 打開一個新的Sketch

c)?????? 復(fù)制粘貼提供的代碼

d)????? 點擊工具>>開發(fā)板>>Arduino AVR Boards>>選擇Arduino Uno 開發(fā)板

e)????? 點擊工具>>選擇端口 (不一定是6, 由電腦分配)

f)??????? 點擊?檢查驗證/編譯代碼

g)?????? 點擊→上傳代碼

h)????? 點擊工具>>打開串口監(jiān)視器

恭喜,又完成一個教程了。

愿如風有信,所學有成~

















Arduino超聲波傳感器教程 (Ultrasonic Sensor)的評論 (共 條)

分享到微博請遵守國家法律
衡阳市| 延寿县| 海城市| 黄石市| 安陆市| 咸丰县| 林甸县| 枣强县| 新竹市| 禄丰县| 章丘市| 车致| 洛南县| 桑植县| 曲水县| 高安市| 塘沽区| 南部县| 兴城市| 合水县| 胶南市| 白朗县| 调兵山市| 普兰县| 江阴市| 城口县| 博客| 上饶县| 资中县| 江华| 松溪县| 南江县| 页游| 班玛县| 东平县| 思茅市| 克拉玛依市| 班戈县| 元江| 乌审旗| 泰兴市|