• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    半實物仿真平臺中GPS導航信息處理器的設計與實現(xiàn)

    2016-04-12 00:00:00孫云春朱黨鋒劉一棟劉張博孫玉柱
    現(xiàn)代電子技術 2016年15期

    摘 要: 基于半實物仿真平臺,對GPS信息處理器進行了軟硬件設計。將同軸高頻饋線收到的信號通過GPS模塊接收NMEA0183協(xié)議格式的信息源和用于精準對時的秒脈沖信號,利用基于嵌入式處理器AT89C52單片機的信號處理電路,提取導航信息,經(jīng)由通信串口將GPS信息源和相關信息傳送給系統(tǒng)主控器使用。通過單片機查詢信息幀中的狀態(tài)位,利用雙向開關芯片選通發(fā)光二極管用于指示工作狀態(tài)。從而將多種導航信息進行分析、提取并轉(zhuǎn)發(fā),保證了有效信息能實時可靠地進行接收和處理,避免過多占用主服務器處理時間,提高了信息利用的實時性及有效性。

    關鍵詞: 半實物仿真; 全球定位系統(tǒng); AT89C52; NMEA0183協(xié)議

    中圖分類號: TN967?34; TP368.1 文獻標識碼: A 文章編號: 1004?373X(2016)15?0171?05

    Abstract: On the basis of the semi?physical simulation platform, the hardware and software of GPS information processor were designed. The signal received by coaxial high frequency feeder is sent to the GPS modular to receive the information source with NMEA0183 protocol format and pulse per second signal used for accurate time synchronization. The signal processing circuit based on AT89C52 is used to extract the navigation information, and then send the GPS information source and relevant information to the system master through serial communication port for using. The status bit in information frame is queried with the single chip microcomputer, and then the bilateral switch chip is used to select the light emitting diode to indicate the working condition. The analysis, extraction and forwarding for a variety of navigation information can ensure the real?time and reliably receiving and processing of the effective information, avoid occupying the main server′s processing time, and improve the real?time performance and effectiveness of information utilization.

    Keywords: semi?physical simulation; GPS; AT89C52; NMEA0183 protocol

    0 引 言

    半實物仿真是將數(shù)學模型與物理模型或?qū)嵨锵嘟Y合進行試驗的過程。半實物仿真對系統(tǒng)中比較簡單的部分或?qū)ζ湟?guī)律比較清楚的部分建立數(shù)學模型,并在計算機上加以實現(xiàn);對比較復雜的部分或?qū)ζ湟?guī)律尚不清楚的部分直接采用物理模型或?qū)嵨?,這樣就避免了全數(shù)學仿真中由于非線性給建立的數(shù)學模型帶入的誤差,從而可以大大提高仿真的可信度[1]。本文涉及的GPS衛(wèi)星導航信息處理器即半實物仿真平臺中的非線性關鍵實物部件。

    1 GPS導航信息處理器的主要功能

    GPS(Global Position System,全球定位系統(tǒng))導航信息處理器是各類半實物仿真平臺中的重要組成部分,在導航制導與控制、飛行器設計等相關領域有廣泛應用。它通過接收GPS衛(wèi)星發(fā)射的信號,獲得必要的信息及觀測值,有效數(shù)據(jù)經(jīng)處理后完成信息提取任務并經(jīng)由相關接口將衛(wèi)星導航信息送至半實物仿真平臺主控器主機,以備各子系統(tǒng)調(diào)用,從而為相關功能平臺提供所需的導航信息。本文所述的衛(wèi)星導航信息處理器不局限于某個特定功能的半實物仿真系統(tǒng),它在各類涉及到GPS信息應用的半實物仿真平臺中具有通用性。GPS導航信息處理器在某個典型半實物仿真平臺拓撲結構中的關系,如圖1所示。

    2 GPS導航信息處理器的工作原理

    通過同軸高頻饋線收到的GPS信號,傳至GPS接收機,輸出波特率為4 800波特的導航定位信息。該導航信息以NMEA0183協(xié)議信息格式分兩路進入不同輸入端,其中一路經(jīng)驅(qū)動電路,利用MAX202芯片轉(zhuǎn)換為RS 232電平格式,通過串口傳送到系統(tǒng)主機;另外一路通過驅(qū)動電路接入AT89C52單片機的串口輸入端,利用匯編語言對輸入信息進行編程控制,且將程序?qū)懭階T89C52的可重復擦寫的閃速存儲器,將收到的導航信息按要求提取出年、月、日、小時、分鐘和秒等時間信息,存入單片機的固定存儲單元,把提取后的時間信息輸出。另外,單片機AT89C52查詢信息幀中的狀態(tài)位,選通發(fā)光二極管指示工作狀態(tài)。包括從GPS接收機過來的秒脈沖信號,經(jīng)過驅(qū)動電路提取用于精準對時。

    3 導航信息處理器的硬件設計

    GPS導航信息處理器采用現(xiàn)代的模塊化設計思想,其硬件結構主要由衛(wèi)星導航信息接收模塊和衛(wèi)星導航信息處理模塊兩大功能模塊組成。前者的功能由GPS接收機完成,后者的功能由基于AT89C52單片機的導航數(shù)據(jù)提取電路實現(xiàn)。GPS導航信息處理器的功能模塊組成框圖,如圖2所示。

    3.1 GPS接收機簡介

    本文采用GPS OEM板作為接收GPS衛(wèi)星信號的核心部件,除此之外,還包括外部電源和GPS天線。

    GPS OEM板的典型接口說明[2],如表1所示。本文主要利用GPS接收機中第12管腳輸出的NMEA0183協(xié)議格式的衛(wèi)星信號收集GPS導航信息處理器的最初信息源,為后續(xù)各電路板件的工作提供待處理的數(shù)據(jù)信號。第3管腳輸出的秒脈沖信號也被提取出來,作為用于精準對時的秒脈沖信號。

    3.2 基于Protel DXP的導航信息采集印刷電路板的制作[3?4]

    (1) 原理圖設計

    首先根據(jù)涉及的實際電路的復雜程度建立工作平面,然后從元器件庫中取出所需元件放到工作平面上,給它們編號、對其封裝進行定義和設定。利用Protel DXP提供的工具、指令進行布線,將工作平面上的元器件用具有電氣意義的導線、符號連接起來,對整個電路進行信號完整性分析,確保整個電路無誤。在此過程中應注意選用標準器件封裝,以減小引線阻抗和寄生電感。

    (2) 仿真

    仿真時首先通過Analyses setup對話框設置仿真方式并制定要顯示的數(shù)據(jù),包括直流工作點、直流掃描、交流小信號、瞬態(tài)過程、噪聲、傳輸函數(shù)、參數(shù)掃描等。設置好仿真環(huán)境后單擊OK按鈕。系統(tǒng)自動進行電路仿真并顯示分析結果。通過對仿真結果的分析,對電路進行合理調(diào)整。

    (3) 印刷電路板的設計

    定義電路板的物理尺寸,是單面還是雙面布線,各元件的封裝形式及安裝參數(shù),并對元件庫進行加載。系統(tǒng)在裝入網(wǎng)絡表的同時,將自動進行布線、布局,并把所有元器件放在電路板的邊框內(nèi)。自動布線后,人工調(diào)整進行修補。

    3.2.1 嵌入式微控制器AT89C52

    AT89C52是低電壓、高性能CMOS 8位單片機。AT89C52提供以下標準功能:8 KB FLASH閃速存儲器,256 B內(nèi)部RAM,32個I/O口線,3個16位定時/計數(shù)器,一個6向量兩級中斷結構,一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路[5]。

    整個嵌入式處理部分由單片機及其外圍電路組成,包括時鐘電路、復位電路、串口電平轉(zhuǎn)換電路等。在本系統(tǒng)的研發(fā)中,AT89C52采用12 MHz的晶體振蕩器。 T0工作于模式1,每隔50 ms產(chǎn)生中斷,調(diào)用看門狗子程序;T2工作于自動重裝載方式,串行口波特率為4 800 b/s。

    3.2.2 時鐘電路

    所有的單片機均為時序電路,需要一個穩(wěn)定的時鐘才能工作,AT89C52的時鐘可以由兩種方式產(chǎn)生:一種是內(nèi)部方式;另一種是外部時鐘方式。本系統(tǒng)設計使用內(nèi)部方式,利用單片機內(nèi)反相器和電阻組成振蕩電路:在XTAL1,XTAL2引腳上外接12 MHz晶振,它的時鐘周期是[112 ]μs,一個機器周期是1μs;電容選用33 pF, 這對時鐘頻率有微調(diào)作用。

    3.2.3 看門狗電路

    X25045芯片所具有的電壓監(jiān)控功能可以保護系統(tǒng)免受低電壓的影響,其看門狗對系統(tǒng)提供了保護。X25045芯片在本文的應用有效地保障了AT89C52單片機在受到干擾時仍能夠維持正常的工作狀態(tài)。當系統(tǒng)發(fā)生故障而超過設置時間時,電路中的看門狗將通過RESET信號向CPU 作出反應[6]。對X25045的操作是通過4根接口線CS,SCK,SI和SO進行同步串行通信完成的。

    3.2.4 串口電平轉(zhuǎn)換電路

    實際應用中,單片機系統(tǒng)使用TTL電平,串口輸出信號也是TTL電平。但是串行通信中一般使用RS 232通信協(xié)議,二者電平不相同,需外接接口進行電平匹配[7]。本文中采用的是芯片MAX202進行電平轉(zhuǎn)換,此片內(nèi)集成一個電荷泵和電壓變換器,電荷泵電路先將5 V提升到10 V,然后再用電壓反轉(zhuǎn)電路將10 V變成-10 V,這樣就可以得到RS 232所需的±10 V電壓[8]。

    3.2.5 反向器芯片的應用

    本文應用74HC4069六反向器芯片增加了GPS板驅(qū)動能力,將從GPS OEM板輸出的衛(wèi)星定位信息和秒脈沖信號接至反向器的輸入端,信號經(jīng)反向輸出后,電流加強,信號強度增大。

    3.2.6 雙向開關芯片的應用

    本文采用四雙向開關芯片控制邏輯雙向信號傳輸,選通發(fā)光二極管指示工作狀態(tài)。四個開關電路對應兩組LED兩種狀態(tài):第一組LED紅燈表示時間數(shù)據(jù)提取不成功,綠燈表示成功;第二組LED紅燈表示秒脈沖信號接收失敗,綠燈表示正常。

    3.3 提取衛(wèi)星導航信息中時間數(shù)據(jù)的電路實現(xiàn)

    導航信息經(jīng)反向器輸出后,提高了信號強度,把其接入AT89C52的串口輸入端,單片機收到串口中斷后,通過查詢比較取出時間信息并存入固定單元,收集到的時間信號再經(jīng)串口輸出端連接到下一級的電平轉(zhuǎn)換電路,把從單片機出來的時間信號通過MAX202芯片由TTL電平轉(zhuǎn)換為RS 232電平,經(jīng)由RS 232接口送至系統(tǒng)主控器,完成信號提取。

    3.4 導航信息提取電路的實現(xiàn)

    接至電平轉(zhuǎn)換芯片MAX202第一個輸入端的信號直接來自經(jīng)驅(qū)動加強后的GPS接收機NMEA0183信號輸出端,MAX202第二個輸入端的信號來自另一塊AT89C52單片機所提取的時間信號,且完成電平轉(zhuǎn)換后的兩路輸出信號分別接至不同的串口數(shù)據(jù)接收端。若采用兩個9芯D型插頭,除第5引腳GND(地)外,主要用到了它們的第2引腳RXD(數(shù)據(jù)接收)。兩路RS 232電平信號經(jīng)系統(tǒng)主控器串口傳輸,把信息提供給主控器作為原始數(shù)據(jù)源,為主控器軟件算法提供參數(shù)。

    3.5 秒脈沖信號提取電路的實現(xiàn)

    秒脈沖的輸出可以應用于高精度的時間測量。在GPS接收機接收到定位信息后,在相應的管腳上會產(chǎn)生秒脈沖信號。該信號將連續(xù)輸出直到電源關閉。無論當前的波特率是多少,GPS接收機傳輸?shù)男畔⒘⒖桃悦朊}沖作為時間參考基準,同時輸出NMEA0183協(xié)議的語句。只有當GPS接收機處于定位狀態(tài)時,秒脈沖的精度才能夠得到保障。提取秒脈沖信號的實際應用電路圖,如圖3所示。

    由圖3可見,由于GPS接收機的第3引腳可以直接輸出秒脈沖信號,可將該引腳輸出的信號經(jīng)74HC4069反向加強,接至MAX202的輸入信號端,經(jīng)電平轉(zhuǎn)換后,輸出秒脈沖信號,接到下一級電路供系統(tǒng)精確對時用。

    3.6 選通發(fā)光二極管電路的實現(xiàn)

    本文為了監(jiān)控導航定位信息收集的成功與否,采用四雙向開關芯片,對AT89C52端口P2的四條I/O引線進行置位控制,使其經(jīng)單片機查詢信息幀中的狀態(tài)位控制邏輯雙向信號的傳輸,選通發(fā)光二極管,指示工作狀態(tài)。

    4 導航信息處理器的軟件實現(xiàn)

    4.1 衛(wèi)星導航信息處理器的軟件任務流程

    針對系統(tǒng)任務,根據(jù)GPS接收機接口協(xié)議,利用匯編語言對AT89C52進行開發(fā),完成單片機初始化,包括設置定時器工作方式、串口工作方式及中斷方式。編寫串口中斷子程序,完成數(shù)據(jù)接收、有效位和標志位設置、時間信息提取和存儲等任務。

    4.2 對AT89C52關鍵模塊的應用與設置

    4.2.1 定時/計數(shù)器的應用與設置

    利用AT89C52定時器設置中斷響應時間,用到了定時器0和定時器2。定時器是可編程的,在任何一個定時器開始計數(shù)或定時之前,必須對其寫入相應的控制字[9]。

    4.2.2 串行通信及其接口的應用與設置

    單片機串口工作方式選擇的是串口方式1,這是標準異步通信方式。本文波特率設為4 800 b/s,單片機使用的晶振是12 MHz,由這兩個數(shù)值配置相應串口數(shù)據(jù)緩沖器和串行口控制寄存器SCON的值。SCON的格式如表2所示。

    本文置REN=1,表示串口處于允許接收狀態(tài),可啟動接收器RXD開始接收數(shù)據(jù)。串口工作于方式1,SM2=0,則RB8是接收到的停止位。TI為發(fā)送中斷標志位,在實際應用中,它的停止位開始發(fā)送時由硬件置位,由軟件復位。RI為接收中斷標志位,實際應用中,它在接收到停止位的中間時刻由硬件置位,也必須用軟件使其復位。對于能改變波特率的特殊功能寄存器PCON,在本文的實際應用中,對其各位置零,說明保持4 800 b/s的波特率不變。

    4.2.3 中斷的應用與設置

    本文的中斷用于響應計數(shù)器0及串口,其中,中斷請求分別由AT89C52的P3.2和P3.3 輸入;定時器T0,T1 的溢出中斷請求控制位為TF0,TF1;片內(nèi)串行口中斷請求控制位為TI或RI。這些中斷請求信號分別鎖存在寄存器TCON和SCON中。

    4.3 單片機主程序

    4.4 單片機串口中斷子程序

    串口中斷子程序流程為:清中斷標志,保護現(xiàn)場,從SBUF中接收一個字符,根據(jù)每個字符的意義判斷接收到的信息并存儲到對應單元。程序編寫的關鍵在于如何判斷接收的逗號字符的位置,采用寄存器的內(nèi)容代表接收到的第幾個逗號。

    4.4.1 NMEA0183協(xié)議

    NMEA0183協(xié)議是目前GPS接收機上使用最廣泛的協(xié)議,該格式輸出波特率默認為4 800 b/s。其信息格式為:$aaaaa,df1,df2,…,[CR][LF]。NMEA0183協(xié)議定義的語句非常多,本文涉及輸出語句中的GPRMC語句,即推薦最小數(shù)據(jù)量定位信息[10]。由于NMEA協(xié)議比較復雜,作為應用系統(tǒng),不必了解NMEA0183通信協(xié)議的全部信息,僅需要從中挑選出自己需要的那部分定位數(shù)據(jù),其余信息可以忽略。

    本文利用NMEA信號提取時間信息、設置GPS信號接收有效位、設置秒脈沖標志位的思路如下:

    (1) 執(zhí)行串口中斷程序,每響應一次串口中斷,中斷服務程序檢查緩存中收到的一個字符。GPRMC信息幀以$為開始的標志,當比對完$,G,P,R,M,C六個字符后,對緊接其后的“,”進行比對。

    (2) 確定收到第一個逗號時,準備接收下面的時、分、秒數(shù)據(jù),并對逗號進行計數(shù)。

    (3) 由于GPS電文中的時間是UTC時間,北京時間(東八時區(qū))=UTC+8(h),所以必須對直接收到的UTC時間中的小時信號進行“加8”處理。具體方法是:對進入寄存器的小時信號進行比較,當0≤hh≤15時,將hh+8,并把結果依次存入固定單元(36H,37H)中;當16≤hh≤23時,將hh依次設置為00,01,02,03,04,05,06,07,把結果存入固定單元。因為時差對分信號和秒信號無影響,所以對緊接其后的四個字符依次接收,存入固定單元(38H,39H,3AH,3BH)并送至串口。

    (4) 當收到的字符是“A”時,將對應的VALID_BIT位置1,此時LED綠燈亮,紅燈滅,表示GPS信息接收有效;當收到的字符是 “V”時,將對應的VALID_BIT位清0,此時LED紅燈亮,綠燈滅,表示GPS信息接收無效。

    (5) 對其后的字符繼續(xù)進行比對,每收到一個逗號就對其計數(shù),當收到第9個逗號時,就把緊隨其后的6個字符,即年、月、日的信息依次存入固定單元(30H~35H)并送至串口。

    (6) 當收到第10個逗號,即緊跟年、月、日信息后的逗號(ASCII碼值為2CH)時,將對應的PPS_FLAG位置1,表示有能提供精確對時的秒信號輸出。

    (7) 中斷返回,由串口輸出數(shù)據(jù),開啟系統(tǒng)中斷,秒脈沖標志位清零,從步驟(1)繼續(xù)循環(huán)執(zhí)行。

    4.4.3 系統(tǒng)軟件的抗干擾措施

    本文中采用的軟件抗干擾措施有以下兩點:

    (1) “看門狗”技術。本文采用了軟件“看門狗”技術,程序在設定的時間內(nèi)安排執(zhí)行一條清“看門狗”定時器的語句(CLR CS),若未被執(zhí)行系統(tǒng)將被強制復位,從而可以將“跑飛”的程序重新納入正常運行狀態(tài)中。

    5 結 語

    GPS導航信息是通過串口輸出的,要完整接收所有信息需要近1 s的時間。如果用系統(tǒng)主控器接收GPS信息并解碼,將占用主機許多時間,這對實時控制系統(tǒng)來說是不能容許的,采用單片機則容易解決GPS 接收與解碼問題。本系統(tǒng)不涉及復雜多變的數(shù)據(jù)處理過程,加之硬件電路盡量選擇典型電路,使用常規(guī)組件,需要完成的功能盡可能用軟件完成,且采用了軟硬件抗干擾技術,所以可靠性較高。在將來的應用中,可以根據(jù)實際需要從GPS信號中提取多種導航信息,此時只需簡單修改AT89C52中的程序而不需改變原有的電路就可以達到不同的目的,在系統(tǒng)的擴展和配置方面都留有余地。這為今后系統(tǒng)的完善提供了條件,在工程技術、軍事研究等領域的廣泛應用有值得借鑒和參考的意義。

    參考文獻

    [1] 賈連興.仿真技術與軟件[M].北京:國防工業(yè)出版社,2006.

    [2] GARMIN. GPS 25LP series technical specification [R]. USA: GARMIN Corporation, 2000.

    [3] 聶榮.實例解析PCB設計技巧:基于Protel DXP[M].北京:機械工業(yè)出版社,2006.

    [4] 袁照蘭,張清枝.基于Protel DXP的PCB板制作[J].電源技術應用,2006(9):53?55.

    [5] 佚名.at89C52 中文資料介紹[EB/OL].[2011?03?15].http://wenku.baidu.com/view/4b5124fc04a1b0717fd5ddc5.html?re=view.

    [6] 佚名.X5045看門狗電路及其應用[EB/OL].[2009?01?08].http://www.elecfans.com/emb/app/2009011322031.html.

    [7] 求是科技.單片機典型模塊設計實例導航[M].北京:人民郵電出版社,2002.

    [8] 何香玲,鄭鋼,范秋華.GPS定位信息的采集和顯示[J].自動化儀表,2007,28 (3):40?42.

    [9] 薛鈞義,張彥斌.MCS?51,96系列單片微型計算機及其應用[M].西安:西安交通大學出版社,1997.

    [10] 北京合眾思壯科技有限責任公司技術部.GARMIN GPS OEM產(chǎn)品說明書[EB/OL].[2010?11?08].http://www.docin.com/p?422194559.html.

    [11] 周德新,李宏肖,崔海青.一種改進的高精度組合導航濾波算法仿真[J].計算機仿真,2015,32(4):48?51.

    新乐市| 西青区| 类乌齐县| 琼结县| 琼海市| 凤城市| 丹寨县| 鸡东县| 溆浦县| 恩施市| 抚松县| 沈阳市| 读书| 淄博市| 孝义市| 宜州市| 鹤峰县| 宜阳县| 富锦市| 囊谦县| 蓝田县| 新晃| 台州市| 来安县| 韩城市| 全南县| 黎城县| 武宁县| 博爱县| 临沭县| 宣汉县| 贺州市| 繁峙县| 鄱阳县| 绩溪县| 若尔盖县| 孟连| 成安县| 泌阳县| 凤城市| 宜良县|