999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

多途徑實現Arduino“超聲波測距警示燈”

2021-09-24 18:59:51牟曉東
電腦報 2021年36期

牟曉東

汽車的倒車雷達系統能夠根據車尾與障礙物的間距進行聲音報警,間距值越小,蜂鳴器的“滴滴”嘯叫頻率越高。類似的,我們可以借助于Arduino開發板來制作一個小型“超聲波警示燈”系統,利用超聲波傳感器來檢測和顯示與障礙物的間距,并且能夠根據不同的間距值來控制不同顏色的LED發光:距離遠,非常安全,亮綠燈;距離減小,處于警示區間范圍,亮黃燈;距離接近于警示臨界點,比較危險,亮紅燈。

1.實驗器材與電路連接

實驗器材:Arduino UNO主板一個,HC-SR04超聲波傳感器一個,綠色、黃色和紅色LED燈各一支,面包板一塊,各種顏色的杜邦線若干。

首先,將Arduino的5V電源正極和GND通過杜邦線連接至面包板;HC-SR04超聲波傳感器有四個引腳,其中的VCC和GND分別插接至面包板的正極和負極,Trig信號發射引腳和Echo信號接收引腳分別插接至Arduino的2號和3號數字引腳;綠色、黃色和紅色LED的長腿(正極)通過面包板分別連接至Arduino的4號、7號和8號數字引腳,短腿(負極)與GND連接;最后,通過數據線將Arduino與計算機USB接口連接(如圖1)。

2.Arduino IDE代碼編程實現“超聲波測距警示燈”

在Arduino IDE中首先進行變量的定義,與超聲波傳感器相關的語句包括“int TrigPin = 2;”“int EchoPin = 3;”和“float distance;”,前兩個分別聲明它的信號發射與接收引腳為2號和3號數字引腳,定義的浮點型變量distancd是用來存儲超聲波傳感器所測量的間距值;接著再定義三個整形變量:“int GreenLED = 4;”“int YellowLED = 7;”和“int RedLED =8;”,分別對應綠色、黃色和紅色LED的三個數字引腳(4號、7號和8號)。

在setup()函數中,先通過語句“Serial.begin(9600);”來設置串口監視器的波特率,目的是實時顯示出超聲波傳感器所監測的間距數據;然后是五個pinMode()引腳模式設置語句,除超聲波傳感器的EchoPin設置為INPUT輸入模式外,將它的TrigPin和三個LED燈(GreenLED、YellowLED、RedLED)均設置為OUTPUT輸出模式(如圖2)。

在loop()函數中,首先要控制超聲波傳感器的發射端進行信號的觸發,即使用“低-高-低”的短時間脈沖:語句“digitalWrite(TrigPin, LOW);”和“delayMicroseconds(20);”的作用是控制發射端保持20微秒的低電平;然后通過語句“digitalWrite(TrigPin,HIGH);”和“delayMicroseconds(20);”,控制發射端再保持20微秒的高電平(即觸發一個20微秒的高脈沖);最后的語句“digitalWrite(TrigPin, LOW);”是控制發射端再次處于低電平狀態。

接著,為存儲間距值的變量distance進行賦值:“distance=pulseIn(EchoPin,HIGH) * 340/2/

10000;”,計算方法是借助pulseIn()來實現——此時要特別注意它的單位是“微秒”(空氣中的聲速值按340米/秒計),有“米與厘米”和“秒與微秒”間的單位換算(相當于“除以10000”);而且超聲波傳感器所監測的間距值是“超聲波從發射端發出、向前運動并碰到障礙物后、再返回至接收端”的往返值(要“除以2”),因此在表達式中要對“pulseIn(EchoPin, HIGH)”的值再進行“*340/2/10000”的計算。然后,在串口監視器中輸出一行提示信息,語句為“Serial.print("與障礙物間的距離為:"); ”;接著再通過“Serial.print(distance); ”和“Serial.print(“cm”); ”兩行語句,將distance變量和單位(“厘米”)在同一行顯示輸出;而后面的語句“Serial.println(); ”,作用是輸出一個“換行”(相當于“回車”操作)。

接下來要構建一個“if…else if…else…”三分支選擇結構,對變量distance的值進行區間范圍判斷:如果距離大于30厘米(“distance >= 30.00”),執行語句“digitalWrite(GreenLED,HIGH);”,控制綠色LED燈發光;如果距離在15厘米和30厘米之間(“distance < 30.00 and distance >= 15.00”),則執行語句“digitalWrite(YellowLED,HIGH);”,控制黃色LED燈發光;否則的話——相當于距離小于15厘米(“distance < 15.00”),則執行語句“digitalWrite(RedLED,HIGH);”,控制紅色LED燈發光。

最后,添加一個“delay(500); ”語句,作用是控制每次循環均延遲500毫秒;而三個digitalWrite()語句則是向三個LED連接引腳寫入低電平,作用是關閉所有的LED燈,從而為下一次循環的正確響應做好初始化準備(如圖3)。

主站蜘蛛池模板: 88av在线播放| 国产成人调教在线视频| 成人国产免费| 亚洲成A人V欧美综合天堂| 亚洲免费毛片| 国产成人无码久久久久毛片| 亚洲成人一区二区| 91口爆吞精国产对白第三集 | 91视频精品| 欧美色图久久| 三级欧美在线| 国产导航在线| 国产在线观看精品| 98超碰在线观看| 青草视频免费在线观看| 91视频99| 亚洲免费黄色网| 亚洲中文字幕97久久精品少妇| 久久久久人妻一区精品色奶水| 2021国产精品自拍| 中文无码日韩精品| 成年人久久黄色网站| 99热6这里只有精品| 久久久噜噜噜| 午夜视频www| 91亚洲精选| 天堂成人在线| 大学生久久香蕉国产线观看 | 国产成人精品第一区二区| 91精品国产自产在线老师啪l| 99ri国产在线| 久久久久中文字幕精品视频| 久久久久无码精品| 亚洲一区二区无码视频| 久久动漫精品| 国产18页| 日韩在线视频网站| 67194亚洲无码| 国产成人无码AV在线播放动漫| 久久精品国产国语对白| 99999久久久久久亚洲| 四虎永久在线| 2021最新国产精品网站| 99人体免费视频| 无码高潮喷水专区久久| 亚洲无线视频| 精品欧美一区二区三区在线| 久久黄色影院| 国产精品护士| 色综合成人| 国内精自视频品线一二区| 国产精品白浆在线播放| 精品偷拍一区二区| 欧美97欧美综合色伦图| 久久黄色毛片| 国产最爽的乱婬视频国语对白| 91精品国产情侣高潮露脸| 国产91小视频在线观看| yy6080理论大片一级久久| 久久女人网| 国产鲁鲁视频在线观看| 久青草网站| 国产自在线播放| 亚洲福利一区二区三区| 日韩天堂在线观看| 欧美一级在线看| 毛片久久网站小视频| 在线无码九区| 免费Aⅴ片在线观看蜜芽Tⅴ| www.亚洲国产| 国模极品一区二区三区| 成人伊人色一区二区三区| 欧美亚洲另类在线观看| 精品国产污污免费网站| 欧美亚洲另类在线观看| 亚洲综合色吧| 亚洲一级色| 国产精品尹人在线观看| 欧美日本在线播放| 一级毛片免费的| 日日碰狠狠添天天爽| 国产视频一区二区在线观看|