一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

电容传感器延时补偿的制作方法

2021-10-20 02:38:00 来源:中国专利 TAG:延时 电容 传感器 补偿

电容传感器延时补偿


背景技术:

1.一些计算设备可以包括能够检测用户输入的接近(例如,触摸或存在)传感器。例如,计算设备可以包括存在敏感显示器(即,具有接近传感器的显示器),其能够显示图形对象并且接收用户输入从而使得用户能够与所显示的图形对象进行交互。一些示例交互包括用户跨存在敏感显示器移动他们的手指以拖拽对象和/或使得计算设备进行滚动。
2.接近传感器的一个示例是电容传感器。电容传感器面板是由介电材料的任一侧上的行和列电极的矩阵构造而成。该电极通常由诸如铟锡氧化物(ito)的透明电容材料构造而成,从而它们可以被置于显示模块上方并且无法被用户所看到。该介电材料通常为玻璃衬底。触摸面板模块可以被贴附至显示模块(例如,液晶显示器(lcd)或有机发光二极管(oled)显示器)的表面,并且可以被置于保护盖板玻璃之下。电极可以连接至触摸控制器,该触摸控制器可以利用电压信号驱动该电极并且感测所产生的电容变化。
3.当电极利用电压信号被驱动时,可以测量该电极针对其它物体(例如,人类手指、另一个电极或接地)的固有电容。周边环境的变化可能对电极的固有电容的变化有所影响。


技术实现要素:

