王思琦 傅蘇 陳兆倩
摘 要 提出一款新型的北斗上位機開發思路,其能兼容目前北斗通信系統的集中數據收發系統,采用一對多的服務端對終端的組織形式。可以接收多個終端設備的信息,并能根據終端設備的不同進行數據的分類存儲。同時,支持系統根據接收的終端信息,進行實時響應的區分終端設備的北斗信息發送功能,并對其可實現性以及應用性進行了分析。
關鍵詞 北斗通信 上位機 衛星通信
0引言
北斗衛星通信作為一種能在廣袤地區使用的衛星通信方式,雖然在通信速率和能力上無法和移動通信網絡比較,但是在移動網無法覆蓋的人跡罕至地區卻需求強烈,包括無人機勘探結果回傳、野外作業以及采礦工業開發等情況下,在很多場景下都沒有移動網的完全覆蓋,這時就需要衛星通信作為有效補充手段。而現有的上位機的功能有部分局限性,與衛星通信模塊的連接多少有些漏洞,本篇文章嘗試討論了新型的能應用更廣的上位機的開發思路,新型的上位機應該能開發配合野外數據回傳的服務北斗接收系統,可以和布置在外的北斗終端系統進行通信,滿足一對多的服務方式,形成集中通信管理系統等等。本文的結構如下:第2節,描述了具體的方案;第3節,分析了之前的北斗通信上位機并與本文提出的上位機制作思路進行對照以及新上位機的完成驗證標準,可行性分析以及可融合性分析;第4節,結論。
1基于雙指令模式的上位機的實現方案
1.1背景
因為移動網覆蓋范圍的局限性,在野外相當多的場合并不可靠,但是人類的活動范圍越來越大,會去遠離移動網基站的地方活動,所以與這部分人(或者代替人的智能機器設備)保持聯系的需求也在增加。簡言之就是使用衛星通信的需求在增加。而如果想要使用北斗代替無線網進行通訊,就必須彌補移動網不可靠的缺點,換言之,只有與北斗的通訊必須可靠流暢可控制性高才可以去替代。所以能夠配合野外數據回傳的北斗通信系統上位機的需求也隨之增加,并且使用北斗通信的非專業人員也越來越多,對上位機的可靠性以及可操作性要求也在變高。
1.2設計構想思路
確定開發環境vs與開發語言c++與開發模式MFC之后,應該搭建起來大體框架并確定根據功能邏輯交互關系。其交互界面大致如圖1(由qt簡易編寫用于說明用)所示,其主界面應該包括串口配置信息部分包括端口號,波特率,校驗方式,數據長度,停止位長度、2.1指令模式與4.0指令模式開關根據選擇的指令模式,在發送指令時,同樣的指令功能會根據不同的指令模式,選擇具體的字符指令形式或者是16進制ASCII碼指令形式進行指令發送。北斗指令部分包括信號強度測試,定位申請,通信模式選擇,卡號缺人等等一系列指令,所有的指令均采用這種封裝的形式進行,使操作性變的簡單,根據兩套北斗協議的內容,寫出兩套指令并進行封裝。數據收發控制窗口,以及調試窗口,在調試完成之后可用作顯示數據的窗口而另一個接收數據的窗口可用來顯示衛星的反饋指令信息這樣看起來會更加清晰美觀,為了增加其應用范圍,使其能夠以實現一上位機對多個終端收發指令,可以將幾個上位機界面集成到一個上位機之中并通過代碼邏輯區分,分別控制不同的終端需要注意的雖然使用同一個上位機但是是控制不同的端口的北斗模塊發送給不同的終端,同一個北斗模塊同一時間只能發送給一個終端。省去以前常出現星座圖因為對于普通用戶來說看星座的分布沒有太大的意義,進行簡化。其內部具體的代碼實現過程可參照vc++構建串口上位機的過程,在vs環境中使用c++編寫與在vc++環境下編寫的方式相差不多,利用其中的api接口加上對北斗兩種協議的解讀可以實現上述所有邏輯功能。
其使用的步驟應該按照通過標準的北斗指令方式來進行,基本需要按照如下的步驟形式來形成北斗通信過程:
(1)讀卡,獲取北斗模塊的信息,包括卡號、序列號、等級等信息。
(2)功率檢測,檢測當前的北斗信號強度,在信號強度允許的情況下進行通信。
(3)進行通信對象的選擇以及選擇通信所用的指令模式。
(4)進行通信的模式選擇,分三種:一是,單純字符;二是,單純漢字;三是,字符漢字混發。
(5)與通信終端進行對話,收發指令數據。
(6)解讀上面每一步返回的信息情況。
(7)實時進行通信監控并返回錯誤信息。
(8)發現錯誤信息進入到應急程序,解決錯誤后恢復為通信狀態。
在北斗通信的整個過程中,實際上不但是單純的簡單指令發送,而且每條發送的指令,都會對應反饋的發送指令信息。對每種功能發送的指令,都會對應反饋相關北斗模塊反饋的信息情況。
通過對指令反饋信息的收取,可以了解指令執行的情況。比如,讀卡失敗,那么可以再次發送讀卡指令,如果一直讀卡失敗,可以更換指令模式或是可能北斗模塊自身問題導致,從而可以實時監控整個通信的過程。
2新上位機需要驗證的功能以其可融合性分析
2.1可融合性分析
上位機并不是單獨存在的個體,需要與其他部分如北斗信號收發機,一個或者多個移動的附帶北斗模塊的終端,所以該上位機的使用范圍是值得討論的以及如何與其他項目融合也值得分析。
正如前面提到無線移動網的局限性,雖然在通常情況下其擁有速度快,穩定,覆蓋率高等優點在大多數情況下可以滿足通信要求,所以利用北斗衛星進行通訊的使用范圍是一些特殊情況(因為利用北斗衛星通信的成本較高,如果在通常情況下使用會增加額外成本)而在遠離城市的野外,如海上,山區,森林等地,移動網的信號覆蓋很弱,而需要通信的客戶往往是處于移動狀態,只能使用無線通信,而不依賴基站,信號覆蓋面最廣的衛星通訊就顯得更加實用,而北斗衛星通信系統相比于其他常用的衛星通信系統如gps,銥星,glonass等等更有利于本國的科研人員進行開發。北斗衛星通信的需求范圍就是北斗上位機的需求范圍,比如戶外探險人員,應急救援人員,礦物勘測人員,以及一些智能設備如探測用無人機,在海上使用的水下機器人,礦物勘測機器人等等,在應急救援領域,礦物開采領域,船只導航,無人設備導航等部分領域均有應用。
從另外一種角度來看,其并非只能融合到同一類設備中,由于該類上位機具有一對多的能力,那么即使北斗模塊的終端是完全不同的設備也能夠同時操控。舉個野外應急救援指揮系統的例子,如果野外有人失聯,通常來說會派遣搜救隊去尋找,通常失聯的地方移動網信號都不好,要不然手機信號還好的情況下也不會失聯,而此時派遣出去的搜查人員需要攜帶衛星通信終端設備防止進一步出現人員失聯的情況,那么一個很簡單的邏輯關系便產生,派遣多名人員攜帶多個終端,最大范圍進行搜尋,加快搜尋效率很符合,而此時的上位機如果按照以前的思路,每次只能與一名搜救人員通信,顯然此時與其他搜救人員的通信會有延遲,如果搜尋人員夠多,那么很可能這些搜救人員內部的溝通就成問題,這里的解決方案可以是通過將上位機進一步開發使其能夠同時一對很多的進行北斗衛星通信,同時與所有搜救人員進行通訊,毫無疑問,會極大的增加搜救效率,不僅如此,如果搜尋范圍過大通過人力算時間內無法完成,采取人工搜索與機器搜索同時進行的方式,那么使用這種能同時與多個機器與人員公共進行通信的上位機系統就能夠提高搜索效率,并且通過上位機系統統一進行指示,能夠保持各個終端持有者的同時性。進一步發展下去,當搜救人員每個人都配上這種上位機系統,那么理論上就會形成一個能夠互相交流搜救網絡,可能該領域會有進一步的發展。
3結論
本文提出了一種研發北斗上位機的新思路并解釋了其研發價值,新思路的上位機即指搭建出一款具有兼容兩種北斗指令,可以實時支持多個串口并發數據發送,并可以緩存多個來源的北斗回傳數據,并具備自組織發送數據格式的能力,滿足適應北斗SBD通信的短報文發送要求的上位機。
其可以通過對實際北斗設備運行的檢測,實時監控北斗傳輸數據情況及工作模式,在北斗短報文的通信的間隔,主動調整北斗模塊工作模式以便節省能源,保證在不傳輸數據時,使北斗模塊主動進入休眠狀態。支持多種節能狀態模式轉換的能力,方便本系統即便是在電池供電的情況下,也能長時間高效運行,能開發配合野外數據回傳的服務北斗接收系統,可以和布置在外的北斗終端系統進行通信,滿足一對多的服務方式,形成集中通信管理系統等等。
除此之外,該上位機在接入網絡后(比較常用的有GPRS、無線WIFI、以太網口,GPRS方式需要GPRS模塊和SIM卡的支持,無線WIFI模塊需要WIFI模塊支持),可以通過網絡和云端服務器建立TCP連接,將收到的北斗短報文數據按照一定的協議打包上傳至云端服務器后,用戶可以通過網絡實現對北斗數據包的在線管理,并對數據創建相關應用,對接收數據進行直觀展示,并且可以通過網絡通信實現對北斗終端設備的遠程遙控。
依據這些特性可以較為和諧的融入其他項目并具有一定的優越性,并提升整體的效率,可交互性,可靠性等等,可見其具有一定的研發價值。但是依照本思路設計出來的上位機并不是完美的,由于收到諸多條件的制約如硬件數量,傳輸速率,通信帶寬有限,可移植性差等等,一對多的服務方式也會變得有限。
參考文獻
[1] Andreas,S&A.Neubauer&H.Ehm&R.Weigel&N.Lemke&G.Heinrichs,&J.Winkel&J.A.醰ila-Rodr韌uez&R.Kaniuth&T.Pany&B.Eissfeller&G. Rohmer&M.Overbeck.Combined Galileo/GPS architecture for enhanced sensitivity reception[J].AEUE-International Journal of Electronics and Communications,2005(05).
[2] Thomas,H&T.Gotoh&J.Amagai&Y.Koyama&T.Kondo.A GPU based real-time GPS software receiver[J].GPS Solutions,2010(02).
[3] Jiangping,D.&R.Chen&J. Wang.An enhanced bit-wise parallel algorithm for real-time GPS software receiver[J].GPS Solutions,2010 (02).
[4] G.W. Hein,T. Pany,S. Wallner, et.Platforms for a Future GNSS Receiver: A Discussion of ASIC, FPGA, and DSP Technologies[J]. InsideGNSS ,2006.
[5] 魯郁,GPS全球定位接收機[M].電子工業出版社,2009.
[6] 王鵑,仇躍華.導航接收機上位機軟件的設計與開發[J].微計算機信息,2008(01).
[7] 鄭少仁等. Ad hoc網絡技術[M].北京:人民郵電出版社, 2005.
[8] 史偉艷.北斗_GPS_GLONASS組和導航接收機上位機軟件的設計和開發[J].信息與電腦(理論版),2011(10).
[9] GPS、GLONASS、北斗、Galileo:四大衛星導航系統“競風流”[J].軍民兩用技術與產品,2012(05).
[10] 祖秉法.“北斗二號”民用軟件接收機關鍵技術研究[D].哈爾濱:哈爾濱工程大學,2010.
[11] 李長林,高潔,Visual C++串口通信技術與典型實例[M].北京:清華大學出版社,2006.
[12] 侯艷,vs2005中串口通信的實現[J].信息技術,2009(04).
[13] 駱拓,龔寄.基于VC++和Windows API的串口通信程序設計[J].電腦編程技巧與維護,2014(18).
[14] 鮑然.北斗衛星導航系統與全球定位系統的性能比較[J].信息通信,2013(07).
[15] 劉海濤.高靈敏度GPS/Galileo雙模導航接收機的研究與開發[D].長沙:國防科學技術大學,2006.
[16] 李現勇.Visual C++串口通信技術與工程實踐[M].人民郵電出版社, 2002.
[17] 蔡雨楠,李洋,權立,黃夏.多模無線通信技術在應急指揮系統中的應用[J].電力系統通信,2011(11).
[18] 蔡勇,陳一民,陳養彬,高飛.移動多媒體應急指揮系統的設計與實現[J].計算機應用,2005(S1).
[19] 李博.無線通訊在應急方面的應用[J].電子技術與軟件工程,2018(08).
[20] 谷豐.無線多模通信終端關鍵技術的設計與實現[D].北京:北京郵電大學,2015.
[21] 闞能琪.VC++串口通信中多線程技術的應用研究[J].西華大學學報(自然科學版),2005(04).
[22] 楊軍,曹沖.我國北斗衛星導航系統應用需求及效益分析[J].武漢大學學報(信息科學版),2004(09).
[23] 屈武江.串口數據采集系統在VS2008中的設計與實現[J].師范大學學報(自然科學版),2013(03).
[24] 郭寶錄,李朝榮,樂洪宇.國外無人機技術的發展動向與分析[J].艦船電子工程,2008(09).
[25] 林興銘.基于嵌入式平臺的微型無人機地面控制系統設計[D].福州:福州大學,2014.