2? 數據采集傳輸協議與AT命令
2. 1? GPS 數據采集及NMEA??0183 協議
GPS 模塊, GPS 信號接收機和設備軟件以及GPS 數據的后處理軟件包構成完整的GPS 模塊。車載終端GPS定位模塊選擇了RoyalTek 公司的REB??1315LPX, 根據NMEA-0183 協議完成GPS 定位信息的采集。
NMEA-0183 協議, NMEA 即Nat iONal Mar ine Electronics Associat ion, 是美國國際海洋電子協會的縮寫。
NMEA-0183 協議是該組織為海用電子設備制定的標準格式, NMEA??0183 協議語句采用ASCI I 碼, 串行通信默認參數為, 波特率4 800 bps, 8 位數據位, 1 位開始位, 1 位停止位, 無奇偶校驗位。其包含的語句種類有: GPGGA,GPGSA, GPGSV, GPRMC, GPV TG.系統采用GPRMC格式, 可以完成所需定位信息的采集。
2. 2? GPRS數據傳輸模塊及AT 命令
GPRS 數據傳輸模塊選擇SIMComWirelESS SolutionLtd 開發的一款緊湊型雙頻GSM/ GPRS 無線通信模塊SIM900A.工作頻率為GSM/ GPRS 900/ 1 800 MHz, 其在GPRS 無線網絡連接條件下, 可嵌入TCP/UDP 協議、FTP/ HTT P 等協議的數據通信, 數據下行速率最大可達到85. 6 kbps.
AT 指令集是從終端設備T E( terminal equipment) 或數據終端設備DTE( data terminal equipment) 向終端適配器TA( terminal adapter ) 或數據電路終端設備DCE( datacircuit terminal equipment) 發送的。通過T A, T E 發送AT 指令來控制移動臺MS(mobile st ation) 的功能。系統網絡傳輸中用到的AT 命令有如下幾種:
AT + CMGF= 1 設置消息內容為文本模式;
AT + CMGS = " 138xxxxxxxx"短消息發送目標號碼;
AT + CIPST ART = "T CP/U DP", "120. 192. 209.83", "8030"
TCP/ UDP 方式連接服務器, 服務器IP 為120. 192.209. 83, 端口為8030;
AT + CIPSEN D , 發送數據指令;
數據內容+ 0x0A , 輸入數據內容并以0x0A 為數據結尾;
AT + CIPCLOSE, 關閉連接;
AT + CIPSHUT, 關閉移動場景;
2. 3? 套接字Socket
socket, 用于描述IP 地址和端口, 是一個通信鏈的句柄。服務打開一個Socket, 并綁定到一個端口上, 不同的端口對應于不同的服務。一般Socket 有2 種: 流式Socket( SOCK _ STREAM ) 和數據報式Socket ( SOCK _DGRAM) .流式是一種面向連接的S ocket , 針對于面向連接的TCP 服務應用; 數據報式Socket 是無連接的Socket, 用于UDP 服務應用。
在車載終端和服務器程序中, 定義了不同協議格式的2 種Socket( SOCK_STREAM、SOCK_DGRAM) .Socket作為網絡節點, 通過T CP/U DP 協議完成數據發送接收。
3? 車載模塊與服務器通訊模塊軟件設計
軟件部分設計主要包括車載模塊通訊軟件和服務器軟件通訊模塊設計。
3. 1? 車載模塊通訊軟件設計
1) 車載終端處理器芯片
車載模塊的處理器選擇芯唐M0516 處理器, 車載終端內部通訊包括MCU 與GPS 模塊、GPRS 模塊、以及周邊模塊的數據傳輸。內部數據傳輸都通過串口完成。以下代碼為初始化串口中斷, 并使能收發中斷, 中斷服務函數:
Void init _ 1315 ( PFN _DRVU ART _CA LLBA CK GPS _
INT _HANDLE)
{
STR_U ART_T sParam;
UNLOCKREG( ) ;
SY SCLK??> PWRCON . XT L12M_EN= 1;
/ * 設置串口1 功能引腳* /
DrvGPIO_Init Funct ion( E_FUNC_UA RT 0) ;
/ * 串口通信設置* /
sParam. u32BaudRat e= 9 600;
sParam. u8cDataBits= DRV UART_DAT ABIT S_8;
sParam. u8cSt opBits= DRVU ART _ST OPBIT S_1;
sParam. u8cPar ity= DRVUART _PARIT Y_N ONE;
sParam. u8cRxTriggerLevel = DRVU ART _ FIFO _1BYTES;
while (DrvUART _ Open ( UART _ PORT 0,& sParam) ! = E_SUCCESS) ;
DrvU ART _EnableInt( U ART _PORT0, DRVU ART _RDAINT , GPS_IN T_HANDLE) ;
}
MCU 通過響應串口的中斷, 完成車載終端內部數據傳輸過程。
2) GPS 模塊接收數據
GPS 模塊采用REB??1315LPX 模塊, 其讀取定位信息流程如下圖2 所示。
?
圖2 REB-1315LPX 模塊數據的讀取方法
代碼較多, 具體實現函數不在此處詳述。
(3)GPRS 模塊的通訊程序
GPRS 模塊與處理器的通信是通過串口完成的, 處理器向GPRS 模塊發送AT 指令以及數據。GPRS 模塊連接網絡后利用TCP/U DP 協議與調度中心服務器進行無線通信。
評論