基于S3C2440處理器Linux平臺的物流配送系統(tǒng)設計
基于S3C2440的移動終端硬件設計如圖3所示。S3C2440模 塊(包括各種硬件接口及嵌入式Linux軟件等)負責對GPS信號的接收處理、視圖顯示及對數(shù)據(jù)的處理。從GPS模塊中獲取定位數(shù)據(jù),從RFID模塊與 CellID模塊獲得更詳細的定位信息作為補充,然后將位置信息通過GPRS發(fā)送給控制中心。實現(xiàn)終端和控制中心的信息上傳和下傳功能。
本文引用地址:http://m.butianyuan.cn/article/272364.htm圖3 基于S3C2440的移動終端硬件設計
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ù)進行處理,才能得到所需要的定位信息(比如經(jīng)緯度數(shù)據(jù)等)。利用籃牙進行串口通信的編程,包括打開串口、配置串口、發(fā)送接收數(shù)據(jù)、關閉串口4個步驟。
④ GPRS通信模塊。利用GPRS無線物流在S3C2440和控制中心之間進行雙向通信。本文采用Web Service的方式來進行。
2.4.2 GPS與RFID數(shù)據(jù)提取
GPS接收機只要處于工作狀態(tài),就會源源不斷地把接收并計算出的GPS導航定位信息通過串口傳送到計算機中。從串口接收數(shù)據(jù)后將其放置于緩存 內(nèi),在沒有進一步處理之前緩存中是一長串字節(jié)流,這些信息在沒有經(jīng)過分類提取之前是無法加以利用的。因此,必須通過程序?qū)⒏鱾€字段的信息從緩存字節(jié)流中提 取出來,將其轉(zhuǎn)化成有實際意義的、可供使用的定位信息數(shù)據(jù)。例如,“$GPRMC”幀結構的1、2、3、5、9段是我們需要得到的數(shù)據(jù),分別是時間、數(shù)據(jù) 的可信度、緯度、經(jīng)度、日期。從“$GPRMC”幀中獲取定位數(shù)據(jù)的代碼如下:
for(int i=0;i
if(Data[i]="$")//幀頭,SectionID為逗號計數(shù)器
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: //提取出經(jīng)度
m_PositionX+=Data[i];
break;
case9://提取出日期
m_Date+二Data[i];
break;
default:
break;
}
}
}
RFID模塊通過串口將信息傳輸至移動終端,信息傳輸流程如圖5所示。當接收緩沖區(qū)內(nèi)字節(jié)個數(shù)達到或者超過該值后就取出數(shù)據(jù)并對相應事件進行處 理。程序設計的主要任務是:讀出標簽ID信息(讀ID命令);向標簽寫入存放在數(shù)據(jù)庫中的數(shù)據(jù)信息(寫信息);讀取標簽中寫入的數(shù)據(jù)信息,查詢數(shù)據(jù)庫以得 到具體的產(chǎn)品信息(讀信息);實時顯示讀標簽信息的結果。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關文章:linux教程
藍牙技術相關文章:藍牙技術原理
評論