4.总体上,本公开的技术针对用于对经由使用电容接近传感器所引发的延时进行补偿以检测用户输入的技术。在(例如,移动电话、平板计算机和智能手表上的)直接操控情境中,存在敏感显示器可以被附着于显示面板(例如,lcd或oled面板)顶端,并且使得用户能够依据他们手指的移动来操控显示器上的对象。在这样的情境中,延迟可能成为问题。特别地,期望用户提供他们的输入与观察到来自系统的相对应响应之间的时间尽可能小(例如,因为用户期待系统对他们的输入具有高度响应性)。例如,如果用户正在利用他的手指拖拽显示器上渲染的对象,则用户期待该对象将精确地跟随用户手指而没有落后、提前或扫描残迹(stuttering)。高延时不仅从视觉角度会使得用户感到沮丧,而且还回导致次优的人机交互。例如,系统会不正确地解释来自用户的输入或者无法完全地检测输入。用户可能感到被迫调适他们的输入行为以便尝试并抵消一些延时效应,例如通过减缓他们的输入或者利用他们的手指勾画不同的路径。用户可能无法像他们原本想要的那么快地向系统中输入指令或数据,或者他们可能必须执行附加输入以便对被系统错误解释的先前输入作出补偿。诸如在由于增加的使用所导致的增加的功耗、增加的处理成本,以及显示面板和/或电容接近传感器有所减少的寿命的方面,这些附加输入可能会对系统提出进一步的要求。
5.电容接近传感器可以定期扫描输入。连续扫描之间的时间定义了可以观察到输入变化之前的最小间隔。触摸控制器可以对传感器数据执行信号处理和算法计算(例如,以将传感器数据解析为高分辨率坐标)。该触摸控制器可以直接输出这些坐标以供应用使用,或者它们可以在被输出以供应用使用之前被进一步处理。应用可以经由图形系统就对该输入的图形响应进行通信,并且最终使得显示器基于该响应进行更新,而该响应可能被显示器的更新频率(例如,刷新率)减慢。
6.电容接近传感器可以能够执行若干种不同类型的输入扫描,其中的每一种都呈现
出优势和缺陷。一些示例的输入扫描类型包括自电容扫描和互电容扫描。自电容扫描提供了高速度和较低功率要求的优势,但是在出现多个接触时可能被“拖影(ghosting)”效应所影响(例如,在用户使用多个手指执行一个手势的情况下)。互电容扫描比自电容扫描更慢并且要求更多功率,但是并不受“拖影”的影响。
7.依据本公开的一种或多种技术,一种计算设备可以利用自电容扫描和互电容扫描的组合来获得用户输入中的动态运动(例如,输入方向和速度)的估计。例如,该计算设备可以基于自电容扫描识别自电容触摸位置,并且基于互电容扫描识别互触摸位置。该计算设备可以确定自电容触摸位置中的哪些触摸位置对应于互触摸位置中的触摸位置(例如,并且丢弃自电容触摸位置中并不与互触摸位置中的触摸位置相对应的位置),并且确定互电容触摸位置和自电容触摸位置的相对应触摸位置之间的运动。该计算设备可以利用所获得的动态运动的估计来调节静态触摸位置的估计,以预计在输入位置被应用所接收时实际输入位置将在何处。以这种方式,该计算设备可以对(例如,在扫描数据的处理期间所引入的)延时作出补偿。这样,本公开的技术使得该计算设备能够更加平滑和/或精确地跟踪用户输入,由此提供了有所改善的人机交互和用户体验。
8.本公开的技术还可以解决计算设备针对在不在功耗上有所妥协情况下的用户输入增加的响应性与处理成本之间的平衡。用户可以不再需要为了尝试和抵消在已知系统上所体验到的一些延时效应而对他们的输入行为进行调适。用户可以能够更快和/或更有效地向系统之中输入指令或数据,并且他们可以避免必须执行在正常情况下要对被系统错误解释的先前输入作出补偿的附加输入。不必执行这些附加的校正输入可以为系统提供功耗和处理成本方面的节省,以及提供了显示面板和/或电容接近传感器有所改进的寿命。
9.在一个示例中,一种方法包括由计算设备的一个或多个处理器以及基于该计算设备的存在敏感显示器所生成的互电容数据识别一个或多个互电容触摸位置;由该一个或多个处理器以及基于该存在敏感显示器所生成的自电容数据识别一个或多个自电容触摸位置;由该一个或多个处理器确定该一个或多个互电容触摸位置和该一个或多个自电容触摸位置的相对应触摸位置之间的运动;由该一个或多个处理器以及基于所确定的运动调节该一个或多个互电容触摸位置以获得一个或多个经调节的互电容触摸位置;并且由该一个或多个处理器利用该一个或多个经调节的互电容触摸位置作为用户输入。
10.在另一个示例中,一种计算设备包括存在敏感显示器;以及一个或多个处理器,被配置为基于该计算设备的存在敏感显示器所生成的互电容数据识别一个或多个互电容触摸位置;基于该存在敏感显示器所生成的自电容数据识别一个或多个自电容触摸位置;确定该一个或多个互电容触摸位置和该一个或多个自电容触摸位置的相对应触摸位置之间的运动;基于所确定的运动调节该一个或多个互电容触摸位置以获得一个或多个经调节的互电容触摸位置;并且利用该一个或多个经调节的互电容触摸位置作为用户输入。
11.在另一个示例中,一种存储指令的非暂时性计算机可读存储介质,该指令在被执行时使得设备的一个或多个处理器基于该计算设备的存在敏感显示器所生成的互电容数据识别一个或多个互电容触摸位置;基于该存在敏感显示器所生成的自电容数据识别一个或多个自电容触摸位置;确定该一个或多个互电容触摸位置和该一个或多个自电容触摸位置的相对应触摸位置之间的运动;基于所确定的运动调节该一个或多个互电容触摸位置以获得一个或多个经调节的互电容触摸位置;并且利用该一个或多个经调节的互电容触摸位
10还可以使用任何一种或多种显示设备而充当输出(例如,显示)设备,上述显示设备诸如液晶显示器(lcd)、点阵显示器、发光二极管(led)显示器、有机发光二极管(oled)显示器、电子墨水,或者能够向计算设备2的用户输出可视信息的类似的单色或彩色显示器。在图1的示例中,存在敏感显示器12可以是能够接收用户输入以及显示图形数据的存在敏感显示器。
26.uic 10可以检测来自相应计算设备2的用户的输入(例如,触摸和非触摸输入)。例如,存在敏感显示器12可以通过检测来自用户的一个或多个手势(例如,用户利用手指或输入笔在存在敏感显示器12的一个或多个位置处或其附近触摸、指点和/或扫掠)来检测输入的指示。uic 10可以以用户界面的形式向用户输出信息,该用户界面可以与计算设备2所提供的功能相关联。这样的用户界面可以与在计算设备2处执行或者能够从计算设备2访问的计算平台、操作系统、应用和/或服务(例如,电子消息应用、聊天应用、互联网浏览器应用、移动或台式机操作系统、社交媒体应用、电子游戏、菜单以及其它类型的应用)相关联。
27.ui模块14管理用户与uic 10以及计算设备2的其它组件的交互。换句话说,ui模块14可以充当计算设备2的各个组件之间的中介以基于uic 10所检测到的用户输入作出决定并且响应于该用户输入在uic 10处生成输出。ui模块14可以接收来自计算设备2的应用、服务、平台或其它模块的指令而使得uic 10输出用户界面。ui模块14可以将计算设备2所接收到的输入作为用户视图进行管理并且与在uic 10处呈现的用户界面交互,以及响应于接收到来自计算设备2的处理该用户输入的应用、服务、平台或其它模块的附加指令而更新该用户界面。
28.计算设备2可以包括模块14和16。模块14和16可以使用驻留在计算设备2中和/或在计算设备2处执行的软件、硬件、固件或者软件、硬件和/或固件的混合来执行所描述的操作。计算设备2可以利用一个或多个处理器来执行模块14和16。计算设备2可以将模块14和16作为在基础硬件上执行的虚拟机来执行。模块14和16可以作为操作系统或计算平台的服务或组件来执行。模块14和16可以作为计算平台的应用层处的一个或多个可执行程序来执行。模块14和16可以以其它方式被远程布置到计算设备2或者由其远程访问,例如作为网络云端中在网络处操作的一个或多个网络服务。
29.(多个)处理器22可以在计算设备2内实施功能和/或执行指令。(多个)处理器22的示例包括但并不局限于一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程门阵列(fpga),或者其它等效的集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可以是指任何的上述结构或者适于实施本文所描述技术的任何其它结构。
30.用户应用模块16可以在计算设备2处执行以实行任何的各种操作。用户应用模块16的示例包括但并不局限于音乐应用、照片查看应用、地图应用、电子消息应用、聊天应用、互联网浏览器应用、社交媒体应用、电子游戏、菜单,和/或可以基于用户输入进行操作的其它类型的应用。
31.在操作中,用户应用模块16可以使得ui模块14生成图形用户界面(gui)以便在uic 10处显示。uic 10可以基于来自用户应用模块16的指令输出图形用户界面。如图1的示例中所示,用户应用模块16可以是照片查看应用,其使得ui模块14生成包括山的图片的gui以便在uic10处显示。
32.用户可能期望向用户应用模块16提供用户输入。例如,在图1的其中用户应用模块16可以是照片查看应用的示例中,用户可能想要将uic10处显示的山的图片放大或缩小。在该示例中,为了缩小,用户可以通过将他们的食指放在定位18a,将他们的拇指放在定位18b,并且将他们的拇指和食指滑动合拢在一起(以箭头所示的方向)来执行捏合手势。
33.存在敏感显示器12可以检测到该用户输入。例如,在存在敏感显示器12是电容触摸面板的情况下,存在敏感显示器12可以经由基于自电容扫描的结果所触发的互电容扫描来检测用户输入。为了说明,存在敏感显示器12可以执行定期的自电容扫描以确定是否有任何输入物体(例如,手指、输入笔等)出现在存在敏感显示器12附近。响应于自电容扫描指示至少一个输入物体处于存在敏感显示器12附近,存在敏感显示器12可以执行互电容扫描以识别该至少一个输入物体的每一个的触摸点。下文参考图3讨论自电容扫描的进一步细节。下文参考图4讨论互电容扫描的进一步细节。
34.虽然在输入物体是静态(即,并未移动)时使用互电容扫描数据识别触摸点可能就足够了,但是这样的技术对于识别移动物体的触摸点而言可能并不令人满意。如上文所讨论的,存在敏感显示器12可以执行延时补偿以预测输入物体在何处移动(例如,以便考虑处理扫描数据所引入的延迟)。延时补偿的执行可以涉及到基于特定物体至少两个时间上不同的触摸点(例如,在第一时间获得该物体的第一触摸点以及在该第一时间之后的第二时间获得该物体的第二触摸点)而确定预测触摸点。然而,如下文所讨论的,连续互电容扫描之间相对大的时间量会导致特定物体至少两个时间上不同的触摸点之间大的时间间隙。该大的时间间隙会降低延时补偿的有效性。
35.依据本公开的一种或多种技术,计算设备2可以利用基于互电容扫描数据所确定的触摸点以及基于自电容扫描数据所确定的触摸点来执行延时补偿。例如,计算设备2可以基于存在敏感显示器12所生成的互电容数据识别一个或多个互电容触摸位置,并且基于存在敏感显示器12所生成的自电容数据识别一个或多个自电容触摸位置。计算设备2可以确定一个或多个互电容触摸位置和一个或多个自电容触摸位置的相对应触摸位置之间的运动。基于所确定的运动,计算设备2可以调节一个或多个互电容触摸位置以获得一个或多个经调节的互电容触摸位置(例如,预测触摸点)。计算设备2可以利用该一个或多个经调节的互电容触摸位置作为用户输入。例如,该经调节的互电容触摸位置可以被提供至用户应用模块16。
36.计算设备2可以基于用户输入执行一个或多个动作。例如,用户应用模块16可以使得ui模块14生成经更新的gui以便在uic 10处进行显示,该gui基于该用户输入而有所修改。例如,在图1的其中用户应用模块16可以是照片查看应用并且用户正在执行捏合手势以将山的图片放大的示例中,用户应用模块16可以使得ui模块14生成包括该山的照片的缩小表示的gui以便在uic 10处进行显示。
37.图2是图示依据本公开一种或多种技术的图1的计算设备1的一个示例的进一步细节的框图。如上文所讨论的,计算设备2的uic 10可以包括存在敏感显示器12和(多个)处理器22。如图2中所示,存在敏感显示器12可以包括电极24、触摸控制器26、显示面板28和显示控制器30。还如图2中所示,(多个)处理器22可以包括ui模块14、用户应用模块16和操作系统36。
38.电极24可以在介电材料的任一侧上形成行和列电极的矩阵。电极24可以由诸如铟
锡氧化物(ito)的透明导电材料构造而成。这样,电极24可以被置于显示组件(例如,显示面板28)的上方并且无法被用户所看到。该介电材料可以是玻璃衬底。
39.触摸控制器26可以执行一个或多个操作以经由电极24感测用户输入。例如,触摸控制器26可以输出跨电极的电压信号并且感测所导致的(例如,由于手指或其它物体存在于存在敏感显示器12之上或附近所引发的)电容变化。当电极24中的一个电极被电压信号所驱动时,可以测量该电极针对其它物体(诸如人类手指、另一个电极或接地)的固有电容。周边环境的变化对电极的固有电容的变化有所影响。触摸控制器26可以将所感测用户输入的指示输出至计算设备2的一个或多个其它组件,诸如ui模块14。
40.显示面板28可以是能够渲染图形用户界面的显示设备。显示面板28的示例包括但并不局限于液晶显示器(lcd)、点阵显示器、发光二极管(led)显示器、有机发光二极管(oled)显示器、电子墨水,或者能够向计算设备2的用户输出可视信息的类似的单色或彩色显示器。
41.显示控制器30可以执行一种或多种操作以管理显示面板28的操作。例如,显示控制器30可以接收来自ui模块14的指令,该指令使得显示控制器30控制显示面板28以渲染特定的图形用户界面。
42.如上文所讨论的,ui模块14可以充当计算设备2的各个组件之间的中介以基于uic 10所检测到的用户输入作出决定并且响应于该用户输入在uic 10处生成输出。如图2中所示,ui模块14可以包括触摸驱动器32和显示驱动器34。触摸驱动器32可以与触摸控制器26和操作系统36进行交互以处理经由存在敏感显示器12所感测到的用户输入。显示驱动器36可以与显示控制器30和操作系统36进行交互以处理输出以便在显示面板28处进行显示,该输出可以基于经由电极24所接收到的用户输入而有所改变。
43.操作系统36或者其组件可以管理应用与计算设备2的用户之间的交互。如图2的示例中所示,操作系统36可以管理用户应用模块16和计算设备2的用户之间的操作。在一些示例中,ui模块14可以被认为是操作系统36的组件。
44.如上文所讨论的,存在敏感显示器12可以使用自电容扫描和互电容扫描之一或二者来检测用户输入。特别地,电极24、触摸控制器26和触摸驱动器32可以共同进行操作以基于互电容扫描生成互电容数据以及基于自电容扫描生成自电容数据。下文参考图3讨论自电容扫描的进一步细节。下文参考图4讨论互电容扫描的进一步细节。
45.图3是图示依据本公开一种或多种技术的由计算设备的存在敏感显示器所生成的示例自电容数据的概念图。参考图1和2的计算设备2对图3的自电容数据300进行讨论。然而,其它计算设备可以生成自电容数据300。
46.为了执行自电容扫描(也被称作表面电容扫描),触摸控制器26可以利用信号驱动电极24中的一个电极并且测量跨该整个电极的电容(例如,关于接地)。当另一个导电物体接近该电极时,在它们之间形成电容器——减小了该电极与接地之间的电容。触摸控制器26通过在每个方向(例如,所有的行并且接着所有的列)驱动电极24中的所有电极并且测量它们的电容来测量该电容。在电极24包括r行电极和c列电极的情况下,自电容扫描产生r c个测量,它们被统称为自电容数据300。
47.图3的自电容数据300可以表示由存在敏感显示器12在用户执行图1中所示的捏合手势时所测量的自电容数据。如图3中所示,自电容数据300包括行电容值302和列电容值
304。对于行电容值302和列电容值304而言,较暗的单元指示较高的数值。如能够在行电容值302和列电容值304中所看到的,通过将他们的手指放在定位18a和18b处,用户可以引发更高的电容值。
48.图4是图示依据本公开一种或多种技术的由计算设备的存在敏感显示器所生成的示例互电容数据的概念图。参考图1和2的计算设备2对图4的互电容数据400进行讨论。然而,其它计算设备可以生成互电容数据400。
49.为了执行互电容扫描,触摸控制器26可以利用存在于电极24中处在它们重叠的位置(即,单元)的行和列电极之间的固有电容耦合。例如,触摸控制器26可以驱动电极24的单个电极(例如,行)并且测量电极24的相交电极(例如,列)上的电容。触摸控制器26可以重复该过程直至所有单元都已经被感测。在电极24包括r行电极和c列电极的情况下,互电容扫描产生r
×
c个测量,它们被统称为互电容数据400。对于互电容数据400而言,较暗的单元指示较高的数值。
50.自电容感测可以是用于感测存在敏感显示器12附近存在接触的快速且有效的方法。然而,通过测量其整体之中的每个电极,自电容感测无法沿每个电极对接触的位置进行感测。即使利用所有行和所有列一起的测量,在存在多个接触时,自电容感测也受到“拖影”效应的影响。也就是说,每个接触将导致最接近的行电极和最接近的列电极的电容下降。当存在多于一个的接触时,将在每个轴上感测到多个下降,这将会形成除了真实的接触点之外的“拖影”接触点(如图8中所示)。
51.互电容感测可能比自电容感测更慢且不如其有效,原因在于互电容感测涉及到每个单元单独地感测。然而,互电容感测生成面板的完整“图像”,这可以允许触摸控制器26清晰地分离每个接触。
52.图5是依据本公开一种或多种技术的互电容数据的裁剪集合。图5的互电容数据500可以表示围绕接触(例如,手指接触)的互电容数据的区域。如图5中所示,通过将诸如手指的输入物体接近于存在敏感显示器,若干单元的电容会有所改变。如本文所讨论的,基于这些电容的改变,触摸控制器26可以使用互电容数据识别触摸接触。针对每个所识别的触摸接触,触摸控制器26可以识别出形心和被覆盖单元。在图5的示例中,触摸控制器26可以将形心识别为形心502并且将被覆盖单元识别为所有非白色单元(例如,具有大于阈值的电容值的所有接触形心的单元)。
53.图6是图示依据本公开一种或多种技术的计算设备利用自电容扫描和互电容扫描两者以接收用户输入的示例操作的时间线。如图6所示,触摸控制器26可以以一些规律间隔(例如,每隔8毫秒)执行自电容扫描(ss)以生成自电容数据。触摸控制器26可以分析该自电容数据以确定是否能够检测到任何接触。例如,触摸控制器26可以在行电容值302中的至少一个数值超出阈值和/或列电容值304中的至少一个数值超出阈值的情况下确定可以检测到接触。
54.响应于在自电容数据中检测到至少一个接触,触摸控制器26可以执行互电容扫描(ms)以生成互电容数据。触摸控制器26可以分析该互电容数据以识别触摸点。例如,触摸控制器26可以互电容数据中的一个数值大于阈值的情况下将该数值识别为触摸点。在一些示例中,触摸控制器26可以利用图像处理算法(例如,分水岭)将互电容数据分割为区域,其中每个区域有一个触摸点。如上文所讨论的,触摸控制器26可以将触摸点的指示输出至计算
设备2的一个或多个其它组件,诸如(多个)处理器22。
55.然而,响应于并未在自电容数据中检测到任何接触,触摸控制器26可以免于执行互电容扫描。以这种方式,触摸控制器26可以利用自电容扫描作为初步的低分辨率触发器以便有选择地执行更高分辨率的互电容扫描。通过执行初步的自电容扫描,该触摸控制器可以在面板之上/附近没有接触的情况下消除互电容扫描的功率和处理成本。
56.如图6中所示,在前两次扫描中,触摸控制器26可以基于自电容数据而检测到接触。这样,在前两次扫描中,触摸控制器26可以执行后续的互电容扫描。该互电容扫描的结果被处理并报告给计算设备2的其它组件。然而,由于在第三次扫描中并未检测到接触,所以触摸控制器26可以省略互电容扫描的执行。
57.在用户交互期间,用户手指(例如,相对于存在敏感显示器12)的运动可以是任意的高带宽信号。例如,当在阅读文档的同时经其滚动时,用户的手指可以以~200mm/s移动;当经过长的事项列表快速滚动时,用户的手指可以以~400mm/s移动。类似地,用户的手指可能极其快速地改变其方向或动态(速度、加速度等)。当计算设备2无法足够快地感测这些变化或对其作出响应时,延时就变得能够被用户所感知并且使得他们的体验退化。
58.例如,在图6的示例中,存在敏感显示器12上的输入可以每隔8ms(~120hz)被采样。如果用户的手指以200mm/s拖拽存在敏感显示器12上的对象,则该采样间隔意味着手指会在触摸控制器26观察到其新的位置之前行进1.6mm。在一些情况下,针对该样本作出响应的附加处理可能要再花费24ms:总共是32ms,或者6.4mm的行进。
59.用户的手指与被拖拽对象之间的此间隙可能会被感知到并且可能使得用户体验退化。例如,如果用户的手指突然停止,则该对象将随着它“追上”手指而继续移动,或者在一些延时补偿的技术的情况下,该对象可能超越(overshoot)手指(例如,因为计算设备2无法足够快地对输入变化作出反应)。用户可能必须提供进一步的输入以校正该超越。
60.一些延时补偿技术利用触摸传感器所报告的(例如,触摸控制器26和/或触摸驱动器32所报告的)高分辨率点的历史序列来估计运动参数,并且执行一些形式的插值或外推。例如,可以基于最后报告的点以及根据先前报告对最后报告的点的速度和/或加速度的估计外推出新的点。
61.利用所报告的点进行运动估计的延时补偿技术可能受到一种或多种缺陷的影响。作为一个示例,触摸控制器26和/或触摸驱动器32可以以非常低的频率(通常为60或120hz)报告点。这意味着延时补偿算法可以基于至少迟了8ms的数据来估计手指位置,并且因此在用户的手指突然改变方向时受到不定期出现的超越/滞后(undershooting)的伪像的影响。作为另一个示例,触摸控制器26和/或触摸驱动器32所报告的触摸点可以为了稳定性而被优化并且可能不适于加以区别。虽然每个所报告的触摸点都是定位的良好估计,但是由于触摸处理算法的设计约束,它们的时间顺序却并不是运动的良好估计。为了根据触摸点估计运动(例如,速度),可能需要应用可观的滤波——这引入更多的延时。作为这些缺陷的结果,许多系统并未采用基于运动估计的延时补偿技术。
62.依据本公开的一种或多种技术,一种计算设备可以利用存在敏感显示器的各种属性来获得用户输入中的动态运动(例如,其方向和速度)的估计。作为一个示例性属性,自电容扫描和互电容扫描之间的间隔(例如,1至3ms)可能明显比连续的互电容扫描之间的间隔(例如,8至16ms)更短。作为另一个示例属性,来自自电容扫描的数据(即,自电容数据)可以
被用来使用互电容数据作为“掩码”而重构单元级别的数据。
63.在高的级别,自电容扫描和互电容扫描是用户输入相隔1至3ms的两个快照(即,300至1000hz的有效采样率)。如果可以在每个之内估计相对应的触摸位置,则可以推导出相对应触摸位置的运动的高频估计。使用自电容数据和互电容数据二者来估计瞬时运动可能会优于使用连续的互电容扫描(即,至少相隔8ms)估计瞬时运动,这是因为使用自电容数据和互电容数据二者估计瞬时运动可能对用户的输入动态的变化(例如,突然停止)更具响应性。使用该估计的延时补偿技术(例如,外推)因此可以产生更加准确且具响应性的结果。
64.如上文所讨论的,自电容数据可以被用作执行互电容扫描的触发器,但是由于拖影而可能并不被用来确定运动或实际的触摸点位置。由此,自电容数据通常在常规触摸处理期间被丢弃。
65.依据本公开的一种或多种技术,计算设备2可以基于自电容数据确定运动和/或实际触摸点位置。例如,触摸控制器26可以基于自电容数据而确定重构自电容数据。触摸控制器26可以利用互电容数据以掩蔽该重构自电容数据以便减少或消除拖影接触点。触摸控制器26可以利用被掩蔽的重构自电容数据来估计互电容数据中识别的触摸位置的运动。以这种方式,计算设备2可以利用自电容数据和互电容数据二者来估计触摸位置的运动。
66.图7是图示依据本公开一个或多个方面的示例计算设备执行延时补偿的示例操作的流程图。在图1和2的计算设备2的背景下对计算设备2的操作进行描述。
67.计算设备2可以执行自电容扫描以生成自电容数据(702)。例如,触摸控制器26可以以上文参考图3所讨论的方式使用存在敏感显示器12的电极24来执行自电容扫描。如上文所讨论的,自电容数据可以包括行电容值和列电容值(例如,行电容值302和列电容值304)。触摸控制器26可以在第一时间t1执行自电容扫描。
68.计算设备2可以执行互电容扫描以生成互电容数据(704)。例如,触摸控制器26可以以上文参考图4所讨论的方式使用存在敏感显示器12的电极24来执行互电容扫描。如上文所讨论的,互电容数据可以包括存在敏感显示器12的每个单元的电容值。触摸控制器26可以在第二时间t2执行互电容扫描。
69.计算设备2可以基于该互电容数据识别一个或多个互电容触摸位置(706)。例如,触摸控制器26可以分析该互电容数据以识别超出阈值电容值的数值集群。所识别集群中的每一个可以表示一个互电容触摸位置。针对每个相应的所识别集群,触摸控制器26可以识别该触摸位置的相应估计(例如,该集群的形心)以及该触摸位置的相应区域(例如,存在敏感显示器的哪些单元被相应的触摸位置所覆盖)。在图4的示例中,触摸控制器26可以将触摸位置402a和402b识别为互电容触摸位置。
70.计算设备2可以基于该自电容数据而生成重构自电容数据(708)。如上文所提到的,该自电容数据可以包括行和列数据。为了将该数据与互电容数据(其包括每个单元的数值)相比较,可能需要建立针对每个单元的数值。该自电容数据可以被认为是表示未知矩阵的边际和的一种运输多面体(transportation polytope)。该未知矩阵的数值可以被认为是该重构自电容数据的示例。
71.虽然针对该未知矩阵可能存在许多解,但是触摸控制器26可以通过跨其相应的长度均匀地分布行和列自电容数据并且在每个单元处将它们相乘来获得估计。例如,触摸控制器26可以依据以下等式而由自电容行数据r和自电容列数据c而针对单元(i,j)确定重构
自电容值a:
72.a
i,j
=r
i
/|c|
·
c
j
/|r|
73.注意到,虽然以上等式可能并不满足真实的运输多面体解的条件,然而该数值分布可能是充分的。
74.图8是图示依据本公开一种或多种技术的基于图3的自电容数据所生成的重构自电容数据的概念图。如上文所讨论的,自电容数据在存在多个触摸位置的情况下可能受到拖影的影响,该拖影可能转移至重构自电容数据。如图8中所示,重构自电容数据800包括触摸位置802a

