王鵬超 劉愛東
(海軍航空大學(xué)兵器科學(xué)與技術(shù)系 煙臺 264001)
艦船作為海上活動平臺安裝有各種精密的武器裝備、電子設(shè)備及導(dǎo)航設(shè)備等[1]。為保證艦船正常航行和各種武器設(shè)備有效使用,要求各裝備保持良好的安裝精度。但海上環(huán)境惡劣,艦船在航行中受溫度、負(fù)載、風(fēng)浪等影響,船體難免發(fā)生變形[2],為保證艦上設(shè)備正常工作,需要定期對安裝面與主慣導(dǎo)之間的相對水平度進(jìn)行測量、對準(zhǔn)。系泊階段,由于船體搖擺,如果無法保證水平度同步測量,將會引起數(shù)據(jù)的誤差。國內(nèi)大多通過對講機(jī)喊話同時讀數(shù),比較兩者之差,測出設(shè)備相對于基準(zhǔn)平臺的水平度[3],這種方法對操作人員素質(zhì)有很高要求,且隨機(jī)性較大。
本文設(shè)計了一種基于ZigBee 技術(shù)的無線差分水平儀,利用無線傳輸代替人工數(shù)據(jù)交流,并配合軟硬件設(shè)計,保證數(shù)據(jù)同步測量,滿足相對水平度測量要求。
無線差分水平儀由數(shù)據(jù)采集端、無線通信網(wǎng)絡(luò)和上位機(jī)三部分組成,采用星形網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如圖1。
圖1 差分水平儀組成
硬件上將兩臺青島前哨精密儀器有限公司的WL/AL 9 電子水平儀作為數(shù)據(jù)采集端,利用WL/AL 9電子水平儀測量基準(zhǔn)面水平度,通過RS232串口實(shí)現(xiàn)與無線通信網(wǎng)絡(luò)終端的數(shù)據(jù)傳輸。無線通信網(wǎng)絡(luò)分為終端和協(xié)調(diào)器兩部分,由CC2530 片上系統(tǒng)芯片、收發(fā)天線、系統(tǒng)時鐘構(gòu)建硬件平臺[4],利用CC2530芯片內(nèi)部的RF收發(fā)器測量時延數(shù)據(jù),結(jié)合時鐘實(shí)現(xiàn)數(shù)據(jù)同步測量,終端通過RF 收發(fā)器接收命令并發(fā)送數(shù)據(jù)[5]。協(xié)調(diào)器通過R F收發(fā)器發(fā)送命令并接收各終端節(jié)點(diǎn)發(fā)回的數(shù)據(jù)。利用筆記本電腦作為上位機(jī),通過FT232串口轉(zhuǎn)USB 芯片與協(xié)調(diào)器進(jìn)行數(shù)據(jù)交互[6],進(jìn)行命令控制和數(shù)據(jù)分析處理。
無線差分水平儀軟件主要包括三部分:上位機(jī)程序、協(xié)調(diào)器程序和終端程序。上位機(jī)發(fā)送開始數(shù)據(jù)測量命令到協(xié)調(diào)器,協(xié)調(diào)器接收到命令后依次給各終端發(fā)送開始時延測量命令,同時啟動時鐘,測得時延差并寫入開始數(shù)據(jù)測量命令幀,發(fā)送給終端,終端按照命令幀要求延時時延差時間后,將開始測量命令發(fā)送給水平儀,水平儀工作,傳回測量數(shù)據(jù),由終端傳給協(xié)調(diào)器再傳給上位機(jī)進(jìn)行數(shù)據(jù)處理,顯示水平度差值。
本文共設(shè)計有四種類型的幀,即延時命令幀、測量命令幀、延時數(shù)據(jù)幀和測量數(shù)據(jù)幀,通信協(xié)議幀由幀頭、功能類型、內(nèi)容類型、幀校驗(yàn)和幀尾五部分組成。
延時命令幀的目的是測量協(xié)調(diào)器與終端間的數(shù)據(jù)傳輸時間,進(jìn)一步得到時延差。由于協(xié)調(diào)器以廣播方式向終端發(fā)送命令,因此需要標(biāo)注本命令幀的目標(biāo)終端。其幀格式如圖2。
圖2 延時命令幀格式
1)“@”為固定的幀頭,1字符。
2)“C”和“S”代表該幀為延時命令幀,2字符。
3)“目標(biāo)編號”設(shè)定給終端AB 發(fā)送(“1”為給終端A,“2”為給終端B)。
4)FCS兩個字符為幀校驗(yàn)字符。
5)“*”和“CR”代表幀結(jié)束,2字符。
通過發(fā)送開始/停止測量命令幀控制水平儀開始或停止數(shù)據(jù)測量,并且控制需要延時的終端延時等待相應(yīng)時間,以保證水平儀同時進(jìn)行數(shù)據(jù)測量。幀格式如圖3。
圖3 上位機(jī)發(fā)送的數(shù)據(jù)測量命令幀格式
1)“@”為固定的幀頭,1字符。
2)“C”和“D”代表該幀為數(shù)據(jù)測量命令幀,2字符。
3)“參數(shù)設(shè)定”設(shè)定終端AB 進(jìn)行延時等待1個字符、等待時間4 個字符、開始停止數(shù)據(jù)采集1個字符,共6個字符。
4)FCS兩個字符為幀校驗(yàn)字符。
5)“*”和“CR”代表幀結(jié)束,2字符。
延時數(shù)據(jù)幀用于回應(yīng)延時命令幀,終端接收到延時命令幀后立即回復(fù)延時數(shù)據(jù)幀,以完成傳播時間測量,為確定來源,延時數(shù)據(jù)幀包含發(fā)送該數(shù)據(jù)幀的終端編號。為保證傳播時間準(zhǔn)確性,進(jìn)行多次測量,延時數(shù)據(jù)幀又包含延時數(shù)據(jù)編號,標(biāo)注是第幾次測量的延時數(shù)據(jù)幀。其幀格式如圖4。
圖4 延時數(shù)據(jù)幀格式
1)“@”為固定的幀頭,1字符。
2)“D”和“E”代表該幀為數(shù)據(jù)幀,2字符。
3)“延時數(shù)據(jù)”包括終端A B 標(biāo)識、延時數(shù)據(jù)編號,共兩個字符。
4)FCS兩個字符為幀校驗(yàn)字符。
5)“*”和“CR”代表幀結(jié)束,2字符。
測量數(shù)據(jù)幀將水平儀測得的數(shù)據(jù)發(fā)送回數(shù)據(jù)處理模塊,并附有數(shù)據(jù)序號和數(shù)據(jù)來源的水平儀標(biāo)號。其幀格式如圖5。
圖5 水平儀發(fā)送數(shù)據(jù)幀格式
1)“@”為固定的幀頭,1字符。
2)“D”和“T”代表該幀為數(shù)據(jù)幀,2字符。
3)“發(fā)送數(shù)據(jù)”包括水平儀測量數(shù)據(jù)4字符、水平儀編號1 字符、測量數(shù)據(jù)的序號3 字符,共8 個字符。
4)FCS兩個字符為幀校驗(yàn)字符。
5)“*”和“CR”代表幀結(jié)束,2字符。
為了減少和避免信息編碼傳輸和存取過程中隨機(jī)性的錯誤對測量的影響,需要對數(shù)據(jù)編碼采用校驗(yàn)。本設(shè)計采用奇校驗(yàn)方法,就是在每一個傳輸?shù)臄?shù)據(jù)后面加一個檢驗(yàn)位,傳輸數(shù)據(jù)時實(shí)際數(shù)據(jù)中1 的個數(shù)為偶數(shù)時,校驗(yàn)位就是1;實(shí)際數(shù)據(jù)中的1的個數(shù)為奇數(shù)時,校驗(yàn)位就是0。在接收數(shù)據(jù)時只需要檢查1 的個數(shù)是奇數(shù)還是偶數(shù),若為奇數(shù)則傳輸正確,否則傳輸錯誤[7]。
數(shù)據(jù)采集端主要實(shí)現(xiàn)基準(zhǔn)面和安裝面水平度的測量。
數(shù)據(jù)采集端由兩臺青島前哨精密儀器有限公司電子水平儀組成,通過RS232串口與無線通信網(wǎng)絡(luò)終端有線連接。該水平儀測量范圍為0 ~±500 mm/m,分辨力可以達(dá)到0.01 mm/m,在測量范圍內(nèi)示值誤差為±(1+A×2%)[8]。
兩臺水平儀分別測量基準(zhǔn)面和安裝面水平度,為差分處理提供數(shù)據(jù)。在測量前先將兩臺水平儀放置在基準(zhǔn)面上進(jìn)行相對零度的調(diào)整,再將水平儀一臺置于主慣導(dǎo)基準(zhǔn)面,另一臺置于安裝面進(jìn)行測量。水平儀只能測量一條直線的水平度,測量水平度時需要對水平儀進(jìn)行轉(zhuǎn)動,由線到面得到平面的水平度,在無線差分水平儀工作時,水平儀采用“米字型”測量法。以基準(zhǔn)面為例,在基準(zhǔn)面上建立平面直角坐標(biāo)系,X 軸正方向指向艦首,在水平儀上也建立平面直角坐標(biāo)系,X 軸正方向指向水平儀把手前部。在工作時,時刻保持兩個坐標(biāo)系XOZ 面平行,如圖6,測量一段時間后將兩臺水平儀同時以原點(diǎn)為圓心順時針轉(zhuǎn)45°,如圖7,再進(jìn)行測量。重復(fù)上述操作操作,直至水平儀坐標(biāo)系與基準(zhǔn)面坐標(biāo)系重新重合,完成整個測量過程。
圖6 兩坐標(biāo)系重合
圖7 水平儀坐標(biāo)系旋轉(zhuǎn)
無線傳輸網(wǎng)絡(luò)主要實(shí)現(xiàn)命令、數(shù)據(jù)傳輸和傳輸時延的測量。
無線傳輸網(wǎng)絡(luò)利用ZigBee 星型拓?fù)浣Y(jié)構(gòu)構(gòu)建傳輸網(wǎng)絡(luò)[9],利用CC2530 芯片內(nèi)部的RF 收發(fā)器進(jìn)行數(shù)據(jù)及命令的傳輸,并配合時鐘模塊實(shí)現(xiàn)傳輸時延測量。無線傳輸網(wǎng)絡(luò)分為終端和協(xié)調(diào)器兩部分,終端利用RS232 串口傳輸芯片實(shí)現(xiàn)與水平儀的數(shù)據(jù)傳輸,協(xié)調(diào)器利用FT232實(shí)現(xiàn)與上位機(jī)的數(shù)據(jù)交互[10]。
5.2.1 協(xié)調(diào)器軟件設(shè)計
協(xié)調(diào)器發(fā)送延時測量命令給終端A 并觸發(fā)協(xié)調(diào)器內(nèi)部時鐘,等待接收到終端回令后記錄時間,得出傳輸時延,停止時鐘,若在一定時間內(nèi)沒有收到回令,則協(xié)調(diào)器重新發(fā)送延時測量命令直至收到回令,在向終端B 重復(fù)上述步驟。在延時測量時對每一條傳輸線的延時進(jìn)行10 次測量取平均值,作差得到延時差,將二分之一的延時差寫入數(shù)據(jù)測量命令幀里,然后向兩個終端發(fā)送數(shù)據(jù)測量命令,等待接收終端回傳的數(shù)據(jù)。如圖8。
5.2.2 終端軟件設(shè)計
終端在接收到協(xié)調(diào)器發(fā)送的延時命令后向協(xié)調(diào)器立即回復(fù)指令,在接收到數(shù)據(jù)測量命令后,對命令進(jìn)行分析觸發(fā)終端內(nèi)部的時鐘進(jìn)行延時等待,在延時等待結(jié)束后向水平儀發(fā)送開始數(shù)據(jù)采集命令,并將會收到的測量數(shù)據(jù)傳輸給協(xié)調(diào)器[11]。如圖9。
圖8 協(xié)調(diào)器程序流程圖
圖9 終端程序流程圖
上位機(jī)完成時延和停止數(shù)據(jù)測量命令幀的發(fā)送、同步數(shù)據(jù)的處理和水平度差值顯示功能,以個人筆記本為硬件平臺,通過USB與協(xié)調(diào)器有線數(shù)據(jù)傳輸。
上位機(jī)軟件通過控制協(xié)調(diào)器向終端發(fā)送開始延時測量命令、停止數(shù)據(jù)測量命令,在接收到回傳數(shù)據(jù)后對數(shù)據(jù)進(jìn)行分析,除去超出量程的數(shù)據(jù),找到相對應(yīng)的兩個來自不同終端的同時刻數(shù)據(jù)進(jìn)行作差,并將差值結(jié)果顯示在筆記本上。如圖10。
圖10 上位機(jī)程序流程圖
由于艦艇空間復(fù)雜,設(shè)備分布又較為分散,位于艦艇不同位置處的終端與協(xié)調(diào)器之間通信效果具有顯著區(qū)別[12~13]。主要分為終端與協(xié)調(diào)器可以通視和不可通視兩大類。為了測試系統(tǒng)的傳輸穩(wěn)定性和同步性效果,在模擬環(huán)境下對丟包率、誤碼率和傳輸時延穩(wěn)定性進(jìn)行了測試[14]。
終端分別在通視50m、有墻壁遮擋10m 和有墻壁遮擋30m 的位置向協(xié)調(diào)器等時間間隔發(fā)送1000個數(shù)據(jù),協(xié)調(diào)器對丟包率、誤碼率和傳輸時延穩(wěn)定性進(jìn)行測試。實(shí)驗(yàn)結(jié)果顯示,在三種情況下數(shù)據(jù)包都能準(zhǔn)確到達(dá),丟包率、誤碼率均為0,但時延誤差有明顯差異。為使結(jié)果便于觀察,圖11 中只顯示前20次實(shí)驗(yàn)結(jié)果。
結(jié)果顯示通視情況下效果最好,誤差可精確到3ms,有墻30m 情況最差。但三種情況下誤差都在6ms范圍內(nèi),滿足艦艇相對水平度測量需求。
圖11 時延誤差實(shí)驗(yàn)結(jié)果
本文利用ZigBee無線傳輸網(wǎng)絡(luò)傳輸技術(shù),提出一種新的水平度差分標(biāo)校方法[15]。設(shè)計了無線差分水平儀的總體方案,選擇了相對實(shí)用的組網(wǎng)方案和幀格式,提出傳輸延遲測量方法、實(shí)現(xiàn)了在誤差允許范圍內(nèi)數(shù)據(jù)采集的同步。降低了相對水平度測量工作對操作人員的依賴程度,為操作人員提供了極大地便利,與傳統(tǒng)水平對準(zhǔn)相比,在方便程度、測量效率等方面都有很大的改善。下一階段研究工作主要將實(shí)現(xiàn)更遠(yuǎn)、更復(fù)雜環(huán)境下數(shù)據(jù)傳輸,并進(jìn)一步提高同步精度。