朱景波,高天德,張博強
(西北工業大學 航海學院,西安 710072)
海洋中蘊藏著豐富的油氣、礦產和生物基因等資源,而且在維護國家領土安全、預防自然災害等方面有著舉足輕重的地位。隨著人類探索范圍的不斷擴大,針對海洋的科學研究越來越多。研究人員通常需要在海洋中布放各種傳感器網絡,對海洋中的水文信息、環境信息等進行實時監測[1]。為了提升海洋觀測系統的靈活性,傳感器節點通常是獨立密封的,因此水下無線通信技術在海洋觀測系統中的應用越來越廣泛。
現有的水下無線通信系統通常以聲波或者藍綠激光作為傳輸媒介。這兩種信息載體在水中衰減較少,傳輸距離遠,可以實現遠距離通信[2]。在海洋觀測系統中,主機可以移動到傳感器附近進行信息收集,節點之間的通信一般發生在近場,聲學和激光通信方式的優勢不能充分發揮。而且聲學通信系統一般功耗較大,且傳輸速率慢,信道復雜,實現算法難度大[3];激光通信系統具有很強的方向性,水質和浮游生物等因素常常會影響通信效果,限制了應用范圍[4-5]。針對水下近距離無線通信的應用需求,設計了一種基于磁場耦合的半雙工無線通信模塊。信號通過準靜態磁場傳輸,不存在路徑傳輸損耗和多徑效應,能夠實現穩定、高速的無線通信[6-7]。
在海洋觀測系統中,傳感器節點長期布放于水中進行數據采集。當我們需要某個傳感器節點的數據時,可以下放一個遙控無人潛水器(ROV,remote operated vehicle)將數據回讀,進行實時顯示或存儲。ROV通過電纜與船上連接,由船上控制移動到傳感器節點附近,進行無線數據傳輸。ROV作為主機,通過轉發上位機指令發起通信,傳感器節點作為從機,收到指令后進行回復。
ROV和傳感器節點分別裝載磁感應無線通信模塊,兩者通過線圈在周圍空間產生的交變磁場進行信息的傳輸,點對點的通信模型如圖1所示。信號調制到載波頻率后,經過驅動電路加載到線圈兩端。由于線圈上的電流是交變的,會在周圍空間產生交變的磁場,與此同時,接收端線圈位于交變的磁場中,會產生感應電流和感應電壓。接收線圈兩端的感應電壓經過調理之后解調為基帶信號,從而完成信號的傳輸[8]。

圖1 磁感應點對點通信模型
為了保證通信效果,需要將基帶信號搬移到高頻信道進行傳輸。基本的調制方法有三種:幅移鍵控(ASK,amplitude shift keying)、頻移鍵控(FSK,frequency shift keying)、相移鍵控(PSK,phase shift keying)。ASK調制方式抗干擾能力較差,PSK調制方式抗干擾能力強,但是實現復雜,增加設計難度。FSK調制方式抗干擾能力相對較強,且實現方式簡單[9]。2FSK調制方式是用兩種載波頻率表示傳輸的信息,可以用計數器分頻產生兩種載波頻率,基帶信號電平變化時改變計數周期,從而實現2FSK調制。
主機和從機都包含調制發送和接收解調兩部分。不同的是主機通過轉發上位機指令發起通信,而從機大部分時間處于休眠狀態,由主機喚醒并進行回復。本文主要介紹從機通信模塊的實現方案,通信模塊由主控、調制發送、接收解調和電源管理幾個部分構成。我們選用TI公司的低功耗系列單片機MSP430作為節點的控制中心,通過單片機內部的定時器實現調制功能。接收到的信號經過放大濾波處理,然后通過硬件解調電路轉換成串行信號,接入單片機的串口接收端。從機模塊在大部分時間處于休眠狀態,由通信總線上的有效信號喚醒。調理電路是模塊的“看門電路”,遲滯比較器的作用是提高響應速度,過濾噪聲干擾。信號經過遲滯比較器變成同頻率的方波,接入單片機的比較器輸入端,觸發單片機中斷。單片機程序中進行頻率檢測判斷信號的有效性,當通信總線上出現有效信號時,將從機喚醒。通信模塊整體如圖2所示。

