基于A(yíng)DS7846的在線(xiàn)動(dòng)態(tài)簽名認證的數據采集和預處理
由于觸摸屏輸入方便,輕薄便于攜帶等優(yōu)點(diǎn),現在越來(lái)越多的電子產(chǎn)品用觸摸屏作為人機界面的輸入設備。在動(dòng)態(tài)簽名認證中,亦采用觸摸屏作為輸入設備對筆跡進(jìn)行數據采集。本文主要從觸摸屏工作原理、ADS7846的工作方式以及單片機89S51對ADS7846的控制等方面來(lái)分析如何實(shí)現三維數據的采集。
系統主要由四線(xiàn)電阻式觸摸屏,觸摸屏控制器ADS7846,單片機89S51以及相應軟件程序組成。系統框圖如圖所示:
圖1. 系統電路框圖
一、四線(xiàn)電阻式觸摸屏
電阻觸摸屏是采用是使用電阻模擬量技術(shù)。它以一層玻璃作為基層,上面涂有一層透明氧化金屬(ITO氧化銦)導電層,上面在蓋有一層玻璃或是外表面硬化處理的光滑的塑料層,它的內表面也涂有一層ITO導電層,他們之間有許多細小的的透明隔離點(diǎn)把兩導電層隔開(kāi)絕緣,每當有筆或是手指按下時(shí),兩導電層就相互接觸,從而形成了回路。如圖2所示。
圖2.觸摸屏的觸摸示意圖
導電層的兩端都涂有一條銀膠,稱(chēng)為該工作面的一對電極,上下兩個(gè)導電層一個(gè)是水平方向,一個(gè)是豎直方向,分別用來(lái)測量X和Y的坐標位置,在水平面上的電極稱(chēng)為X+電極和X-電極,在豎直平面的電極稱(chēng)為Y+電極和Y-電極。如圖3所示,工作時(shí),兩個(gè)電極根據測量需要提供參考電壓或是作為測量端對接觸點(diǎn)的位置進(jìn)行測量,當測量接觸點(diǎn)X坐標的時(shí)候,導電層上的X+電極和X-電極分別接上參考電壓和地,Y電極不加電壓,那么X電極間會(huì )形成均勻的電壓分布,用Y+電極作為測量點(diǎn),得到的電壓值通過(guò)A/D轉換,就可對應的判斷出接觸點(diǎn)的X坐標。Y坐標亦是類(lèi)似,只需改成對Y電極加電壓而X電極不加電壓即可。
?
圖3.觸摸屏的內部結構示意圖
X坐標和Y坐標的計算公式為:
二、觸摸屏控制芯片ADS7846
ADS7846是BURN-BROWN公司生產(chǎn)的專(zhuān)門(mén)用于四線(xiàn)電阻觸摸屏數模轉換芯片。內部有一個(gè)多通道的模擬開(kāi)關(guān)組成的測量電路網(wǎng)絡(luò )和12位的A/D轉換器。工作時(shí),7846根據數據輸入口DIN收到不同的命令字打開(kāi)相應的開(kāi)關(guān)通道,并接受返回的模擬電壓,通過(guò)A/D轉換得出對應的數字量,再通過(guò)DOUT傳回單片機。表1是命令字每一位的具體含義。
表1 ADS7846的控制命令字
S是開(kāi)始標志位,只有S位為高時(shí)7846才開(kāi)始接收命令字,A0,A1,A2是通道選擇,根據測量的需要而改變,具體所對應的選擇見(jiàn)表2。MODE選擇是8位還是12位的A/D轉換,根據實(shí)際要求在此選擇了12位的A/D轉換, 是工作方式選擇位, 7846有兩種工作方式,一種是單端輸入,一種是差分輸入,在需要進(jìn)行壓力測量的時(shí)候,必須使用差分輸入的工作模式,PD1和PD0則是用來(lái)控制內部參考電壓和模數轉換器的開(kāi)關(guān)。
表2 差分模式下的測量通道選擇
三 單片機AT89S51以及與ADS7846的數據通信
1.AT89S51 AT89S51是ATMEL公司新推出的89C51的升級產(chǎn)品,全面兼容89C51,而且與89C51相比,新增加了以下幾個(gè)主要功能:1??梢酝ㄟ^(guò)數據下載線(xiàn)進(jìn)行在線(xiàn)編程下載,使程序的寫(xiě)入更加方便簡(jiǎn)潔2。工作晶振可以達到33M,提高了運行速度3。新增了看門(mén)狗電路,提高了電路的抗干擾性。
2.AT89S51與ADS7846的通信 AT89S51與ADS7846的通信主要通過(guò)單片機的I/O口與7846的CLK、CS、DOUT、DIN、BUSY五個(gè)管腳進(jìn)行,CLK是7846的工作脈沖,CS是7846的片選信號,DOUT是數據輸出,DIN是數據輸入,BUSY是轉換判斷位。當系統工作時(shí),單片機首先通過(guò)片選信號選中7846,再通過(guò)DIN向7846發(fā)送命令控制字數據,并通過(guò)CLK管腳配以相應的時(shí)序脈沖,當BUSY位被置位后就通過(guò)DOUT數據輸出口獲取12位轉換結果。
由于要求系統能采集包括X坐標、Y坐標和壓力在內的三維數據,所以,先送打開(kāi)測量X通道的命令字,返回得到的數字值即為X坐標,再送打開(kāi)測量Y通道的命令字,得到的值為Y坐標。再依次得到Z1,Z2的值,通過(guò)轉換公式
圖4 程序流程圖
在此值得一提是,Z1、Z2仍然是轉換后得12位的A/D轉換的數字值,但通過(guò)轉換公式得到的Z值實(shí)際上是接觸點(diǎn)間兩層ITO氧化膜的電阻值大小。這樣就完成了在某一個(gè)時(shí)刻的三維信息采集。根據實(shí)際要求,利用定時(shí)器設定采樣時(shí)間為10ms,既一秒種采樣100個(gè)點(diǎn)。采集的數據通過(guò)usb接口送到pc機保存,以供后續匹配處理。同時(shí),采集的數據可以通過(guò)液晶顯示屏顯示,以便我們書(shū)寫(xiě)時(shí)觀(guān)察。
五、數據的預處理
在數據采集的過(guò)程中,有許多因素影響數據的準確性,所以必須對數據做一些相應的預處理,以保證采集的數據的準確性。主要有以下幾種因素:
1.書(shū)寫(xiě)抖動(dòng)造成的漏點(diǎn)
在進(jìn)行數據采集時(shí)會(huì )在連續的數據中出現零值點(diǎn),出現零值點(diǎn)有兩種可能:一種是正常書(shū)寫(xiě)時(shí)筆劃的改變造成的,另一種就是由于觸摸屏不夠平整或是書(shū)寫(xiě)時(shí)的抖動(dòng)造成筆跡的間斷而造成的,區別的方法主要是看間斷時(shí)間也就是零值連續出現的個(gè)數,一般抖動(dòng)造成的間斷時(shí)間小于設定的采樣時(shí)間10ms,所以,抖動(dòng)產(chǎn)生的零值在兩個(gè)有效數據中間只能出現一個(gè),可以認為是無(wú)效零值,而出現兩個(gè)以上的連續零值便可以認為是筆劃的改變而生成的有效零值而不作處理,當判斷出某個(gè)零值為無(wú)效零值后,對其進(jìn)行線(xiàn)性?xún)炔鍋?lái)彌補數據的丟失,即
圖5 處理前的數據波形
圖6 處理后的數據波形
由于書(shū)寫(xiě)者書(shū)寫(xiě)時(shí)的停頓,造成在在某一點(diǎn)多次重復采集,顯然在后續的匹配中會(huì )與樣本數據產(chǎn)生很大的誤差,所以有必要刪除重復的數據,每當判斷出前后兩個(gè)點(diǎn)的X坐標和Y坐標均相同的時(shí)候,就可以斷定它們?yōu)橹貜忘c(diǎn),則將后一個(gè)點(diǎn)刪除,再用后續的點(diǎn)依次補上。這樣保證了采集的數據能夠真實(shí)的反映筆跡信息。
3.書(shū)寫(xiě)位置的校準
書(shū)寫(xiě)者每次書(shū)寫(xiě)時(shí)起筆的點(diǎn)不一定相同,這樣,每次書(shū)寫(xiě)采樣的結果都與樣本模板里的采樣值都有一個(gè)恒定的差別,因此有必要進(jìn)行書(shū)寫(xiě)位置的校準,處理的方法是把采集到的第一個(gè)數據的X坐標和Y坐標與樣本數據里第一個(gè)數據的X坐標和Y坐標作比較,公式分別
以上是對數據進(jìn)行預處理的幾種方法,預處理可以為后續筆跡的匹配提供提供更加準確的數據,并減輕匹配的運算量,因此預處理是筆跡匹配認證前的重要步驟,它的好壞將直接影響認證的精度。
參考文獻:
[1].BURR-BROWN INC. ADS7846 DATA SHEET,2003
[2]. 蔣 進(jìn). 梅海軍. 王 平 .數字簽名技術(shù)在手持式設備上的應用 .單片機與嵌入式系統應用, 2004年03期
[3]. 趙芝璞. 金小俊 .觸摸屏控制器ADS7846的原理及應用 .國外電子元器件, 2002年05期
[4]. 鄭戍華. 王向周. 南順成. 王渝 .電阻式觸摸屏在智能儀表中的應用 .儀表技術(shù)與傳感器, 2003年01期
評論