楊 超,楊 淵,劉云飛(.海軍航空工程學(xué)院,山東煙臺 6400;.中國人民解放軍9407部隊,遼寧葫蘆島 5000;.海軍航空工程學(xué)院青島校區(qū),山東青島 6604)
?
GPS接收機模擬軟件開發(fā)
楊超1,楊淵2,劉云飛3
(1.海軍航空工程學(xué)院,山東煙臺264001;2.中國人民解放軍92407部隊,遼寧葫蘆島125000;3.海軍航空工程學(xué)院青島校區(qū),山東青島266041)
摘要:隨著科技的發(fā)展,GPS在越來越多的工程和科學(xué)領(lǐng)域得到應(yīng)用,有關(guān)GPS的教學(xué)也逐漸引起重視。介紹了用于教學(xué)的GPS接收機模擬軟件開發(fā)。該軟件有助于課堂教學(xué)和課后學(xué)生練習(xí)GPS接收機的操作使用。軟件采用VC++編程方法實現(xiàn),接收機各功能的實現(xiàn)基本上采用事件響應(yīng)函數(shù)的形式。運行結(jié)果表明,所有GPS定時校頻接收機軟件前面板模擬結(jié)果都與被模擬界面的畫面及功能一致,完成GPS接收機的模擬。文中的軟件開發(fā)方法可為其他教學(xué)模擬軟件的開發(fā)提供參考。
關(guān)鍵詞:教學(xué)軟件;VC++;GPS接收機;教學(xué)模擬軟件
GPS[1]是20世紀(jì)70年代由美國陸海空三軍聯(lián)合研制的新一代空間衛(wèi)星導(dǎo)航定位系統(tǒng),目前,它已經(jīng)在很多方面得到了應(yīng)用[2?9]。隨著現(xiàn)代科技的發(fā)展,GPS的應(yīng)用還會越來越廣泛。相應(yīng)的有關(guān)GPS理論和GPS接收機操作使用的課程也日益普遍。本文旨在介紹一種用于授課和練習(xí)GPS接收機操作使用的GPS接收機模擬軟件,該軟件主要對某型GPS接收機進行人機界面模擬。使用該軟件,不僅在課堂上可以通過屏幕直觀再現(xiàn)作為授課內(nèi)容的GPS接收機的人機界面和操作使用方法,便于教師授課和學(xué)生學(xué)習(xí),而且,更可以作為GPS模擬接收機,供學(xué)生練習(xí)GPS接收機的操作使用,對沒有GPS接收機的場合下的GPS接收機操作使用教學(xué),尤其有用。通過使用該軟件,讓相關(guān)學(xué)員和技術(shù)人員能夠在短時間內(nèi)學(xué)會GPS接收機的操作使用,達到事半功倍的效果。該軟件的編程方法不僅可以幫助編寫其他型號的GPS接收機教學(xué)模擬軟件,同時也為其他課程的教學(xué)軟件編程提供參考。
本文主要對GPS定時校頻接收機的面板和操作進行模擬。VC++不僅具有C/C++語言的高效性和端口操作能力的特點,而且融合了可視化環(huán)境與面向?qū)ο蟮某绦蛟O(shè)計思想[10]。在綜合接收機的人機界面的面板及操作和VC++的特點之后,在開發(fā)時選擇可視化的、面向?qū)ο蟮木幊坦ぞ遃isual C++ 6.0。
1.1GPS模擬接收機前面板外形的設(shè)計實現(xiàn)
根據(jù)實物,本文對GPS模擬面板的整體外形進行了設(shè)計。
(1)開關(guān)部分用一個Button控件和一個PictureBox控件組合實現(xiàn),單純地使用Button控件在外觀設(shè)計上并不能滿足要求,所以針對開關(guān)的開和關(guān)狀態(tài),在Button按鈕彈起和按下時分別用PictureBox控件調(diào)用圖片使之更加逼真。
(2)LCD顯示屏作為整個軟件的文字顯示部分,VC++ 6.0有兩個可用控件:TextBox和Label。而Text?Box本身帶有白色背景的底框,和真實的面板不相符,因此本文選擇了Label控件。Label控件有幾個重要的屬性,分別是Font,F(xiàn)oreColor,Visible,BackColor和Text;Font用來設(shè)置文本的字體;ForeColor用來設(shè)置文本的顏色;Visible用來設(shè)置控件是否可見;Text用來設(shè)置文本的內(nèi)容;BackColor用來設(shè)置背景色。
(3)1PPS指示燈用一個PictureBox控件實現(xiàn),在指示燈亮滅狀態(tài)用PictureBox控件調(diào)用代表燈亮燈滅的圖片實現(xiàn)。
(4)功能按鈕為獲得較真實的效果,先獲取Button按鈕位置畫圓域,然后針對按下彈起狀態(tài)填充相應(yīng)的圖片實現(xiàn)。
(5)其余文字說明部分均采用Label控件。
1.2GPS模擬接收機人機界面功能的實現(xiàn)
GPS接收機人機界面的每一個功能都使用事件響應(yīng)函數(shù)的形式實現(xiàn)。在實現(xiàn)系統(tǒng)各功能的時候,基本上是采用由相應(yīng)的控件和相應(yīng)的事件處理函數(shù)完成,即發(fā)生一個事件,執(zhí)行一個相應(yīng)的函數(shù)。
本節(jié)給出在VC++ 6.0中GPS定時校頻接收機模擬軟件界面主要功能的實現(xiàn)。
2.1開關(guān)功能的實現(xiàn)
用全局變量kg控制開關(guān)開啟和關(guān)閉,按下開關(guān)執(zhí)行單擊響應(yīng)函數(shù)BN_CLICKED,執(zhí)行kg++,初始化各變量,調(diào)用定時器SetTimer()在其響應(yīng)函數(shù)OnTimer()中判斷kg是奇數(shù)還是偶數(shù),若為奇數(shù)則表示開關(guān)在開的狀態(tài),用PictureBox控件的關(guān)聯(lián)變量m_pic1調(diào)用SetBit?map函數(shù)為開關(guān)調(diào)用開時的圖片,用變量控制其他控件功能可以正常使用,若kg為偶數(shù)則表示開關(guān)在關(guān)的狀態(tài),用PictureBox控件的關(guān)聯(lián)變量m_pic1調(diào)用SetBitmap函數(shù)為開關(guān)調(diào)用關(guān)時的圖片,用變量控制其他控件功能不可以使用,其流程圖如圖1所示。
2.2.1PPS指示燈閃爍的實現(xiàn)
在開關(guān)處于關(guān)狀態(tài)時,調(diào)用定時器SetTimer()在其響應(yīng)函數(shù)OnTimer()中用PictureBox控件的關(guān)聯(lián)變量m_pic調(diào)用SetBitmap函數(shù)為指示燈調(diào)用暗色的圖片表示指示燈滅。當(dāng)開關(guān)處于關(guān)狀態(tài)時,在OnTimer()函數(shù)中用變量a控制時間,在PLEASE WAIT字樣消失前調(diào)用自定義函數(shù)pic()讓PictureBox控件的關(guān)聯(lián)變量m_pic1調(diào)用SetBitmap函數(shù)為指示燈調(diào)用亮色的圖片表示指示燈亮,在PLEASE WAIT字樣消失后用變量a控制閃爍時間,實現(xiàn)指示燈閃爍,其流程圖如圖2所示。
圖1 開關(guān)按鈕設(shè)計流程圖
圖2 1PPS設(shè)計流程圖
2.3LCD顯示屏的實現(xiàn)
在Label控件屬性頁中設(shè)置其BackColor參數(shù)和BackStyle參數(shù)使其滿足LCD顯示屏的顏色要求,設(shè)置Font參數(shù)使其滿足顯示字體的要求,設(shè)置BorderStyle參數(shù)使其滿足樣式的要求。用SetDlgItemText()語句實現(xiàn)文本顯示,使其完成LCD顯示屏的功能。
2.4主要功能鍵的實現(xiàn)
開關(guān)開狀態(tài)下,在各按鈕的單擊響應(yīng)函數(shù)BN_CLICKED中主要功能鍵的實現(xiàn)為:
(1)UT/BT鍵。用變量b控制按鍵第幾次按下,依次在LCD顯示屏顯示相應(yīng)的時間。其實現(xiàn)流程圖如圖3所示。
圖3 UT/BT鍵流程圖
以下是實現(xiàn)“UT/BT鍵”功能的程序片段:
(2)時間/頻差鍵。用變量b5控制其顯示,d1,d2,d3,d4用于控制顯示校頻時間處于哪一檔時的時間頻差信息,在定時器SetTimer()中調(diào)用各函數(shù)完成顯示。其流程圖如圖4所示。
圖4 時間頻差鍵流程圖
以下是實現(xiàn)“時間頻差鍵”功能的程序片段:
以下是部分運行結(jié)果:按下顯示/翻頁鍵,LCD顯示屏顯示內(nèi)容變?yōu)榻?jīng)度信息,格式為P1:A 120°13.548’E如圖5所示,其中A代表有效/無效,120°13.548’E代表東/西經(jīng)度。與對實物的操作對比可以看出,軟件運行時的文字、開關(guān)按鈕、LCD顯示屏顯示、1PPS指示燈、各功能鍵按鈕的位置與工作狀態(tài)均一致,整個界面和功能一致。
圖5 顯示/翻頁鍵運行時的結(jié)果圖
GPS模擬軟件運行結(jié)果顯示,所有GPS模擬定時校頻接收機軟件前面板模擬結(jié)果都與被模擬界面的畫面及功能一致,完成了GPS模擬接收機軟件模擬。
本文介紹了用于教學(xué)的GPS接收機模擬軟件開發(fā)。軟件采用VC++編程方法實現(xiàn),每一個功能都由相應(yīng)的控件和相應(yīng)的事件處理函數(shù)完成,文中給出在VC++ 6.0中GPS定時校頻接收機界面的搭建、各功能的實現(xiàn)以及一些技巧說明。軟件運行結(jié)果表明,所有的人機界面和操作與實物一致,完成了某型GPS接收機的模擬。文中的軟件開發(fā)方法可為其他教學(xué)模擬軟件的開發(fā)提供參考。
參考文獻
[1]KAPLAN E D,HEGARTY C J. Understanding GPS:Princi?ples and applications [M]. 2nd ed. Norwood:Artech House Inc.,2006.
[2]崔明,吳志勇.一種利用GPS馴服壓控晶體振蕩器的方法[J].儀器儀表學(xué)報,2011,32(6):386?389.
[3]顧清華,馮治東,井石滾,等.基于3PGS和GPS的露天礦出入車輛運輸智能管控系統(tǒng)[J].計算機應(yīng)用與軟件,2015,32(6):72?75.
[4]惠曉威,劉彥每.基于GPS/GPRS的物流車載終端系統(tǒng)設(shè)計[J].計算機應(yīng)用與軟件,2015,32(6):80?82.
[5]黨學(xué)會,郭炳輝,呂健.基于GPS的華北地區(qū)地殼水平形變特征研究[J].華北地震科學(xué),2015,33(1):20?24.
[6]孫兆祥,劉軍,胡浩.基于GPS和GPRS的車輛監(jiān)控終端系統(tǒng)的設(shè)計[J].湖北工程學(xué)院學(xué)報,2015(3):32?35.
[7]李宗義.基于油耗的公交車綠色車速引導(dǎo)策略[J].交通科學(xué)與工程,2015,31(2):68?74.
[8]施建平,樓楠.日本全球定位系統(tǒng)永久性跟蹤站網(wǎng)的現(xiàn)代化[J].全球定位系統(tǒng),2015,40(3):86?93.
[9]LIU Jun,YANG Chao,WANG Cong. Perceptual system of the dangerous goods in transit escort based on WSN [C]// The 2010 4th International Conference on Intelligent Information Technology Application. Qinhuangdao,China:IEEE,2010:395?397.
[10]馬安鵬.Visual C++ 6程序設(shè)計導(dǎo)學(xué)[M].北京:清華大學(xué)出版社,2002.
作者簡歷:楊超(1964—),女,湖南桃源人,副教授,博士。研究方向為信息信號處理。
Analog software development of GPS receiver
YANG Chao1,YANG Yuan2,LIU Yunfei3
(1. Department of Electronics and information Engineering,NAAU,Yantai 264001,China;2. Unit 92407 of PLA,Huludao 125000,China;3. Qingdao Branch,NAAU,Qingdao 266041,China;)
Abstract:With the development of science and technology,GPS is widely used in more and more fields of science and en?gineering now,and the GPS teaching is also paid more attention. Analog software development of the GPS receiver applied to teaching is introduced in this paper. The software is not only contribute to teaching GPS receiver in class,but also to the prac?tice to get the equipment operation skill. The software is realized by VC++ programming method,and each function of GPS re?ceiver is realized in the form of event response function. System running results prove that the front panel analog result of GPS timing frequency?adjustment receiver software is same with the picture and function of the simulated interface. The method of software development can provide a reference for development of other teaching analog softwares.
Keywords:teaching software;VC++;GPS receiver;teaching analog software
中圖分類號:TN965+.5?34;TP311.11
文獻標(biāo)識碼:A
文章編號:1004?373X(2016)10?0100?04
doi:10.16652/j.issn.1004?373x.2016.10.026
收稿日期:2015?09?27
基金項目:國家自然科學(xué)基金資助項目(61201445)