(SKU:RB-02S012)PING))) 兩個超聲波傳感器聯(lián)調(diào)實驗
來自ALSROBOT WiKi
目錄 |
實驗簡介
為了方便電子愛好者使用多個超聲波傳感器,現(xiàn)將兩個傳感器的聯(lián)調(diào)實驗方法寫下,供電子愛好者參考。
規(guī)格參數(shù)
- 工作電壓 :5V +/-10%
- 功耗 :20mA
- 工作電流:30mA
- 最大電流: 35mA
- 工作溫度范圍:0℃~+70℃
- 探測有效距離:2cm~3m
- 尺寸大小: 22 mm H x 46 mm W x 16 mm D
- 重量:9g
接口定義
- GND:電源地
- 5V:電源正極
- SIG:信號接口
使用方法
連接圖示
兩個超聲波的INPUT引腳接在D5,OUTPUT分別接D3、D4,如下圖:
例子程序
依照程序連接兩個超聲波傳感器與UNO,測試實際檢測的距離。
const int pingPin = 11; int inputPin1=4; // 接超聲波的 output 引腳到數(shù)字D4腳 int outputPin=5; // 接超聲波的 input 引腳到數(shù)字D5腳 int inputPin2=3; int ledpin=13; // 定義 ledPin 引腳為D13腳 void setup() { //初始化串口及引腳的輸入、輸出模式 Serial.begin(9600); pinMode(ledpin,OUTPUT); pinMode(inputPin1, INPUT); pinMode(outputPin, OUTPUT); pinMode(inputPin2, INPUT); } void loop() { unsigned int x1,x2; digitalWrite(outputPin, LOW); //使發(fā)出發(fā)出超聲波信號接口低電平2 μs delayMicroseconds(2); digitalWrite(outputPin, HIGH); //使發(fā)出發(fā)出超聲波信號接口高電平10μs ,這里是至少10μs delayMicroseconds(10); digitalWrite(outputPin, LOW); // 保持發(fā)出超聲波信號接口低電平 float distance1 = pulseIn(inputPin1, HIGH); // 讀出接收脈沖的時間 distance1= distance1/58; // 將脈沖時間轉(zhuǎn)化為距離(單位:厘米) x1 = distance1 * 100.0; distance1 = x1 / 100.0; //保留兩位小數(shù) Serial.print("x1 = "); Serial.println(distance1); // 輸出距離值 delay(150); digitalWrite(outputPin, LOW); //使發(fā)出發(fā)出超聲波信號接口低電平2 μs delayMicroseconds(2); digitalWrite(outputPin, HIGH); //使發(fā)出發(fā)出超聲波信號接口高電平10μs ,這里是至少10μs delayMicroseconds(10); digitalWrite(outputPin, LOW); // 保持發(fā)出超聲波信號接口低電平 float distance2 = pulseIn(inputPin2, HIGH); // 讀出接收脈沖的時間 distance2 = distance2/58; // 將脈沖時間轉(zhuǎn)化為距離(單位:厘米) x2 = distance2 * 100.0; distance2 = x2 / 100.0; //保留兩位小數(shù) Serial.print("x2 = "); Serial.println(distance2); // 輸出距離值 delay(150); } }
程序效果
打開串口監(jiān)視器可以觀察到輸出的距離值為當前超聲波距前方障礙物的實際距離。
產(chǎn)品相關(guān)推薦
產(chǎn)品購買地址
周邊產(chǎn)品推薦
LV-MaxSonar-EZ1 超聲波傳感器
超聲波傳感器支架
雙模式超聲波傳感器
相關(guān)問題解答
超聲波測距輸出的距離一直為0
超聲波傳感器不工作,如何解除故障
相關(guān)學習資料
parallax官方使用說明
parallax官方產(chǎn)品資料
Arduino教程02--Arduino連接超聲波傳感器測距
Arduino學習筆記- Arduino連接超聲波傳感器測距
奧松機器人技術(shù)論壇