王鵬超 劉愛東
(海軍航空大學兵器科學與技術系 煙臺 264001)
艦船作為海上活動平臺安裝有各種精密的武器裝備、電子設備及導航設備等[1]。為保證艦船正常航行和各種武器設備有效使用,要求各裝備保持良好的安裝精度。但海上環境惡劣,艦船在航行中受溫度、負載、風浪等影響,船體難免發生變形[2],為保證艦上設備正常工作,需要定期對安裝面與主慣導之間的相對水平度進行測量、對準。系泊階段,由于船體搖擺,如果無法保證水平度同步測量,將會引起數據的誤差。國內大多通過對講機喊話同時讀數,比較兩者之差,測出設備相對于基準平臺的水平度[3],這種方法對操作人員素質有很高要求,且隨機性較大。
本文設計了一種基于ZigBee 技術的無線差分水平儀,利用無線傳輸代替人工數據交流,并配合軟硬件設計,保證數據同步測量,滿足相對水平度測量要求。
無線差分水平儀由數據采集端、無線通信網絡和上位機三部分組成,采用星形網絡拓撲結構,如圖1。

圖1 差分水平儀組成
硬件上將兩臺青島前哨精密儀器有限公司的WL/AL 9 電子水平儀作為數據采集端,利用WL/AL 9電子水平儀測量基準面水平度,通過RS232串口實現與無線通信網絡終端的數據傳輸。無線通信網絡分為終端和協調器兩部分,由CC2530 片上系統芯片、收發天線、系統時鐘構建硬件平臺[4],利用CC2530芯片內部的RF收發器測量時延數據,結合時鐘實現數據同步測量,終端通過RF 收發器接收命令并發送數據[5]。協調器通過R F收發器發送命令并接收各終端節點發回的數據。利用筆記本電腦作為上位機,通過FT232串口轉USB 芯片與協調器進行數據交互[6],進行命令控制和數據分析處理。
無線差分水平儀軟件主要包括三部分:上位機程序、協調器程序和終端程序。上位機發送開始數據測量命令到協調器,協調器接收到命令后依次給各終端發送開始時延測量命令,同時啟動時鐘,測得時延差并寫入開始數據測量命令幀,發送給終端,終端按照命令幀要求延時時延差時間后,將開始測量命令發送給水平儀,水平儀工作,傳回測量數據,由終端傳給協調器再傳給上位機進行數據處理,顯示水平度差值。
本文共設計有四種類型的幀,即延時命令幀、測量命令幀、延時數據幀和測量數據幀,通信協議幀由幀頭、功能類型、內容類型、幀校驗和幀尾五部分組成。
延時命令幀的目的是測量協調器與終端間的數據傳輸時間,進一步得到時延差。由于協調器以廣播方式向終端發送命令,因此需要標注本命令幀的目標終端。其幀格式如圖2。

圖2 延時命令幀格式
1)“@”為固定的幀頭,1字符。
2)“C”和“S”代表該幀為延時命令幀,2字符。
3)“目標編號”設定給終端AB 發送(“1”為給終端A,“2”為給終端B)。
4)FCS兩個字符為幀校驗字符。
5)“*”和“CR”代表幀結束,2字符。
通過發送開始/停止測量命令幀控制水平儀開始或停止數據測量,并且控制需要延時的終端延時等待相應時間,以保證水平儀同時進行數據測量。幀格式如圖3。

圖3 上位機發送的數據測量命令幀格式
1)“@”為固定的幀頭,1字符。
2)“C”和“D”代表該幀為數據測量命令幀,2字符。
3)“參數設定”設定終端AB 進行延時等待1個字符、等待時間4 個字符、開始停止數據采集1個字符,共6個字符。
4)FCS兩個字符為幀校驗字符。
5)“*”和“CR”代表幀結束,2字符。
延時數據幀用于回應延時命令幀,終端接收到延時命令幀后立即回復延時數據幀,以完成傳播時間測量,為確定來源,延時數據幀包含發送該數據幀的終端編號。為保證傳播時間準確性,進行多次測量,延時數據幀又包含延時數據編號,標注是第幾次測量的延時數據幀。其幀格式如圖4。

圖4 延時數據幀格式
1)“@”為固定的幀頭,1字符。
2)“D”和“E”代表該幀為數據幀,2字符。
3)“延時數據”包括終端A B 標識、延時數據編號,共兩個字符。
4)FCS兩個字符為幀校驗字符。
5)“*”和“CR”代表幀結束,2字符。
測量數據幀將水平儀測得的數據發送回數據處理模塊,并附有數據序號和數據來源的水平儀標號。其幀格式如圖5。

