1 相關核心技術概述
1.1 移動定位技術
目前的移動定位技術已經非常成熟,,最主要的有3類:
① 利用衛(wèi)星進行后方交匯的定位技術,, 即GPS(Global Positioning System,,全球定位系統(tǒng)),是由美國建立的一個衛(wèi)星導航定位系,。利用該系統(tǒng),,用戶可以在全球范圍內實現(xiàn)全天候、連續(xù),、實時的三維導航定位和測速,;另外,還能夠進行高精度的時間傳遞和精密定位,。
② 利用移動通信技術提供位置服務的定位技術,,即CellID (Cell Identification,小區(qū)識別碼),,通過識別網絡中哪一個小區(qū)傳輸用戶呼叫,,并將該信息翻譯成緯度和經度來確定用戶位置,從而實現(xiàn)定位,。確保終端在GPS定位失去信號的情況下, 保持最低限度的定位信息的提供,。CellID方式在城市及人口密集區(qū)域能提供相對高的精度, 與GPS在城市高層建筑,、林蔭道,、地下隧道等遮蔽情況下性能降低形成較好的互補。由于GSM(Global System for Mobile Communications,,全球移動通信系統(tǒng))相對于CDMA具有更小的小區(qū)半徑, 因此具有相對較高的CellID定位精度,。
③ 利用射頻設備記錄位置的定位技術,即RFID(Radio Frequency Identification,,射頻識別),。通過讀取用于標識地理坐標的標簽數(shù)據(jù)來獲取定位信息。其定位精度僅取決于標簽存儲定位信息的精確性, 理論上可以達到任意高精度,。RFID可用于倉庫,、碼頭等需要高精度定位信息的場所,來提供定位信息和其他輔助功能。RFID現(xiàn)在廣泛用于公交報站系統(tǒng),,公交車上的設備檢測到站點的射頻設備后就自動報站,,免去了公交司機到人工開啟開關報站的麻煩。
本文在物流配送網絡中采用GPS輔助定位系統(tǒng)(GPS十CellID+RFID三者結合)的定位技術,以保證在任何時刻都能達到比較好的精度,。
1.2 移動終端通信技術
目前,,常用的移動終端技術主要包括藍牙技術、GPRS接入互聯(lián)網技術,、構筑在GPRS基礎上的無線數(shù)據(jù)傳輸技術等,。
藍牙技術是一種支持設備短距離通信(一般10 m內)的無線電技術。藍牙采用分散式網絡結構以及快跳頻和短包技術,,支持點對點及點對多點通信,,工作在全球通用的2.4 GHz ISM(即工業(yè),、科學、醫(yī)學)頻段,。其數(shù)據(jù)速率為1 Mbps,,采用時分雙工傳輸方案實現(xiàn)全雙工傳輸。
GPRS技術是一種新的GSM數(shù)據(jù)業(yè)務,,它可以給移動用戶提供無線分組數(shù)據(jù)接入服務,。GPRS主要是在移動用戶和遠端的數(shù)據(jù)網絡(如支持TCP/IP、X.25等網絡)之間提供一種連接,,從而給移動用戶提供高速無線IP和無線X.25業(yè)務,。GPRS采用分組交換技術,它可以讓多個用戶共享某些固定的信道資源,。
2 系統(tǒng)設計
2.1 物流配送系統(tǒng)模塊設計
物流配送系統(tǒng)物理結構設計如圖1所示,。
圖1 系統(tǒng)物理結構設計
2.2 物流配送控制中心的功能設計
控制中心由GPRS/GSM通信服務器、GIS服務器,、Web服務器,、地圖數(shù)據(jù)庫服務器、業(yè)務服務器組成,,通過路由器連接至Internet,。GPRS/GSM通信服務器處理與各個終端之間的一對多雙向數(shù)據(jù)通信;GIS服務器主要實現(xiàn)電子地圖的功能,并負責地圖數(shù)據(jù)的傳輸;Web服務器則是將電子地圖和各目標信息結合起來,,為控制用戶提供監(jiān)控界面;地圖數(shù)據(jù)庫和業(yè)務數(shù)據(jù)庫分別存儲電子地圖數(shù)據(jù)和監(jiān)控業(yè)務數(shù)據(jù),。
控制中心軟件部分主要包括10部分,結構圖如圖2所示,。
圖2 控制中心軟件結構圖
2.3 移動終端的硬件設計
移動終端可以實現(xiàn)個人用戶的實時信息查詢,,用戶可以通過GPS輔助定位系統(tǒng)獲得本機的位置描述,并通過GPRS網絡將本機的位置描述實時地傳送到物流配送控制中心,,實現(xiàn)控制中心對移動終端的監(jiān)控,,同時,也可以通過GPRS從控制中心平臺獲得查詢對象的所在位置描述,。這些操作均利用GPRS無線網絡以Web Service的方式實現(xiàn),。
基于S3C2440的移動終端硬件設計如圖3所示。S3C2440模塊(包括各種硬件接口及嵌入式Linux軟件等)負責對GPS信號的接收處理,、視圖顯示及對數(shù)據(jù)的處理,。從GPS模塊中獲取定位數(shù)據(jù),從RFID模塊與CellID模塊獲得更詳細的定位信息作為補充,,然后將位置信息通過GPRS發(fā)送給控制中心,。實現(xiàn)終端和控制中心的信息上傳和下傳功能。
RFID模塊主要負責對當前物流載體的數(shù)據(jù)采集,以獲得RFID定位信息,,并將采集到的RFID信息通過藍牙模塊傳輸給S3C2440,。GPS模塊根據(jù)衛(wèi)星定位獲得當前位置信息,同樣通過藍牙模塊進行傳輸(如距離比較近,,也可以有線傳輸),。CellID模塊主要通過無線數(shù)據(jù)傳輸獲得定位信息,然后通過GPRS模塊傳輸給中心控制器,。LCD模塊主要提供人機交互的功能,,除了顯示屏外還需配備鍵盤等輸入設備,或者直接采用液晶屏,。存儲器模塊除了擴展的片外RAM外,,還需給嵌入式數(shù)據(jù)庫提供一定的存儲空間。
2.4 軟件設計
2.4.1 軟件總體設計
如圖4所示,,按照功能可以將軟件分為以下4部分,。
圖4 軟件總體設計圖
① 用戶界面。要實現(xiàn)一個友好的用戶界面,,以便用戶在S3C2440 LCD屏上直觀地獲得圖文并茂的信息,,以及選擇服務功能和輸入信息。
② 地圖數(shù)據(jù)處理,。主要實現(xiàn)電子地圖的數(shù)據(jù)組織,、地圖顯示、地圖標圖功能,、定位導航功能,,便于用戶使用地理信息的服務功能,。終端處理的數(shù)據(jù)包括GPS數(shù)據(jù),、GIS數(shù)據(jù)、文本數(shù)據(jù),、多媒體數(shù)據(jù),。
③ GPS通信模塊。S3C2440模塊通過藍牙與GPS模塊相連接,,對接收到的GPS數(shù)據(jù)進行處理,,才能得到所需要的定位信息(比如經緯度數(shù)據(jù)等)。利用籃牙進行串口通信的編程,,包括打開串口,、配置串口、發(fā)送接收數(shù)據(jù),、關閉串口4個步驟,。
④ GPRS通信模塊。利用GPRS無線物流在S3C2440和控制中心之間進行雙向通信。本文采用Web Service的方式來進行,。
2.4.2 GPS與RFID數(shù)據(jù)提取
GPS接收機只要處于工作狀態(tài),,就會源源不斷地把接收并計算出的GPS導航定位信息通過串口傳送到計算機中。從串口接收數(shù)據(jù)后將其放置于緩存內,,在沒有進一步處理之前緩存中是一長串字節(jié)流,,這些信息在沒有經過分類提取之前是無法加以利用的。因此,,必須通過程序將各個字段的信息從緩存字節(jié)流中提取出來,,將其轉化成有實際意義的、可供使用的定位信息數(shù)據(jù),。例如,,“$GPRMC”幀結構的1、2,、3,、5、9段是我們需要得到的數(shù)據(jù),,分別是時間,、數(shù)據(jù)的可信度、緯度,、經度,、日期。從“$GPRMC”幀中獲取定位數(shù)據(jù)的代碼如下:
for(int i=0;i
SeetionID=0;
if(Data[i]==10)//幀尾
if(Data[i]=",,")//逗號計數(shù)
SectionIiD++;
else{
switch(SeotionID){
case1: //提取出時間
m_sTime+=Data[i];
break;
case2: //判斷數(shù)據(jù)是否可信(GPS天線至少接收到3顆GPS衛(wèi)星時為A,可信)
if(Data[i]=="A")
GPSParam[m_nNumberl].m_bVaIid=true;
break;
case3: //提取出緯度
m_sPositionY+=Data[i];
break;
case5: //提取出經度
m_PositionX+=Data[i];
break;
case9://提取出日期
m_Date+二Data[i];
break;
default:
break;
}
}
}
RFID模塊通過串口將信息傳輸至移動終端,,信息傳輸流程如圖5所示,。當接收緩沖區(qū)內字節(jié)個數(shù)達到或者超過該值后就取出數(shù)據(jù)并對相應事件進行處理。程序設計的主要任務是:讀出標簽ID信息(讀ID命令),;向標簽寫入存放在數(shù)據(jù)庫中的數(shù)據(jù)信息(寫信息),;讀取標簽中寫入的數(shù)據(jù)信息,查詢數(shù)據(jù)庫以得到具體的產品信息(讀信息),;實時顯示讀標簽信息的結果,。
圖5 RFID模塊至移動終端的信息傳輸流程
讀ID代碼:
void CMyDlg::OnBtn_ReadID() {
SendData("Read");
if(0==m_ctrlComm.GetOutBufferCount())
m_ctrlComm.SetRTHreshold(18): //讀取標簽ID所設的閾值
}
讀信息代碼:
void CMyDlg::OnBtn_ReadMessage(){
SendData ("ReadString(18,67)int(86,4),int(90,4)"),;
if(0==m_ctrlComm.GetOutBufferCount())
m_ctrlComm.SetRTHreshold(40): //讀取標簽ID所設的閾值
}
2.4.3 移動終端S3C2440模塊軟件設計
采用模塊化結構設計,,根據(jù)不同功能分別進行編寫和調試,等到各個模塊都調試成功后,,將各個模塊連成整體,,組成軟件系統(tǒng),。
移動終端S3C2440模塊完成的主要內容包括兩部分:
① 完成從移動終端到遠程控制中心的定位信息的上行傳輸。當遠程控制中心要從移動終端獲取定位信息時,,可以發(fā)送命令給S3C2440,。這時S3C2440便產生一個中斷,并發(fā)送命令給各定位模塊來獲取定位信息,,將定位信息進行處理后再通過GPRS模塊傳給遠程控制中心,;或者是移動終端由人員鍵盤控制產生中斷,然后采集定位信息傳送給遠程控制中心,。
② 接收控制中心到移動終端的下行傳輸?shù)男畔?。控制中心可以將各種數(shù)據(jù)傳送給終端設備,。比如,,控制中心通過GIS發(fā)現(xiàn)當前移動終端所選道路擁塞,則可以給移動終端發(fā)一條改變路線的建議信息,,這樣非常方便地實現(xiàn)了遠程控制中心與移動終端的交互,。
S3C2440上行至控制中心的軟件設計主要流程如圖6 所示。
圖6 S3C2440上行至控制中心的軟件流程
結語
本文以GPS定位數(shù)據(jù)為基礎,,GPRS網絡作為承載網絡,,結合物流業(yè)發(fā)展實際需要,將物流配送過程數(shù)字化與信息化,,實現(xiàn)了對物流配送系統(tǒng)的監(jiān)控與管理,。射頻識別技術、定位技術,、傳感器技術以及無線通信技術在未來必將深入到物流業(yè)的各個方面,。