基于嵌入式平臺的實(shí)名制檢票終端的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
基于嵌入式平臺的實(shí)名制檢票終端的設(shè)計(jì)與實(shí)現(xiàn)_第2頁
基于嵌入式平臺的實(shí)名制檢票終端的設(shè)計(jì)與實(shí)現(xiàn)_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于嵌入式平臺的實(shí)名制檢票終端的設(shè)計(jì)與實(shí)現(xiàn)

2012年1月,景觀票的全貌是實(shí)名的。當(dāng)游客到達(dá)車站時(shí),員工必須確認(rèn)帶有乘客信息和二維標(biāo)簽的火車票和乘客自己的身份。目前的查驗(yàn)設(shè)備主要由三部分組成:電腦、二維碼讀取設(shè)備和二代身份證信息讀取設(shè)備。至少需要配備2名工作人員、一臺小型電腦桌,一張電腦椅。旅客進(jìn)站檢票時(shí),通常需經(jīng)過如下流程:出示火車票和身份證給工作人員,工作人員分別在二維碼讀取設(shè)備上讀出車票的信息和在二代身份證讀取個(gè)人信息,兩者聯(lián)網(wǎng)比對無誤后確認(rèn)是否有效針對以上情況,本文提出了一種基于Android的實(shí)名制火車票檢票手持設(shè)備。通過對火車票二維碼以及二代身份證RFID信息的采集、顯示,同時(shí)通過WIFI網(wǎng)絡(luò)對實(shí)名火車票信息進(jìn)行驗(yàn)證來解決實(shí)名驗(yàn)票過程中遇到的各種問題。1系統(tǒng)的實(shí)現(xiàn)和應(yīng)用基于Android嵌入式平臺的火車票實(shí)名檢票系統(tǒng)主要由基于ARM11嵌入式微處理器、二維條碼掃描系統(tǒng)、RFID身份證識別系統(tǒng)和無線網(wǎng)絡(luò)系統(tǒng)WIFI組成。手持設(shè)備采用基于ARM11內(nèi)核的S3C6410嵌入式微處理器組成信息處理核心,二維碼條碼掃描模塊采用500萬像素自動(dòng)對焦CMOS攝像頭組成二維條碼采集系統(tǒng),RFID模塊主要完成身份證信息的提取。采用開源的Android操作系統(tǒng)作為嵌入式系統(tǒng)軟件平臺,主要為用戶提供友好的圖形界面以及驅(qū)動(dòng)底層的硬件設(shè)備。系統(tǒng)的總體框架如圖1所示。2系統(tǒng)硬件構(gòu)成基于Android嵌入式平臺的火車票實(shí)名檢票系統(tǒng)由嵌入式系統(tǒng)硬件和軟件構(gòu)成,其中系統(tǒng)硬件主要包括S3C6410微處理器、二維碼攝像頭掃描系統(tǒng)、RFID身份證掃描系統(tǒng)及外圍電路等。2.1整體電路組成通常手持設(shè)備要求移動(dòng)方便、外形美觀、低功耗、高性能、擴(kuò)展方便。為此,使用三星公司的S3C6410嵌入式微處理器,采用FPGA封裝,共424引腳。通過外接總線,通用I/O和各種專用模塊的擴(kuò)展,其功能強(qiáng)大。S3C6410外圍電路主要包括DDRRAM、Flash、串行接口模塊、LCD顯示模塊、WIFI收發(fā)模塊、攝像頭接口模塊、USBHost接口模塊等。硬件平臺的總體設(shè)計(jì)框架如圖2所示。2.2被動(dòng)通信接口目前二代身份證使用ISO14443TYPEB標(biāo)準(zhǔn)。為此,RFID識別系統(tǒng)作為二代身份證的信息采集設(shè)備,采用飛利浦MFRC522芯片來讀取二代身份證。MFRC522集成了13.56MHz頻率下所有類型的被動(dòng)非接觸式協(xié)議和通信方式,支持ISO14443兼容應(yīng)答器信號,數(shù)字信號部分處理錯(cuò)誤及檢測ISO14443幀。此外,芯片支持快速CRYPTO1加密算法,用于驗(yàn)證MIFARE系列卡片。MFRC522支持MIFARE更高速的非接觸式通信,雙向數(shù)據(jù)傳輸速率高達(dá)424kb/s。MFRC522與主機(jī)間通信采用連線較少的串行通信,且可根據(jù)不同的需求,選取串行UART、SPI或IIC模式之一進(jìn)行通信。在本系統(tǒng)中采用UART串行通信的模式與S3C6410嵌入式微處理器進(jìn)行通信,其構(gòu)成如圖3所示。2.3采集和解碼火車票實(shí)名檢票系統(tǒng)中,條碼掃描系統(tǒng)主要負(fù)責(zé)火車票票面的二維碼信息的采集和解碼。在本系統(tǒng)中,采用500萬像素自動(dòng)對焦的攝像頭對二維碼進(jìn)行拍照并識別其中的票面信息,相對于傳統(tǒng)的激光掃描器,攝像頭采集器件具備外圍連線簡單、價(jià)格便宜、功耗低等特點(diǎn),較適合于移動(dòng)設(shè)備中使用。3仍在android平臺上開發(fā)的軟件平臺在本系統(tǒng)中,選用Android2.3.7操作系統(tǒng)作為火車票實(shí)名檢票系統(tǒng)的軟件平臺。Andioid是Google開發(fā)的基于Linux平臺的開源手機(jī)操作系統(tǒng),后由開放手持設(shè)備聯(lián)盟開發(fā)。它采用了軟件堆層的架構(gòu),主要由底層系統(tǒng)、中間件和應(yīng)用程序三部分組成,是第一個(gè)為移動(dòng)終端打造的真正開放和完整的移動(dòng)操作系統(tǒng)3.1圖像采集和拍攝方法我國現(xiàn)行的火車票是將包含持票人身份信息以及售票信息的QRCode二維碼印制在火車票的右下角。在本系統(tǒng)中,采用500萬像素可自動(dòng)對焦的CMOS攝像頭采集火車票票面的二維碼信息。為此,在軟件設(shè)計(jì)中,需要設(shè)計(jì)攝像頭驅(qū)動(dòng)程序。Android底層使用的是Linux內(nèi)核,攝像頭系統(tǒng)部分在libui庫中定義本地代碼框架,對上層提供接口功能部件,由CameraServices實(shí)現(xiàn),CameraServices通過調(diào)用硬件抽象層下層的攝像頭來實(shí)現(xiàn)功能。Camera本地系統(tǒng)上層接口既可以通過本地程序調(diào)用,也可以使用JNI來構(gòu)建攝像頭應(yīng)用的Java框架。攝像頭接口驅(qū)動(dòng)的框架如圖5所示。在本系統(tǒng)中,采用攝像頭對QR二維碼進(jìn)行圖像數(shù)據(jù)采集。而采集到的QR二維碼圖像通常存在一定程度的污損,需要先適當(dāng)?shù)貙D像進(jìn)行處理,然后再對圖像進(jìn)行探測定位,最后進(jìn)行RS糾錯(cuò),輸出解碼結(jié)果。具體的步驟如下:(1)圖像灰度化。將攝像頭得到的彩色圖像轉(zhuǎn)為灰度圖像。(2)中值濾波。將得到的灰度圖像去除噪聲,保留圖像的原本特征。(3)二值化。采用積分圖的快速二值化算法。(4)邊緣檢測。采用Sobel算子對二值化的圖像進(jìn)行邊緣檢測。(5)圖像校正。在拍攝過程中通常存在一定程度的幾何失真,需要通過Hough變換對圖像進(jìn)行旋轉(zhuǎn),并采用雙線性插值法對旋轉(zhuǎn)后的圖像進(jìn)行修正。(6)QR碼識別。QR碼的識別特征是QR碼的探測圖形,根據(jù)探測圖形的三個(gè)頂點(diǎn)坐標(biāo)可以初步估算版本號以及確定模塊的寬度,然后尋找QR碼的定位圖像。當(dāng)發(fā)現(xiàn)有校正圖形時(shí),則利用校正圖形和定位圖形建立取樣網(wǎng)絡(luò),將QR碼圖像轉(zhuǎn)換為數(shù)據(jù)矩陣,“0”代表網(wǎng)格上顏色較淺的模塊,“1”代表網(wǎng)格上顏色較深的模塊。(7)提取版本和格式信息,并校驗(yàn)信息檢測是否有誤,如果有誤,則中止解碼。(8)提取掩模信息,將數(shù)據(jù)矩陣與掩模的圖形碼進(jìn)行相應(yīng)的“異或”操作。(9)RS糾錯(cuò)。如圖像中錯(cuò)誤量超過糾錯(cuò)能力,則中止解碼。(10)解碼結(jié)果輸出。條碼掃描解碼模塊的流程如圖6所示。3.2設(shè)備節(jié)點(diǎn)/dev/ttomv1的讀取在本系統(tǒng)中,二代身份證通過RS232串口與S3C6410嵌入式微處理器進(jìn)行通信。因此,需要在Android系統(tǒng)中加入串行口驅(qū)動(dòng)程序。本系統(tǒng)硬件抽象層中通過兩個(gè)線程對串口的設(shè)備節(jié)點(diǎn)/dev/ttymv1進(jìn)行讀和寫。JNI中的源碼通過init、download、upload3個(gè)硬件抽象層中的函數(shù)接口對串口進(jìn)行初始化、讀數(shù)據(jù)和寫數(shù)據(jù)。讀數(shù)據(jù)時(shí),在硬件抽象層中通過讀數(shù)據(jù)的線程從串行設(shè)備節(jié)點(diǎn)中將數(shù)據(jù)讀出后進(jìn)行CRC校驗(yàn)和解析,如果CRC校驗(yàn)正確,則把解析之后的數(shù)據(jù)通過JNI層傳到Java中進(jìn)行使用。寫數(shù)據(jù)時(shí),直接把Java傳過來的數(shù)據(jù)通過upload在硬件抽象層中加上CRC位及數(shù)據(jù)頭,然后在寫線程中寫入串行設(shè)備節(jié)點(diǎn)。串口通信流程如圖7所示。4系統(tǒng)操作容易實(shí)現(xiàn)認(rèn)證將代碼使用Eclips打包生成APK文件,可以方便地在終端設(shè)備中安裝運(yùn)行。圖8所示為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論