基於Android平台的無線感應器網路(ZigBee)監控系統

來源:互聯網
上載者:User
文章目錄
  • 運行環境
  • 運行環境

       過去包括將來,從別人開源項目上和部落格學到太多,實在是很欣賞開源的精神。這段時間,review了下做過的東西,畢業後不再做這個方向的東西了。陸續也有不少網上或者低屆的同學問我討要論文相關資料,現在把讀研期間做的東西的資料、源碼開源出來,全部放到github上https://github.com/changety/hellowsn,供參考,也為紀念自己讀研期間花在它們上的時光。六月是新的旅途。這裡貼一下readme檔案和相關圖。

 

Wireless Sensor Networks(WSN) Monitor System Based On Android包括三部分:
  • ZigBee協議實現的WSN,由ZigBee協議的感測節點群組成,完成資料擷取、處理、上傳,執行控制命令。專案檔
  • JavaWeb實現的服務端,由RS232通訊,資料解析,持久化層,面向移動終端的Web通訊等模組組成。web部分包括了HTTP及XMPP協議的推送服務。專案檔
  • Android平台上的WSN監視軟體。專案檔
WSN部分:硬體基礎
  • 相容TI CC2530DK的所有CC2530評估板上
  • 運行ZigBee協議協議棧Z-Stack協議棧的CC2530晶片節點
軟體實現
  • 構建於基於ZigBee協議實現的Z-Stack協議棧上,在AP層上實現所有功能邏輯。
部署方法
  • 熟悉IAR以及Z-Stack協議棧忽略該部分
  • 在IAR Embedd Workbench ID編譯調試
  • 用IAR 開啟..\WSNMonitorApp\CC2530DB 目錄中的WSNMonitorApp.eww專案檔,右鍵項目名option中找到**C/C++Compile**中 的preprocessor選項,將addtional include dir的選項框中根據專案檔在檔案系統中的目錄位置,匯入Z-Stack的其他層的源檔案。 如果直接在pull到源碼檔案中開啟WSNMonitorApp.eww並沒有改動過預設的目錄結構,就在選項框中直接貼入下面的檔案結構即可:
    $PROJ_DIR$
    $PROJ_DIR$\..\SOURCE $PROJ_DIR$\..\ZMAIN\TI2530DB $PROJ_DIR$\..\COMPONENTS\MT $PROJ_DIR$\..\COMPONENTS\HAL\INCLUDE $PROJ_DIR$\..\COMPONENTS\HAL\TARGET\CC2530EB $PROJ_DIR$\..\COMPONENTS\OSAL\MCU\CCSOC $PROJ_DIR$\..\COMPONENTS\OSAL\INCLUDE $PROJ_DIR$\..\COMPONENTS\STACK\AF $PROJ_DIR$\..\COMPONENTS\STACK\NWK $PROJ_DIR$\..\COMPONENTS\STACK\SEC $PROJ_DIR$\..\COMPONENTS\STACK\SAPI $PROJ_DIR$\..\COMPONENTS\STACK\SYS $PROJ_DIR$\..\COMPONENTS\STACK\ZDO $PROJ_DIR$\..\COMPONENTS\ZMAC\F8W $PROJ_DIR$\..\COMPONENTS\ZMAC $PROJ_DIR$\..\COMPONENTS\SERVICES\SADDR $PROJ_DIR$\..\COMPONENTS\SERVICES\SDATA $PROJ_DIR$\..\COMPONENTS\MAC\INCLUDE $PROJ_DIR$\..\COMPONENTS\MAC\HIGH_LEVEL $PROJ_DIR$\..\COMPONENTS\MAC\LOW_LEVEL\srf04 $PROJ_DIR$\..\COMPONENTS\MAC\LOW_LEVEL\srf04\SINGLE_CHIP
  • 編譯宏
    ZTOOL_P1
    MT_TASK
    MT_SYS_FUNC
    MT_ZDO_FUNC
    LCD_SUPPORTED=DEBUG
  • 之後在IAR workspace下方選擇對應節點類型的專案檔,完成編譯後, 通過debug按鈕使用CC Debugger就能將程式燒寫進對應節點硬體平台。
主要功能:
  • ZigBee協議所規定三種不同類型節點的基礎功能 (預設你已瞭解ZigBee協議和Z-Stack協議棧)
  • EndDevice節點實現了DS18B20感應器的環境溫度擷取,處理,報告及報告周期設定,警示溫度設定,開關控制等。
  • 通訊功能,RS232,點對點,組播,廣播。
  • 其他功能參考源碼。
服務端:運行環境
  • Win7 32bit
  • JDK 1.6.0_24
  • JavaEE 6
  • Tomcat7.0 for win32
  • Mysql 5.0+ for win32
  • Struts2 v2.2 、Spring v2.5、Hibernate v3.3、Androidpn
Java串口通訊配置
  • 首先要完成這部分配置!
  • 與WSN進行RS232通訊,由於使用Java實現,windows中運行Java 串口通訊,先進行配置。
    RXTX包:http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip
    下載解壓後,其配置環境如下:
    把下載包中rxtx-2.1-7-bins-r2\Windows\i368-mingw32\rxtxSerial.dll 放到你%java_home%\jre\bin下面(%java_home%\jre\bin\rxtxSerial.dll)和C:\Windows\System32下面(C:\Windows\System32\rxtxSerial.dll)
    下載包中rxtx-2.1-7-bins-r2\RXTXcomm.jar放到%java_home%\jre\lib\ext下面(%java_home%\jre\lib\ext\RXTXcomm.jar)
    註:%java_home%為你安裝JDK的路徑,如:C:\Program Files\Java\jdk1.6.0_23
Web部署方法
  • web部分所需要的架構 jar包 都已經包含在了webroot/WEB-INF/lib目錄下。
  • 在%Tomcat HOME%\conf中server.xml檔案Host標籤增加Context子標籤如: <Context path="/wsnmonitor" docBase="..\WSNServicePlatform\WebRoot" reloadable="true"/>。
  • path屬性工作表示瀏覽器中的訪問路徑,docBase屬性工作表示專案檔在檔案系統中的目錄。
  • 運行%Tomcat HOME%\bin中startup.bat啟動tomcat,如果在command line 中列印出該服務端的開機記錄,並可以訪問http://127.0.0.1:8080/wsnmonitor/index.do,則部署成功。
  • 基於Androidpn架構的XMPP協議的推送服務通過整合也部署在Tomcat裡
  • Hibernate ORM構建的持久層,資料庫表會在初次開機服務端程式時自動構建,可以在Spring設定檔中修改
主要功能:
  • 與WSN裡協調器通過RS232資料交換
  • 對資料進行解析,並持久化到資料庫裡
  • HTTP 接受來自Android終端的資料請求,並返回對應資料。
  • XMPP服務保持與Aandroid終端的持久串連,將WSN中解析到的緊急資料(可設定)即時推送給終端。
  • 更多參見源碼
 Android終端:運行環境
  • Android 2.2及以上
相關架構

libs
├ fastjson.jar
├ ormlite-android-4.41
├ ormlite-core-4.41
├ universal-image-loader-1.7.0-with-src.jar

運行方法
  • 根據服務端的ip,修改URL
主要功能(所有功能都基於與服務端):
  • WSN資料,節點資訊查詢
  • 即時拓撲結構變化查看
  • 節點控制
  • 推送訊息接收等功能
  • 推送規則設定
 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.