基于ADS7846動態(tài)簽名認(rèn)證的數(shù)據(jù)采集和預(yù)處理
摘要:在線動態(tài)簽名認(rèn)證越來截止多地運(yùn)用于各種領(lǐng)域,尤其適用于銀行金融系統(tǒng)以及個人身份識別等,而作為在線簽名認(rèn)證的基礎(chǔ)—筆跡的數(shù)據(jù)以及預(yù)處理,對后續(xù)認(rèn)證的準(zhǔn)確性尤為重要。本文著重介紹觸摸屏的工作原理以及如何利用AT89S51、觸摸屏和觸摸屏控制器ADS7846,實(shí)現(xiàn)對在線筆跡,包括壓力在內(nèi)的三維數(shù)據(jù)采集,并對采集的數(shù)據(jù)進(jìn)行預(yù)處理。
關(guān)鍵詞:AT89C51 觸摸屏控制器 ADS7846 動態(tài)簽名 數(shù)據(jù)采集 預(yù)處理
由于觸摸屏輸入方便、輕薄、便于攜帶等優(yōu)點(diǎn),越來越多的電子產(chǎn)品用觸摸屏作為人機(jī)界面的輸入設(shè)備。在動態(tài)簽名認(rèn)證中,亦采用觸摸屏作為輸入設(shè)備對筆跡進(jìn)行數(shù)據(jù)采集。本文主要從觸摸屏工作原理、ADS7846的工作方式以及單片機(jī)89S51對ADS7846的控制等方面,分析如何實(shí)現(xiàn)三維數(shù)據(jù)的采集。
系統(tǒng)主要由四線電阻式觸摸屏、觸摸屏控制器ADS7846、單片機(jī)89S51以及相應(yīng)軟件程序組成。系統(tǒng)框圖如圖1所示。
1 四線電阻式觸摸屏
電阻觸摸屏是采用電阻模擬量技術(shù)。它是一層玻璃作為基層,上面涂有一層透明氧化金屬(ITO氧化銦)導(dǎo)電層,再蓋有一層玻璃或是外表面硬化處理的光滑的塑料層;內(nèi)表面也涂有一層ITO導(dǎo)電層。它們之間有許多細(xì)小的透明隔離點(diǎn)把兩導(dǎo)電層隔開絕緣,每當(dāng)有筆或是手指按下時(shí),兩導(dǎo)電層就相互接觸。而形成電路,如圖2所示。
導(dǎo)電層的兩端都涂有一條銀膠,稱為該工作面的一對電極。上下兩個導(dǎo)電層一個是水平方向,一個是豎直方向,分別用來測量X和Y的坐標(biāo)位置。在水平面上的電極稱為X+電極和X-電極,在豎直平面的電極稱為Y+電極和Y-電極,如圖3所示。工作時(shí),兩個電極根據(jù)測量需要提供參考電壓或是作為測量端對接觸點(diǎn)的位置進(jìn)行測量。當(dāng)測量接觸點(diǎn)X坐標(biāo)的時(shí)候,導(dǎo)電層上的X+電極和X-電極分別上參考電壓和地;Y電極不加電壓,那么X電極間會形成均勻的電壓分布,用Y+電極作為測量點(diǎn),得到的電壓值通過A/D轉(zhuǎn)換,就可對應(yīng)地判斷出接觸點(diǎn)的X坐標(biāo)。Y坐標(biāo)亦是類似,只需改成對Y電極加電壓而X電極不加電壓即可。
X坐標(biāo)和Y坐標(biāo)的計(jì)算公式為
其中VREF為加在ADS7846內(nèi)部A/D轉(zhuǎn)換器上的參考電壓,可以接VCC作為參考電壓。
測量觸摸壓力的原理與ITO(氧化銦)材料的自身特性有關(guān)。ITO導(dǎo)電膜的電導(dǎo)率公式為ρ=ρ0(1+3λ0/d)(d為導(dǎo)電膜的厚度),即ITO電導(dǎo)率和ITO導(dǎo)電膜的厚度成反比。觸摸的壓力越大,接觸點(diǎn)的ITO導(dǎo)電膜就越薄,相應(yīng)的電導(dǎo)率就大、電阻越小。所以,觸摸壓力的測量實(shí)質(zhì)是測量接觸ITO導(dǎo)電膜的電阻值。
2 觸摸屏控制芯片ADS7846
ADS7846是Burn-Brown公司生產(chǎn)的專門用于四線電阻觸摸屏數(shù)模轉(zhuǎn)換芯片,內(nèi)部有一個多通道的模擬開關(guān)組成的測量電路網(wǎng)絡(luò)和12位的A/D轉(zhuǎn)換器。工作時(shí),ADS7846根據(jù)數(shù)據(jù)輸入口DIN收到不同的命令字打開相應(yīng)的開關(guān)通道,并接受返回的模擬電壓,通過A/D轉(zhuǎn)換得出對應(yīng)的數(shù)字量,再通過DOUT傳回單片機(jī)。
S是開始標(biāo)志位,只有S位為高時(shí)ADS7846才開始接收命令字。A0、A1、A2是通道選擇,根據(jù)測量的需要而改變,MODE選擇是8位還是12位的A/D轉(zhuǎn)換,根據(jù)實(shí)際要求在此選擇了12位的A/D轉(zhuǎn)換。SER/DFR是工作方式選擇位。ADS7846有兩種工作方式:一種是單端輸入,一種是差分輸入。在需要進(jìn)行壓力測量的時(shí)候,必須使用差分輸入的工作模式。PD1和PD0是用來控制內(nèi)部參考電壓和模數(shù)轉(zhuǎn)換器的開關(guān)。
3 單片機(jī)AT89S51與ADS7846的數(shù)據(jù)通信
(1) AT89S51
AT89S51是Atmel公司新推出的89C51的升級產(chǎn)品,全面兼容89C51。與89C51相比,新增加了以下幾個主要功能:①可以通過數(shù)據(jù)下載線進(jìn)行在線編程下載,使程序的寫入更加方便簡捷;②工作晶振可以達(dá)到33MHz,提高了運(yùn)行速度;③新增了看門狗電路,提高了電路的抗干擾性。
(2)AT89S51與ADS7846的通信
AT89S51與ADS7846的通信主要通過單片機(jī)的I/O口與ADS7846的CLK、CS、DOUT、DIN、BUSY五個引腳進(jìn)行。CLK是ADS7846的工作脈沖,CS是ADS7846的片選信號,DOUT是數(shù)據(jù)輸出,DIN是數(shù)據(jù)輸入,BUSY是轉(zhuǎn)換判斷位。當(dāng)系統(tǒng)工作時(shí),單片機(jī)首先通過片選信號選中ADS7846,再通過DIN向ADS7846發(fā)送命令控制字?jǐn)?shù)據(jù),并通過CLK引腳配以相應(yīng)的時(shí)序脈沖。BUSY位被置位后,通過DOUT數(shù)據(jù)輸出口獲取12位轉(zhuǎn)換結(jié)果。
由于要求系統(tǒng)能采集包括X坐標(biāo)、Y坐標(biāo)和壓力在內(nèi)的三維數(shù)據(jù),所以,先送打開測量X通道的命令字,返回得到的數(shù)字值即為X坐標(biāo),再送打開測量Y通道的命令字,得到的值為Y坐標(biāo)。再依次得到Z1、Z2的值,通過轉(zhuǎn)換公式
可計(jì)算出RTOUCH也就是壓力Z的值。其中Rx是X軸電阻值大小,與觸摸屏的性能參數(shù)有關(guān);是開始得到的X坐標(biāo)值。
程序流程如圖4所示。
值得一提的是,Z1、Z2仍然是轉(zhuǎn)換后的12位A/D轉(zhuǎn)換的數(shù)字值,但通過轉(zhuǎn)換公式得到的Z值實(shí)際上是接觸點(diǎn)間兩層ITO氧化膜的電阻值大小。這樣就完成了在某一個時(shí)刻的三維信息采集。根據(jù)實(shí)際要求,利用定時(shí)器設(shè)定采樣的時(shí)間為10ms,即1s采樣100個點(diǎn)。采集的數(shù)據(jù)通過USB接口送到PC機(jī)保存,以供后續(xù)匹配處理。同時(shí),采集的數(shù)據(jù)可以通過液晶屏顯示,以便書寫時(shí)觀察。
4 觸摸屏的初始化標(biāo)定
由于觸摸屏的一些邊緣部分是無效的觸摸區(qū)域,所以,實(shí)際轉(zhuǎn)換出來的X坐標(biāo)和Y坐標(biāo)并不是從0到4095的,因此要進(jìn)行初始化標(biāo)定,通過轉(zhuǎn)換公式使其在0到4095整個區(qū)間線性化。X坐標(biāo)值的轉(zhuǎn)換公式為X=(X-Xmin)
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
霍爾傳感器相關(guān)文章:霍爾傳感器原理
評論