專利名稱:用于檢測和定位接觸和振動敏感平坦表面上的按鍵事件的方法
技術領域:
本發(fā)明涉及易于清潔并允許用戶將他們的手或手指停留在表面上而不導致事件驅動的平滑、固態(tài)接觸和振動敏感表面。具體而言,表面可被用作用于輸入文本和指令的計算機鍵盤。
背景技術:
作為用于由人向機器輸入文本和數(shù)據(jù)的主要方法的當代鍵盤的起源追溯至19世紀早期的打字機。隨著計算機的開發(fā),自然發(fā)展為使打字機鍵盤適于用作用于輸入文本和數(shù)據(jù)的主要方法。雖然打字機和隨后的計算機鍵盤上的鍵的實現(xiàn)從機械方式發(fā)展為電氣方式并最終發(fā)展為電子方式,但是,鍵自身的尺寸、位置和機械性質在很大程度上保持不變。計算機以及伴隨的鍵盤已遍及各行各業(yè),其中的許多處于計算機和鍵盤設計原本沒有考慮的惡劣環(huán)境中。例如,計算機現(xiàn)在被用于餐館的廚房中、制造設施的生產地板上和鉆油設備上。存在很多這樣的環(huán)境,即,由于極端污染條件,常規(guī)的鍵盤在不清潔的情況下不能長期工作。為了克服鍵盤的可清潔性的問題,直覺上似乎如果鍵盤表面自身是平坦或者幾乎平坦的表面就更加易于擦拭鍵盤以使其清潔。但是,這意味著,需要找到鍵盤的物理機械或膜片鍵的替代方案。在部分的響應中,新計算機形狀因素已發(fā)展為完全消除外部鍵盤,只包括具有用于數(shù)據(jù)鍵入的基于軟件的“虛擬”鍵盤的觸敏平坦顯示屏。對于訓練成使他們的手停留在鍵盤上的打字員來說,接觸屏虛擬鍵盤難以在高速下使用,原因是停留的動作導致來自鍵盤的不希望的鍵激活。因此,需要以便于清潔、允許用戶感覺鍵、允許用戶將手指停留在鍵上、如在標準鍵盤上那樣需要相同或更小的力以按壓鍵、響應人接觸并允許用戶如常規(guī)的機械鍵盤那樣快或更快地打字的方式改善上述的用于鍵盤鍵入的方法。
發(fā)明內容
本發(fā)明提供用于使得能夠使用固定于觸敏表面上的振動傳感器以同時檢測和定位表面上的手指接觸事件的系統(tǒng)和方法。本發(fā)明特別區(qū)分有意的鍵入事件和源自正常的鍵入動作的偶然或不希望的接觸。本發(fā)明使得能夠允許用戶使他們的手指停留在鍵上,從而允許他們如在規(guī)則的鍵盤上那樣鍵入。當用戶將他們的手指放在表面上時,接觸傳感器(每個鍵一個或多個)和振動傳感器被同時激活。來自接觸和振動傳感器的信號被轉換成一系列的輸入事件。輸入事件然后在時間上被關聯(lián),以確定手指接觸的位置和相應的鍵的激活。沒有相應的“敲打”(即,振動)的接觸事件被忽略。關聯(lián)的事件然后被過濾,以去除不希望的事件并分解模棱兩可或矛盾的結果。例如,本發(fā)明能夠檢測有意的鍵按壓與用戶將他們的手放在鍵盤上以準備鍵入之間的不同。本發(fā)明與常規(guī)的觸敏裝置相比具有明顯的優(yōu)點。一個這樣的優(yōu)點在于,用戶可使他們的手指停留在鍵上而不導致出現(xiàn)鍵驅動。另一個優(yōu)點是用戶可通過接觸而不必觀看鍵盤進行鍵入。
以下參照以下的附圖詳細描述本發(fā)明的優(yōu)選和替代性的例子:圖1是表示根據(jù)本發(fā)明的實施例形成的系統(tǒng)的典型的硬件部件的硬件框圖;圖2A 2E是由圖1所示的系統(tǒng)執(zhí)行以檢測和定位手指在表面上的按壓并計算相應的鍵盤輸入鍵的示例性過程的流程圖。圖3表示為了檢測有效的鍵激活并從敲打(振動)傳感器數(shù)據(jù)產生接觸和敲打輸入事件實現(xiàn)本發(fā)明的方法的軟件算法的實施例;圖4A 4E表不執(zhí)行接觸和敲打輸入事件關聯(lián)的軟件算法的實施例;圖5A 表示執(zhí)行關聯(lián)的輸入事件的過濾的軟件算法的實施例。
具體實施例方式圖1表示接觸/敲打敏感鍵盤裝置100的實施例的硬件部件的簡化框圖。裝置100包括容納接近度傳感器120、電容接觸傳感器130和振動傳感器140的平坦表面。傳感器部件120、130和140提供對于CPUllO (處理器)110的輸入。CPU基于從傳感器部件120、130和140接收的原始信號的解釋,提供鍵盤表面被用戶的手接近或接觸時的接觸事件的通知。存儲器170與CPUllO數(shù)據(jù)通信。存儲器170包含程序存儲器180和數(shù)據(jù)存儲器190。程序存儲器180包含操作系統(tǒng)軟件181、敲打/接觸檢測軟件182和其它的應用軟件183。數(shù)據(jù)存儲器190包含接觸電容傳感器歷史陣列191、用戶選項/偏好192和其它的數(shù)據(jù) 193。當用戶的手指接觸平坦表面時,電容接觸傳感器130被斷定。周期性地,執(zhí)行鍵盤操作系統(tǒng)軟件181的CPUllO從接觸傳感器130和敲打傳感器140收集原始傳感器數(shù)據(jù),并且在數(shù)據(jù)存儲器191中存儲原始傳感器數(shù)據(jù)。在單獨的執(zhí)行線程中,CPUllO連續(xù)地執(zhí)行這里描述的敲打和接觸檢測和定位軟件(算法)182,以將由鍵盤產生的傳感器數(shù)據(jù)處理成一系列的鍵“向上”和“向下”狀態(tài)。算法的每次執(zhí)行構成作為算法的基本定時單位的“循環(huán)”。當有效的鍵激活被檢測時,由接觸/敲打檢測軟件182支持的CPUllO執(zhí)行包含于存儲器191中的傳感器數(shù)據(jù)的算法分析,以確定平坦表面的哪個區(qū)域被接觸和敲打。當有效的敲打/接觸位置通過算法182被計算時,它被轉送到鍵盤操作系統(tǒng)軟件181,在這里,它被映射為特定的鍵盤功能代碼。典型的鍵盤功能包含標準鍵盤文字數(shù)字鍵、功能和導航鍵。映射的功能代碼然后通過USB或PS/2那樣的標準外圍/主機接口被發(fā)送到連接的主機計算機終端194。圖2A表示實現(xiàn)在接觸和敲打敏感表面上定位用戶鍵激活的示例性方法的軟件的實施例的流程圖。方法被分成五個不同的階段,每個由稱為“管理器”的單獨的系統(tǒng)軟件部件指導:
階段I傳感器數(shù)據(jù)收集200 ;階段2傳感器數(shù)據(jù)分析和輸入事件產生300 ;階段3輸入事件關聯(lián)400 ;階段4輸入事件過濾500 ;和階段5鍵狀態(tài)改變分析600。在階段1(圖2A200)中,數(shù)據(jù)從接觸和敲打(振動)傳感器140被收集并被放入存儲器中以用于將來的處理。圖2B表示用于從接觸和敲打傳感器收集和概括信號值的軟件算法的實施例的流程圖。CPUllO由傳感器信道管理器200控制,并且通過SCM_GetSenSOrData方法200被調用。傳感器信道管理器200調用收集、概括和存儲傳感器數(shù)據(jù)的一個或多個傳感器信道部件。傳感器信道向傳感器信號施加特定的收集和概括算法以產生接觸或敲打傳感器數(shù)據(jù)記錄。傳感器數(shù)據(jù)記錄與相關的時間戳一起被存儲,以供將來在下一階段中的處理。由SC_Tap_CaptureData方法200調用的敲打傳感器信道識別表面上的手指起始的敲打的時間出現(xiàn)。圖3表示用于檢測敲打事件的軟件算法的實施例的流程圖。敲打傳感器信道方法220將對于當前的循環(huán)存儲于振動傳感器數(shù)據(jù)記錄221中的敲打模擬數(shù)據(jù)采樣。收集的一組數(shù)據(jù)表現(xiàn)為各振動傳感器的波形,開始時間固定于當前的循環(huán)的開始時間。如果收集的信號值與平均信號之間的差值超過閾值(從平均值的差值偏離)222,那么信號波形中的相應的點表示可能的事件。算法啟動同步執(zhí)行的兩個狀態(tài)機。第一個抑制(過濾)通過原始敲打的回響產生多個敲打事件,參見塊223。第二個嘗試通過檢測超過閾值的波形上的第一最小值(最低點)計算敲打出現(xiàn)的確切時間。通過在各采樣點上計算波形的“第二斜率和”,檢測最小值的時間位置。CPU計算各采樣點224上的波形線的瞬時斜率。如果采樣點上的斜率從負(向下)變?yōu)檎?向上),那么采樣表示可能的最小值,并且,采樣時間是敲打事件的時間。CPU然后檢測最小值是否描述為真實最小值。它通過將前五個采樣點的斜率加到當前的采樣點斜率上,計算采樣點的“第一斜率和”。系統(tǒng)然后通過將前五個采樣點的第一斜率和加到當前采樣點第一斜率和上計算“第二斜率和”,參見塊227。結果是,放大容易與閾值相當?shù)牟蓸狱c上的斜率差以及識別作為最小值的典型的主斜率反向(下降到上升),參見塊228。如果超過閾值,那么敲打事件產生并通過信道存儲為敲打傳感器數(shù)據(jù)對象,參見塊229。在階段2 (圖2A300)中,歷史傳感器數(shù)據(jù)被分析,以產生表示表面上的可能的鍵激活的“輸入事件”對象的流。圖2C表示用于分析傳感器數(shù)據(jù)并產生輸入事件的軟件算法的實施例的流程圖。CPUllO被輸入信道管理器控制,并被ICM_GetInputEVentS方法300調用。輸入信道管理器300調用分析在階段I中收集、概括和存儲的傳感器數(shù)據(jù)的一個或多個輸入信道部件。輸入信道向傳感器數(shù)據(jù)施加特定的分析算法,以檢測用于產生輸入事件的條件。由IC_TouCh_GetEVentS方法310調用的接觸輸入信道過程搜索用戶接觸輸入事件。執(zhí)行接觸輸入信道過程的CPUllO分析存儲的接觸電容傳感器數(shù)據(jù),從而對于超過閾值的各信號產生接觸輸入事件。由IC_TapMultilateration_GetEvents方法330調用的敲打多點定位輸入信道使用各振動傳感器上的敲打事件的相對到達時間差(TD0A),以計算鍵盤上的敲打位置的坐標并產生輸入事件。給定處于固定的已知的位置上的信號的三個或更多檢測器,CPUlio使用多點定位的技術以三角測量該信號的源位置。使用多點定位的CPUlio取得存儲于敲打事件記錄中的到各加速計的相對到達時間,并且,基于表面上的振動波的傳播的實驗測量速度,計算出現(xiàn)敲打的鍵盤上的最可能的位置。選擇接近計算的敲打位置的鍵作為產生的輸入事件中的候選鍵。圖4A表示用于敲打多點定位的軟件算法的實施例的流程圖。在塊322上計算傳感器中的每一個上的敲打事件的到達時間的時間△或差值。從表面上的敲打產生的聲波以大致恒定的速度通過表面材料行進到各傳感器。實際上,波的傳播速度不是恒定的,隨表面上的位置以及在實施例的各單個實例之間改變。為了適應變化,過程可使用相對到達時間作為進入將相對到達時間的三倍映射到鍵坐標的位置檢查表中的指數(shù),參見塊324。表的值在經驗上通過重復試驗和表面上的測量得到。當確切的匹配不可能或者不可靠性時,過程選擇最接近地匹配相對到達時間的一組記錄。一組記錄限定包含與由非恒定的速度產生的統(tǒng)計誤差范圍對應的一組候選鍵的區(qū)域位置。區(qū)域內的候選鍵從區(qū)域的邊緣到中心具有增加的概率梯度,最大可能的鍵在區(qū)域的中心。過程320用由映射的區(qū)域規(guī)定的候選鍵產生輸入事件,參見塊326。在一個實施例中,敲打多點定位算法包含用于從作為敲打事件的考慮檢測和消除外部(關鍵盤)振動的方法。當用戶在外部振動源正在激活振動傳感器時在鍵盤的表面上移動手指但不敲打時,出現(xiàn)常見的問題。除非外部敲打被過濾,否則,由于振動與接觸傳感器的變化相關,因此,這導致錯誤的正量。因此,重要的是能夠檢測外部振動并濾除它們。敲打多點定位算法利用表面的物理結構的特性以檢測外部敲打。由于外部振動在傳播到中心檢測器之前通過鍵盤的左右腳傳輸?shù)阶笥壹铀儆嬕恢行臋z測器是最后,因此,任何外部敲打導致左右加速計在中心加速計之前喚醒。如果滿足兩種方法的條件,那么信號具有很高的源自外部振動的可能性,并且可作為敲打事件被消除。由IC_TapAmplitude_GetEvents方法330調用的敲打振幅輸入信道過程使用敲打信號振幅中的相對差值,以計算鍵盤上的敲打位置的坐標,并產生輸入事件位置。振幅方差算法取得由加速計中的每一個記錄的相對振幅,以基于表面材料中的振動波的實驗測量的線性力響應近似,三角 測量和計算鍵盤上的敲打位置的坐標。選擇處于計算的振幅敲打位置附近的鍵作為候選輸出鍵。在一個實施例中,敲打振幅微分過程330包含用于檢測作為敲打事件的外部振動并取消其資格的方法。當在鍵盤的表面上出現(xiàn)敲打時,除了表面上的幾個已知的坐標以外,通常在由各加速計檢測的振幅中存在大的微分,這是作為敲打振幅微分過程330的基礎的特性。但是,當出現(xiàn)外部敲打時,由各傳感器檢測的振幅常常非常接近,并且可被用于將敲打識別為可能的外部敲打,并且不再加以考慮。圖4B表示用于敲打振幅微分(330)的軟件算法的實施例的流程圖。計算傳感器中的每一個上的敲打事件的振幅差異,參見塊332。從表面上的敲打產生的聲波以信號振幅的大致線性衰減(力劣化)通過表面材料傳播到各傳感器。振幅微分算法330使用存儲于敲打記錄中的相對振幅,并且,基于作為當信號波穿過表面時由傳送材料中的吸收導致的信號振幅的假定的線性恒定衰減的線性力響應近似,計算鍵盤上的最可能出現(xiàn)敲打的位置。信號源到信號檢測器越遠,則信號越小。實際上,波的衰減不是恒定的,隨表面上的位置以及在實施例的各單個實例之間改變。為了適應方差,過程可使用振幅值作為進入將振幅微分的三倍映射到鍵坐標的位置檢查表中的指數(shù),參見塊334。表的值在經驗上通過重復試驗和表面上的測量得到。當確切的匹配不可能或者不可靠性時,過程選擇最接近地匹配振幅微分的一組記錄。一組記錄限定包含與由非恒定的衰減產生的統(tǒng)計誤差范圍對應的一組候選鍵的區(qū)域位置。區(qū)域內的候選鍵從區(qū)域的邊緣到中心具有增加的概率梯度,最大可能的鍵在區(qū)域的中心。在塊336中,過程320用由映射的區(qū)域規(guī)定的候選鍵產生輸入事件。由IC_Press_GetEvents方法340調用的按壓輸入信道過程檢測當停留的手指實實在在地按壓到鍵盤表面上時出現(xiàn)的輸入事件。它識別并回憶停留的手指的接觸信號強度,并測量停留的手指與按壓的手指之間的差值。如果信號強度差超過閾值,那么產生輸入事件。由IC_TapWaveform_GetEvents方法350調用的敲打波形輸入信道過程比較敲打信號波形的形狀,以識別已知的形狀并由此計算鍵盤上的敲打位置的坐標并產生輸入事件。對于多重使用環(huán)境中的表面上的各位置,記錄和存儲示例性的振動波形。在一個實施例中,分析記錄波形中的每一個,并且,存儲波形的許多唯一特性(“指紋”)而不是完整的波形。各用戶起動的敲打出現(xiàn)的特性與數(shù)據(jù)庫中的各鍵的存儲特性相比較,并且找到最好的匹配??捎兄谖ㄒ坏刈R別各敲打位置的波形的特性包含但不限于以下方面:波形的最小峰值;波形的最大峰值;波形的衰減速率、波形的標準偏差;波形的快速傅立葉變換;波形的平均頻率;波形的平均絕對振幅等。在階段3 (圖2A400)中,輸入事件基于激活的位置、內容和持續(xù)時間的相互一致性被關聯(lián)成限定鍵激活的時間和空間相關事件。圖2D表示用于關聯(lián)輸入事件的軟件算法的實施例的流程圖。系統(tǒng)由輸入關聯(lián)管理器控制并由ICOR_CorrelateInputEvents方法400調用。關聯(lián)將由接觸、按壓和敲打輸入信道產生的相關的輸入事件合并成單一的關聯(lián)輸入事件。關聯(lián)在六個不同的階段中進行:在塊410中表示的關聯(lián)階段I分析輸入事件以確定歷史上多少事件是可用的以及它們的相對時間差是多少;在塊420中表示的關聯(lián)階段2產生作為可能的組合的多對事件(多個二倍體);在塊430中表示的關聯(lián)階段3從一組計算的二倍體產生元組(三個或更多事件);在塊440中表示的關聯(lián)階段4減少候選元組和二倍體的組,從而消除不完全反身支持的組合中的任一個;在塊450中表示的關聯(lián)階段5從一組元組產生新的關聯(lián)輸入事件,從而用單一關聯(lián)輸入事件代替構成元組的各單個輸入事件。輸入關聯(lián)管理器過程400從輸入事件管理器請求歷史輸入事件,從輸入事件歷史消除冗余的事件,并且,產生新的關聯(lián)的輸入事件。從輸入事件歷史數(shù)據(jù)庫去除有助于關聯(lián)的事件的所有輸入的事件。圖5A 詳細表示關聯(lián)過程。圖5A表示階段2輸入事件成對算法的實施例。運行對規(guī)則方法420在塊421中產生一組輸入事件對組合(二倍體),并然后施加一系列的規(guī)則以評價它們作為關聯(lián)對的可能。用于對關聯(lián)的規(guī)則包括:時間關聯(lián)(塊422)檢查以確認事件是否在時間上相互接近;鍵相交關聯(lián)(塊424)檢查以確認輸入的事件是否共享候選鍵;信道關聯(lián)(塊426)檢查以確保產生事件的輸入的信道是相容的。規(guī)則執(zhí)行的結果在邏輯上被組合成該對的總分數(shù)。在塊428中,如果分數(shù)超過閾值,那么二倍體是有效的關聯(lián)對并被添加到二倍體的輸出列表。圖5B表示階段3輸入事件組合算法的實施例。由成對算法420產生的二倍體進一步在塊430中組合成三個或更多個事件的組合,從而產生一系列的“元組”。各元組在塊432中被評價以確保元組內的輸入事件的組合對于各有貢獻的二倍體是完全反身的。例如,給定三個事件A、B和C,如果關聯(lián)二倍體存在AB、BC和AC,那么元組ABC是有效的。在塊436中,元組評價的結果附加于有效二倍體的列表上。在塊437上附加原二倍體,并在塊438中附加未關聯(lián)的各單個事件,從而導致所有可能的關聯(lián)事件的列表。具有更多的有貢獻的事件的元組具有更強的關聯(lián)性并因此具有(一般)更高的分數(shù)。圖5C表示階段3輸入事件減少算法(塊)440的實施例?;谳斎胧录年P聯(lián)性和可靠性的強度,元組、二倍體和單體事件被評價并被分配數(shù)值分數(shù)。如果輸入事件是兩個或更多個元組或二倍體的成員,那么具有最高的分數(shù)的元組或二倍體主張事件,并且,從候選組444消除(減去)分較低的元組或二倍體。減去在塊444中繼續(xù),直到剩余的元組、二倍體和單體事件的組不包含共享的單一輸入事件,從而具有與任何其它的組合不同的唯一輸入事件成員資格。然后,在塊446中,以遞減的分數(shù)次序將剩余的元組、二倍體和單體事件分類。圖表不階段4關聯(lián)輸入事件產生(塊450)的實施例。在塊452中,一組的減少的元組、二倍體和單體事件的各要素被測試,以確認它們是否可被釋放,使得具有約束的那些對于后面的處理被延緩。通過塊452的那些在塊454中被轉換成新的關聯(lián)輸入事件。有助于元組、二倍體和單體事件的原輸入信道產生的輸入事件在塊456中被標記為被處理,使得它們將不再被重新處理。得到的一組關聯(lián)事件表示用戶鍵激活的真實候選。在階段4 (圖2A500)中,關聯(lián)的事件的流被分析,以去除不希望的事件并分解事件內的模棱兩可的鍵候選。圖2E表示用于過濾輸入事件的軟件算法的實施例的流程圖。CPUllO被輸入過濾管理器控制,并被IFM_FiIterInputEvents方法500調用。輸入管理器調用輸入過濾管理器以從輸入事件流消除不希望的關聯(lián)事件,并使事件內的候選鍵減少到單個鍵。輸入過濾管理器將最終確定的一系列的輸入事件轉送到鍵狀態(tài)管理器,以供處理成適于傳送到主機計算機操作系統(tǒng)的鍵激活代碼。實施例實現(xiàn)用于依次向關聯(lián)的輸入事件組施加過濾器規(guī)則的規(guī)則執(zhí)行引擎。各過濾器被定義為在輸入事件組的特定的方面上操作從而改變分數(shù)并更新輸入管理器系統(tǒng)的長期狀態(tài)的規(guī)則。過濾器訪問輸入事件的完整的組,并被允許從處理的考慮去除事件并且/或者減少事件內的候選鍵的組。在長期趨勢和行為分析的支持下,過濾器還被允許訪問和更新輸入管理器的長期(多循環(huán))狀態(tài)。長期狀態(tài)反饋到輸入事件處理的其它階段中。由輸入關聯(lián)管理器計算的一組關聯(lián)輸入事件通過IFM_FilterEvents (塊500)方法被轉送到輸入過濾管理器。規(guī)則引擎以規(guī)則登記的次序在塊520中向輸入事件的各要素施加過濾器規(guī)則。規(guī)則的結果是在塊530中被施加到(過濾的)輸入事件并在塊540中被輸出到下一處理階段的一組修改。實施例實現(xiàn)針對鍵輸入的特殊情況的許多規(guī)則。實施例包含垂直接觸過濾器規(guī)則。垂直接觸過濾器調整用于具有垂直相鄰的候選鍵的事件的鍵概率。當用戶在原位行(home row)之上的鍵上打字時,手指在鍵盤上伸開并且“伸出”,常常激活原位行之上的期望的鍵和原位行上面在其下面緊挨著的鍵。過濾器檢測該情況的簽名,并且將垂直相鄰的最上面的候選鍵的分數(shù)提升為最可能鍵入的一個。提升因子被適當?shù)乜s減,使得垂直相鄰鍵之間的錯誤鍵入不會強過下面的鍵上的強信號。因此,提升足夠小以有利于更高的鍵,但是,當部分錯誤鍵入到較高的鍵邊界上時,不排除選擇下面的鍵。實施例包括下一鍵過濾器。下一鍵過濾器調整具有模棱兩可(分數(shù)相同)的候選鍵的事件的鍵概率。過濾器使用簡單的概率數(shù)據(jù)庫,該概率數(shù)據(jù)庫對于任何給定的字符限定最可能跟隨當前目標語言中的字符的字符。當前的語言由鍵盤的目標國家語言鍵布局規(guī)定。下一字符概率與目標語言的單詞或語法結構沒有關系。它是目標語言中的字符對的概率分布。在一個實施例中,置放(set down)過濾器檢測源自用戶將手置于鍵盤的原位行上的停留位置中的輸入事件的簽名。在鍵盤的未使用的某周期之后或者在活動鍵入暫停的過程中,可出現(xiàn)“置放”。過濾器消除當手指在置放過程中與原位行鍵接觸時出現(xiàn)的不希望的鍵激活。置放過濾器是更新并依賴于輸入管理器和輸入事件隊列的長期狀態(tài)的多循環(huán)過濾器。置放過濾器在兩個不同的階段中處理。階段I是檢測階段,它分析關聯(lián)輸入事件組,以尋找兩個或更多個同步的包含具有時間接近性的原位行上的多次接觸激活的原位行事件。如果檢測到置放,那么對于隨后的處理循環(huán)和向鍵激活的事件轉換斷定長期置放狀態(tài)。一旦斷定置放狀態(tài),所有的輸入事件就被延緩,直到完成置放。階段2是完成階段,它分析延緩的和新的事件,并且賦予或取消事件參與置放的資格。通過以下過程中的任何一個確定置放終止:超過置放的最大持續(xù)期、超過置放內的各單個事件之間的最大時間持續(xù)期(間隙閾值)或者檢測到非原位行輸入事件。當滿足置放終止條件中的任一個時,通過過濾器清除置放狀態(tài)。任何延緩的事件作為置放的一部分被去除或者對于處理被釋放。由于置放完成可檢測取消原位行事件參與置放的資格的終止,因此,置放檢測不總是導致事件被去除。在一個實施例中,鍵入樣式過濾器分析輸入事件和輸入管理器的長期狀態(tài),以確定當前的用戶正在使用什么鍵入樣式。它然后設定各種控制參數(shù)和反饋包含置放和特殊情況的其它過濾器(被它們使用)的長期狀態(tài)值。在一個實施例中,多重修改過濾器防止由于錯誤鍵入導致的兩個或更多個修改鍵的偶然的激活。修改鍵一般占據(jù)鍵盤的外圍并且難以適當?shù)丶せ?,特別是對于接觸打字員。多重修改過濾器調整具有修改鍵的事件的鍵概率,從而有利于shift鍵作為最常用的修改器,并降低作為很少使用的鍵的caps lock鍵的分數(shù)。調整的分數(shù)避免到達shift鍵時的caps lock的許多無意的激活。在階段5 (圖2A600)中,受鍵狀態(tài)管理器控制并由KSM_CalculateKeyStates方法600調用,過濾的事件的次序被轉換成鍵上下激活的流,這些激活隨后被轉送到主機計算機。雖然這里對于鍵盤應用描述了本發(fā)明的要點,但是,本領域技術人員可以想到,系統(tǒng)也可被成功應用于任何類型的接觸屏裝置。雖然以上示出和描述了本發(fā)明的優(yōu)選的實施例,但是,可以在不背離本發(fā)明的精神和范圍的情況下提出許多的修改。因此,本發(fā)明的范圍不受優(yōu)選的實施例的公開的限制。事實上,本發(fā)明應完全由以下的權利要求確定。
權利要求
1.要求排他的性能或特權的本發(fā)明的實施例被限定如下:一種檢測固態(tài)平面觸敏表面上的用戶輸入以確定用戶輸入的位置的方法,該方法由與包含于觸敏表面中的多個傳感器信號通信的處理器裝置執(zhí)行,該方法包括: 基于多個接觸傳感器記錄觸敏表面的用戶接觸; 基于通過三個或更多個振動傳感器感測的敲打事件從與觸敏表面耦合的一個或多個振動傳感器接收敲打事件信號;和 在基于記錄的用戶接觸接收敲打事件信號之后,斷定選擇。
2.根據(jù)權利要求1的方法,其中,斷定包含將接觸和振動傳感器信號轉換成與固定的時間基準點結合的一系列的離散接觸和敲打傳感器數(shù)據(jù)事件。
3.根據(jù)權利要求2的方法,其中,斷定包含基于超過固定閾值的來自一個或多個振動傳感器的信號的振幅檢測敲打傳感器數(shù)據(jù)事件信號的出現(xiàn)。
4.根據(jù)權利 要求2的方法,其中,斷定包含基于使用斜率和值的振動波形最小值的位置檢測敲打傳感器數(shù)據(jù)事件信號的出現(xiàn)時間。
5.根據(jù)權利要求2的方法,其中,斷定包含將傳感器數(shù)據(jù)事件轉換成一系列的離散輸入事件,其中,一系列的離散輸入事件通過與傳感器數(shù)據(jù)相關的類型被分類,并且其中,一系列的離散輸入事件包含一組候選鍵和相關的位置信息。
6.根據(jù)權利要求5的方法,其中,斷定包含基于多個振動傳感器上的敲打事件的到達時間差三角測量表面上的敲打傳感器數(shù)據(jù)事件的物理坐標。
7.根據(jù)權利要求6的方法,其中,斷定包含通過將多點定位計算結果映射到已知的表面坐標并選擇一組可能的坐標調整物理材料和組件的差異,其中,一組可能的坐標被分配作為敲打事件的原點的坐標的O I之間的概率。
8.根據(jù)權利要求5的方法,其中,三角測量包含使用多個振動傳感器上的敲打事件的振幅微分和線性力響應近似,以三角測量物理坐標。
9.根據(jù)權利要求8的方法,其中,斷定包含通過將振幅微分計算結果映射到已知的表面坐標并選擇一組可能的坐標調整物理材料和組件的差異,其中,一組可能的坐標被分配作為敲打事件的原點的坐標的O I之間的概率。
10.根據(jù)權利要求5的方法,其中,斷定包含通過與一組示例性波形相比基于敲打波形的識別來檢測敲打傳感器數(shù)據(jù)事件信號的出現(xiàn)時間。
11.根據(jù)權利要求10的方法,其中,通過使用波形的計算的特性而不是整個波形進行信號波形的識別。
12.根據(jù)權利要求5的方法,其中,斷定包含通過使用多個規(guī)則關聯(lián)輸入事件,以產生包含原事件的所有數(shù)據(jù)的一組相互支持復合輸入事件。
13.根據(jù)權利要求12的方法,其中,關聯(lián)包含通過接近時間位置關聯(lián)。
14.根據(jù)權利要求12的方法,其中,關聯(lián)包含基于傳感器數(shù)據(jù)的源關聯(lián)。
15.根據(jù)權利要求12的方法,其中,關聯(lián)包含基于輸入事件表示的候選鍵激活的共性關聯(lián)。
16.根據(jù)權利要求12的方法,其中,斷定包含通過多個濾波器從一組輸入事件去除不希望的輸入事件。
17.根據(jù)權利要求16的方法,其中,斷定包含檢測和去除源自希望的鍵下面的鍵的無意激活的不希望的鍵激活。
18.根據(jù)權利要求16的方法,其中,斷定包含作為在緊挨著鍵入之前使人手停留于鍵盤的原位行位置上的結果檢測和去除鍵激活。
19.根據(jù)權利要求16的方法,其中,斷定包含檢測選擇性檢測并抑制修改器鍵的偶然或部分激活中的至少一個,以與CAPS LOCK相比有利于SHIFT鍵的最常使用。
20.根據(jù)權利要求16的方法,其中,斷定包含在激活鍵入的過程中選擇性地檢測和抑制多個同時的修改器。
21.根據(jù)權利要求16的方法,其中,斷定包含基于歷史接觸激活數(shù)據(jù)來檢測用戶的鍵入樣式作為“接觸”或“懸?!贝蜃謫T并將該信息反饋到其它的過濾機構。
22.根據(jù)權利要求16的方法, 其中,斷定包含將一組的輸入事件轉換成一系列的鍵向上和鍵向下激活。
全文摘要
用于使得能夠使用固定于觸敏表面上的振動傳感器以同時檢測和定位表面上的手指接觸事件的系統(tǒng)和方法。本發(fā)明特別區(qū)分有意的鍵入事件和源自正常的鍵入操作的偶然或不希望的接觸,由此允許用戶使手指停留在鍵上并允許他們如在規(guī)則的鍵盤上那樣鍵入。來自接觸和振動傳感器的信號被轉換成一系列的輸入事件。輸入事件然后有時間上被關聯(lián),以確定手指接觸的位置和相應的鍵的激活。關聯(lián)事件然后被過濾,以去除不希望的事件并分解模棱兩可或相反的結果。
文檔編號G06F3/02GK103154860SQ201180039270
公開日2013年6月12日 申請日期2011年6月28日 優(yōu)先權日2010年6月28日
發(fā)明者R·J·瑪爾斯登, S·霍勒 申請人:清潔之匙公司