圖2 通信模塊整體框圖
通信模塊的主控芯片選用低功耗微控制器MSP430F-5338。該芯片主時鐘可達到20 MHz,工作狀態下功耗為270 μA/MHz,休眠時功耗僅有1.1 μA。MSP430F5338內部有4個16位定時器,配有多個捕獲寄存器和比較寄存器。定時器的輸出模塊支持7種輸出模式,改變計數周期就可以改變輸出信號的頻率,滿足信號調制的應用需求。該芯片集成兩個通用串行通信接口控制器,可以用于串行信號的發送和接收。串行信號高低電平變化時,載波頻率要隨之切換。我們可以通過外部中斷實現頻率控制,將串口發送信號接入外部中斷輸入引腳,當信號發生高低電平變化時,會觸發上升沿或下降沿中斷,這時我們修改定時器的計數值,改變輸出頻率。用外部中斷控制頻率變化,可以省去復雜的定時機制,同時保證調制信號的碼元寬度。單片機最小系統如圖3所示。

圖3 MSP430F5338最小系統框圖
調理電路的作用是將線圈兩端接入的微弱電壓信號放大,同時抑制帶外信號,提高信噪比。調理電路的頻率特性為帶通濾波器,通帶內有一定的放大倍數,且具有低噪聲、高輸入阻抗的特點。我們采用前置放大、高通濾波、低通濾波的電路結構實現信號調理。由于調理電路需要持續工作,因此對功耗有嚴格的要求。我們選用TI公司的低功耗運算放大器TLV9002,該芯片為雙通道運算放大器,每通道靜態功耗僅有60 μA。該芯片噪聲較低且價格低廉,適用于對成本敏感的設計。
前置放大電路要設置適當的增益,以充分利用運放的增益帶寬積,起到抑制帶外噪聲的目的。同相放大電路具有較高的輸入阻抗,電路結構如圖4所示。

圖4 前置放大電路
信號通過交流耦合方式接入電路,調節R1、R3的阻值可以設置增益。我們在反饋電阻兩端并聯電容C1來限制電路的帶寬,抑制寬帶噪聲,截止頻率按下式計算:
(1)
其中:fc表示圖4中RC網絡的截止頻率。
濾波電路包括高通濾波和低通濾波兩部分。為了保證頻率響應的帶內平坦度,我們選用巴特沃斯濾波器結構[10]。二階巴特沃斯濾波器可以實現每倍頻程12 dB的衰減,電路結構采用反相輸入單放大器雙二次節型(Neg SAB),通過單個運放即可實現二階濾波器結構,簡化電路設計。濾波器電路如圖5所示。

圖5 濾波電路
FSK解調可以通過軟件和硬件兩種方式實現。軟件解調方式功耗較低,但是需要生成同頻同相的本地載波,實現起來較為復雜。硬件解調方式一般通過鎖相環電路,實現方式簡單且誤碼率極低,缺點是電路功耗較大,需要單獨關斷。
我們采用硬件解調器XR2211實現信號解調。XR2211是一個專門為數字通信設計的單片鎖相環系統,頻率范圍0.01 Hz~300 kHz。模擬輸入電壓的動態范圍從10 mV~3 V,解調信號開漏輸出,兼容多種電平標準。XR22111只需要設置幾個阻容就可以完成解調功能,電路原理如圖6所示。芯片采用5 V電源供電,由負載開關tps22860控制電源通斷。調制信號從2腳交流耦合輸入,芯片內部將信號偏置到VCC/2。解調信號從7腳輸出,通過5.1 K電阻上拉到3.3 V,與單片機的IO電平兼容。調節R1和C1改變內部振蕩器的頻率,使其等于兩個載波頻率的中心頻率,通過R4設置合理的帶寬,即可完成解調器配置。

圖6 XR2211電路原理圖
從機通信模塊應用于密封的水下系統,只能采用電池供電,為了延長使用時間,我們需要對模塊的供電電路進行優化設計。通信模塊的電源需求如表1所示。

