專利名稱:基于p2p的水聲傳感器網(wǎng)絡系統(tǒng)及其數(shù)據(jù)傳輸方法
技術領域:
本發(fā)明涉及一種基于P2P的水聲傳感器網(wǎng)絡系統(tǒng)及其數(shù)據(jù)傳輸方法,屬于傳感器網(wǎng)絡應用技術領域。
背景技術:
水聲傳感器網(wǎng)絡是水聲通信技術與傳感器網(wǎng)絡技術相結合所產(chǎn)生的一個新的研究領域。水聲傳感器網(wǎng)絡可以對水聲傳感器節(jié)點所覆蓋的區(qū)域進行中長期的水下預警、水質(zhì)污染監(jiān)測、海洋水文環(huán)境要素監(jiān)測,并且在目標跟蹤與識別、入侵檢測等海洋軍事安全領域都具有廣闊的應用前景。由于水聲傳感器網(wǎng)絡部署在水下,采用聲波進行通信,而聲波在水下的傳播速度比無線電波在空氣中的傳播速度少5個數(shù)量級,因此通信延遲問題非常嚴重。此外,由于水下信道的復雜性,傳感器節(jié)點之間的鏈路質(zhì)量容易受到環(huán)境噪聲等因素的干擾,嚴重影響了水聲傳感器網(wǎng)絡的數(shù)據(jù)傳輸速率、通信信道的可靠性和網(wǎng)絡吞吐量。因此,傳統(tǒng)的陸上無線傳感器網(wǎng)絡以及其它自組織網(wǎng)絡中許多研究成果無法直接應用于水聲傳感器網(wǎng)絡,使得水聲傳感器網(wǎng)絡系統(tǒng)的設計和應用面臨很大的挑戰(zhàn)。為了適應水下環(huán)境,水聲傳感器網(wǎng)絡節(jié)點用自組織和自治的方式組網(wǎng),通過節(jié)點之間的協(xié)同來感知、采集和處理監(jiān)測區(qū)域中感知對象的信息,并將信息傳輸給觀察者完成特定的監(jiān)測任務。傳感器節(jié)點采集到的數(shù)據(jù)通過水聲通信的方式傳輸?shù)剿婊蛘甙渡蠀R聚節(jié)點進行存儲。根據(jù)匯聚節(jié)點數(shù)量的不同,水聲傳感器網(wǎng)絡采用單匯聚節(jié)點路由協(xié)議或者多匯聚節(jié)點路由協(xié)議來選擇路由路徑。當數(shù)據(jù)存儲到多個匯聚節(jié)點時,各個匯聚節(jié)點之間一般通過射頻通信的方式進行數(shù)據(jù)傳輸。為了保證數(shù)據(jù)傳輸?shù)馁|(zhì)量,匯聚節(jié)點之間部署的物理距離十分有限。此外,水聲傳感器節(jié)點由于成本高、能耗大以及水聲通信長延遲的特點限制了節(jié)點的部署密度。因此,依托現(xiàn)有網(wǎng)絡體系結構和數(shù)據(jù)傳輸技術構建的水聲傳感器網(wǎng)絡系統(tǒng)在大范圍水域環(huán)境下,會出現(xiàn)網(wǎng)絡易分割、數(shù)據(jù)傳輸易中斷以及傳輸延遲長的問題,導致數(shù)據(jù)傳輸效率低下。所以,當前迫切需要提供一種適用于大范圍水域環(huán)境的水聲傳感器網(wǎng)絡系統(tǒng)及其數(shù)據(jù)傳輸方法。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于P2P的水聲傳感器網(wǎng)絡系統(tǒng)及其數(shù)據(jù)傳輸方法,使得匯聚節(jié)點的部署不再受傳統(tǒng)水聲傳感器網(wǎng)絡體系結構中地理位置和距離的限制,并且能夠在水聲信道鏈路丟包率較高的情況下保證數(shù)據(jù)上傳的完整性和數(shù)據(jù)傳輸率,有效降低網(wǎng)絡中冗余數(shù)據(jù)包重傳造成的能量消耗,進而提高水聲傳感器網(wǎng)絡系統(tǒng)的使用壽命。為了達到上述目的,本發(fā)明的一個技術方案是提供一種基于P2P的水聲傳感器網(wǎng)絡系統(tǒng),其包括:若干個水聲傳感器節(jié)點、若干個中繼節(jié)點、若干個匯聚節(jié)點,和若干個P2P節(jié)點;
所述中繼節(jié)點通過浮標或者船載的方式漂浮在水面上,并且能夠通過無線通信方式與岸上的匯聚節(jié)點進行信息交互,再通過所述匯聚節(jié)點與P2P節(jié)點的信息交互,以及所述P2P節(jié)點與其他P2P節(jié)點的信息交互來傳輸采集的數(shù)據(jù)供后續(xù)處理;
多個所述水聲傳感器節(jié)點位于水中的不同深度,其中一些水聲傳感器節(jié)點直接懸掛于水面上的中繼節(jié)點下方,另一些水聲傳感器節(jié)點利用浮標通過錨泊方式懸浮于水中;
其中,每個所述水聲傳感器節(jié)點設置有兩個數(shù)據(jù)通信接口,其中一個接口為CAN總線接口,能夠通過CAN總線與中繼節(jié)點直接進行數(shù)據(jù)通信;另一個接口為水聲通信接口,能夠使用水聲換能器與其它水聲傳感器節(jié)點進行數(shù)據(jù)通信,從而將任意一個水聲傳感器節(jié)點采集到的數(shù)據(jù)逐步轉(zhuǎn)發(fā)給距離水面更近的水聲傳感器節(jié)點,直至通過CAN總線傳輸?shù)剿嫔系闹欣^節(jié)點,形成完整的水聲通信路由路徑。所述水聲傳感器節(jié)點中,包括:
能夠?qū)⑻綔y到的水下聲信號轉(zhuǎn)換為電信號的水聽器,依次對電信號進行相應處理的衰減保護模塊、前置放大模塊、帶通濾波器和A/D轉(zhuǎn)換模塊,和對轉(zhuǎn)換得到的數(shù)字信號實現(xiàn)數(shù)據(jù)處理和硬件邏輯設計的FPGA中央處理模塊;以及,
對所述FPGA中央處理模塊處理后輸出的數(shù)據(jù)信號,依次進行相應處理的D/A轉(zhuǎn)換模塊、平滑濾波器、功率放大模塊和匹配網(wǎng)絡模塊,和由阻抗匹配后的電信號激發(fā)產(chǎn)生機械振動的換能器,從而推動水介質(zhì)向水中發(fā)射聲波信號,以便與其它水聲傳感器節(jié)點進行水聲通信;
所述水聲傳感器節(jié)點中還包括,與所述FPGA中央處理模塊信號連接的以下裝置:能夠為水聲傳感器節(jié)點的各個模塊和芯片供電,并且通過程控方式切換水聲傳感器節(jié)點的工作或者休眠狀態(tài)的電源管理模塊,以及負責提供時鐘日歷、記錄數(shù)據(jù)收發(fā)的時間并能夠通過讀取芯片內(nèi)部寄存器進行報警的時鐘管理模塊;所述時鐘管理模塊的芯片還能夠在節(jié)點處于休眠狀態(tài)時由法拉電容供電;
所述水聲傳感器節(jié)點中的CAN通信接口,與所述FPGA中央處理模塊信號連接,作為水聲傳感器節(jié)點與中繼節(jié)點之間的數(shù)據(jù)通信接口。所述中繼節(jié)點中,包括負責控制指令下達的主控模塊,以及分別與所述主控模塊信號連接的以下裝置:
負責數(shù)據(jù)的接收、發(fā)送和存儲的前置機,作為中繼節(jié)點與水聲傳感器節(jié)點之間的數(shù)據(jù)通信接口的CAN通信接口,為中繼節(jié)點的各個模塊和芯片供電以及節(jié)能控制的電源管理?!缞A,以及作為中繼節(jié)點與匯聚節(jié)點之間的數(shù)據(jù)通信接口的GPRS無線通信模塊;
其中所述GPRS無線通信模塊設置有微控制器和GPRS模塊,所述微控制器通過緊耦合的嵌套矢量中斷控制器來減少中斷響應時間,從而提高GPRS模塊的收發(fā)性能。所述匯聚節(jié)點中,包括:負責電源控制、產(chǎn)生時序以及工作模式切換的微控制器,以及分別與所述微控制器信號連接的以下裝置:
負責為匯聚節(jié)點的各個模塊和芯片供電的電源模塊,作為匯聚節(jié)點與中繼節(jié)點之間的數(shù)據(jù)通信接口的GPRS無線通信模塊,作為匯聚節(jié)點與P2P節(jié)點之間的數(shù)據(jù)通信接口的RS232串口通信模塊。所述P2P節(jié)點中,包括:負責向水聲傳感器節(jié)點下達各類控制指令并且控制數(shù)據(jù)接收和發(fā)送,同時負責控制與其它P2P節(jié)點進行數(shù)據(jù)接收和發(fā)送的上位機,以及分別與所述上位機信號連接的以下裝置:負責為P2P節(jié)點的各個模塊和芯片供電的電源模塊,負責數(shù)據(jù)存儲管理的存儲模塊,作為P2P節(jié)點與匯聚節(jié)點之間的數(shù)據(jù)通信接口的RS232串口通信模塊,以及作為P2P節(jié)點之間的數(shù)據(jù)通信接口并基于UDP的協(xié)議進行數(shù)據(jù)通信的以太網(wǎng)卡。本發(fā)明的另一個技術方案是提供一種上述基于P2P的水聲傳感器網(wǎng)絡系統(tǒng)的數(shù)據(jù)傳輸方法:
多個水聲傳感器節(jié)點設置于水中進行數(shù)據(jù)采集,其中距離水面距離較遠的水聲傳感器節(jié)點所采集的數(shù)據(jù),利用水聲換能器與其它水聲傳感器節(jié)點進行數(shù)據(jù)通信以逐步轉(zhuǎn)發(fā)至距離水面更近的水聲傳感器節(jié)點;其中,采用隨機線性編碼方式對數(shù)據(jù)進行網(wǎng)絡編碼,然后根據(jù)水聲傳感器節(jié)點的地理位置來選擇路由節(jié)點進行數(shù)據(jù)傳輸,以減小鏈路丟包率增大時對數(shù)據(jù)包傳送率造成的影響,并降低網(wǎng)絡中冗余數(shù)據(jù)包重傳造成的能量消耗;
距離水面更近的水聲傳感器節(jié)點,將其自身采集的數(shù)據(jù)或由其它水聲傳感器節(jié)點向其發(fā)送的數(shù)據(jù),通過CAN總線發(fā)送至漂浮在水面上的中繼節(jié)點;所述中繼節(jié)點通過GPRS無線通信方式,與岸上的匯聚節(jié)點進行信息交互;所述匯聚節(jié)點通過RS232串口與P2P節(jié)點進行信息交互;所述P2P節(jié)點進一步基于UDP協(xié)議,與其他P2P節(jié)點進行信息交互來傳遞數(shù)據(jù)。所述隨機線性編碼,包含以下步驟:
首先,源節(jié)點將要發(fā)送的數(shù)據(jù)包分組,假設^個數(shù)據(jù)包分成一組,分組后的數(shù)據(jù)包可以表示為石,石,…,石;然后,將這#個數(shù)據(jù)包編碼成《個編碼包,并產(chǎn)生《組隨機數(shù)
權利要求
1.一種基于P2P的水聲傳感器網(wǎng)絡系統(tǒng),其特征在于,包括:若干個水聲傳感器節(jié)點、若干個中繼節(jié)點、若干個匯聚節(jié)點,和若干個P2P節(jié)點; 所述中繼節(jié)點通過浮標或者船載的方式漂浮在水面上,并且能夠通過無線通信方式與岸上的匯聚節(jié)點進行信息交互,再通過所述匯聚節(jié)點與P2P節(jié)點的信息交互,以及所述P2P節(jié)點與其他P2P節(jié)點的信息交互來傳輸采集的數(shù)據(jù)供后續(xù)處理; 多個所述水聲傳感器節(jié)點位于水中的不同深度,其中一些水聲傳感器節(jié)點直接懸掛于水面上的中繼節(jié)點下方,另一些水聲傳感器節(jié)點利用浮標通過錨泊方式懸浮于水中; 其中,每個所述水聲傳感器節(jié)點設置有兩個數(shù)據(jù)通信接口,其中一個接口為CAN總線接口,能夠通過CAN總線與中繼節(jié)點直接進行數(shù)據(jù)通信;另一個接口為水聲通信接口,能夠使用水聲換能器與其它水聲傳感器節(jié)點進行數(shù)據(jù)通信,從而將任意一個水聲傳感器節(jié)點采集到的數(shù)據(jù)逐步轉(zhuǎn)發(fā)給距離水面更近的水聲傳感器節(jié)點,直至通過CAN總線傳輸?shù)剿嫔系闹欣^節(jié)點,形成完整的水聲通信路由路徑。
2.如權利要求1所述基于P2P的水聲傳感器網(wǎng)絡系統(tǒng),其特征在于: 所述水聲傳感器節(jié)點中,包括: 能夠?qū)⑻綔y到的水下聲信號轉(zhuǎn)換為電信號的水聽器,依次對電信號進行相應處理的衰減保護模塊、前置放大模塊、帶通濾波器和A/D轉(zhuǎn)換模塊,和對轉(zhuǎn)換得到的數(shù)字信號實現(xiàn)數(shù)據(jù)處理和硬件邏輯設計的FPGA中央處理模塊;以及, 對所述FPGA中央處理模塊處理后輸出的數(shù)據(jù)信號,依次進行相應處理的D/A轉(zhuǎn)換模塊、平滑濾波器、功率放大模塊和匹配網(wǎng)絡模塊,和由阻抗匹配后的電信號激發(fā)產(chǎn)生機械振動的換能器,從而推動水介質(zhì)向水中發(fā)射聲波信號,以便與其它水聲傳感器節(jié)點進行水聲通信;` 所述水聲傳感器節(jié)點中還包括,與所述FPGA中央處理模塊信號連接的以下裝置:能夠為水聲傳感器節(jié)點的各個模塊和芯片供電,并且通過程控方式切換水聲傳感器節(jié)點的工作或者休眠狀態(tài)的電源管理模塊,以及負責提供時鐘日歷、記錄數(shù)據(jù)收發(fā)的時間并能夠通過讀取芯片內(nèi)部寄存器進行報警的時鐘管理模塊;所述時鐘管理模塊的芯片還能夠在節(jié)點處于休眠狀態(tài)時由法拉電容供電; 所述水聲傳感器節(jié)點中的CAN通信接口,與所述FPGA中央處理模塊信號連接,作為水聲傳感器節(jié)點與中繼節(jié)點之間的數(shù)據(jù)通信接口。
3.如權利要求1所述基于P2P的水聲傳感器網(wǎng)絡系統(tǒng),其特征在于: 所述中繼節(jié)點中,包括負責控制指令下達的主控模塊,以及分別與所述主控模塊信號連接的以下裝置: 負責數(shù)據(jù)的接收、發(fā)送和存儲的前置機,作為中繼節(jié)點與水聲傳感器節(jié)點之間的數(shù)據(jù)通信接口的CAN通信接口,為中繼節(jié)點的各個模塊和芯片供電以及節(jié)能控制的電源管理?!缞A,以及作為中繼節(jié)點與匯聚節(jié)點之間的數(shù)據(jù)通信接口的GPRS無線通信模塊; 其中所述GPRS無線通信模塊設置有微控制器和GPRS模塊,所述微控制器通過緊耦合的嵌套矢量中斷控制器來減少中斷響應時間,從而提高GPRS模塊的收發(fā)性能。
4.如權利要求1所述基于P2P的水聲傳感器網(wǎng)絡系統(tǒng),其特征在于: 所述匯聚節(jié)點中,包括:負責電源控制、產(chǎn)生時序以及工作模式切換的微控制器,以及分別與所述微控制器信號連接的以下裝置:負責為匯聚節(jié)點的各個模塊和芯片供電的電源模塊,作為匯聚節(jié)點與中繼節(jié)點之間的數(shù)據(jù)通信接口的GPRS無線通信模塊,作為匯聚節(jié)點與P2P節(jié)點之間的數(shù)據(jù)通信接口的RS232串口通信模塊。
5.如權利要求1所述基于P2P的水聲傳感器網(wǎng)絡系統(tǒng),其特征在于: 所述P2P節(jié)點中,包括:負責向水聲傳感器節(jié)點下達各類控制指令并且控制數(shù)據(jù)接收和發(fā)送,同時負責控制與其它P2P節(jié)點進行數(shù)據(jù)接收和發(fā)送的上位機,以及分別與所述上位機信號連接的以下裝置: 負責為P2P節(jié)點的各個模塊和芯片供電的電源模塊,負責數(shù)據(jù)存儲管理的存儲模塊,作為P2P節(jié)點與匯聚節(jié)點之間的數(shù)據(jù)通信接口的RS232串口通信模塊,以及作為P2P節(jié)點之間的數(shù)據(jù)通信接口并基于UDP的協(xié)議進行數(shù)據(jù)通信的以太網(wǎng)卡。
6.—種權利要求1 中所述基于P2P的水聲傳感器網(wǎng)絡系統(tǒng)的數(shù)據(jù)傳輸方法,其特征在于: 多個水聲傳感器節(jié)點設置于水中進行數(shù)據(jù)采集,其中距離水面距離較遠的水聲傳感器節(jié)點所采集的數(shù)據(jù),利用水聲換能器與其它水聲傳感器節(jié)點進行數(shù)據(jù)通信以逐步轉(zhuǎn)發(fā)至距離水面更近的水聲傳感器節(jié)點;其中,采用隨機線性編碼方式對數(shù)據(jù)進行網(wǎng)絡編碼,然后根據(jù)水聲傳感器節(jié)點的地理位置來選擇路由節(jié)點進行數(shù)據(jù)傳輸,以減小鏈路丟包率增大時對數(shù)據(jù)包傳送率造成的影響,并降低網(wǎng)絡中冗余數(shù)據(jù)包重傳造成的能量消耗; 距離水面更近的水聲傳感器節(jié)點,將其自身采集的數(shù)據(jù)或由其它水聲傳感器節(jié)點向其發(fā)送的數(shù)據(jù),通過CAN總線發(fā)送至漂浮在水面上的中繼節(jié)點;所述中繼節(jié)點通過GPRS無線通信方式,與岸上的匯聚節(jié)點進行信息交互;所述匯聚節(jié)點通過RS232串口與P2P節(jié)點進行信息交互;所述P2P節(jié)點進一步基于UDP協(xié)議,與其他P2P節(jié)點進行信息交互來傳遞數(shù)據(jù)。
7.如權利要求6所述的數(shù)據(jù)傳輸方法,其特征在于: 所述隨機線性編碼,包含以下步驟: 首先,源節(jié)點將要發(fā)送的數(shù)據(jù)包分組,假設^個數(shù)據(jù)包分成一組,分組后的數(shù)據(jù)包可以表示為石,石,…,石;然后,將這#個數(shù)據(jù)包編碼成《個編碼包,并產(chǎn)生《組隨機數(shù) 再根據(jù)公式(I)用每組隨機數(shù)對組內(nèi)的原始數(shù)據(jù)進行編碼:
8.如權利要求7所述的數(shù)據(jù)傳輸方法,其特征在于: 基于鏈路丟包率計算水聲傳感器節(jié)點在路由過程中能量消耗的方法,包含: 假設鏈路丟包率為^則鏈路的可靠性為1-6那么將一個編碼包從源節(jié)點經(jīng)過一條力跳的路徑成功轉(zhuǎn)發(fā)到匯聚節(jié)點的概率為,而成功發(fā)送一組數(shù)據(jù)包的概率&可用公式(2)計算得到:
9.如權利要求8所述的數(shù)據(jù)傳輸方法,其特征在于: 水聲傳感器節(jié)點所用基于網(wǎng)絡編碼的地理位置路由協(xié)議,包含如下步驟: 步驟a:路由路徑初始化; 步驟b:計算鄰居節(jié)點以及目標節(jié)點與本地節(jié)點夾角的余弦值; 步驟c:選擇余弦值最大的鄰居節(jié)點作為數(shù)據(jù)轉(zhuǎn)發(fā)的候選節(jié)點; 步驟d:根據(jù)公式(3)計算數(shù)據(jù)包的轉(zhuǎn)發(fā)次數(shù)N ; 步驟e:提取編碼系數(shù); 步驟f:本地節(jié)點創(chuàng)建并發(fā)送新編碼包至候選節(jié)點;步驟g:重復轉(zhuǎn)發(fā)過程直到數(shù)據(jù)包傳送到目標節(jié)點; 步驟h:通過高斯消元法計算線性不相關編碼系數(shù)m的值; 步驟1:目標節(jié)點按照公式(8)對數(shù)據(jù)包進行解碼:
全文摘要
本發(fā)明涉及一種基于P2P的水聲傳感器網(wǎng)絡系統(tǒng)及其數(shù)據(jù)傳輸方法,多個水聲傳感器節(jié)點設置于水中進行數(shù)據(jù)采集,采用隨機線性編碼方式對數(shù)據(jù)進行網(wǎng)絡編碼,然后根據(jù)水聲傳感器節(jié)點的地理位置來選擇路由節(jié)點進行數(shù)據(jù)傳輸,從而利用水聲換能器與其它水聲傳感器節(jié)點通信以逐步轉(zhuǎn)發(fā)數(shù)據(jù)至距離水面更近的水聲傳感器節(jié)點,直至發(fā)送至水面上的中繼節(jié)點,由中繼節(jié)點通過GPRS發(fā)送至岸上的匯聚節(jié)點,本發(fā)明使得匯聚節(jié)點的部署不再受傳統(tǒng)水聲傳感器網(wǎng)絡體系結構中地理位置和距離的限制,并且能夠在水聲信道鏈路丟包率較高的情況下保證數(shù)據(jù)上傳的完整性和數(shù)據(jù)傳輸率,有效降低網(wǎng)絡中冗余數(shù)據(jù)包重傳造成的能量消耗,進而提高水聲傳感器網(wǎng)絡系統(tǒng)的使用壽命。
文檔編號H04L29/08GK103209224SQ201310156309
公開日2013年7月17日 申請日期2013年4月28日 優(yōu)先權日2013年4月28日
發(fā)明者徐 明, 劉廣鐘, 吳華鋒, 孫偉 申請人:上海海事大學