基于CDMA的車載終端數(shù)據(jù)通信實(shí)現(xiàn)
數(shù)據(jù)傳輸?shù)能浖O(shè)計
終端與監(jiān)控中心以報文形式交互數(shù)據(jù),報文包括數(shù)據(jù)包(采集的數(shù)據(jù)信息)、心跳包(定時發(fā)送,以維持網(wǎng)絡(luò)連接)以及校時請求,以上均由終端主動發(fā)起,監(jiān)控中心回復(fù)。數(shù)據(jù)通信子程序的流程如圖3。
圖3 數(shù)據(jù)通信流程圖
根據(jù)流程圖可知,發(fā)送數(shù)據(jù)后等待監(jiān)控中心的回復(fù)消息,設(shè)置等待時間,若超時還無回復(fù)消息,則退出等待;下次發(fā)送數(shù)據(jù)時重新發(fā)送。
數(shù)據(jù)傳輸實(shí)例
終端發(fā)送的數(shù)據(jù)包如下:
01780102000146003030407 5345460008184101641000105 03010701221632303903.6741N1215 3.1326E27990357079425-70-66-632 004070031040828531405011144 1801194100068722100694210807 02200906902012
數(shù)據(jù)包中0178為報文長度;01為版本號;02為命令字;0001為數(shù)據(jù)包序列號;460030304075345為UIM卡號;460008184101641為SIM卡號;00010503為系統(tǒng)工作狀態(tài)字;01為后面跟1條數(shù)據(jù)(每條長度126)。
0701221632303903.6741N12153.13 26E27990357079425-70-66-63200407003104082853140501114 418011941000687221006942 1080702200906902012為一條數(shù)據(jù),依次為時間、經(jīng)緯度、C網(wǎng)質(zhì)量參數(shù)和G網(wǎng)質(zhì)量參數(shù)。
注意事項(xiàng)
拆包現(xiàn)象
模塊支持在TCP通道一次發(fā)送1024字節(jié)數(shù)據(jù),但模塊內(nèi)部發(fā)送緩沖區(qū)為536字節(jié),使用+ZIPSEND命令一次發(fā)送1024字節(jié)數(shù)據(jù)時,發(fā)送的1024 字節(jié)數(shù)據(jù)拆分為2條socket數(shù)據(jù)先后傳送給監(jiān)控中心服務(wù)器??赏ㄟ^降低一次發(fā)送的數(shù)據(jù)量來避免此現(xiàn)象,即一次傳輸不多于536字節(jié)。
連包現(xiàn)象
如果兩條+ZIPSEND指令時間間隔過小,或前一包數(shù)據(jù)還未發(fā)送成功時模塊收到新的數(shù)據(jù)發(fā)送命令,則模塊把兩條指令中的數(shù)據(jù)合并為一條socket數(shù)據(jù)發(fā)送。此時,可以從兩方面解決此問題:一是模塊發(fā)送端每發(fā)送一個數(shù)據(jù)包后,等待監(jiān)控中心返回確認(rèn)消息后再繼續(xù)其他工作,這樣只能最大限度地防止上述現(xiàn)象的發(fā)生;另一方面是在監(jiān)控中心接收端對上述現(xiàn)象進(jìn)行容錯處理。
此外,如果監(jiān)控中心發(fā)送兩條數(shù)據(jù)的時間間隔太短,模塊接收數(shù)據(jù)時會出現(xiàn)中心發(fā)送的兩條數(shù)據(jù)合并,以+ZIPRECV消息從串口返回,終端處理TCP數(shù)據(jù)時要考慮此問題。
異步消息的返回
模塊返回的異步消息主要為TCP通道返回的數(shù)據(jù)。該消息的返回格式在前文中已說明。由于異步消息返回時間的不確定性,該消息會以兩種方式從串口輸出。一是單獨(dú)返回。二是向模塊發(fā)送AT指令后,異步消息隨該指令的返回值一同返回,例如,當(dāng)發(fā)AT指令查詢撥號連接狀況時,模塊在TCP通道收到數(shù)據(jù),則返回如下:rn+ZPPPSTATUS:OPENEDrnrnOK rn+ZIPRECV:1,24,002401810 000070312120016rn。在接收和處理異步數(shù)據(jù)時應(yīng)充分考慮異步消息的這兩種返回情況,以免丟失數(shù)據(jù)。
結(jié)語
本文詳細(xì)論述了如何通過CDMA模塊MG815+的數(shù)據(jù)傳輸功能實(shí)現(xiàn)車載終端與監(jiān)控中心的通信,并給出了軟件設(shè)計流程。最后對實(shí)測過程中遇到的問題提出相應(yīng)解決方案,這對相關(guān)開發(fā)人員有很大的參考價值本文引用地址:http://butianyuan.cn/article/156868.htm
cdma相關(guān)文章:cdma原理
評論