出租車GPS定位系統(tǒng)的設計
摘要:本文根據出租車公司對車輛定位功能的要求,以單片機MSP430F147為核心,集成GPS模塊、GPRS模塊,詳細論述了出租車GPS定位系統(tǒng)的設計,其中包括硬件方案和軟件方案的設計。該系統(tǒng)可以實時采集運行出租車車輛的實時位置信息,并且可以將采集到的信息通過GPRS模塊發(fā)送到出租車運營公司,為出租車公司對車輛的監(jiān)控調度提供了方便。
關鍵詞:單片機;GPS模塊;GPRS模塊
引言
隨著現(xiàn)代社會的快速發(fā)展,出租車作為城市公共交通的一部分,已經成為廣大市民出行必不可少的交通工具。但是隨之而來的出租車監(jiān)控調度、安全管理卻成了每個出租車公司的一大問題。如何簡單快捷的對出租車進行合理的調度管理,同時可以實時監(jiān)控每輛出租車的安全狀況,針對這一問題我們開發(fā)了出租車GPS定位系統(tǒng),此系統(tǒng)大大方便了出租車公司對出租車的調度管理,同時還可以實時監(jiān)控出租車的位置以及安全狀況。
出租車GPS定位系統(tǒng)的功能
出租車GPS定位系統(tǒng)是出租車監(jiān)控調度系統(tǒng)的一個組成部分,可以向出租車監(jiān)控調度中心提供出租車的實時位置信息,保證出租車運行安全,以便對出租車進行實時跟蹤,出租GPS定位系統(tǒng)的功能如下:
1)信息采集功能
GPS定位系統(tǒng)可以準確無誤的采集車輛的實時信息(如經度、維度、速度、方向等)。
2)數(shù)據存儲功能
可以存儲車輛ID號、停車前5分鐘的速度信息以及連續(xù)行車時間等信息。
3)數(shù)據傳輸功能
可以將采集到的出租車實時信息通過GPRS發(fā)送到監(jiān)控調度中心,便于監(jiān)控調度中心實時監(jiān)控出租車輛的位置以及安全狀況。
系統(tǒng)硬件設計
系統(tǒng)以單片機MSP430F147為核心控制器,集成GPS模塊、GPRS模塊、串行存儲器模塊和電源管理模塊。系統(tǒng)框圖見圖1。
圖1 系統(tǒng)框圖
Fig.1 System diagram
2.1 單片機單元
系統(tǒng)采用TI公司的MSP430F147單片機作為核心控制器[1],此款單片機具有16位的CPU集成寄存器和常數(shù)發(fā)生器,可使單片機實現(xiàn)最大化的代碼效率;集成JTAG,支持在線編程;兩個通用全雙工串行同步/異步通信接口;6個8位I/O口;外部中斷輸入接口。單片機串口0負責接收GPS模塊輸出的數(shù)據信息,分析并且提取接收到的有效信息數(shù)據,一方面對數(shù)據進行存儲,另一方面將信息通過GPRS模塊發(fā)送到出租車監(jiān)控調度中心。
2.2 GPS模塊
2.2.1 GPS概述
GPS(Global Positioning System)是美國研制的新一代衛(wèi)星導航定位系統(tǒng),可向全球用戶提供連續(xù)、實時、高精度的三維位置,三維速度和時間信息。它是目前世界上精度高的一種導航系統(tǒng),已被廣泛用于軍事、經濟、地理信息測控及其他領域。GPS定位系統(tǒng)由三個部分組成:GPS衛(wèi)星星座(空間部分)、地面監(jiān)控系統(tǒng)(地面控制部分)以及GPS信號接收機(用戶設備部分)。
2.2.2 GPS模塊介紹
GPS采用GS-87模塊[2],它是一個高效能、低功耗的智能型衛(wèi)星接收模塊或稱作衛(wèi)星接收引擎,它采用美國瑟孚SiRF star III公司所設計的第三代衛(wèi)星定位接收芯片,是一個完整的衛(wèi)星定位接收器具備全方位功能。其系統(tǒng)結構如圖2,GPS Antenna(GPS天線)接收衛(wèi)星信號,將微弱的電磁波能轉化為相應電流。電流經過LNA(低噪音放大器)被放大,在通過filter 濾波器將其變頻處理,送入SIRF StarIII(由GRF3W和GSP3組成)進行處理,將處理后的信號通過串口與單片機進行連接。用戶通過對單片機的軟件編程控制,將GPS接收到的信息進行處理,提取出對用戶有用的信息。
圖2 系統(tǒng)結構圖
Fig.2 System diagram
2.3 GPRS模塊
2.3.1 GPRS概述
GPRS(General Packet Radio Service)是通用無線分組業(yè)務的簡稱,是一種基于GSM(Global System for Mobile Communications)系統(tǒng)的無線分組交換技術,提供端到端的、廣域的無線IP連接;是GSM Phase2.1規(guī)范實現(xiàn)的內容之一,能提供比現(xiàn)有GSM網9.6kbit/s更高的數(shù)據率。GPRS采用與GSM相同的頻段、頻帶寬度、突發(fā)結構、無線調制標準、調頻規(guī)則以及相同的TDMA幀結構。因此,在GSM系統(tǒng)的基礎上構建GPRS系統(tǒng)時只需要增加部分硬件設備和軟件升級即可。構建GPRS系統(tǒng)的方法:1)GPRS是在現(xiàn)有的GSM網絡基礎上實現(xiàn)的,在GSM網絡中引入了3個主要組件:GPRS服務支持結點(SGSN,Serving GPRS Supporting Node)、GPRS網關支持結點(GGSN,Gateway GPRS Supporting Node)以及分組控制單元(PCU,Package Control Unit)。2)對GSM的相關部件進行軟件升級。
GPRS的數(shù)據傳輸具有以下幾個特點:
(1)采用的時分組交換技術的通信方式。(2)按數(shù)據流量計費,而不是按在線時長計費。(3)傳輸速率高。(4)永遠在線。(5)GPRS網絡接入速度快,提供了與現(xiàn)有數(shù)據網的無縫連接。(6)GPRS支持基于標準數(shù)據通信協(xié)議的應用,可以和IP網、X.25網互聯(lián)互通。(7)GPRS 的設計使得它既能支持間歇的爆發(fā)式數(shù)據傳輸,又能支持偶爾的大量數(shù)據的傳輸。
2.3.2 GPRS模塊介紹
GPRS模塊采用西門子公司的MC52i模塊[3],它是GPS定位系統(tǒng)與出租車公司監(jiān)控調度中心建立通信的重要部分。通過GPRS模塊一方面可以將GPS模塊采集到的車輛定位信息(如時間、經度、緯度、速度、方向等)實時發(fā)送到出租車監(jiān)控調度中心的服務器上;另一方面還可以接收來自出租車監(jiān)控調度中心的調度命令。實現(xiàn)GPS定位系統(tǒng)與監(jiān)控調度中心的雙向通信。
2.3.3 GPRS接口電路設計
MC52i模塊與MSP430F147通過串口以及信號控制引腳相連,電路連接圖如圖3所示。MC52i的26-30引腳為電源電壓的輸入端,輸入電壓范圍為3.3V~4.8V,峰值負載電流為2A。MC52i模塊的TXD0與RXD0分別為MC52i模塊的數(shù)據接收端口與數(shù)據輸出端口,分別連接到單片機串口(UART1)的TXD1與RXD1。MC52i的1-6引腳為外接SIM卡提供了標準的接口,其中CCGND和CCVCC為SIM卡提供工作電壓;CCCLK信號為SIM卡提供時鐘脈沖信號;CCIO為串行數(shù)據輸入輸出接口;CCRST信號為SIM卡復位信號;CCIN引腳主要用來檢測SIM卡是否插入SIM卡卡座中。
圖3 MC55連接原理圖
Fig.3 MC55Connection diagram
系統(tǒng)軟件設計
3.1 主程序功能
主程序負責初始化、開中斷、分析解析GPS數(shù)據、數(shù)據發(fā)送、指導系統(tǒng)進入各種相應的工作狀態(tài)。主程序流程圖見圖4a。
3.1 GPS數(shù)據接收程序設計
車載終端設備需要從GPS定位信息中提取出有效信息,所以也需要了解各種NMEA數(shù)據的含義。下面僅列出GPS最小數(shù)據輸出語句(GPRMC)輸出范例。輸出范例:$GPRMC,<1>,<2>,<3>,<4>, <5>,<6>,<7>,<8>,<9>, ,*70。<1>:格林尼治時間;<2>:信息狀態(tài),‘A’信息有效 ‘V’信息無效;<3>:緯度;<4>:北半球或南半球標志,北半球(N)或南半球(S);<5>:經度;<6>:東半球或西半球標志,東(E)半球或西(W)半球;<7>:對地速度;<8>:對地方向;<9>:日期。
當GPS模塊有數(shù)據輸出時,單片機進入串口中斷程序。程序首先判斷是否為數(shù)據頭標志即“$GPRMC”,若判斷到數(shù)據正確則程序進入數(shù)據接收模式,直到接收到“*”表示數(shù)據接收成功,否則退出中斷程序等待下次數(shù)據的到來。以下為部分中斷程序代碼。
While ((IFG1 & URXIFG0) == 1);
{ UART0_RX_BUF[num++]=RXBUF0;
if (UART0_RX_BUF[0]!='$') num=0;
if(num==5)
{ if (UART0_RX_BUF[2]!='P') num=0;
if (UART0_RX_BUF[3]!='R') num=0;
if (UART0_RX_BUF[4]!='M') num=0;
}
if (num==56)
{ for (i=56;i<73;i++)
{ if (UART0_RX_BUF[i]!='*') num=0;
else k=i; }
}
}
}
3.3 GPRS數(shù)據發(fā)送程序設計
出租車GPS定位系統(tǒng)可以將車輛的實時信息通過GPRS模塊發(fā)送到出租車監(jiān)控調度中心以便監(jiān)控調度中心掌握出租車運行狀況。單片機接收到GPS數(shù)據并且解析有效信息后,將需要發(fā)送到監(jiān)控調度中心的信息(經緯度、速度等)存儲到數(shù)據發(fā)送緩沖器內,以便數(shù)據發(fā)送時調用。本設計采用定時器中斷方式進行數(shù)據發(fā)送,發(fā)送時間間隔為5S,當定時器定時5S溢出進入中斷后,執(zhí)行數(shù)據發(fā)送程序,調用發(fā)送緩沖器內數(shù)據,通過GPRS模塊將數(shù)據發(fā)送到出租車監(jiān)控調度中心。數(shù)據發(fā)送程序流程圖如圖4b:
圖4 程序流程圖
Fig.4 Program Flow Diagram
結論
目前車載GPS定位系統(tǒng)已經應用到民用、軍用各個行業(yè)。在本文出租車GPS定位系統(tǒng)設計中其硬件以及軟件均采用模塊化設計,易于升級與維護。經過實際車載試驗,出租GPS定位系統(tǒng)性能穩(wěn)定,采集數(shù)據的精確程度以及發(fā)送數(shù)據的正確率都達到了預先設計要求。為出租車公司監(jiān)控調度提供了良好的運營平臺,該系統(tǒng)具有良好的推廣價值和應用前景。