精準(zhǔn)偵測(cè)觸碰動(dòng)作 觸控螢?zāi)淮蛟熘庇X(jué)操作介面
多點(diǎn)觸控螢?zāi)皇袌?chǎng)持續(xù)快速成長(zhǎng),Windows 7與iPad引發(fā)各界對(duì)大螢?zāi)坏呐d趣,但市場(chǎng)的主力仍集中在手機(jī)市場(chǎng),原因在于手機(jī)每年仍占極為可觀的出貨量。根據(jù)南韓市調(diào)機(jī)構(gòu)Displaybank的報(bào)告,搭載觸控螢?zāi)坏氖謾C(jī),其市占率將從2010年的20%成長(zhǎng)至2012年的30%,大多數(shù)的成長(zhǎng)動(dòng)力來(lái)自投射式電容(Projected Capacitive)觸控螢?zāi)?,這也是唯一能偵測(cè)多只手指(多點(diǎn)觸控)的常見(jiàn)觸控螢?zāi)活愋汀?
增進(jìn)手勢(shì)感測(cè)精準(zhǔn)判斷線性度測(cè)試為關(guān)鍵
當(dāng)你的手指靠近或接觸到觸控螢?zāi)粫r(shí),投射式電容觸控螢?zāi)粫?huì)偵測(cè)出電容的變化。變化的幅度通常不到1pF,然而系統(tǒng)中的其他電容值卻遠(yuǎn)大于此。適當(dāng)?shù)貍蓽y(cè)這項(xiàng)訊號(hào),然后轉(zhuǎn)換成手指的位置,是項(xiàng)相當(dāng)困難的工作。有幾項(xiàng)量測(cè)方法如精準(zhǔn)度、線性度、持續(xù)性、手指間隔、反應(yīng)時(shí)間、更新率、手指電容、系統(tǒng)雜訊底線、訊噪比(SNR)等,能協(xié)助研判系統(tǒng)是否運(yùn)作得宜。
精準(zhǔn)度定義為“在預(yù)先定義的觸控螢?zāi)粎^(qū)域內(nèi),最大的定位誤差,其值為手指實(shí)際位置與通報(bào)手指位置之間的直線距離”。舉例來(lái)說(shuō),若實(shí)際位置為(50,60),而通報(bào)的位置為(51,62),則該點(diǎn)的精準(zhǔn)度就是SQRT((51-50)2+(62-60))像素。之后再把這個(gè)值轉(zhuǎn)換成公厘,以在不同面板上有相同的量測(cè)單位。
要正確的測(cè)量出精準(zhǔn)度并非易事。這種測(cè)試通常是用正交座標(biāo)機(jī)械臂(Cartesian Robot)來(lái)進(jìn)行,這種機(jī)具外觀像是一部用模擬手指代替筆的X/Y軸平面繪圖機(jī)。手機(jī)必須置于已知的位置,之后手指必須移至面板上的某個(gè)精準(zhǔn)定位位置。若裝置本身的邊緣平坦而且沒(méi)有凸出的按鈕,則可將裝置置于機(jī)械手臂工作區(qū)的邊緣,讓手機(jī)和機(jī)械手臂之間能精準(zhǔn)對(duì)位。但若裝置本身有彎曲邊緣或凸出按鈕,則對(duì)位就可能不精確。從數(shù)學(xué)層面來(lái)說(shuō),移除對(duì)位誤差是可能的,但會(huì)引入不確定性:究竟誤差是來(lái)自置放位置不精準(zhǔn),或是真正的精準(zhǔn)度問(wèn)題(圖1)。
圖1 精準(zhǔn)度與線性度
Moto Design在2010年被思科(Cisco)購(gòu)并前曾發(fā)表一部影片,展示如何快速測(cè)試觸控螢?zāi)坏男?。其方法相?dāng)簡(jiǎn)單:在螢?zāi)簧袭嫸鄺l線,然后看線條是直線或波浪扭曲狀。畫對(duì)角線是因?yàn)?strong>電容式觸控感測(cè)器采用一組網(wǎng)狀排列的感測(cè)器,與X/Y軸向?qū)ξ?,因此畫?duì)角線對(duì)系統(tǒng)產(chǎn)生的考驗(yàn)壓力會(huì)高于垂直與水平線。這種測(cè)試法真正測(cè)試的是線性度。
線性度定義為“通報(bào)結(jié)果與所有通報(bào)結(jié)果回歸直線的差異”。但這個(gè)定義可能低估了使用者看到誤差的幅度。若通報(bào)的位置在某個(gè)方向上偏移0.25毫米(mm),則該點(diǎn)在反方向偏移了0.25毫米,線性度與精準(zhǔn)度的評(píng)分都得到這是一個(gè)0.25毫米的誤差。但當(dāng)使用者看螢?zāi)粫r(shí),他們看到的是位置偏移了0.5毫米,因此或許另一個(gè)專有名詞更適合用來(lái)描述這種誤差。
其中一種方式是把持續(xù)性定義為線條的“跳躍性”。持續(xù)性是量測(cè)位置的短距變化,其定義為“通報(bào)位置變化與實(shí)際位置變化之間的最大差距,沿著第一個(gè)通報(bào)位置與第二個(gè)通報(bào)位置之間的直線量測(cè)”。舉例來(lái)說(shuō),若第一點(diǎn)實(shí)際位置為(50,0),通報(bào)位置為(49,0),第二點(diǎn)實(shí)際位置為(100,0),通報(bào)位置為(101,0),則持續(xù)性誤差為(101-49)-(100-50)=2畫素。此值再轉(zhuǎn)換成距離值,以使在不同面板上有相同的量測(cè)單位。
在電容式觸控螢?zāi)坏纳芷趦?nèi),上述三種量測(cè)數(shù)值都會(huì)維持不變。這是投射式電容觸控螢?zāi)涣硪粋€(gè)勝過(guò)電阻式觸控螢?zāi)坏膬?yōu)點(diǎn)。電阻式觸控螢?zāi)坏脑S多屬性會(huì)隨時(shí)間和不同的環(huán)境條件而改變,正由于它們是一個(gè)單一大型感測(cè)器,因此任何誤差都會(huì)影響整個(gè)面板。
建構(gòu)靈活觸控系統(tǒng)手指間隔/反應(yīng)時(shí)間至關(guān)重要
在知道手指的位置后,還有另一項(xiàng)效能量測(cè)數(shù)值能用來(lái)改善使用者體驗(yàn)。其中之一就是手指間隔。手指間隔不佳的元件,當(dāng)兩只手指同時(shí)觸碰螢?zāi)粫r(shí),通常在鍵盤中間部分會(huì)出現(xiàn)通報(bào)錯(cuò)誤的狀況。要測(cè)試手指間隔,方法相當(dāng)直接,就是同時(shí)把兩只模擬的手指置于面板上,然后持續(xù)靠攏兩只手指,直到系統(tǒng)通報(bào)一只手指為止。若沒(méi)有良好的手指間隔機(jī)制,就不能建構(gòu)真正的多點(diǎn)觸控解決方案。
手指間隔定義為“當(dāng)兩只手指置于觸控螢?zāi)簧?,且觸控螢?zāi)?strong>控制器仍通報(bào)為兩只不同手指時(shí),兩者中心點(diǎn)之間的最小距離”。一些觸控螢?zāi)还?yīng)商標(biāo)示的手指間隔為邊緣與邊緣的距離,有些則是中心點(diǎn)之間的距離。以10毫米機(jī)械手指測(cè)得10毫米的手指間隔,可能意謂手指相互接觸,或兩只手指相距10毫米,實(shí)際情況端看觸控控制器的規(guī)格標(biāo)示方法而定。
反應(yīng)時(shí)間定義為“在觸控螢?zāi)簧习l(fā)生手指觸碰事件與觸控螢?zāi)豢刂破鳟a(chǎn)生岔斷訊號(hào)之間相隔的時(shí)間”。要測(cè)得這個(gè)時(shí)間,可用電子脈沖刺激觸控螢?zāi)唬宕四M手指或把模擬手指移到螢?zāi)簧?。反?yīng)時(shí)間較長(zhǎng)的系統(tǒng),在撥打號(hào)碼或輸入時(shí)會(huì)有遲緩的現(xiàn)象。較長(zhǎng)的反應(yīng)時(shí)間,會(huì)讓系統(tǒng)錯(cuò)失快速的輕擊觸碰,像是點(diǎn)擊(Tap)或雙點(diǎn)按手勢(shì)的其中一次觸碰。 觸控螢?zāi)坏姆磻?yīng)時(shí)間,是偵測(cè)與定位手指時(shí),所有掃描與處理時(shí)間的總和。觸控螢?zāi)豢刂破鲀?nèi)部的執(zhí)行步驟如下:
·X/Y軸掃描
觸控控制器掃描與量測(cè)感測(cè)器電容變化所需的時(shí)間。
·手指?jìng)蓽y(cè)
比較面板的電容變化以及預(yù)先定義的手指門檻。若變化超過(guò)手指的門檻,代表已偵測(cè)到手指。
·手指定位
解譯多個(gè)感測(cè)器結(jié)果,判斷手指的實(shí)際位置。
·手指追蹤
當(dāng)超過(guò)一個(gè)手指置于感測(cè)器時(shí),系統(tǒng)必須辨識(shí)出每個(gè)手指,并指派給一個(gè)獨(dú)一無(wú)二的識(shí)別代號(hào)。
觸控螢?zāi)坏姆磻?yīng)時(shí)間還要加入其他多個(gè)元素,才能評(píng)估最終使用者實(shí)際的整體系統(tǒng)反應(yīng)時(shí)間:
·岔斷延遲
主控端上岔斷指示與岔斷服務(wù)之間的延遲。在大多數(shù)系統(tǒng)中,延遲不到100微秒(μs),但在某些系統(tǒng)中,則可能高達(dá)10毫秒(ms)。
·通訊
一般系統(tǒng)采用400KHz的I2C或1MHz的串列周邊介面(SPI)來(lái)和主控端進(jìn)行通訊。
·觸碰處理
當(dāng)觸碰資料已傳入系統(tǒng)時(shí),系統(tǒng)必須做出反應(yīng)。
·使用者回饋
[!--empirenews.page--]
系統(tǒng)可透過(guò)一些指示訊息,代表觸碰動(dòng)作已被辨識(shí)。包括聲響、視覺(jué)輸出、或觸覺(jué)回饋。
更新率定義為“當(dāng)手指出現(xiàn)在觸控螢?zāi)簧蠒r(shí),在資料緩沖區(qū)中,觸控螢?zāi)毁Y料的兩個(gè)連續(xù)畫格之間的時(shí)間”。在許多系統(tǒng)中,最大的反應(yīng)時(shí)間是更新率的兩倍,因?yàn)橛|控動(dòng)作可能在該螢?zāi)粎^(qū)域剛被掃描后就發(fā)生。
低更新率會(huì)讓曲線看似由許多線段組成,而不是平滑的曲線。低更新率的系統(tǒng),會(huì)將單一畫動(dòng)手勢(shì)以多個(gè)較小手勢(shì)表現(xiàn),甚至以多個(gè)觸碰點(diǎn)表現(xiàn)。
若觸控面板擁有高更新率,則能提供更多的資料點(diǎn),讓系統(tǒng)解讀出平順或完整的形狀或動(dòng)作。如賽普拉斯(Cypress)TrueTouch產(chǎn)品等的智慧型觸控螢?zāi)?strong>控制器,能調(diào)整其更新率,以配合系統(tǒng)的功耗與反應(yīng)時(shí)間等要求。
盡管描繪或手寫應(yīng)用,需要快速的更新率,但手機(jī)撥號(hào)鍵盤則僅須在按鈕被按下或釋放時(shí)及時(shí)向主控端發(fā)出岔斷即可。
量測(cè)功耗并不像表面想像的簡(jiǎn)單,因?yàn)樵诓煌J较?,運(yùn)作功耗會(huì)隨之改變,因此必須量測(cè)每種模式下的功耗,并根據(jù)每種模式所占的時(shí)間比率,再算出加權(quán)后的平均功耗。電腦制造商與手機(jī)制造商已研究這個(gè)問(wèn)題許多年,其可以在以螢?zāi)坏土炼乳喿xPDF檔時(shí)量測(cè)筆電的電池續(xù)航力,也可在觀看動(dòng)作片DVD光碟時(shí)量測(cè)電池續(xù)航力。更可以在靠近或遠(yuǎn)離基地臺(tái)的地方量測(cè)手機(jī)的通話時(shí)間。
在設(shè)計(jì)一個(gè)電容式觸控螢?zāi)幌到y(tǒng)時(shí),系統(tǒng)設(shè)計(jì)人員必須注意其他幾項(xiàng)重要參數(shù)。如手指與感測(cè)器元件之間測(cè)得的電容。手指電容是用實(shí)際的手指而非金屬模擬手指所測(cè)得的電容,以確保測(cè)得符合實(shí)際的數(shù)據(jù)。影響CF的因素包括上覆鏡片的厚度,以及上覆鏡片材質(zhì)的介電常數(shù)。而系統(tǒng)雜訊底線則為相較于轉(zhuǎn)換器的輸入值(電容),在電容至數(shù)位轉(zhuǎn)換器的輸出端所測(cè)得的雜訊值。
此外,一個(gè)感測(cè)器測(cè)得的手指訊號(hào),除以觀測(cè)到的量測(cè)雜訊。不同廠商量測(cè)雜訊的方法不同,因此必須了解他們采用的量測(cè)方法。在圖2中,峰對(duì)峰雜訊為10,但均方根(RMS)雜訊則約為3。這意謂著峰對(duì)峰的SNR雜訊會(huì)好上三倍,但實(shí)際上SNR并沒(méi)有改變,只是描述方式改變而已。
圖2 Peak to Peak與RMS雜訊的通報(bào)數(shù)據(jù)
而賽普拉斯TrueTouch系列元件的可編程解決方案,在濾除雜訊方面提供絕佳的機(jī)制??删幊填惐仍稍O(shè)定用來(lái)長(zhǎng)時(shí)間整合各個(gè)訊號(hào),藉以濾除雜訊。包括展頻與偽隨機(jī)頻率等不同訊號(hào)頻率,都能用來(lái)避免電磁干擾。標(biāo)準(zhǔn)的數(shù)位濾波器可消除1~2位元的訊號(hào)抖動(dòng),或提供類似無(wú)限脈沖響應(yīng)(IIR)的低通濾波器功能。智慧型數(shù)位濾波器可比較面板上相鄰采樣點(diǎn)的數(shù)據(jù),然后剔除“不尋?!钡臉颖?。智慧型濾波器唯一的限制,就是系統(tǒng)設(shè)計(jì)人員的創(chuàng)造力。
有許多因素會(huì)影響觸控螢?zāi)坏男埽_(kāi)發(fā)一個(gè)成功的觸控螢?zāi)划a(chǎn)品,必須注意每一項(xiàng)因素。若產(chǎn)品的每個(gè)部分都符合這些規(guī)范,觸控螢?zāi)痪涂蓳碛蟹鲜褂谜咂谂蔚闹庇X(jué)化操作介面。
(本文作者任職于賽普拉斯)