802d。触摸位置802a和802d可以是真实的触摸位置,而触摸位置802b和802c则是拖影触摸位置。
75.在一些示例中,触摸控制器26可以针对所有单元确定重构自电容数据。在其它示例中,触摸控制器26可以针对单元的子集确定重构自电容数据。例如,触摸控制器26可以针对包括被每个互电容触摸位置的相应区域所覆盖的单元的单元子集确定重构自电容数据。以这种方式,触摸控制器26可以去除拖影触摸位置802b和802c。
76.计算设备2可以基于该重构自电容数据和互电容触摸位置识别一个或多个自电容触摸位置(710)。该一个或多个互电容触摸位置中的每个触摸位置可以对应于该一个或多个自电容触摸位置中的触摸位置(然而,由于拖影,该一个或多个自电容触摸位置中的一些触摸位置可能并不对应于该一个或多个互电容触摸位置中的触摸位置)。例如,触摸控制器26可以分析该重构自电容数据以识别超出阈值电容值的数值的集群。每个所识别的集群可以表示候选重构自电容,其可能是真实触摸位置或拖影触摸位置。针对每个相应的所识别集群,触摸控制器26可以识别候选触摸位置的相应估计(例如,集群的形心)以及候选触摸位置的相应区域(例如,存在敏感显示器12的哪些单元被相应的候选触摸位置所覆盖)。在图8的示例中,触摸控制器26可以将触摸位置802a

