馮 菁,馬勝前,王科寧,范滿紅
FENG Jing,MA Sheng-qian,WANG Ke-ning,F(xiàn)AN Man-hong
(西北師范大學(xué) 物理與電子工程學(xué)院 電子信息工程系,蘭州 730070)
觸摸屏是一種廣泛應(yīng)用于工業(yè)控制領(lǐng)域的人機(jī)交互與控制設(shè)備,代替了大量繼電器、按鈕、指示燈等控制元件,大大縮減了控制設(shè)備的數(shù)量與體積,簡化了用戶操作,同時也提高了控制可靠性[2]。觸摸屏機(jī)械安裝之后由于LCD屏和觸摸傳感模塊之間產(chǎn)生的機(jī)械誤差會大大影響響應(yīng)精度,如果沒有合適的校準(zhǔn),會導(dǎo)致按下一個按鈕或者圖標(biāo)時,軟件無法實現(xiàn)相應(yīng)操作[3]。文章將詳細(xì)論述利用“三點法”消除機(jī)械安裝誤差的方法。
當(dāng)按下觸摸屏上某一點時,觸摸屏控制器會計算出這點的X和Y坐標(biāo)。這個過程的精度會受到很多因素的 影響,比如電信號干擾、比例因子和機(jī)械誤差等。電信號的干擾主要來自顯示屏和背光、人為干擾、觸摸表面振動、以及由環(huán)境和使用者引起的靜電泄露和電磁脈沖[5]。比例因子和機(jī)械誤差是由于觸摸屏和顯示器本身以及裝配所引起的,就是說觸摸屏控制器和顯示器的分辨率大多數(shù)情況下并不匹配,所以需要比例因子是這兩個坐標(biāo)能夠?qū)?yīng)起來。觸摸屏控制器的坐標(biāo)和LCD顯示屏的坐標(biāo)有如下關(guān)系:
X = kX×X’ Y = kY×Y’.
式中:X方向比例因子為:kX= SX/S'X,Y方向比例因子為:kY= SY/S'Y
SX為觸摸屏控制器X方向的分辨率,SY為觸摸屏控制器Y方向分辨率;
S'X為LCD顯示器X方向的分辨率,S'Y為LCD顯示器Y方向分辨率;
其中kX和kY是簡單線性的,因為顯示器和觸摸屏控制器的分辨率是規(guī)則排布的[4]。但實際情況則根據(jù)元件的不同各有差異。如圖1所示。
LCD和觸摸屏X軸的比例為1,即kX=SX/S'X=1;而Y方向的比例因子kY= SY/S'Y=3.6/4=0.9。所以圖1中示意的點P(X',Y')=(2,2.222)并不能通過分辨率來設(shè)定比例因子,需要通過校準(zhǔn)使得點(2,2)和(2,2.222)相互對應(yīng)。
圖1 分辨率誤差[5]
觸摸屏和顯示器安裝誤差包括移動誤差如圖2(a)所示和旋轉(zhuǎn)誤差如圖2(b)所示。圖(a)中標(biāo)示了LCD和觸摸屏在X和Y方向位置的變化量?X和?Y。圖(b)標(biāo)示了LCD和觸摸屏旋轉(zhuǎn)變化量?θ。假設(shè)點P在觸摸屏坐標(biāo)系中坐標(biāo)為(X’,Y’),但是在移動誤差產(chǎn)生之后P點坐標(biāo)則變成了(X’+?X,Y’+?Y),在旋轉(zhuǎn)誤差產(chǎn)生之后P點坐標(biāo)由(R×cosθ,R×sinθ)變成了(R×cos(θ-?θ),R×sin(θ-?θ)),其中R表示點P到原點C的距離。
校正觸摸屏其實就是將觸摸屏控制器所得到的坐標(biāo)能夠準(zhǔn)確的在LCD上顯示出點或者圖像。校正會得到一組比例因子,可以校正由于移動和偏轉(zhuǎn)引起的誤差。
圖2 機(jī)械安裝誤差[5]
設(shè)點P在顯示器上的坐標(biāo)為(X,Y),而在觸摸屏上的坐標(biāo)為(X’,Y’),為了計算圖(a)和圖(b)中移動誤差和旋轉(zhuǎn)誤差所產(chǎn)生的比例因子,X可以表示為:
同理,觸摸屏上Y坐標(biāo)可以表示為:
通過方程1和2可以看出,要計算出αX,αY,βX,βY,?X和?Y這些參數(shù),至少需要3個獨立的點,如圖3所示。假設(shè)三個獨立的點(X1,Y1),(X2,Y2),(X3,Y3)是在LCD屏上選取的,而另外三點(X'1,Y'1)(X'2,Y'2)(X'3,Y'3)是在觸摸屏上選取的,則可以利用方程1和2得到如下矩陣:
本次研究以觸摸屏為東芝256K色3.5英寸,分辨率為240×320的TFT真彩液晶屏為例,觸摸屏核心開發(fā)板包含12bit數(shù)據(jù)總線,即為4096×4096,則在LCD屏上任意測量3點為(80,160),(180,240),(180,80)。而在校正過程中采集得到觸摸屏上對應(yīng)的這三點坐標(biāo)為(678,2169),(2807,1327),(2629,3367),則根據(jù)以上原理可以得到:
X=0.0615×X'+0.0052×Y'+5.5421,Y=-0.0163 ×X'+0.1868×Y'-9.1269
在許多的應(yīng)用中通常選取5個點,根據(jù)以上方法將點數(shù)擴(kuò)至5點同樣可以得到校正因子。
圖3 計算點數(shù)選擇比較
本次研究創(chuàng)新點在于利用圖形詳述了利用“三點法”消除電阻式觸摸屏由于機(jī)械安裝而引起的觸摸響應(yīng)誤差,通過數(shù)學(xué)推導(dǎo),再加以實際設(shè)計例證計算得到了誤差校正系數(shù)。
[1]許榮斌,謝瑩,朱永紅.觸摸屏校準(zhǔn)常用算法分析[J].工業(yè)控制計算機(jī),2006,19(4):77-78.
[2]崔如春,譚海燕.電阻式觸摸屏的坐標(biāo)定位與筆畫處理技術(shù)[J].儀表技術(shù)與傳感器,2004,(8):49-50.
[3]胡晨峰.觸摸屏控制器ADS7846 在DragonBall 平臺上的應(yīng)用[J].電子器件,2003,26(3):314-316
[4]宋成,孫廣富.觸摸屏在S3C2410 上的應(yīng)用實例[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2005,(1):34-37,72.
[5]馮達(dá),吳星明.基于C8051F SPI 接口液晶觸摸屏的控制設(shè)計[J].微計算機(jī)信息,2005,21(7):56-57,135.