線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1978
推到 Plurk!
推到 Facebook!

超音波感測器SRF02使用疑問

缺席
旭日之心
一般會員


發表:3
回覆:10
積分:2
註冊:2009-03-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-05-07 00:49:21 IP:59.105.xxx.xxx 訂閱
我最近買了一組超音波感測器SRF02,我想先用SERIES模式,用超級終端機控制,一端接上電腦後面的COM1,另一端接上SRF02,中間有接上MAX232,Mode腳也有接地了。但是當我輸入命令時,SRF02卻一動也不動,一接上電源時會亮一下,但是之後都沒有動靜了,我有想過會不會是終端機的問題,所以我把RX、TX兩條短路,我輸入一個字,她會跑兩個出來,我也接上示波器,當我有輸入時,示波器會有變化,這樣是不是算終端機的傳輸沒有問題了。
我把示波器接到SRF02的RX上,當我輸入命令時,示波器也會有一些小波動,但是卻完全沒有動作,是我的命令打錯了嗎?
我的設定是傳輸位元:9600 資料位元:8 同位檢查:無 停止位元:2 流量控制:無
我輸入的指令是0X00 0X54 他都沒有回傳距離給我,而且LED也沒有閃爍(DATASHEET上寫有測距的話會閃爍),我也打了0 84之類的,但都一樣,是我有地方設定錯誤嗎?還是壞了,命令要怎麼打?是打十六進制還是十進制,輸入00後要按ENTER嗎?還是要先給他一個啟始訊號?
這是SRF02的規格及技術資料網址:http://www.playrobot.com/sensor/product information/ultrasonic_sensor/srf02.html

編輯記錄
 重新編輯於 2009-05-07 09:02:59, 註解 無‧
旭日之心 重新編輯於 2009-05-07 18:43:24, 註解 無‧
aki
版主


發表:30
回覆:696
積分:755
註冊:2004-01-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-05-07 06:25:58 IP:61.229.xxx.xxx 訂閱

>我最近買了一組超音波感測器SRF02,我想先用SERIES模式,用超級終端機控制,一端接上電腦後面的
>COM1,另一端接上SRF02,中間有接上MAX232,Mode腳也有接地了。但是當我輸入命令時,
>SRF02卻一動也不動,一接上電源時會亮一下,但是之後都沒有動靜了,我有想過會不會是終端機的問題,
>所以我把RX、TX兩條短路,我輸入一個字,她會跑兩個出來,我也接上示波器,當我有輸入時,
>示波器會有變化,這樣是不是算終端機的傳輸沒有問題了。
>我把示波器接到SRF02的RX上,當我輸入命令時,示波器也會有一些小波動,但是卻完全沒有動作,
>是我的命令打錯了嗎?http://www.robot-electronics.co.uk/htm/srf02techSer.htm

>我的設定是傳輸位元:9600 資料位元:8 同位檢查:無 停止位元:2 流量控制:無
>我輸入的指令是0X00 0X54 他都沒有回傳距離給我,而且LED也沒有閃爍
>(DATASHEET上寫有測距的話會閃爍),我也打了0 84之類的,但都一樣,是我有地方設定錯誤嗎?還是壞了,
>命令要怎麼打?是打十六進制還是十進制,輸入00後要按ENTER嗎?還是要先給他一個啟始訊號?
>這是SRF02的規格及技術資料網址:
>http://www.playrobot.com/sensor/product information/ultrasonic_sensor/srf02.html

先假設你的 RS-232 沒有接錯,
The are three commands to initiate a ranging (80 to 82), to produce the result in inches, centimeters or microseconds. These three commands don't Tx the result back to your controller. You should wait 70mS and then use command 94 to get the result of the ranging.

他已經告訴你要先 initial, 然後得等待 70m,再下 94 會得到資料,
我找不到你下 0x00, 0x54 的 command 哪裡有寫?
編輯記錄
aki 重新編輯於 2009-05-07 06:27:51, 註解 無‧
旭日之心
一般會員


發表:3
回覆:10
積分:2
註冊:2009-03-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-05-07 18:41:50 IP:140.127.xxx.xxx 訂閱
在Command裡面,我打的16進制(Hex),十進制的是84,要怎樣initial?那段英文的意思不是說輸入80~82的指令,等70mS再輸入94取得資料嗎?我輸入84(0X54)不就可以直接得到它的資料了嗎?這兩個有什麼差別?
initial是要輸入什麼指令?不是直接輸入address在輸入command嗎?
用終端機要怎麼等70mS?
感謝你的回答
aki
版主


發表:30
回覆:696
積分:755
註冊:2004-01-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-05-07 19:58:53 IP:61.229.xxx.xxx 訂閱
Sorry!  Module  我沒有所以無法確認所說的會是對嗎?
請你自己用功一些試看看囉!


===================引 用 旭日之心 文 章===================
在Command裡面,我打的16進制(Hex),十進制的是84,要怎樣initial?那段英文的意思不是說輸入80~82的指令,等70mS再輸入94取得資料嗎?我輸入84(0X54)不就可以直接得到它的資料了嗎?這兩個有什麼差別?
initial是要輸入什麼指令?不是直接輸入address在輸入command嗎?
用終端機要怎麼等70mS?
感謝你的回答
lwh
一般會員


發表:7
回覆:11
積分:3
註冊:2009-01-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2009-05-10 21:05:21 IP:220.141.xxx.xxx 訂閱
我想應該是這樣
手冊上 0x54是指一個byte 數值, 如果你在終端機上傳"0x54"是四個位元組, 當然不行
妳要使用其他工具測試, 而不是終端機
系統時間:2024-05-06 10:10:29
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!