2010-11-23

Dexter dGPS 應用 與 功能初灠



昨晚收到dexter GPS sensor for Mindstorms NXT上市通知的mail
而在產品頁面有對於dGPS應用生動的介紹:
將目的地GPS座標傳送到機器人來計算航程資訊,就可以運用強大的巡航計算器功能導航至目的座標。
< >


由上面的描述大致可以推測dGPS應該具備有這三項功能:


l   GPS定位資訊,可以知道目前所在的座標位置。


l   而如果要能導航也須要讓機器人知道目前的方位,所以可能也有電子羅盤(Compass)的功能。


l   有了以上兩種資訊,基本上就可以控制機器人朝目標座標前進,反正若目標緯度(Latitude)大於目前位置就往北走,而若目標經度(Longtitude)較大則往東走,這些都是程式可以做到的,因此不確定行程運算功能為何?可能是計算與目標間的方位與距離。


不過,因為小小的sensor裡面不可能存放圖資,所以機器人的活動範圍應該是戶外操場或廣場之類的地方,當然也可以拿來log航行座標記錄再輸出到Google Map劃出路徑。


控制功能


dGPS產品頁面有提供兩份文件:dGPS User GuidedGPS Google Maps Tutorial,內容都是如何與Google Map結合使用,沒有其他的技術說明資料。
程式工具則有提供NXT-G Block,同時Xander所維護的3rd Party RobotC Driver V1.7.1也有相關的API,這剛好可以拿來參考dGPSinternal registers資訊:
dGPS Device address
0x06
Register Layout
















































Address



Read



Write



0x00



讀取UTC衛星時間



 



0x01



衛星連線狀態
0-No link, 1-link



 



0x02~0x03



目前位置緯度(Latitude)



 



0x04~0x05



目前位置經度(Longtitude)



 



0x06



速度資訊(cm/)



 



0x07



指向角度資訊



 



0x08



與目標間的距離



 



0x09



與目標間的方位角度



 



0x0A



 



設定目標之緯度



0x0B



 



設定目標之經度



摘要


dGPS要價$105還算合理,實用性亦高(究竟這是給機器人用的GPS而不是人用的,不能拿市面上手持式GPS來比),只有使用場所便不便利的問題,若有足夠空曠的戶外場地、晴朗的天氣,到還是有它好玩之處。



  • 留言者: 阿呆
  • Email: phushu@yahoo.com.tw
  • 網址:
  • 日期: 2011-05-25 09:09:55
您太客氣了~我懂的都是在作業系統上的應用程式,本身也都是在做應用程式開發,所以如果單純只是coding都也還可以,但是這不只光是軟體上的東西,還有硬體上的知識.
我是覺得只光懂軟體,不懂一些硬體是夠的,所以才買了arduino,是看其它前輩說到不用懂電子電路,一樣也可以玩電子電上的東西.
GPS是看到有些前輩使用不同的mcu來實作,剛好要看到您的部落格上有提到,我想說至少GPS上的知識,至少像原理之類,一定都瞭解,所以才向前輩您提出問題,望前輩您多指導小弟.不勝感激






  • 留言者: 阿呆
  • Email: phushu@yahoo.com.tw
  • 網址:
  • 日期: 2011-05-23 23:31:25
您好~在下是arduino新手,想要學習gps模組~
但是我完全不懂gps的原理,所以要請教前輩您~
我打算前輩您使用發文方式對談詢問一些gps的相關問題
望前輩您能夠多多幫助後輩

[版主回覆05/24/2011 22:13:10]其實我也是從今年四月才第一次接觸Arduino, 也算是還不到兩個月的新手,
之前都是以Mindstorms NXT為主, 再加上目前並沒有任何GPS模組,
所以不確定能否對你有任何的幫助,
若有任何可以切磋的問題, 倒是歡迎提出來一起討論

2010-11-11

Mindsensors Numeric Pad多重觸控測試

探奇 老師詢問Numeric Pad可否接受複合鍵?
所以就簡單作了一下測試,發現這個功能是可以的,甚至因為它是平面的電容感應式面板,手指很容易在鍵盤間滑動,加上回應靈敏因此很有機會能透過程式來偵測手勢達到如同iPhoneiPad的多重觸控操作效果一樣,希望不是異想天開,有空時就以這個為目標進行測試。


以下擷取畫面就是同時碰觸多個鍵盤時的回應結果:


< >< >

< >
測試之範例程式:NumPad-T01.nxc


2010-11-08

Mindsensors Numeric Pad初覽

