目前市場上的條碼數(shù)據(jù)采集終端(簡稱“手持條碼掃描儀”)大致分為兩種:
第一種,是基于AMR9處理器芯片的一系列專用數(shù)據(jù)采集終端,這種終端的特點是界面相對簡單(大部分是黑白屏,有部分彩屏),功能比較單一,僅能實現(xiàn)數(shù)據(jù)的的手機和存儲,有的能進行語音通話和發(fā)送短信,有的不具備移動通信功能。目前很多超市采用的就是這種終端。
第二種,是基于智能移動終端的數(shù)據(jù)采集終端,目前最常見的是硼NcE操作系統(tǒng)上。這種終端的特點是功能強大,不僅能實現(xiàn)數(shù)據(jù)的采集和存儲,還是對數(shù)據(jù)進行分析和統(tǒng)計,可以通過WIFI、藍牙、以及移動通信網(wǎng)絡(2.G/3G)和服務器進行實時交互。目前很多快遞公司采用的就是這種終端。
第一種方案價格低廉,但是功能簡單,只能進行簡單的數(shù)據(jù)錄入和查詢。第二種方案成本較高,而且WINCE現(xiàn)在不是主流的智能移動終端操作系統(tǒng),所不利于客戶的二次開發(fā)。
Android操作系統(tǒng)是一種以Linux為基礎的開放源碼操作系統(tǒng),2011年一季度,Android在全球的市場份額首次超過塞班系統(tǒng),躍居全球第一。2011年11月數(shù)據(jù),Android占據(jù)全球智能手機操作系統(tǒng)市場52.5%的份額,中國市場占有率為58%。
本項目準備研發(fā)的數(shù)據(jù)采集終端,是基于現(xiàn)在主流的android操作系統(tǒng),android操作系統(tǒng)以其開放的開發(fā)方式,吸引多家廠商參與其芯片的開發(fā),所以有效降低了整機成本,并可以給用戶提供更豐富的應用。這樣我們既可以有強大的功能,又可以達到相對低廉的價格。另外,android作為開放的系統(tǒng),也非常適合客戶做二次開發(fā)。
以往的數(shù)據(jù)采集終端因為受軟件條件的限制,無法實現(xiàn)強大的數(shù)據(jù)分析和處理功能,在本項目中,基于android強大的處理軟件處理能力,完成上層的數(shù)據(jù)分析軟件開發(fā),實現(xiàn)數(shù)據(jù)的分析、整理,數(shù)據(jù)類型的設計以及數(shù)據(jù)庫的讀寫。
1.智能終端軟件架構(圖1)
整個軟件主要分為三個部分:
1)kernel層:kernel層完成的主要工作是數(shù)據(jù)采集模塊的上電初始化、開關等驅(qū)動,初始數(shù)據(jù)的采集和轉發(fā);
圖1 是智能終端的軟件架構圖
2)硬件抽象層(HAL):完成對硬件的抽象,使上層可以無障礙的訪問底層硬件,在本文中主要用來轉換和轉發(fā)數(shù)據(jù);
3)JAVA層:接收硬件抽象層的數(shù)據(jù),并通過HTTP等協(xié)議和服務器交互數(shù)據(jù):
4)服務器側軟件,通過互聯(lián)網(wǎng)協(xié)議和智能終端通信,并維護數(shù)據(jù)庫。
2.關鍵部件說明
整個系統(tǒng)涉及到從底層的數(shù)據(jù)采集、解析、接收,以及上層獲取底層的數(shù)據(jù),對數(shù)據(jù)進行保存和分析,所以對系統(tǒng)的關鍵部件進行說明:
1)PXA910:Marvell PXA910芯片組是2009年由Maryell公司研發(fā)推出的,是一款面向WCDMA智能手機的芯片組,主頻600Mhz,支持WCDMA,WIFI,BT。
2)Symbol SE4500:提供了顛覆成像技術定義的全面功能組合。這款產(chǎn)品針對一維和二維條碼的絕佳性能與采集靜止圖像和視頻的能力相結合,能夠進行準確快捷的一維和二維碼掃描。
3.數(shù)據(jù)處理流程
本節(jié)對智能采集終端的數(shù)據(jù)采集流程做詳細的說明。
1)在底層kemel驅(qū)動獲取到用戶的掃描鍵按下后,會啟動SE4500掃描模組進行掃描,采集到8位灰度格式的數(shù)據(jù)。
2)采集到的8bit GREY數(shù)據(jù),通過PXA9lO的8bit數(shù)據(jù)口進入到PXA910中。
3)數(shù)據(jù)傳到PXA910的KERNEL層后。數(shù)據(jù)會保存在一塊連續(xù)的內(nèi)存地址中,這連續(xù)的一幀數(shù)據(jù)大小是752*480。
4)硬件抽象層(HAL)的previewThread線程會連續(xù)的去步驟3)所述的內(nèi)存地址取數(shù)據(jù),這個內(nèi)存地址會在上層做映射,以便于上層直接從這個地址讀取數(shù)據(jù)。
5)硬件抽象層取得數(shù)據(jù)后,對數(shù)據(jù)進行轉換,把8bit GREY數(shù)據(jù)轉換成YUV422Package類型的數(shù)據(jù),以便于上層進行preview和顯示。
6)JAVA層獲取到硬件抽象層的數(shù)據(jù)以后,會把數(shù)據(jù)送到解碼庫,庫的名字叫l(wèi)ibBarcodeReader.so在解碼庫中,軟件會對采集的8BIT圖像數(shù)據(jù)做模式識別處理,在模式識別的過程中,對有效的條碼進行解析,從圖形數(shù)據(jù)得到條碼數(shù)據(jù),條碼數(shù)據(jù)包括一維條碼和二維條碼。解析到有效的條碼數(shù)據(jù)后,libBarcodeReader.so會把條碼數(shù)據(jù)通過回調(diào)函數(shù)的方式發(fā)送到上層應用。
7)上層JAVA得到有效的條碼數(shù)據(jù)以后,把條碼發(fā)往顯示控件textview;蛘甙l(fā)往專業(yè)的APP應用。具體顯示在哪里,主要由各自的應用控制,需要顯示或者進一步處理的模塊會接收這個消息來進行顯示或處理。
手機側連接PC服務器數(shù)據(jù)庫,因為android端使用的是sqlite數(shù)據(jù)庫,PC側使用的是sq/server數(shù)據(jù)庫,兩者不能直接通訊,需要一個中間的webservice來傳遞數(shù)據(jù),android用http協(xié)議訪問webservice,然后讓webservice通過JDBC訪問sqlserver。
8)手機和PC服務器通過WIFI交換數(shù)據(jù)
手機側主要有兩個類,UiTest類完成UI界面的操作,HttpProtocol完成與服務器端的數(shù)據(jù)交互。重點的HttpProtocol類函數(shù)及說明如下:
public static String uplOAdFile (String UploadString,StringRequestURL)
用POST方法完成上傳數(shù)據(jù)和取得返回數(shù)據(jù)。RequestURL為webservice的網(wǎng)址,UploadString數(shù)據(jù)為手機側向webservice發(fā)送的數(shù)據(jù)流,主要是將要發(fā)的數(shù)據(jù)連接成一個長字符串,每個數(shù)據(jù)之間用兩個空格隔開(因為空格不在條碼的字符當中,用其他割怕有問題),用DataOutputStream類中的dos.writeUTF(UploadString);方法發(fā)送數(shù)據(jù),函數(shù)返回的字符串為網(wǎng)絡側的返回值,用DataInputStream類中的result=dis.readUTF():方法讀取。
9)服務器端代碼結構
讀取手機側傳來的數(shù)據(jù)。首先判斷數(shù)據(jù)庫里是否有此條碼記錄。如果有,返回已有數(shù)據(jù),如果沒有,則往數(shù)據(jù)庫里增加一個條目,并且將上傳結果返回到手機側。
4.結語
智能數(shù)據(jù)采集終端以其便攜、快捷和強大的數(shù)據(jù)處理能力,很好的適應了物流產(chǎn)業(yè)的發(fā)展,有效提高了物流倉儲行業(yè)的運行效率并降低了物流成本,在未來的一段時間內(nèi),智能數(shù)據(jù)終端必定能在物流領域發(fā)揮更大作用。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標題:智能數(shù)據(jù)采集終端的數(shù)據(jù)處理與分析軟件實現(xiàn)
本文網(wǎng)址:http://www.ezxoed.cn/html/support/11121512208.html