郭大路 劉如春 鄭明偉 王妮娜
摘 要:近年來,隨著我國經濟以及汽車行業(yè)的飛速發(fā)展,居民對汽車需求逐步增加。如何降低汽車駕駛執(zhí)照考試壓力,公正、公平、高效的完成駕考任務是迫切需要解決的問題。本文設計一種融合了射頻IC和指紋識別的新型駕考設備,主要應用于駕駛員考試,主要功能是確認考生身份和上傳并存儲考生成績,并且能夠有效避免在考試過程中出現替考現象和提高考試效率。
關鍵詞:駕駛員考試;手持終端;身份證;指紋采集;人機界面
1 總體設計思路
如今指紋識別已趨于成熟,許多電子商品增加了指紋識別的功能,比如筆記本電腦、手機指紋鎖、防盜門指紋鎖等,指紋識別正逐漸走入人們的日常生活。而我國最新的二代居民身份證內部嵌有13.56MHz非接觸IC卡,該芯片具有存儲容量大、較高的安全性等特點,并且采用特定的加密算法,進一步提升了信息的安全等級,增強了防偽功能,便于各用證部門使用計算機網絡核查。
本設計主要采用主控制器外擴六個模塊鍵盤電路選取5IO驅動20鍵;液晶模塊采用三線串行控制,可以有效優(yōu)化系統(tǒng)資源;語音模塊使用1線串行控制,可以任意播放220段語音;射頻卡讀卡模塊使用通用異步收發(fā)器0;指紋采集模塊選擇了通用異步收發(fā)器1;無線模塊選擇通用異步收發(fā)器2。
LM3S1138采用的是32位Cortex-M3v7M架構,數據和指令總線分開,解決了訪問瓶頸的問題,內部集成了64K單周期Flash和16K的SRAM。
2 功能模塊
2.1 鍵盤電路
鍵盤使用n個GPIO的情況下,接按鍵個數的計算公式num=n*(n-1)+n=n*n個,其中需要n個二極管n個上拉電阻。僅使用5個GPIO接20鍵,需5個二極管即可。采用輪詢的辦法,在PF0送1時,輪流檢測S1(PF4),S2(PF1),S3(PF2),S4(PF3),若有一口為高電平,進入30ms去抖,若該端口仍為高,則有鍵按下,直到該鍵松開,返回鍵值。
2.2 帶字庫液晶顯示器
CA12232K是一種內置ST7920控制驅動器的122*32圖形點陣液晶顯示器。本設計多為靜態(tài)顯示,采用了三線串行方式控制,接線簡單,調試方便。該控制器可以顯示中文字形,將16位元資料寫入DDRAM,范圍為A1A1H—F7FEH,即漢字內碼。
2.3 語音模塊
語音模塊采用WTW510-16,內部是采用WT588D+16Mflash存儲器。在6k采樣頻率下可以播放516秒,在1.8k采樣頻率下可以播放170秒,性價比較高。本設計需要隨機播放任意段錄音,采用一線串口控制最為合適,在具體應用時僅需要一根GPIO控制線,借助USB鏈接線將語音信息下載到FLASH存儲器內部。VCC必須在2.8V-3.5V之間,作為存儲器的電源。
2.4 身份證ID讀取模塊
身份證ID信息讀取,選用了雙龍電子開發(fā)的讀取模塊,該模塊可有效讀取二代身份證內的ID信息。使用UART與控制器通訊,固定波特率115200Bps,能夠滿足規(guī)定好的通訊協議就可以控制設備正常運行。信息讀取模塊和通訊控制器之間采用命令應答模式。正常狀態(tài)下模塊處在休眠,在接收到由上位機發(fā)出的指令后,轉換為執(zhí)行命令的工作狀態(tài)。模塊命令執(zhí)行完畢,準備好執(zhí)行結果送主控制器??刂破魅∽呙罱Y果后,模塊再次進入空閑狀態(tài)。
(1)控制器發(fā)送命令給模塊
數據結構:數據頭+長度+長度校驗+命令代碼+等待延時+【命令參數】+校驗和
HEAD+LENGTH+LEN CHK+COMMAND+WAITTIME+PARAMETER+CHECKSUM
(2)控制器接收命令執(zhí)行結果
數據結構:數據頭+長度+長度校驗+命令代碼+執(zhí)行狀態(tài)+【數據】+校驗和
HEAD+LENGTH+ LEN CHK +COMMAND+STATUS+[DATA]+ CHECKSUM
(3)數據校驗方式
采用帶進位的字節(jié)累加和取反的方法計算的方式來驗證數據是否準確。參加校驗和運算的數據是數據幀中除了“HEAD”,“LENGTH”,“LEN CHK”以外的所有數據。校驗和的初始值為“0”。
2.5 指紋采集模塊
MRB200指紋采集模塊采用異步串行接口進行通訊,具有極高的準確度。認假率(False Acceptance Rate)是百萬分之一,拒真率(False Rejection Rate)是萬分之一。
異步串行接口的技術參數為:19200bps(缺?。?、無效驗位、一個起始位、一個停止位。
(1)命令(CMD)基本格式:
第1字節(jié)為頭標識(HEAD),固定為0xFE;
第2字節(jié)為設備號(CH),一般為0x00;
第3字節(jié)為命令代碼(CODE),用來放命令代碼;
第4、5字節(jié)為參數代碼;
第6字節(jié)為輔助參數代碼;
第7字節(jié)為效驗和(CHK),用于存放第2字節(jié)至第6字節(jié)之異或值;
第8字節(jié)為尾標識(END) ,固定為0xFD;
(2)應答(ACK)一般為8個或以上字節(jié)組成,基本格式:
第1字節(jié)為頭標識(Head) ,固定為0xFE;
第2字節(jié)為設備號(CH),一般為0x00H;
第3字節(jié)為應答代碼(CODE),用來放應答代碼;
第4、5字節(jié)為參數代碼;
第6字節(jié)為應答參數代碼;
第7字節(jié)為效驗和(CHK),用于存放第2字節(jié)至第6字節(jié)之異或值;
第8字節(jié)為尾標識(END),固定為0xFD;
通過該模塊可完成考生指紋信息的錄入以及考試中采集對比核查工作。
2.6 無線模塊與上位機之間通訊
無線收發(fā)模塊采用SRWF-508,使用UART通訊,9600波特率,其有效信息傳輸距離可達兩公里以上。還可以通過設置跳線,選擇8個信道,相當于擴展了一個無限的串口。
3 軟件流程
主程序主要分三部分:設備信息輸入,考生身份驗證,成績上傳。
考試工作人員通過鍵盤將所需信息輸入設備找那個,程序設置標志寄存器。輸入信息包括:設備號(用于多機身份驗證)、是否使用指紋、考試的車型、考試具體項目。
確定考試工作人員身份時,設備需要得到考官的身份證信息(身份證ID或身份證號碼)。如果使用一代身份證,則需要手動輸入18位身份證號碼;使用二代身份證,只需刷一下身份證,聽到“滴”聲后,讀卡成功。得到身份證信息后,發(fā)送上位機驗證考官是否存在,如果存在,考試開始;不存在,則一直循環(huán)直到考官被確認。
考生身份驗證:首先將考生的身份證號或者考試準考證號與設備中的信息進行比對,確??忌哂锌荚囐Y格。之后對考生進行指紋錄入,并與設備指紋庫中信息進行比對,檢驗考生是否具有考試資格。兩項信息均核查比對無誤,考生方可進入考試環(huán)節(jié)。
成績上傳:在各項考試結束后,考試工作人員可將考生所得成績錄入設備,并由考生確認成績進行保存。便于后期成績核查。完成成績保存后,便可進入下一名考生考試環(huán)節(jié)。
4 結語
本方案主要用于駕駛員考試中的道路駕駛項目,也可以用于沒有聯網的場地考試項目。主要目的就是解決考試前的考生身份驗證和考生成績的上傳。本方案所使用的串行三線驅動液晶屏,鍵盤電路,一線串行控制語音播放,都是非常節(jié)約資源的方式并且便于用戶調試。程序調試主要工作量在通信協議調試和語音顯示的同步,需要通過延時進行語音和顯示的同步。經調試完畢,設備獲得了良好的人機界面,初次接觸該終端的考官也能應用自如,幾乎不需要參考使用說明書。綜上所述,本設計具有較高的實際應用價值。
參考文獻
[1]廣州雙龍電子.SL-13.56M SFID專用射頻模塊使用說明[Z].2016.
[2]廣州周立功單片機發(fā)展有限公司.Stellaris外設驅動庫用戶指南[Z].2018.