|
|
第1行: |
第1行: |
? | [[文件:p-1.jpg|500px|有框|右]]
| |
? | ==概述==
| |
? | :2012年最新推出的RB URF02超聲波傳感器是RB URF v1.1超聲波傳感器的升級(jí)產(chǎn)品,在保留原有功能的基礎(chǔ)上,新增加模式選擇功能,有兩種模式可選擇:單線模式只需要一根信號(hào)線,大大減少IO口資源;雙線模式與原有功能一樣,需要一根輸入和輸出信號(hào)線。偵測距離和精度也有較大提高,可達(dá)1cm到500cm,其在有效探測范圍內(nèi)自動(dòng)標(biāo)定,無需任何人工調(diào)整就可以獲得障礙物準(zhǔn)確的距離。令你的機(jī)器人像蝙蝠一樣通過聲納來感知周圍的環(huán)境,你只需要在單片機(jī)、微控制器中編寫一小段程序,就可以根據(jù)障礙物的距離精確的控制機(jī)器人的電機(jī)運(yùn)行,從而使你的機(jī)器人輕松地避開障礙物,因此其是機(jī)器人領(lǐng)域最常用的測距避障模塊。
| |
? | ==性能描述==
| |
? | # 工作電壓 :+5v
| |
? | # 工作電流 :<20mA
| |
? | # 工作頻率 :40KHz
| |
? | # 工作溫度范圍:-10℃~+70℃
| |
? | # 探測有效距離:1cm~500cm
| |
? | # 探測分辨率:0.5cm
| |
? | # 探測誤差:±0.5%
| |
? | # 靈敏度:大于1.8m外可以探測到直徑2cm物體
| |
? | # 接口類型:TTL(單線模式和雙線模式可切換)
| |
? | # 方向性偵測范圍:定向式(水平/垂直)65度圓錐
| |
? | # 尺寸大?。?120mm x 115mm
| |
? | # 重量大?。?g
| |
? | [[文件:p-2.jpg|500px|有框|居中]]
| |
? | 引腳定義
| |
? | 傳感器引腳的定義是
| |
? | OUTPUT:輸出信號(hào)
| |
? | INPUT:信號(hào)輸入
| |
? | * +:電源(VCC)
| |
? | * -:地(GND)
| |
? | ==使用方法==
| |
? | 單線模式接線:
| |
? | [[文件:p-3.jpg|500px|有框|居中]]
| |
? | INPUT端口接到控制器的I/O口。5V 和GND分別接到電源的+5V和GND。
| |
? | 注:在使用單線模式時(shí)模式選擇開關(guān)(Mode)撥到數(shù)字1側(cè)。
| |
? | 實(shí)物連接圖
| |
? | 雙線模式接線:
| |
? | INPUT、OUTPUT端口接到控制器的I/O口。5V 和GND分別接到電源的+5V和GND。
| |
? | 注:在使用雙線模式時(shí)模式選擇開關(guān)(Mode)撥到數(shù)字2側(cè)。
| |
| | | |
? | [[文件:p-4.jpg|500px|有框|居中]]
| |
? | 實(shí)物連接圖
| |
? | [[文件:p-5.jpg|500px|有框|居中]]
| |
? | 連接示意圖
| |
? | ==模塊測試==
| |
? | :單線模式測試: 硬件連接如圖所示,數(shù)字口2 接超聲波的INPUT ,將開關(guān)撥到數(shù)字1 一側(cè)超聲波進(jìn)入單線模式。
| |
? | :程序代碼如下:
| |
? | <pre style='color:blue'>int duration; //變量duration 用來存儲(chǔ)脈沖時(shí)間
| |
? | int distance; //變量distance 用來存儲(chǔ)距離
| |
? | int srfPin = 2; //定義srfPin 引腳為 2
| |
? | void setup()
| |
? | {
| |
? | Serial.begin(9600);
| |
? | }
| |
? | void loop()
| |
? | {
| |
? | pinMode(srfPin, OUTPUT);
| |
? | digitalWrite(srfPin, LOW);
| |
? | delayMicroseconds(2);
| |
? | digitalWrite(srfPin, HIGH);
| |
? | delayMicroseconds(10);
| |
? | digitalWrite(srfPin, LOW);
| |
? | pinMode(srfPin, INPUT);
| |
? | duration = pulseIn(srfPin, HIGH);
| |
? | distance = duration/58; // 將脈沖時(shí)間轉(zhuǎn)化為距離(單位:厘米)
| |
? | Serial.println(distance); // 輸出距離值
| |
? | delay(50);
| |
? | } </pre>
| |
? | 打開串口助手可以觀察到輸出的距離值。
| |
? | 雙線模式測試:
| |
? | :硬件連接如下圖所示,數(shù)字口4 接超聲波的OUTPUT 、數(shù)字口5 接超聲波INPUT ,將開關(guān)撥到數(shù)字2 一側(cè)超聲波進(jìn)入雙線模式。
| |
? | 程序代碼如下:
| |
? | <pre style='color:blue'>int inputPin=4; // 定義超聲波信號(hào)接收接口
| |
? | int outputPin=5; // 定義超聲波信號(hào)發(fā)出接口
| |
? | int ledpin=13; // 定義ledPin 引腳為13
| |
? | void setup()
| |
? | {
| |
? | Serial.begin(9600);
| |
? | pinMode(ledpin,OUTPUT);
| |
? | pinMode(inputPin, INPUT);
| |
? | pinMode(outputPin, OUTPUT);
| |
? | }
| |
? | void loop()
| |
? | {
| |
? | digitalWrite(outputPin, LOW); //使發(fā)出發(fā)出超聲波信號(hào)接口低電平2 μs
| |
? | delayMicroseconds(2);
| |
? | digitalWrite(outputPin, HIGH);
| |
? | //使發(fā)出發(fā)出超聲波信號(hào)接口高電平10μs ,這里是至少10μs
| |
? | delayMicroseconds(10);
| |
? | digitalWrite(outputPin, LOW); // 保持發(fā)出超聲波信號(hào)接口低電平
| |
? | int distance = pulseIn(inputPin, HIGH); // 讀出脈沖時(shí)間
| |
? | distance= distance/58; // 將脈沖時(shí)間轉(zhuǎn)化為距離(單位:厘米)
| |
? | Serial.println(distance); // 輸出距離值
| |
? | delay(50);
| |
? | if (distance >=50)
| |
? | { //如果距離大于50厘米小燈亮起
| |
? | digitalWrite(ledpin,HIGH);
| |
? | } //如果距離小于50厘米小燈熄滅
| |
? | else
| |
? | digitalWrite(ledpin,LOW);
| |
? | } </pre>
| |
? | :打開串口助手可以觀察到距離值,如果距離小于 50厘米數(shù)字口13的LED 小燈熄滅,距離大于50厘米數(shù)字口13的LED 小燈亮起同時(shí)串口打印處距離數(shù)據(jù)。
| |
? |
| |
? | →購買地址 RB URF02超聲波傳感器 http://www.gharee.com/goods.php?id=132]
| |