802d识别为候选重构自电容触摸位置。
77.触摸控制器26可以执行一个或多个动作以去除拖影位置。作为一个示例,如上文所讨论的,触摸控制器26可以针对被每个互电容触摸位置的相应区域所覆盖的单元的单元子集确定重构自电容数据。作为另一个示例,触摸控制器26可以针对互电容数据中的每个相应集群识别重构自电容数据中具有与该互电容数据中的相应集群的形心最接近的形心的相应集群。针对该互电容数据中的相应集群在该重构自电容数据中所识别的集群可以被认为表示与该互电容数据中的相应集群所表示的互电容触摸位置相对应的重构自电容触摸位置。在图8的示例中,触摸控制器26可以将围绕触摸位置802a的单元的集群识别为对应于互电容触摸位置402a,并且将围绕触摸位置802d的单元的集群识别为对应于互电容触摸位置402b。以这种方式,触摸控制器26可以识别重构自电容数据中与一个或多个互电容触摸位置中的位置相对应的一个或多个触摸位置。该重构自电容数据中所识别的触摸位置可以被称作重构自电容触摸位置或自电容触摸位置。
78.计算设备2可以确定一个或多个互电容触摸位置和一个或多个自电容触摸位置的相对应触摸位置之间的运动(712)。如上文所讨论的,该自电容数据和互电容数据可以分别在时间t1和t2被捕获。(基于在时间t1捕获的自电容数据所获得的)自电容触摸点中的相对应点与(基于在时间t2捕获的互电容数据所获得的)互电容触摸点中的点之间的运动可以揭示输入物体(例如,用户的手指)在扫描之间的运动。
79.图9是图示依据本公开一种或多种技术的随着输入物体在存在敏感显示器上向下
移动时的示例电容扫描数据的概念图。图9包括互电容数据902、重构自电容数据904和差异数据906。互电容数据902可以表示经由上文参考图4所讨论的技术捕获的互电容数据。重构自电容数据904可以表示上文参考图8所讨论的技术捕获的重构自电容数据。差异数据906可以表示重构自电容数据904和互电容数据902之间的差异。
80.图10是图示依据本公开一种或多种技术的随着输入物体在存在敏感显示器上向上移动时的示例电容扫描数据的概念图。图10包括互电容数据1002、重构自电容数据1004和差异数据1006。互电容数据1002可以表示经由上文参考图4所讨论的技术捕获的互电容数据。重构自电容数据1004可以表示上文参考图8所讨论的技术捕获的重构自电容数据。差异数据1006可以表示重构自电容数据1004和互电容数据1002之间的差异。
81.如能够从差异数据906和1006所看到的,该差异数据在运动(差异数据906中的向下运动和差异数据1006中的向上运动)的前沿存在峰值。这被预期为输入物体(例如,手指)正在以该方向移动并且互电容数据在自电容数据之后被捕获。
82.在一些示例中,诸如在互电容数据和重构自电容数据的绝对值可能处于不同尺度上的情况下,触摸控制器26可以将该重构自电容数据重新缩放至互电容数据的信号水平,并且如下在计算差异时将该重构自电容数据保持在[0,∞):
[0083][0084][0085]
其中rss*是经重新缩放且保持的重构自电容数据,rss是未经缩放的重构自电容数据,ms是互电容数据,并且difference是差异数据。
[0086]
在一些示例中,触摸控制器26可以单独对互电容数据中所识别的每个触摸区域执行缩放(例如,为了更大的精度)。
[0087]
触摸控制器26可以使用任意的各种技术来估计重构自电容触摸位置和互电容触摸位置之间的运动。作为一种示例技术,触摸控制器26可以利用互电容数据掩蔽重构自电容数据。例如,触摸控制器26可以将重构自电容数据中与互电容数据中具有小于阈值的数值的单元相对应的单元的数值归零。触摸控制器26可以将在重构自电容数据中找到的每个触摸位置(即,自电容触摸位置)与在互电容触摸位置中识别的位置(例如,最接近位置)进行配对。触摸控制器26可以确定配对位置之间的矢量,该矢量表示该配对中的重构自电容触摸位置与该配对中的互电容触摸位置之间的运动的方向和量级。
[0088]
作为另一种示例技术,触摸控制器26可以基于该差异数据对互电容触摸位置进行调节。例如,触摸控制器26可以将每个相应的互电容触摸位置移位一个权重,该权重根据差异数据中与相应互电容触摸位置所覆盖的单元相对应的单元计算得出。在图9的示例中,差异数据906会将互电容触摸位置的权重降低。在图10的示例中,差异数据1006会将互电容触摸位置的权重提高。换句话说,触摸控制器26在该运动的方向上对互电容触摸位置进行移位,移位的方向和量级是该运动的估计。
[0089]
计算设备2可以基于该运动而对一个或多个互电容触摸位置执行延时补偿(714)。给定来自于互电容数据的触摸位置估计以及该运动估计,触摸控制器26可以通过在该运动的方向上将该互电容触摸位置前移来执行延时补偿。补偿的量可以取决于系统的延时目标值和主观的用户体验。在一些示例中,该延时目标值可以是8~16ms。
[0090]
在一些示例中,触摸控制器26可以使用估计的运动方向和速度将触摸位置的定位
外推该延时目标。在一些示例中,触摸控制器26可以使用更高阶导数(例如,与线性外推相反)。利用更高阶导数可以导致更加平滑的行为。在一个示例中,触摸控制器26可以如下使用更高阶导数(例如,估计加速度、外推速度和外推定位):
[0091]
p
*
=p vδt (1/2)aδt2[0092]
其中p
*
是经补偿的触摸位置,p是估计静态触摸位置,v是估计速度,a是估计加速度,并且