表1 通信模塊電源需求
電路模塊按照工作模式分為兩種。對于間歇工作的電路模塊,供電電路要獨立分開,或串接負載開關,可以通過單片機控制,分時關斷其電源。對于持續工作的電路模塊,要選擇合適的供電方案,降低電源自身的耗散功率。常用的電源芯片分為開關穩壓電源和線性穩壓電源。開關電源效率很高,但是噪聲較大;線性電源噪聲低,但是自身消耗功率較大。主控和信號發送電路是數字電路,可以用開關電源供電;接收調理和解調電路是模擬電路,需要線性電源二次穩壓以降低噪聲[11]。
對于開關穩壓電源,我們要選用低靜態電流、高效率的芯片。由于電流需求較小,最大電流只有10 mA,我們選用ADI公司的開關電源芯片LT3990。該芯片最大可以輸出350 mA電流,輸入電壓可以達到62 V。該芯片在輕載時也可以達到較高的效率,輸出10 mA電流時,效率達到70%左右,遠高于其他電源芯片。線性穩壓電源的效率取決于輸入和輸出的電壓差,在芯片選型時,除了要滿足噪聲要求,還要選擇低壓差的芯片。我們選用TI公司的線性穩壓芯片TPS7A4701,該芯片在輸出1A電流時,壓降僅有307 mV,寬帶噪聲僅4.2 μVRMS,適用于低功耗模擬電路的供電。通信模塊的供電方案如圖7所示,輸入電壓12~48 V,主控和信號發送電路的電壓由兩片LT3990分別產生,調理電路的電源先由LT3990降壓到5.5 V,然后再用TPS7A4701穩壓到5 V,解調電路與調理電路共用5 V電源,通過負載開關TPS22860控制通斷。

圖7 供電方案
模塊之間的通信是半雙工的,通信由主機發起,從機回復。每個從機有一個固定的序列號,主機根據序列號在通信總線上發起廣播,從機收到廣播后校驗序列號,如果與自己的序列號相同則在總線上發出回復信息。主從之間的通訊時序如圖8所示。主機下發命令都是固定長度,包含幀頭、從機序列號、詢問內容編碼、校驗和等信息;從機收到指令后,延遲固定時間td進行回復,包含幀頭、幀長度、本機序列號、詢問內容回應、校驗和等信息。

圖8 主從模塊通訊時序圖
主機發送的命令由上位機下發,通信模塊起到信號轉發的作用。主機收到上位機的命令,將指令調制發出,收到從機回復后,將信息轉發給上位機。從機通信模塊大部分時間處于休眠狀態,由通信總線上的信號喚醒。從機模塊喚醒后,打開解調電路和串口,開始接收命令。命令接收完畢后,進行指令解析和回復信息幀組裝,然后延遲固定時間將信號調制發出。為了避免從機通信模塊被錯誤觸發,我們要對通信總線上的信號進行頻率判斷。軟件設計的關鍵部分在于信號調制和頻率檢測的實現。
為了區分主機信號和從機信號,需要將主機和從機的載波頻率區分開。主機下發的信號稱為下行信號,從機回復的信號稱為上行信號,其載波頻率如表2所示。

表2 通信載波頻率
我們使用單片機內部的定時器TA0產生載波信號。TA0是一個16位定時器,帶有7個可配置的比較/捕獲寄存器TA0CCRx,且每個比較/捕獲模塊都帶有輸出單元。我們把定時器的工作模式配置為遞增,輸出模式配置為翻轉,即計數器從0增加到TA0CCRx的值,并將輸出電平翻轉,然后計數器清零,重復上述過程。我們選用TA0.0引腳輸出調制信號,上述配置完成后,只需改變TA0CCR0的值,即可改變輸出頻率。假設定時器輸入時鐘頻率為fTACLK,我們要輸出的頻率為fout,則比較寄存器TA0CCR0應該配置為:
(2)
以上行信號為例,定時器輸入時鐘頻率為16 MHz,發送高電平載波時,TA0CCR0設置為163;發送低電平載波時,TA0CCR0設置為155。待調制的串行信號接入外部中斷輸入引腳,在外部中斷服務函數中進行頻率切換的控制。信號調制的軟件流程如圖9所示。在調制串行信號之前,我們首先發送一段表示高電平的載波,并將外部中斷的觸發模式設置為下降沿。串口輸出端在空閑狀態下為高電平,當串行信號開始發送時,會產生一個下降沿中斷,我們在中斷服務函數中改變TA0CCR0的值,開始發送低電平;同時將中斷觸發條件改為上升沿,等待下一次外部中斷。

