侯新國,左文,黃海
?
基于STM32的船舶位置記錄儀設(shè)計(jì)
侯新國,左文,黃海
(海軍工程大學(xué)電氣工程學(xué)院,武漢 430073)
船舶位置數(shù)據(jù)記錄儀能夠?qū)崟r(shí)記錄靶船在航行過程中的位置、速度、方向等重要信息,是目前不可或缺的航海設(shè)備,本文以STM32F103 MCU(微處理器)為核心處理單元,設(shè)計(jì)了船舶位置記錄儀的系統(tǒng)外圍電路和嵌入式系統(tǒng)軟件,設(shè)計(jì)簡單,方案可行。
數(shù)據(jù)記錄儀 STM32F103 微處理器 嵌入式系統(tǒng)
隨著GPS(全球衛(wèi)星定位系統(tǒng))的廣泛使用,它已經(jīng)成為現(xiàn)代科技、軍事、民生組成的重要部分[1]。GPS靶船數(shù)據(jù)記錄儀是用來接收記錄靶船位置、速度、方向等其他信息的重要設(shè)備,主要包括硬件和軟件兩部分,硬件部分包括GPS接收模塊、微處理器、外圍接口等,軟件部分負(fù)責(zé)解析GPS數(shù)據(jù)信息,數(shù)據(jù)處理等,并最終將所需信息上傳到上位機(jī)軟件或者顯示終端[2-3]。
本文中GPS靶船記錄儀采用32位微處理器STM32F103作為主處理器用以接收、解析GPS模塊輸出的數(shù)據(jù)信息,并將數(shù)據(jù)信息存儲(chǔ)到接收機(jī)上的存儲(chǔ)器中,上位機(jī)可通過USB接口獲取GPS記錄儀中的存儲(chǔ)信息。
GPS靶船記錄儀以Cortex-M3內(nèi)核的STM32F103微處理器作為核心處理單元,它包括GPS模塊,存儲(chǔ)單元,串行接口,USB接口以及顯示單元。GPS模塊負(fù)責(zé)接收衛(wèi)星發(fā)出的導(dǎo)航電文,通過內(nèi)部電平轉(zhuǎn)換輸出導(dǎo)航信息以及PPS信號(hào),串行接口用以連接微處理器和GPS模塊,存儲(chǔ)單元用來存儲(chǔ)接收到的數(shù)據(jù)信息,并可通過USB接口與上位機(jī)通信,顯示單元用來顯示靶船所需的位置,方位,時(shí)間等信息[4]。其硬件結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)總體設(shè)計(jì)
依據(jù)GPS靶船記錄儀的功能需求和總體設(shè)計(jì),本文設(shè)計(jì)了靶船記錄儀的硬件電路[5-7]。
GPS模塊數(shù)據(jù)信息通過一個(gè)串行232接口與主處理器通信,將導(dǎo)航衛(wèi)星發(fā)出的導(dǎo)航信息傳遞給微處理器,主處理器再對(duì)所需信息做出選擇。
電源接口解決整個(gè)系統(tǒng)供電需求,包括主處理器,存儲(chǔ)器及其他外圍接口所需的供電需求。圖2所示其接口電路連接圖。
圖2 系統(tǒng)供電電路
本系統(tǒng)采用STM32F103微處理器作為核心處理單元,STM32系列微控制器是由ST意法半導(dǎo)體公司以ARM Cortex-M3為內(nèi)核開發(fā)生產(chǎn)的32位微控制器,專為高性能、低功耗的嵌入式應(yīng)用專門設(shè)計(jì),應(yīng)用于遠(yuǎn)程監(jiān)控、測試和測量設(shè)備、工業(yè)自動(dòng)化控制等領(lǐng)域[8]。
由于GPS靶船數(shù)據(jù)記錄儀是安裝在靶船上的重要設(shè)備,需要時(shí)刻記錄靶船所在位置,航向,時(shí)間等信息,所需存儲(chǔ)的數(shù)據(jù)量比較大,系統(tǒng)采用了一個(gè)1Gbit的NAND Flash作為外部存儲(chǔ)器。
為了使上位機(jī)軟件方便獲取記錄儀存儲(chǔ)的歷史數(shù)據(jù)信息,系統(tǒng)采用了USB接口,STM32F103微控制器支持USB2.0協(xié)議。圖3中,PA11和PA12引腳分別對(duì)應(yīng)USB接口引腳中的DM、DP通信線。本系統(tǒng)中,GPS記錄儀作為USB從設(shè)備,ST公司為STM32系列微控制器提供了完整的驅(qū)動(dòng)庫,對(duì)于開發(fā)者,僅需要對(duì)相應(yīng)接口庫和功能函數(shù)做調(diào)用即可實(shí)現(xiàn)數(shù)據(jù)交互[9]。
圖3 USB接口電路
本系統(tǒng)中串行接口包括RS232接口,RS232接口是連接GPS模塊與主處理器通信的橋梁,用以獲取導(dǎo)航衛(wèi)星的準(zhǔn)確信息,其硬件接口如圖4所示。
圖4 串行接口電路
JTAG接口是系統(tǒng)嵌入式軟件在線調(diào)試接口,STM32系列微控制器都帶有JTAG調(diào)試接口,其硬件連接如下圖5所示。
GPS數(shù)據(jù)解析是將GPS接收機(jī)收到的數(shù)據(jù)信息按照記錄儀所需求的信息進(jìn)行選擇性篩選,只選出所需的有用信息即可,GPS模塊的輸出信息滿足NEMA2.0格式,其數(shù)據(jù)信息如下所示[10]。
GPS輸出信號(hào)格式遵從NMEA-0183規(guī)定,其數(shù)據(jù)格式為:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh其中<1> UTC時(shí)間,<2> 定位狀態(tài),<3> 緯度,<4> 緯度半球,<5> 經(jīng)度,<6> 經(jīng)度半球,<7> 地面速率,<8> 地面航向,<9> UTC日期,<10> 磁偏角,<11> 磁偏角方向,<12> 模式指示。每個(gè)數(shù)據(jù)間以間隔符隔開,需要哪部分?jǐn)?shù)據(jù),根據(jù)分隔符位置提取即可。
圖5 JTAG調(diào)試接口
在本系統(tǒng)中,GPS靶船記錄儀作為USB從設(shè)備,支持上位機(jī)通過USB接口獲取存儲(chǔ)器上存儲(chǔ)的歷史信息。USB從設(shè)備作為USB通信的底層設(shè)備,ST公司提供了其完整的底層驅(qū)動(dòng)庫和USB標(biāo)準(zhǔn)協(xié)議。在用戶開發(fā)層面上,只需要對(duì)應(yīng)用層接口函數(shù)進(jìn)行相應(yīng)修改和調(diào)用即可,其軟件設(shè)計(jì)包括USB控制器的初始化、主機(jī)請(qǐng)求模塊、數(shù)據(jù)通信模塊以及中斷服務(wù)程序設(shè)計(jì)。
系統(tǒng)軟件結(jié)構(gòu)圖主要包括系統(tǒng)初始化,GPS數(shù)據(jù)提取與存儲(chǔ),USB數(shù)據(jù)上傳等,結(jié)構(gòu)流圖如圖6所示。
GPS靶船記錄儀用于記錄靶船方位、速度等重要信息,本文設(shè)計(jì)的GPS靶船記錄儀是一種集成度高,接口豐富的航海儀器設(shè)備,硬件結(jié)構(gòu)簡單,功能完備,從GPS信息解析接收、微處理器接口、USB數(shù)據(jù)協(xié)議開發(fā)以及終端顯示等方面都做了詳細(xì)介紹,能夠很好的滿足海上靶船方位,速度等信息的記錄和傳輸。
圖6 系統(tǒng)軟件結(jié)構(gòu)流程圖
[1] 李天文.GPS原理及應(yīng)用[M]. 第1版. 北京: 科學(xué)出版社, 2003.
[2] 童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].第3版.北京: 高等教育出版社, 2001.
[3] 李洪濤, 許國昌. GPS應(yīng)用程序設(shè)計(jì)[ M]. 北京: 科學(xué)出版社, 1999.
[4] 左文. 基于CAN總線同步數(shù)據(jù)采集方法研究[D]. 武漢: 海軍工程大學(xué), 2012.
[5] 白雪, 劉國海, 徐雷鈞等. 一種GPS接收板及其定位精度分析[J]. 計(jì)算機(jī)測量與控制, 2013, 11(12):1004-1006.
[6] 徐葉清, 朱樟明, 楊銀堂.GPS接收機(jī)相關(guān)器的電路設(shè)計(jì)[J].電子器件, 2013, 3(29): 722-724.
[7] 常霞, 馬建偉.基于STM32的列車空氣動(dòng)力學(xué)數(shù)據(jù)采集系統(tǒng)[J].儀器儀表技術(shù)與傳感器, 2011, 4(04):44-46.
[8] STMicro electronics, STM32F107x Reference manual[DB/OL], http://www.amobbs. Com /thread -4197396-1-1.pdf, 2010-09-10/2012- 06-02.
[9] 劉榮.圈圈教你玩USB[M].北京:北京航空航天大學(xué), 2009.
[10] 何香玲, 鄭剛.GPS通信的NEMA協(xié)議及定位數(shù)據(jù)的提取[J].計(jì)算機(jī)應(yīng)用及軟件, 2004, 13(12): 121~ 122.
STM32 MCU-Based Design of Ship Location Recorder
Hou Xingguo, Zuo Wen, Huang Hai
(College of Electronical Engineering, Naval University of Engineering, Wuhan 430033, China)
TP393
A
1003-4862(2014)12-0064-03
2014-05-14
侯新國(1972-),男,副教授。專業(yè)方向:電力系統(tǒng)故障診斷,信號(hào)處理等。