robot2009 發表於 2009-12-4 11:18:44

[請益]PING)))™ Ultrasonic Distance Sensor (#28015)

.在這顆Sonar的Features:Input Trigger – positive TTL pulse, 2 uS min, 5 μs typ.
請問大大,他的TTL是指封包在網路上的存活時間嗎?!

.Sonar跟超音波應該是一樣的通西八?? 是因為統稱嗎?! 因為爬文看有些人也是叫超音波為聲納!! 看這顆超音波的 data sheet 也是一樣是用sonar 這個字彙.

.這顆是打出去的超音波一邊打出去 一邊接收嗎?!! 還是兩顆一起打 兩顆一起收!!?

[Theory of Operation].(想請問我這樣解讀這顆超音波的動作原理對嗎?!)
‧一開始給予一個(high-low-high)的觸發信號,再等待750mus啟動Sonar產生頻率40kHz的聲音 振盪200us ,此時Sonar會以High的Pulse來量測回傳的Pulse,即Sonar的距離。
"動作原理的圖 在page of 13"




mzw2008 發表於 2009-12-4 15:35:21

這顆很好用
功能簡單
我測試過感覺很不錯
又便宜

不過得看你是用怎樣的方式接她喔
我是接在arduino上面使用的
控制他只要這樣寫就可以哩
int pingPin = 7;

void setup()
{
Serial.begin(9600);
}

void loop()
{
long duration, cm;

// The PING))) is triggered by a HIGH pulse of 2 or more microseconds.
// We give a short LOW pulse beforehand to ensure a clean HIGH pulse.
pinMode(pingPin, OUTPUT);
digitalWrite(pingPin, LOW);
delayMicroseconds(2);
digitalWrite(pingPin, HIGH);
delayMicroseconds(5);
digitalWrite(pingPin, LOW);

// The same pin is used to read the signal from the PING))): a HIGH
// pulse whose duration is the time (in microseconds) from the sending
// of the ping to the reception of its echo off of an object.
pinMode(pingPin, INPUT);
duration = pulseIn(pingPin, HIGH);

// convert the time into a distance
cm = microsecondsToCentimeters(duration);

Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(300);
}

long microsecondsToCentimeters(long microseconds)
{
// The speed of sound is 340 m/s or 29 microseconds per centimeter.
// The ping travels out and back, so to find the distance of the
// object we take half of the distance travelled.
return microseconds / 29 / 2;
}

mzw2008 發表於 2009-12-4 15:36:33

程式碼很容易改
應該也不難看懂

不過要注意, 他對於軟性的的物體距離會有點較大的誤差
而對於尖角的反射也很怪(數值會忽大忽小), 主要是因為音波反射的方向問題啦

robot2009 發表於 2009-12-7 22:35:20

那這顆超音波?? 是一邊射出 一邊收嗎?!!

我用它的平台也蠻好使用的!!Sonar跟超音波應該是一樣的通西八?? 是因為統稱嗎?! 因為爬文看有些人也是叫超音波為聲納!! 看這顆超音波的 data sheet 也是一樣是用sonar 這個字彙.

比較不懂是他的TTL 是指什?!

mzw2008 發表於 2009-12-7 22:51:02

超音波--->ultrasonic,... 主要用在空氣中
聲納---> sonar... 主要用在水中
都是利用聲音回波
但構造不同
聲納很貴的, 超音波一般用的幾百塊就有了

其實我超音波也只是會用而已
還有會算他的速度公式, 其他我也不懂哩@@

miaoichi 發表於 2010-1-27 13:04:27

其實M大謙虛了~~~超音波也只是一個公式,他是懶得說
我來幫他說明一下

V = 331公尺+0.6t ( t就是溫度C)
假設溫度是25-> V = 346 公尺/秒
但是超音波是反過來(假設你的超音波是20khz)
假設發出到接收到花了 692ms(去跟回,所以要除2)
Distance(距離) =346ms秒 / 346公尺秒 = 1 m 公尺 -> 0.1公分

mzw2008 發表於 2010-1-27 13:50:28

TTL就是標準的TX/RX而已, 不用想太多

超音波要準, 通常要搭溫濕度
因為溫度和濕度的值會"直接"影響超音波的答案
所以通常會搭配溫濕度計做修正, 不然通過不同區域會有大誤差出現
EX: 我的車子進浴室的時候, 超音波量到的距離會變短

miaoichi 發表於 2010-1-27 16:56:28

沒錯沒錯,說且溫度很明顯,尤其是短距離超不準
我做的機器人也是,常常有誤差~~~所以只能玩玩吧

robot2009 發表於 2010-2-1 11:56:58

跟溫度有關....= =?!

不過看起來好像沒有很大的影響@@??!

我手邊也有溫溼度的sensor

要搭配使用是要調節什?? 不知道它溫度的範圍= =+!!

mzw2008 發表於 2010-2-1 12:43:54

當然和溫度有關
溫度高低會"直接"影響空氣密度
在熱空氣中的速度比在中的傳播速度快
音波是透過空氣當介值在跑, 密度變化, 會直接影響速度
就好像鐵, 音波在鐵裡面可以每秒五千多公尺耶

所以...溼度的變化也會造成音波的變化
這部分我是自己用溫濕度計, 調節出各種溫溼度的組合去看變化
然後自己做程式裡面的表格來查詢修正

當然, 你也可以不鳥他, 這個的差距頂多只約幾公分
但是有些時候幾公分就很嚴重了

mzw2008 發表於 2010-2-1 14:35:37

另外, 因為反射物的不同也會牽拖到
所以在不同環境, 即使溫濕度一樣也是有別
EX: 在隔音室跟在只有四面牆壁的房間, 結果也有差
主要是因為剛性物體和柔性物體的反射也不太相同, 以及周圍回波的雜音

像利基科技開發來專賣學校的小型自走車,上面就用超音波搭紅外線距離探測
這樣可以互相修正彼此的問題哩
那台車設計的還滿可愛, 整個質感很棒

個人使用心得是, 最好還是用雷射啦
只是一個至少三五萬以上, 實在買不下手
都只能去實驗室用, 不然就是裝孝維, 就給他不準了

還有一招解法是利用影像判斷, 結合雷射光
這也很便宜, 雷射光發射器一顆才幾十元
軟體我自己寫的, 目前已能精準到1cm,
3~5公尺內有效, 高於這個數字會因為雷射光漸漸的發散, 準度會爆減

robot2009 發表於 2010-2-2 13:39:12

原來是這樣!! 感謝m大的耐心回答~

rdjason 發表於 2010-5-3 02:18:06

大大您們好~
我是初學者~不好意思~有問題請教~
我是想用超音波感應器(以下是產品的網址)
http://www.robot-electronics.co.uk/htm/srf10tech.htm
與arduino相結合,想利用此超音波感應器來控制arduino接角13的led燈,不知這樣的程式應該在arduino上應該如何寫,另外是否有範例圖可提供觀看~
謝謝各位大大們~

rdjason 發表於 2010-5-3 02:27:07

不好意思~
補上我的E-mail:jason@rdsoft.com.tw
謝謝有心的大大們能協助~

謝謝~

mzw2008 發表於 2010-5-3 15:43:35

www.arduino.cc 原廠的文件也許先看一下
裡面的控制LED的範例應該是很清楚了

http://www.robot-electronics.co.uk/htm/srf10tech.htm
裡面也有SRF 10 的接線方法
兩者合起來應該就能作出來哩

其實, 要人協助...建議自己就先努力過喔

nichal 發表於 2010-5-3 21:24:51

TTL是電壓準位的依據
>2V是High
<0.8V是Low

CMOS則是
>VCC-0.5V是High
<0.5V為Low
頁: [1]
查看完整版本: [請益]PING)))™ Ultrasonic Distance Sensor (#28015)