圖9 信號調制流程圖
從機通信模塊進入休眠模式后,等待通信線上的信號喚醒。通信總線在空閑狀態下為低電平,有信號出現時,遲滯比較器輸出高脈沖,觸發單片機產生比較器中斷。在理想情況下,我們可以在比較器中斷里面喚醒模塊,開始接收和回復指令。但是在實際應用時,通信總線上有很多干擾信號,導致模塊誤觸發概率增加。通信模塊被喚醒之后,需要給解調電路上電,并打開串口接收,經過串口接收超時,重新進入休眠狀態。誤觸發不僅會導致功耗增大,還可能在超時過程中錯過真正的信號。為了避免誤觸發,要選擇一個更加嚴格的喚醒條件。
主機發送信號時總是以一段高電平載波作為起始,可以通過這段標志性信號來喚醒從機通信模塊。起始信號與噪聲干擾都會觸發比較器中斷,不同之處在于起始信號的頻率是穩定的,且信號是連續的。當起始信號出現時,會以固定頻率連續觸發比較器中斷,且中斷頻率與信號頻率相同。通過定時器計算比較器中斷產生的頻率,當比較器中斷以某個頻率連續產生N次時,即可認為起始信號出現。定時器工作在連續模式,每次進入比較器中斷時,讀取定時器的計數值tnew,與上一次的計數值told相減,得到一個時間差Δt,這個時間差即為信號的周期。我們設置一個目標頻率檢測范圍[flow,fup],則時間差應該滿足:
(3)
具體實現流程如圖10所示。通信模塊進入休眠模式之前打開定時器,允許比較器中斷。當接收信號超過遲滯比較器的上門限時,遲滯比較器輸出高電平,觸發單片機中斷。在比較器中斷服務函數中讀取定時器的計數值,與上一次的計數值相減,得到兩次中斷的時間差。根據目標信號的周期設置一個時間范圍,如果時間差滿足要求,則將脈沖計數值加1,否則將脈沖計數值清零。脈沖計數值增加到N時,說明滿足頻率范圍的信號連續出現了N次,即起始信號出現。此時打開解調電路和串口接收,開始接收數據。

圖10 頻率檢測流程圖
為了驗證磁感應無線通信模塊的性能,對主機和從機之間的通信進行測試。兩個通信節點的線圈放置于水中,間隔一定距離。主機節點通過RS232接口與上位機連接,通過串口調試助手發送命令;從機節點的序列號為7002,收到主機指令后進行回復。
上位機發送指令查詢序列號為7002的從機是否在線。發送指令為FC 6C 1B 5A 55,其中FC是信息幀頭,1B 5A是7002的16進制碼。從機收到后,回復FC 1B 5A 55 CA,表示本機在線,其中CA是校驗和。用示波器測量通信線上的信號,結果如圖11所示,圖中由上到下的3個通道分別表示從機解調信號、主機線圈兩端信號和主機解調信號。

圖11 示波器測量通信信號
上位機通過串口調試助手連續發送詢問命令,通信結果如圖12所示。

圖12 串口調試助手收發指令
改變線圈之間的距離,進行長時間的測試,統計不同距離時節點的通信成功率,結果如表3所示。
由表3結果可以看出,當線圈間距2 m時,通信成功率仍可達到100%;線圈間隔2.14 m以上時,通信效果急劇下降。由于磁場是靜態場,不具有傳播性,當線圈間距較遠時,接收端信號不能超過遲滯比較器的門限,從機通信模塊沒有被喚醒,因此無法正常通信。磁耦合無線通信模

表3 不同間距時的通信成功率
塊主要應用于水下近場通信,解決水下無纜密封系統的信息傳輸問題,滿足應用要求。水下磁感應通信不存在多徑效應干擾,不需要復雜的算法,實現起來簡單,且通信效果良好[12]。
為了解決海洋觀測系統中無纜信息傳輸的問題,設計了一種基于磁場耦合的低功耗無線通信模塊。通過線圈耦合交變磁場進行信息傳遞,實現半雙工通信。主機通信模塊通過轉發上位機指令發起通信,從機通信模塊大部分時間處于休眠模式,由通信信號喚醒。采用超低功耗單片機MSP430F5338作為主控芯片,通過軟件方式實現通信總線上的載波信號頻率檢測。通過單片機內部定時器和專用鎖相環電路實現2FSK調制和解調,提高信號的抗干擾能力。結果表明,磁感應無線通信模塊設計簡單,成本和功耗較低。在水下間距2 m以內時,通信成功率可以達到100%,在海洋觀測系統中由良好的應用前景。