1026日剛PO了「NXT鍵盤-Mindsensors Numeric Pad即將上市?」,隔天即接到Mindsensors Mr. Deepak.詢問參加Numeric Pad Beta Test意願的Mail,有新產品可以玩當然就一口答應了,然而直到今天(11/8)終於收到寄來的測試品,以下就做一個簡單的初灠介紹:

< >

Numeric Pad
的按鍵為電容式觸控感應,使用範例程式進行初步測試感覺相當靈敏與精確,作為輸入裝置比起NXT按鍵更有相當好的觸感。


< >

< >

而目前12個按鍵雖然刷上的是電話的配置方式,事實上個別按鍵的用途是由程式自行定義,因此,Mindsensors也提供了兩個1:1面板圖檔
< >

< >

下載之後可以依據設定的按鍵功能自行用小畫家製作專屬面板,列印、裁剪之後就可以套在上面使用,是很貼心的設計。

< >

Mr. Deepak
Mail上提到大約3~4週左右要上市,現在已經過了一週了,還沒想到要如何測,希望在下週末時能有結果。



  • 留言者: robotman
  • Email: tslinb@hotmail.com
  • 網址:
  • 日期: 2010-11-13 13:49:14

乾脆做nxt手機..呵..看有無法.真得撥號..??隨便說說..我都沒有時間可以玩.


 


[版主回覆11/13/2010 21:33:41]

這我也想測看看, 不知道林老師有沒有電話按鍵的複頻頻率資料







  • 留言者: 探奇自然科學教室
  • Email: touch_classroom@yahoo.com.tw
  • 網址:
  • 日期: 2010-11-09 21:11:52
可以自訂按鍵,

那就可以解決按鍵不足的問題,

不用依靠觸碰感應器或是NXT主機按鍵。

例如可以分別控制機器手臂的三顆馬達。

突然想到可以複合式按鍵嗎?

[版主回覆11/10/2010 21:32:22]範例程式每次只傳回最近一次的按鍵值, 而暫存器則分別有12個bits來回應每一個鍵的狀態, 所以應該是有可能可以讀取複合鍵, 我會寫程式測看看

2010-11-03

測試以Mindsensors Port Splitter連接三個數位感應器

幾天前曾有NXT同好留言詢問Mindsensors Port Splitter V2若使用NXC,則Port該如何定義,剛好手上有一個舊型V1Port Splitter而過去僅用來接過馬達作為同步控制,還尚未實際以數位感應器作測試,因此,就以現有幾個MindsensorsDigital Sensors來驗證它的功能,當然也希望能提供詢問的同好較為完整的回應。


Port Splitter的用途與限制


首先參考Port SplitterUser Guide,可以瞭解這個裝置的用途在於可以使用NXT的一個Input Port連接最多三個數位感應器,用途有點像HiTechnicSensor MultiPlexer,事實上用法與功能方面還是有相當的差異。
不過更需要瞭解的是Port Splitter的使用限制:


1.          必須為數位感應器無法接類比式SensorHiTechnic就沒有這個限制。


2.          所連接數位感應器的I2C Bus Address必須唯一,HiTechnic同樣沒有限制,不過必須是它已經認識的裝置。


3.          數位感應器的總耗電量不能超過100mA,否則會無法運作。


如果符合以上三個條件,那Port Splitter的程式控制功能比起HiTechnic Sensor Mux就容易不少,何況價格僅為五分之一左右($11.95 vs. $57.95),還是值得研究與探討實際的運作情形。


功能測試


前面提過了,只要連接的裝置符合它的使用條件,程式控制的方式就可以對同一個Input Port同時操作多個數位裝置,而這次測試所選用的三個感應器分別為:NXT Ultrasonic(0x02)NXTHID(0x04)PFMate(0x48)

測試的NXC程式為:PortSplitter-03.nxc
執行讀取並顯示每一個SensorDevice Name(0x10 - 0x178Bytes),結果如以下畫面。


<

>


有些效較大電流的裝置,如NXTCAM實測時並無法同時接太多的Sensors,實際使用時還是須要先測試過。



Mindsensors sensors I2C Bus Address及耗電量整理表:













































































Digital Sensors



I2C Bus Address



Current Consumption



NXTHID



0x04



25mA



NXTMMX



0x06



5mA



NXTServo



0xB0



N/A



MagicWand



0x70



25mA



MTRMX-NX



0xB4



N/A



NumericPad



0xB4



1mA



PFMate



0x48



15mA



RTC-NX



0xD0



1.2mA



RXMUX



0x7E



2-4mA



NXTPowerMeter



0x12



10mA



 



 



 



NXTCAM



0x02



42mA



NXTLineleader



0x02



5.7mA



ACCL-NX



0x02



3.5mA



DIST-NX



0x02



45mA



NRLink



0x02



2-25mA



PSP-NX



0x02



2-12mA