t是延时目标。
[0093]
针对特定互电容触摸位置的补偿触摸位置可以表示导致该特定互电容触摸位置的输入物体在未来时间将会处于何处的预测。该未来时间可以由系统的延时目标值所表示。
[0094]
系统中可能存在一些引入抖动的固有噪声(主要是电噪声)。为了解决该噪声/抖动,触摸控制器26可以对这些运动估计(和/或相当保守的延时目标)应用滤波。作为一个示例,触摸控制器26可以通过曲线拟合、泰勒级数或其它线性系统来约束该估计。作为另一个示例,触摸控制器26可以通过kalman滤波器来处理经延时补偿的输出以估计并去除系统噪声。
[0095]
以下带编号的示例将阐述本公开的一个或多个方面。
[0096]
示例1.一种方法,包括:由计算设备的一个或多个处理器以及基于该计算设备的存在敏感显示器所生成的互电容数据识别一个或多个互电容触摸位置;由该一个或多个处理器以及基于该存在敏感显示器所生成的自电容数据识别一个或多个自电容触摸位置,该一个或多个互电容触摸位置中的每个触摸位置对应于该一个或多个自电容触摸位置中的一个触摸位置;由该一个或多个处理器确定该一个或多个互电容触摸位置和该一个或多个自电容触摸位置的相对应触摸位置之间的运动;由该一个或多个处理器以及基于所确定的运动调节该一个或多个互电容触摸位置以获得一个或多个经调节的互电容触摸位置;并且由该一个或多个处理器利用该一个或多个经调节的互电容触摸位置作为用户输入。
[0097]
示例2.根据示例1所述的方法,其中识别该一个或多个自电容触摸位置包括:基于该一个或多个互电容触摸位置和该自电容数据识别该一个或多个自电容触摸位置。
[0098]
示例3.根据示例2所述的方法,其中识别该一个或多个自电容触摸位置进一步包括:基于该自电容数据确定重构自电容数据;并且将该重构自电容数据中与该一个或多个互电容触摸位置中的位置相对应的一个或多个触摸位置识别为该一个或多个自电容触摸位置。
[0099]
示例4.根据示例1

