關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于無線傳感器網絡的橋梁監(jiān)測系統(tǒng)研究

        基于無線傳感器網絡的橋梁監(jiān)測系統(tǒng)研究

        作者: 時間:2012-12-05 來源:網絡 收藏

        5.1 CTP協(xié)議的實現

        CTP協(xié)議是樹的多跳協(xié)議。把中的節(jié)點抽象為樹,每棵樹有一個根節(jié)點, 負責收集這棵樹所有節(jié)點的信息。中節(jié)點通過路由梯度值(ETX)逐跳地選擇路由, 直至到達根節(jié)點。根節(jié)點的ETX為0, 每個子節(jié)點的ETX值等于父節(jié)點的ETX值加上該節(jié)點到它父節(jié)點的路徑ETX值。因此, ETX值是沿著往根節(jié)點的方向遞減的, CTP選擇路徑ETX值最小的路徑作為路由。

        CTP的實現是下層鏈路估計結果的。鏈路估計會維護一個鄰節(jié)點表, 表中存儲了每個鄰節(jié)點的路徑ETX 值。CTP協(xié)議中的CtpRoutingEngine 組件實現了路由的選擇, 它根據鄰節(jié)點的ETX值為數據傳輸選擇下一個路由。另一個關鍵的組件函數CtpForwardingEngine, 該組件主要是維護一個消息發(fā)送隊列, 往下層發(fā)送本地產生的或者轉發(fā)過來的數據包; 該組件還能夠檢測重復發(fā)送的數據包, 以抑制重復發(fā)包。

        實現的四個關鍵函數是: 數據包接收(SubReceive.receive())、數據包轉發(fā)(forward())、包傳輸(sendTask())和發(fā)送完成事件(SubSend.sendDone())。

        函數SubReceive.receive ()決定是否要轉發(fā)包。通過維護一個最近收到的包緩存來檢查是否有重復包。如果判定一個包不是重復包, 則調用forward()函數。

        forward()函數封裝好要發(fā)送的包。這個函數同時檢查是否有回環(huán)。發(fā)送時將包放到發(fā)送隊列中去, 若隊列滿了, 就丟棄該包, 并把C位置1。如果隊列為空, 則立即post 發(fā)送任務。

        sendTask()檢查發(fā)送隊列頭部的數據包, 封裝好后提交給AM層。發(fā)送完成后, sendDone()函數檢查發(fā)送的結果。如果該數據包已經被確認過了, 則將該包從隊列中取出。如果是本地的包, 發(fā)送事件通知給上層的客戶。如果是轉發(fā)來的包, 則將它放到轉發(fā)消息池中。如果隊列中還有包的話, 就啟動一個隨機時鐘, 重新post發(fā)送任務。

        5.2 LEEP協(xié)議的實現

        LEEP 是一種鏈路估計交換協(xié)議, 主要是用來計算某節(jié)點與鄰節(jié)點之間的雙向鏈路質量。節(jié)點A→B的鏈路質量是指B成功接收到A發(fā)送的數據包的概率。節(jié)點(A, B)間的雙向鏈路質量是A→B的鏈路質量(in-bound 鏈路質量)與B→A的鏈路質量(out-bound 鏈路質量) 的乘積。

        6 結束語

        結構健康,我們對節(jié)點的設計和支持運行的嵌入式操作TinyOS的移植問題進行了。還有兩個問題需要進一步深入,一個是網絡的休眠節(jié)能技術需要解決網絡各節(jié)點的同步問題;第二個問題是建立結構健康*估專家系統(tǒng),能夠根據傳感器網絡匯總的大量結構信息作出準確的分析判斷,從而實現事故預報警,預防突發(fā)性災難,確保橋梁安全。

        光纖傳感器相關文章:光纖傳感器原理

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 黄冈市| 旌德县| 安多县| 射阳县| 北京市| 青神县| 横峰县| 三穗县| 施甸县| 洛浦县| 方城县| 清涧县| 志丹县| 水富县| 昭觉县| 丹江口市| 金寨县| 承德市| 阿巴嘎旗| 聂荣县| 抚松县| 汉源县| 康平县| 安顺市| 海淀区| 瑞昌市| 长宁县| 连南| 博客| 辽阳市| 黄山市| 永丰县| 双流县| 邵阳县| 武鸣县| 南岸区| 丰顺县| 大石桥市| 体育| 和静县| 虞城县|