使用xbee連接地面站和飛控


Zigbee是一種短距離、低功耗的近距離無線組網通訊技術,主要適用於自動控制和遠程控制領域,可以嵌入各種設備。 DIGI的ZigBee產品XBee小型但卻是一個功能完善的ZigBee收發器(即接收器/發射器),它是雙向操作,可交替地發射或接收數據(半雙工式)。

DIGI提供有兩種版本,XBee和XBee PRO兩版本都是有相同的功能和引腳兼容,唯一的差異是發射功率,XBee為最大2mW,而XBeePRO則最大63mW。 XBee/XBeePRO模塊是一款內置協議棧的ZigBee模塊,它通過串口使用AT命令集方式設置模塊的參數,並通過串口來實現數據的傳輸。Digi提供了X-CTU配置軟件,用它可以方便地配置XBee模塊的所有參數。

XBee模塊與飛控之間其實就是通過串行接口(即Tx和Rx引腳)進行通信。對於簡單的點對點通信來講,只需要通過串行接口向XBee模塊寫數據就可以實現數據的發送;當XBee模塊通過無線通道接收到數據時,通過讀串行接口可以很方便地獲得這些數據。用X-CTU軟件一次配置好參數后,兩個插上XBee模塊的控制器就可以像有線RS232串口通信一樣相互傳送數據了。(http://www.eefocus.com/zhang700309/blog/12-08/284065_cc230.html 《美國DIGI公司的XBee模塊無線通訊實驗》)

一、XBEE的配置與配對

安裝X-CTU軟件並更新為最新版(此版使用的是XCTU ver. 5.2.8.6),通過DIGI官方網址下載X-CTU軟件。

http://www.digi.com/support/productdetail?pid=3352&type=firmware

第一塊XBee模塊的設置

將XBee插接到電腦的一個USB接口上。在電腦和XBee之間還需要有USB轉TTL模塊以便連接。這里采用了DFRobot 的XBee適配器,方便對XBee模塊進行配置。PC機通過USB線直接與XBee適配器連接,PC機提示安裝FIDI USB驅動。

把XBee模塊按照正確方向,插到XBee適配器上。 打開設備管理器,展開端口(連接口(COM和LPT))部分,然后注意XBee所插入的USB Serial Port編號。

在設備管理器中查看連接XBee的COM序列號

運行X-CTU軟件,點擊"Add a radio module specifying the port settings",選擇XBee適配器映射的COM口(實驗中映射出的串口號為COM11),並設置好波特率等參數。XBee模塊出廠里默認的設置為9600,8N1N。


 

點擊"Finish",測試XBee模塊是否能連接上。如果一切正常,我們將看到如下圖所示,會顯示模塊型號及版本號。

    測試通過后,選擇 "Switch to Configuration working mode"選項,點擊 "Update Firmware"按鈕,升級固件。根據Xbee模塊的型號,選擇合適的:

1、Product family:XBP24BZ7。

2、Function set:ZigBee Coordinator AT。(采用透明傳輸的工作方式,需要配對的兩個Xbee模塊分別選擇"ZigBee Coordinator AT"和"ZigBee Router AT"功能集。)

3、Firmware version:20A7。一般選擇最新的固件。

點擊"Read radio settings"按鈕讀出XBee模塊中的當前參數。 

1、更改"Networking & Security"中的"ID PAN ID", PAN 即為Personal Area Network, ID范圍從0到1234,或者是任何16進制的數值,只要能夠確保相同的網絡中,所有XBee設備有相同的PAN ID。

2、SH、SL為本XBee模塊的MAC地址,將需要配對的XBee模塊的MAC地址填入DH、DL,需要注意高、低位。

在"Serial Interfacing"的"BD Baud Rate"中,修改XBee的波特率, XBee模塊默認波特率9600 b/s,APM使用的波特率為57600b/s,因此將波特率修改為57600b/s。


  上述主要參數設置好后,點擊 "Write Radio Settings"按鈕將參數寫到XBEE模塊中。

第二塊XBEE模塊的設置

關掉執行中的X-CTU,拔除插在電腦上的USB-TTL,更換上面的XBee模塊,重復前述的步驟,但下載Firmware時,Function Set改為"ZigBee Router AT",將兩者的MAC地址(SH、SL與DH、DL)互換。

驗證配對成功

串口通信程序,測試下XBee無線通信是否正常。開啟兩個X-CTU軟件窗口,分別連接兩個XBee模塊。 選擇任一模塊點擊"Discover radio nodes in the same network",則會和另一模塊自動配對。


兩個X-CTU均選擇"Switch to consoles working mode",並點擊 "Open the serial connection with the radio module"。在窗口下方可添加一個數據包或者數據流,可以設置發送次數和間隔時間。


如圖可見,另一個模塊會接收並顯示該模塊發送的數據。

二、利用XBEE連接地面站和飛控

1、把一個XBee模塊從適配器上拔下來,連接到飛控的Telem接口(APM為5p端口,Pixhawk為6p端口),XBee的TX(RX)接Telem口的RX(TX)。

注意:XBee的供電電壓為3.3V,飛控Telem口的供電電壓為5V,因此需要在兩者之間加一個電壓轉換模塊,將5V電壓轉換為3.3V給XBee供電。

2、打開Mission Planner,選擇適配器的端口,波特率選擇57600b/s,點擊連接,地面站即可與飛控通信,可以實時讀取飛行狀態數據,進行航點規划飛行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM