電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>與Arduino Uno接口超聲波傳感器開(kāi)源

與Arduino Uno接口超聲波傳感器開(kāi)源

2022-11-30 | zip | 0.09 MB | 次下載 | 2積分

資料介紹

描述

Arduino Uno 接口超聲波傳感器

超聲波傳感器是眾多項(xiàng)目的主要部分之一。在這里,我們將連接超聲波傳感器 HC-SR 05 與 Arduino Uno。

在這個(gè)項(xiàng)目中,我們討論,

  • 將超聲波傳感器 HC-SR 05 連接到 Arduino。
  • 讀取傳感器并將其轉(zhuǎn)換為長(zhǎng)度。
  • 將長(zhǎng)度打印到串行監(jiān)視器。

HC-SR 05

在開(kāi)始之前,我們需要了解超聲波傳感器 HC-SR 05 的工作原理。實(shí)際上它由一個(gè)超聲波發(fā)射器和一個(gè)超聲波接收器組成。首先超聲波發(fā)射器發(fā)送一個(gè)超聲波。信號(hào)將與物體碰撞并反射信號(hào)。接收器將接收反射信號(hào)。通過(guò)接收反射所需的時(shí)間計(jì)算的距離。和空氣中的聲速。室溫下空氣中的聲速為 340 米/秒或 0.034 厘米/微秒。計(jì)算時(shí)間的公式是,

時(shí)間=距離/聲速

如果物體距離傳感器 10 厘米,您將根據(jù)等式獲得時(shí)間,

10/0.034 = 294.11 微秒

但是你會(huì)從 Echo 引腳得到的值是 588.22。這是因?yàn)槁暡ㄐ枰蚯皞鞑ゲ⑾蚝蠓磸棥?/font>所以我們需要將該值除以 2 以獲得實(shí)際值(時(shí)間)。這里我們要計(jì)算與時(shí)間的距離。所以重新排列我們將得到的方程,

距離=時(shí)間x音速

開(kāi)始的時(shí)間。

在utsource.net上購(gòu)買免費(fèi)送貨的電子元件

步驟1

打開(kāi)Arduino IDE (這里參考我之前的文章關(guān)于Arduino IDE的介紹),我們需要定義兩個(gè)引腳,數(shù)字引腳2上的echoPin和數(shù)字引腳3上的trigPin。使用關(guān)鍵字“define”。接下來(lái)聲明兩個(gè)變量,一個(gè)是“duration”。這是存儲(chǔ)聲波傳播的持續(xù)時(shí)間。其他是“distance”,用于存儲(chǔ)計(jì)算的距離。

#define echoPin 2
#define trigPin 3
long duration;
int distance;

定義部分完成。下一個(gè)設(shè)置部分。

第2步

在 void setup() 函數(shù)中,我們需要以波特率 9600 開(kāi)始串行通信。這是通過(guò)關(guān)鍵字“Serial.begin(9600)”完成的。然后通過(guò)關(guān)鍵字“pinMode(trigPin, OUTPUT)”將 trigPin 設(shè)置為“OUTPUT”。因?yàn)?trigPin 是傳感器模塊發(fā)射器的輸入引腳。現(xiàn)在我們需要將 echoPin 設(shè)置為“INPUT”。通過(guò)關(guān)鍵字“pinMode(echoPin, INPUT)”。

void setup(){
  Serial.begin(9600);
  pinMode(trigPin,OUTPUT);
  pinMode(echoPin,INPUT);
 }

設(shè)置部分完成。

現(xiàn)在我們需要編寫循環(huán)部分。

步驟 - 3

現(xiàn)在 trigPin 狀態(tài)處于浮動(dòng)狀態(tài)。我們需要將其設(shè)置為“LOW”。為此,我們使用關(guān)鍵字“digitalWrite(trigPin, LOW)”。然后通過(guò)關(guān)鍵字“delayMicroseconds(2)”將此狀態(tài)保持 2 微秒。

digitalWrite(trigPin,LOW);
delayMicroseconds(2);

現(xiàn)在我們需要將 trigPin “HIGH”設(shè)置為 10 秒,使用上面提到的相同關(guān)鍵字。只改變參數(shù)。

digitalWrite(trigpin,HIGH);
delayMicroseconds(10);

然后將 trigPin 設(shè)置為“LOW”狀態(tài)。

digitalWrite(trigpin,LOW);

現(xiàn)在讀取 echoPin 并將其放入函數(shù)“pulseIn(echoPin, HIGH)”。這將返回總行程時(shí)間。所以我們需要把這個(gè)返回值存儲(chǔ)到變量“duration”中。

duration=pulseIn(echoPin,HIGH);

總行程時(shí)間現(xiàn)在存儲(chǔ)在變量“duration”中

現(xiàn)在我們可以使用等式計(jì)算與此持續(xù)時(shí)間的距離。并將計(jì)算值(距離)存儲(chǔ)到變量“距離”中。上面已經(jīng)解釋了方程

distance=(duration*0.034/2);

從傳感器到物體的距離現(xiàn)在存儲(chǔ)在變量“距離”中。

然后我們需要將它顯示到屏幕上。為此,這里我們使用串行通信。Ypu 還可以使用 LCD、Sven Segment Display、OLED Disply 等……(會(huì)改變)。首先打印標(biāo)題或消息。在這里我要打印“距離”。通過(guò)使用“Serial.print(”距離:“)”。之后打印到串行監(jiān)視器的距離,我們使用關(guān)鍵字“Serial.println(distance)”。然后通過(guò)"Serial.println(" cm ")" 打印單位。在這里,我使用了帶有“Serial.print()”的“l(fā)n”。這是為了開(kāi)始新的線路。代碼就像,

Serial.print("Distance : " );
Serial.print(distance)";
Serial.println(" cm ")";

代碼完成。將代碼上傳到 Arduino Uno。完整的代碼在代碼部分給出。

第4步

接下來(lái)添加 1 秒延遲

delay(1000);

步驟 - 5

然后使用母對(duì)公跳線將超聲波傳感器 HC -SR05 連接到 Arduino Uno。

HC -SR05 Arduino Uno

VCC 5V

回聲 D2

觸發(fā) D3

接地 接地

步驟 - 5

現(xiàn)在我們需要從 Arduino IDE 的右上角打開(kāi)串行監(jiān)視器。請(qǐng)確保選擇的 COM 端口(在 Windows 操作系統(tǒng)中)是正確的,并且欺詐率是 9600。

你可以在這里看到這個(gè)項(xiàng)目的模擬

希望你能理解這篇文章。

請(qǐng)不要復(fù)制粘貼我的代碼。做你自己的。這將有助于使用超聲波傳感器創(chuàng)建項(xiàng)目

在這里加入我們的電報(bào)組或搜索 INNOVATION。

閱讀我之前的文章

1. Arduino Uno 伺服電機(jī)接口

2.用Arduino Uno和POT控制伺服電機(jī)

3.使用 Arduino Uno 和按鈕控制伺服電機(jī)


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)