3中任一项所述的方法,其中调节该一个或多个互电容触摸位置中的特定互电容触摸位置包括:基于该运动和延时目标值预测该特定互电容触摸位置的未来位置。
[0100]
示例5.根据示例1

4中任一项所述的方法,其中利用该一个或多个经调节的互电容触摸位置作为用户输入包括:向在该计算设备处执行的应用提供该经调节的互电容触摸位置作为用户输入。
[0101]
示例6.根据示例5所述的方法,进一步包括:基于从该应用所接收的指令而输出图形用户界面以在所述存在敏感显示器处进行显示;并且基于从该应用所接收的指令而输出基于该用户输入修改的经更新的图形用户界面以在所述存在敏感显示器处进行显示。
[0102]
示例7.根据示例1

6中任一项所述的方法,其中该存在敏感显示器包括电容触摸
面板。
[0103]
示例8.根据示例1

7中任一项所述的方法,其中该一个或多个处理器包括触摸控制器和应用处理器。
[0104]
示例9.根据示例8所述的方法,其中利用该一个或多个经调节的互电容触摸位置作为用户输入包括:由该触摸控制器以及向该应用处理器输出该一个或多个经调节的互电容触摸位置。
[0105]
示例10.一种计算设备,包括:存在敏感显示器;以及一个或多个处理器,被配置为执行根据示例1

