步驟1:無(wú)線設(shè)置
可以用兩種方式配置XBee模塊:透明模式(AT)和API模式(API)。在AT模式下,您僅限于兩個(gè)XBees之間的點(diǎn)對(duì)點(diǎn)通信。在API模式下,我們可以輕松地從COORDINATOR和世界上許多XBees進(jìn)行發(fā)送和接收。此外,API模式將公開(kāi)每個(gè)數(shù)據(jù)包中編碼的各種其他信息。
在點(diǎn)對(duì)多點(diǎn)無(wú)線配置(請(qǐng)參見(jiàn)圖1)中,多個(gè)節(jié)點(diǎn)(路由器/終端設(shè)備)以藍(lán)色顯示,發(fā)送和接收來(lái)自中心協(xié)調(diào)員(紅色)。
Andrew Rapp編寫(xiě)了出色的XBee Java API,可以在以下位置找到:http://code.google.com/p/xbee-api/
Andrew還提供了有關(guān)以下內(nèi)容的詳細(xì)說(shuō)明:將XBee API與流行的IDE Eclipse集成在一起。對(duì)于我的項(xiàng)目(出于未知原因),我決定使用Swing JAVA GUI庫(kù),對(duì)我來(lái)說(shuō),使用NetBeans進(jìn)行開(kāi)發(fā)要容易一些。因此,我還將提供有關(guān)如何使用Netbeans設(shè)置XBee JAVA API的說(shuō)明。但是首先我們需要在XBee上配置固件。
步驟2:XCTU設(shè)置
我知道最初配置XBees的唯一方法是使用XCTU。這是XBee的制造商Digi提供的免費(fèi)程序。 XCTU僅在Windows上運(yùn)行,但是,我已經(jīng)成功使用在Wine下運(yùn)行的XCTU配置XBees。實(shí)際上,我什至已經(jīng)成功地在MacBook上配置了XBee,并且在虛擬機(jī)上安裝了Debian,并且運(yùn)行XCTU的WINE。因此,無(wú)論您使用什么操作系統(tǒng),都可以配置XBee!
我首先使用Macbook安裝了VirtualBox,然后下載并安裝了Debian Network ISO。安裝完操作系統(tǒng)后,我從下載鏈接下載XCTU,并通過(guò)aptitude(Debian軟件包管理器)安裝wine。
下載所有內(nèi)容后,運(yùn)行WINE和從DIGI下載的XCTU可執(zhí)行文件。 (請(qǐng)參見(jiàn)圖1)。安裝后,您將需要在/dev/ttyUSBx(x:0,1,2,3)和COM0x(x:0,1,2,3)之間創(chuàng)建符號(hào)鏈接。如果它們現(xiàn)在不存在,請(qǐng)不要擔(dān)心。將fdti-usb芯片連接到XBee后,/dev/ttyUSBx將存在。
cd?/.wine/dosdevices
ln -s/dev/ttyUSB0 COM00
請(qǐng)參見(jiàn)圖2
(以下假設(shè)您已使用USB接口將XBee連接到計(jì)算機(jī)。這可以通過(guò)各種XBee分支板完成。)
下一步,您將需要更新XCTU(我知道,我們甚至還沒(méi)有運(yùn)行XCTU ?。?。我無(wú)法從虛擬機(jī)更新XCTU。幸運(yùn)的是,我發(fā)現(xiàn)有人使用Windows計(jì)算機(jī),并要求他們更新XCTU的配置文件。為了我們的所有方便,他們打包了更新。將更新的文件復(fù)制到“ .wine/drive_c/Program Files/Digi/XCTU/update/”(如果您需要更新文件的幫助,請(qǐng)給我發(fā)消息)
現(xiàn)在,我們終于可以運(yùn)行XCTU。請(qǐng)參閱圖3。成功啟動(dòng)后,插入XBee,并允許虛擬機(jī)訪問(wèn)您的USB設(shè)備。在VirutalBox下,這可以通過(guò)單擊設(shè)備-》 USB設(shè)備-》 FTDI(我的USB設(shè)備)來(lái)完成。通過(guò)在命令行“ ls/dev/ttyUSB *”上鍵入來(lái)檢查是否添加了設(shè)備。您應(yīng)該會(huì)看到一個(gè)列表。
在XCTU中,單擊下半部分的“網(wǎng)絡(luò)接口”,然后添加指向所列出的/dev/ttyUSBx的鏈接名稱。在我的情況下,列出了/dev/ttyUSB0,因此我添加了COM00(請(qǐng)參見(jiàn)圖4)。單擊“添加”后,選擇名稱,然后單擊“測(cè)試/查詢”。您應(yīng)該看到成功的通信(圖片5)
步驟3:XCTU重新配置
現(xiàn)在XCTU正在運(yùn)行,我們需要將設(shè)備重新配置為API模式。首先單擊調(diào)制解調(diào)器配置(右上角選項(xiàng)卡),然后單擊讀取按鈕(圖1)。從下拉菜單中選擇ZNET 2.5 ROUTER/END DEVICE API(圖片2)。單擊“寫(xiě)入”,然后等待直到寫(xiě)入完成??赡軙?huì)彈出一個(gè)對(duì)話框,要求重置設(shè)備。如果是這種情況,并且您正在使用XBee LilyPad Breakout,只需將MINUS引腳連接到RST引腳并釋放。重新配置后,單擊“測(cè)試/查詢”按鈕以確認(rèn)XBee已經(jīng)重新配置(圖3)
步驟4:XBee Java API
現(xiàn)在我們可以為API模式配置XBees,讓我們切換到設(shè)置JAVA環(huán)境的方法。
如果您要使用Eclipse IDE,我建議按照Andrew Rapp的說(shuō)明在這里找到:http://code.google.com/p/xbee-api/wiki/GettingStartedWithEclipse
如果您選擇使用Netbeans IDE,請(qǐng)執(zhí)行以下操作:下層NetBeans并安裝。
選擇:新建項(xiàng)目-》 Java- 》具有現(xiàn)有源代碼的Java項(xiàng)目(以下是我的設(shè)置)
項(xiàng)目名稱:TestXBeeJavaAPI
項(xiàng)目文件夾:/Users/benzaitlen/NetBeansProjects/TestXBeeJavaAPI
單擊“下一步”
為源程序包添加文件夾并選擇src XBee Java Api文件夾中的文件夾
單擊下一步
然后單擊完成
如果文件列表中有紅色感嘆號(hào) 點(diǎn),則可能需要添加log4j和/或RXT X JARS。幸運(yùn)的是,Andrew將這兩個(gè)文件與源文件打包在一起。右鍵單擊“導(dǎo)航”窗口中的庫(kù),然后導(dǎo)航到API文件夾-》 lib-》 log4j.jar
。如果收到以下錯(cuò)誤:log4j:ERROR無(wú)法讀取配置文件[log4j.properties],請(qǐng)確保log4j .properties位于您的netbeans項(xiàng)目文件夾中。 (log4j.properties文件也由Andrew Rapp的JAVA軟件包提供)。RXTX在OSX上存在一些問(wèn)題。您可以從http://rxtx.qbang.org/wiki/index.php/Download嘗試二進(jìn)制文件或源代碼。如果嘗試編譯源代碼,請(qǐng)確保從developer.apple.com下載最新的Java Developer Package。如果您對(duì)OSX感到沮喪,請(qǐng)使用已經(jīng)安裝的ubuntu/debian虛擬機(jī)!
一旦確定可以使用JAVA API,就編寫(xiě)兩個(gè)XBees。一個(gè)應(yīng)該是ZNET 2.5 ROUTER/ENDDEVICE API 1347,另一個(gè)應(yīng)該是ZNET 2.5 COORDINATOR API1147。在這一點(diǎn)上,我強(qiáng)烈建議您使用一些遮蓋膠帶標(biāo)記兩個(gè)XBee。
第5步:XBee Arudino API
Homestretch!
現(xiàn)在,XBees處于API模式。我們必須讓Arduino也使用XBee API。再次,Adnrew已經(jīng)為我們完成了繁重的工作。從以下位置下載Arduino API ZIP文件:http://code.google.com/p/xbee-arduino/
解壓縮XBee文件夾并將其復(fù)制到ARDUINO_HOME/hardware/libraries或創(chuàng)建文件夾“ libraries”(無(wú)論存儲(chǔ)在哪里)您的草圖,并在那里解壓縮。如果要從以前的版本升級(jí),請(qǐng)確保刪除XBee.o。一旦安裝,我建議您使用JAVA和Arduino API,以確保您可以發(fā)送和接收消息。兩個(gè)庫(kù)中都提供了很多示例。假設(shè)您已將arduino + xbee和XBee連接到計(jì)算機(jī),請(qǐng)嘗試設(shè)置以下內(nèi)容:ArduinoReceiveTest.java(計(jì)算機(jī)端)和Series2_Tx.pde(Arduino端)。
有關(guān)依賴XBee API的說(shuō)明模式請(qǐng)單擊此處
此材料基于國(guó)家科學(xué)基金會(huì)在Kylie A. Peppler授予的第0855886號(hào)資助下的工作。本材料中表達(dá)的任何觀點(diǎn),發(fā)現(xiàn),結(jié)論或建議均為作者的觀點(diǎn),不一定反映美國(guó)國(guó)家科學(xué)基金會(huì)的觀點(diǎn)。
責(zé)任編輯:wv
-
軟件
+關(guān)注
關(guān)注
69文章
4701瀏覽量
87088
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論