Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 9595|回復: 15
打印 上一主題 下一主題

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2009-12-4 11:18:44 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
[Q1].在這顆Sonar的Features:Input Trigger – positive TTL pulse, 2 uS min, 5 μs typ.
請問大大,他的TTL是指封包在網路上的存活時間嗎?!

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

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

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




2#
發表於 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;
}
3#
發表於 2009-12-4 15:36:33 | 只看該作者
程式碼很容易改
應該也不難看懂

不過要注意, 他對於軟性的的物體距離會有點較大的誤差
而對於尖角的反射也很怪(數值會忽大忽小), 主要是因為音波反射的方向問題啦
4#
 樓主| 發表於 2009-12-7 22:35:20 | 只看該作者
那這顆超音波?? 是一邊射出 一邊收嗎?!!

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

比較不懂是他的TTL 是指什?!
5#
發表於 2009-12-7 22:51:02 | 只看該作者
超音波--->ultrasonic,... 主要用在空氣中
聲納---> sonar... 主要用在水中
都是利用聲音回波
但構造不同
聲納很貴的, 超音波一般用的幾百塊就有了

其實我超音波也只是會用而已
還有會算他的速度公式, 其他我也不懂哩@@
6#
發表於 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公分
7#
發表於 2010-1-27 13:50:28 | 只看該作者
TTL就是標準的TX/RX而已, 不用想太多

超音波要準, 通常要搭溫濕度
因為溫度和濕度的值會"直接"影響超音波的答案
所以通常會搭配溫濕度計做修正, 不然通過不同區域會有大誤差出現
EX: 我的車子進浴室的時候, 超音波量到的距離會變短
8#
發表於 2010-1-27 16:56:28 | 只看該作者
沒錯沒錯,說且溫度很明顯,尤其是短距離超不準
我做的機器人也是,常常有誤差~~~所以只能玩玩吧
9#
 樓主| 發表於 2010-2-1 11:56:58 | 只看該作者
跟溫度有關....= =?!

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

我手邊也有溫溼度的sensor

要搭配使用是要調節什?? 不知道它溫度的範圍= =+!!
10#
發表於 2010-2-1 12:43:54 | 只看該作者
當然和溫度有關
溫度高低會"直接"影響空氣密度
在熱空氣中的速度比在中的傳播速度快
音波是透過空氣當介值在跑, 密度變化, 會直接影響速度
就好像鐵, 音波在鐵裡面可以每秒五千多公尺耶

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

當然, 你也可以不鳥他, 這個的差距頂多只約幾公分
但是有些時候幾公分就很嚴重了
11#
發表於 2010-2-1 14:35:37 | 只看該作者
另外, 因為反射物的不同也會牽拖到
所以在不同環境, 即使溫濕度一樣也是有別
EX: 在隔音室跟在只有四面牆壁的房間, 結果也有差
主要是因為剛性物體和柔性物體的反射也不太相同, 以及周圍回波的雜音

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

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

還有一招解法是利用影像判斷, 結合雷射光
這也很便宜, 雷射光發射器一顆才幾十元
軟體我自己寫的, 目前已能精準到1cm,
3~5公尺內有效, 高於這個數字會因為雷射光漸漸的發散, 準度會爆減
12#
 樓主| 發表於 2010-2-2 13:39:12 | 只看該作者
原來是這樣!! 感謝m大的耐心回答~
13#
發表於 2010-5-3 02:18:06 | 只看該作者
大大您們好~
我是初學者~不好意思~有問題請教~
我是想用超音波感應器(以下是產品的網址)
http://www.robot-electronics.co.uk/htm/srf10tech.htm
與arduino相結合,想利用此超音波感應器來控制arduino接角13的led燈,不知這樣的程式應該在arduino上應該如何寫,另外是否有範例圖可提供觀看~
謝謝各位大大們~
14#
發表於 2010-5-3 02:27:07 | 只看該作者
不好意思~
補上我的E-mail:jason@rdsoft.com.tw
謝謝有心的大大們能協助~

謝謝~
15#
發表於 2010-5-3 15:43:35 | 只看該作者
www.arduino.cc 原廠的文件也許先看一下
裡面的控制LED的範例應該是很清楚了

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

其實, 要人協助...建議自己就先努力過喔
nichal 該用戶已被刪除
16#
發表於 2010-5-3 21:24:51 | 只看該作者
TTL是電壓準位的依據
>2V是High
<0.8V是Low

CMOS則是
>VCC-0.5V是High
<0.5V為Low
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-11-21 19:04 , Processed in 0.168283 second(s), 8 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表