圖5 水平儀發送數據幀格式
1)“@”為固定的幀頭,1字符。
2)“D”和“T”代表該幀為數據幀,2字符。
3)“發送數據”包括水平儀測量數據4字符、水平儀編號1 字符、測量數據的序號3 字符,共8 個字符。
4)FCS兩個字符為幀校驗字符。
5)“*”和“CR”代表幀結束,2字符。
為了減少和避免信息編碼傳輸和存取過程中隨機性的錯誤對測量的影響,需要對數據編碼采用校驗。本設計采用奇校驗方法,就是在每一個傳輸的數據后面加一個檢驗位,傳輸數據時實際數據中1 的個數為偶數時,校驗位就是1;實際數據中的1的個數為奇數時,校驗位就是0。在接收數據時只需要檢查1 的個數是奇數還是偶數,若為奇數則傳輸正確,否則傳輸錯誤[7]。
數據采集端主要實現基準面和安裝面水平度的測量。
數據采集端由兩臺青島前哨精密儀器有限公司電子水平儀組成,通過RS232串口與無線通信網絡終端有線連接。該水平儀測量范圍為0 ~±500 mm/m,分辨力可以達到0.01 mm/m,在測量范圍內示值誤差為±(1+A×2%)[8]。
兩臺水平儀分別測量基準面和安裝面水平度,為差分處理提供數據。在測量前先將兩臺水平儀放置在基準面上進行相對零度的調整,再將水平儀一臺置于主慣導基準面,另一臺置于安裝面進行測量。水平儀只能測量一條直線的水平度,測量水平度時需要對水平儀進行轉動,由線到面得到平面的水平度,在無線差分水平儀工作時,水平儀采用“米字型”測量法。以基準面為例,在基準面上建立平面直角坐標系,X 軸正方向指向艦首,在水平儀上也建立平面直角坐標系,X 軸正方向指向水平儀把手前部。在工作時,時刻保持兩個坐標系XOZ 面平行,如圖6,測量一段時間后將兩臺水平儀同時以原點為圓心順時針轉45°,如圖7,再進行測量。重復上述操作操作,直至水平儀坐標系與基準面坐標系重新重合,完成整個測量過程。

圖6 兩坐標系重合

圖7 水平儀坐標系旋轉
無線傳輸網絡主要實現命令、數據傳輸和傳輸時延的測量。
無線傳輸網絡利用ZigBee 星型拓撲結構構建傳輸網絡[9],利用CC2530 芯片內部的RF 收發器進行數據及命令的傳輸,并配合時鐘模塊實現傳輸時延測量。無線傳輸網絡分為終端和協調器兩部分,終端利用RS232 串口傳輸芯片實現與水平儀的數據傳輸,協調器利用FT232實現與上位機的數據交互[10]。
5.2.1 協調器軟件設計
協調器發送延時測量命令給終端A 并觸發協調器內部時鐘,等待接收到終端回令后記錄時間,得出傳輸時延,停止時鐘,若在一定時間內沒有收到回令,則協調器重新發送延時測量命令直至收到回令,在向終端B 重復上述步驟。在延時測量時對每一條傳輸線的延時進行10 次測量取平均值,作差得到延時差,將二分之一的延時差寫入數據測量命令幀里,然后向兩個終端發送數據測量命令,等待接收終端回傳的數據。如圖8。
5.2.2 終端軟件設計
終端在接收到協調器發送的延時命令后向協調器立即回復指令,在接收到數據測量命令后,對命令進行分析觸發終端內部的時鐘進行延時等待,在延時等待結束后向水平儀發送開始數據采集命令,并將會收到的測量數據傳輸給協調器[11]。如圖9。

圖8 協調器程序流程圖

圖9 終端程序流程圖
上位機完成時延和停止數據測量命令幀的發送、同步數據的處理和水平度差值顯示功能,以個人筆記本為硬件平臺,通過USB與協調器有線數據傳輸。
上位機軟件通過控制協調器向終端發送開始延時測量命令、停止數據測量命令,在接收到回傳數據后對數據進行分析,除去超出量程的數據,找到相對應的兩個來自不同終端的同時刻數據進行作差,并將差值結果顯示在筆記本上。如圖10。

圖10 上位機程序流程圖
由于艦艇空間復雜,設備分布又較為分散,位于艦艇不同位置處的終端與協調器之間通信效果具有顯著區別[12~13]。主要分為終端與協調器可以通視和不可通視兩大類。為了測試系統的傳輸穩定性和同步性效果,在模擬環境下對丟包率、誤碼率和傳輸時延穩定性進行了測試[14]。
終端分別在通視50m、有墻壁遮擋10m 和有墻壁遮擋30m 的位置向協調器等時間間隔發送1000個數據,協調器對丟包率、誤碼率和傳輸時延穩定性進行測試。實驗結果顯示,在三種情況下數據包都能準確到達,丟包率、誤碼率均為0,但時延誤差有明顯差異。為使結果便于觀察,圖11 中只顯示前20次實驗結果。
結果顯示通視情況下效果最好,誤差可精確到3ms,有墻30m 情況最差。但三種情況下誤差都在6ms范圍內,滿足艦艇相對水平度測量需求。

圖11 時延誤差實驗結果
本文利用ZigBee無線傳輸網絡傳輸技術,提出一種新的水平度差分標校方法[15]。設計了無線差分水平儀的總體方案,選擇了相對實用的組網方案和幀格式,提出傳輸延遲測量方法、實現了在誤差允許范圍內數據采集的同步。降低了相對水平度測量工作對操作人員的依賴程度,為操作人員提供了極大地便利,與傳統水平對準相比,在方便程度、測量效率等方面都有很大的改善。下一階段研究工作主要將實現更遠、更復雜環境下數據傳輸,并進一步提高同步精度。