9中任意组合所述的方法。
[0106]
示例11.一种存储指令的非暂时性计算机可读存储介质,该指令在被执行时使得计算设备的一个或多个处理器执行根据示例1

9中任意组合所述的方法。
[0107]
在一个或多个示例中,所描述的特征可以以硬件、软件、固件或者其任意组合来实施。如果以软件来实施,则该功能可以作为一个或多个指令或代码而存储在计算机可读介质上或者通过其进行传送并且由基于硬件的处理单元所执行。计算机可读介质可以包括计算机可读存储介质,其对应于诸如数据存储介质的有形介质,或者是包括促成计算机程序例如根据通信协议而从一个地方传输至另一个地方的任意介质的通信介质。以这种方式,计算机可读介质通常可以对应于(1)有形的计算机可读存储介质,其是非暂时性的,或者(2)诸如信号或载波的通信介质。数据存储介质可以是能够有一个或多个计算机或者一个或多个处理器所访问以获取指令、代码和/或数据结构以便实施本公开中所描述的技术的任意可用介质。计算机程序产品可以包括计算机可读介质。
[0108]
作为示例而非限制,这样的计算机可读存储介质可以包括ram、rom、eeprom、cd

rom或者其它光盘存储、磁盘存储或者其它磁性存储设备、闪存,或者任意其它能够被用来以指令或数据结构的形式存储所期望程序代码并且能够被计算机所访问的介质。而且,任意连接都被适当称之为计算机可读介质。例如,如果指令使用同轴线缆、光纤线缆、双绞线、数字订户线路(dsl),或者诸如红外、无线电和微波的无线技术而从网站、服务器或者其它远程源进行传送,则该同轴线缆、光纤线缆、双绞线、dsl,或者诸如红外、无线电和微波的无线技术包括在介质的定义之内。然而,应当理解的是,计算机可读存储介质和数据存储介质并不包括连接、载波、信号或者其它瞬态介质,而是指代非瞬态的有形存储介质。如本文所使用的磁盘或碟片包括致密盘(cd)、激光盘、光盘、数字多功能盘(dvd)、软盘和蓝光盘,其中磁盘通常磁性地在线数据,而碟片则利用激光光学地在线数据。以上的组合也应当被包括在计算机可读介质的范围之内。
[0109]
指令可以由一个或多个处理器来执行,诸如一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程逻辑阵列(fpga)或者其它等同的集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可以是指以上的任意结构或者适于实施本文所描述的技术的任意其它结构。此外,在一些方面中,本文所描述的功能可以在专用硬件和/或软件模块内提供。而且,该技术可以完全以一个或多个电路或逻辑元件来实施。
[0110]
本公开的技术可以以各种设备或装置来实施,包括无线手机、集成电路(ic)或者ic的集合(例如,芯片组)。各种组件、模块或单元在本公开中所描述是为了强调被配置为执行所公开的技术的设备的功能方面,而并不一定要求由不同硬件单元来实现。相反,如上文所描述的,各个单元可以被组合在硬件单元中或者由交互操作的硬件单元的集合结合适当
软件和/或固件来提供,上述硬件单元包括如上文所描述的一个或多个处理器。
[0111]
已经对公开的各个示例例进行了描述。所描述的系统、操作或功能的任何组合都被预期。这些和其它示例都处于以下权利要求的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