使用受扰光来确定触摸位置的制作方法

文档序号:6479947阅读:171来源:国知局
专利名称:使用受扰光来确定触摸位置的制作方法
使用受扰光来确定触摸位置
背景技术
各种类型的计算机使用触摸屏来从终端用户接收输入。通常,终端用户使用手指 或其它工具来进行与触摸屏的物理接触。被耦合到触摸屏的计算机检测该物理接触并相应 地进行反应。虽然触摸屏通常适合于检测来自单个手指或其它工具的输入,但其常常不能 正确地检测和处理来自多个此类工具的同时输入。此外,触摸屏需要使用不期望的大量空 间的屏幕后电路。


为了对本发明的示例性实施例进行详细说明,现在将对附图进行参考,在附图 中
图1示出依照实施例的说明性触摸屏台式计算机系统; 图2示出依照实施例的图1的系统中的触摸屏显示器的三维视图; 图3示出依照实施例的图2的显示器的横截面图; 图4示出依照实施例的图2的显示器的另一横截面图; 图5A示出依照实施例的图2的显示器上的感测网格的概念性图示; 图5B示出依照实施例的操作中的图2的显示器的三维视图; 图6示出依照实施例的实现本文公开的技术的系统的说明性方框图; 图7示出依照实施例的本文公开的说明性方法的状态图; 图8A示出依照实施例的实现本文公开的技术的另一说明性系统的说明性方框图; 图8B 8C示出依照实施例的由图8A的系统检测的实际触摸点和/或幻影(phantom) 触摸点;
图9示出依照实施例的实现本文公开的技术的一般计算机系统的说明性方框图;以及 图10示出依照实施例的在图9的一般计算机系统中实现的软件架构的概念性图示。注释和命名
某些术语遍及以下说明和权利要求被使用以指代特定的系统部件。如本领域的技术人 员将认识到的,各个公司可以用不同的名称来指示部件。本文并不意图区别在名称而不是 功能方面不同的部件。在以下讨论和权利要求中,以开放的方式来使用术语“包括”和“包 含”,并且因此应将其解释为意指“包括,但不限于...”。另外,术语“耦合”或“耦接”意图 指直接、间接、光学或无线的电连接。因此,如果第一设备耦合到第二设备,则该连接可以是 通过直接的电连接、通过经由其它设备和连接的间接的电连接、通过光学电连接或通过无 线电连接。术语“邻近”可以意指“紧挨着”或“附近”。例如,如果部件B位于部件A和C 之间,则可以将部件C描述为邻近部件A和B这两者。
具体实施例方式以下讨论针对本发明的各种实施例。虽然这些实施例中的一个或多个可以是优选 的,但不应将公开的实施例解释为或以其它方式用作限制包括权利要求在内的本公开的范围。另外,本领域的技术人员将理解的是,以下说明具有广泛的应用,并且任何实施例的讨 论仅仅意味着是对该实施例的示例,并且并不意图暗示包括权利要求在内的本公开的范围 局限于该实施例。本文公开的是能够检测多个、同时的触摸的触摸屏系统。该系统包括多个相邻层 玻璃(或“波导”)层、光源/检测器层及玻璃层和源/检测器层之间的反射镜层。源/检测 器层包括沿着该层的一侧设置的多个光源和沿着该层的不同侧(例如,相邻且不相对)设置 的多个光检测器。反射镜层包括多个反射镜。每个反射镜与源/检测器层的不同光源或检 测器相邻。从光源发射的光被从反射镜层中的反射镜反射离开并进入玻璃层中。离开玻璃 层的光被从反射镜层中的反射镜反射离开,并且被源/检测器层中的光检测器检测到。由 于光源和检测器位于玻璃层“后面”而不是沿着玻璃层的周边,所以节省了空间。在工作中,按照快速发射、菊花链序列来激活光源。在每个光源被激活期间的时间 段中,也以快速发射、菊花链序列来激活每个光检测器。此光发射/检测序列本质上形成快 速并反复地对触摸屏进行“扫描”以检测触摸的“网格”。因此,例如,当手指在位置“A”处 触摸触摸屏时,与位置A对准的光源在手指能够从触摸屏移走之前发射光。手指使光散开, 因此与位置A相关联的光检测器检测到弥散光。触摸屏确定发射该光的光源和检测到该弥 散光的光检测器相“交叉”的点。此交叉点被确定为触摸位置。相同的技术可以用于任何 数目的同时触摸。现在描述本技术的各种实施例。图1示出说明性计算机系统100。计算机系统100包括显示器102和机箱104,机 箱104容纳各种计算机部件,包括处理器、存储器、视频卡等。在至少某些实施例中,显示器 102包括触摸屏显示器。在某些此类实施例中,显示器102是主输入设备,从而使得键盘、鼠 标等是不必要的。在其中显示器102包括触摸屏显示器的实施例中,显示器102可以是可 接收任何类型的刺激,包括人触摸、手写笔等。虽然计算机系统100在图1中被示为台式计 算机,但计算机系统100的变形体可以包括笔记本计算机、个人数字助理(PDA)、便携式音 乐播放器、移动电话、电视等。本文公开的技术可以在某些或所有此类设备中实现。图2示出图1的显示器102的详细三维视图。显示器102包括多个层。具体而言, 显示器102包括玻璃层200、与玻璃层200邻近的反射镜层202以及邻近玻璃层200和反射 镜层202的光源/检测器层(LSDL)204。还与玻璃层200邻近的是显示表面,诸如液晶显示 器或等离子体显示器(图3 4中所示)。也称为“触摸屏”或“波导层”的玻璃层200包括 能够引导光(例如,来自预定光波段的光)通过玻璃层200的任何适当类型的玻璃。在至少 某些实施例中,玻璃层200在没有过度吸收的情况下使用称为全内反射的技术来引导光。LSDL 204包括沿着LSDL 204的一侧(例如,边缘)布置的多个光源212(例如,红外 激光二极管)和沿着LSDL 204的另一侧布置的多个检测器210。虽然可以根据需要将光源 212和检测器210布置在LSDL 204的任何一侧上,但在至少某些实施例中,光源212全部被 设置在LSDL 204的共同侧且检测器210全部被设置在LSDL 204的另一共同侧。此外,在 某些实施例中,包括光源212的LSDL 204的(一或多)侧与包括检测器210的LSDL 204的 (一或多)侧基本上垂直。光源212可以包括例如红外发光二极管、红外激光二极管等。检 测器210可以包括任何适当类型的光检测器,诸如互补金属氧化物半导体(CMOS)传感器。邻接或至少邻近玻璃层200和LSDL 204的反射镜层202包括多个反射镜对214。 在某些实施例中,反射镜对214的总数目与检测器210和光源212的总数目相匹配,其中每个检测器210或光源212对应一个反射镜对。在必要时可以在反射镜层202中布置反射镜 对214以实现将光适当地引入到玻璃层200中和将光从玻璃层200适当地提取出来。然 而,在至少某些实施例中,每个反射镜对214被直接设置在检测器210或光源212上方(例 如,更接近玻璃层200)。在某些实施例中,可以使用一对基本上圆筒形的反射镜来为沿着显 示器102的一侧的多个检测器或光源促进将光从玻璃层200提取出来或将光引入到玻璃层 200中。换言之,在此类实施例中,一对圆筒形反射镜可以跨越反射镜层202的长度,从而为 某些或所有光源212提供服务。同样地,另一对圆筒形反射镜可以跨越反射镜层202的宽 度,从而为某些或所有检测器210提供服务。在某些此类实施例中,可以在一对反射镜中的 反射镜之间设置挡板以缓解光散射。由于显示器102包括触摸屏,并且还由于如下所述地使用检测器210、光源212 和反射镜对214来检测触摸(例如人手指、手写笔),所以每个检测器、每个光源和每个反射 镜对之间的间隔可以大致上相当于平均的人类指尖的宽度和/或长度(例如,最小在0. 01 mm 10 mm之间)。在其它实施例中,每个检测器之间、每个光源之间和/或每反射镜之间 的间隔可以大致上相当于为了与显示器102 —起使用而制造的手写笔尖的宽度(例如,最 小在0.25 2 mm之间)。还可以使用其它宽度。如图6所示和如下文进一步描述的,检测器210和光源212耦合到机箱104内的电 路逻辑。机箱104中的电路逻辑为检测器210和光源212供电。电路逻辑还控制光源212 (例如,将光源切换为开启/关闭)和检测器210 (例如,将检测器切换为开启/关闭并从检 测器接收数据)。在某些实施例中,电路逻辑被容纳在显示器102中而不是机箱104中。在工作中,光源212发射光,诸如红外激光。此光被反射镜对214反射并提供给玻 璃层200。光波形如下所述地在玻璃层200内行进。当计算机系统100的用户(例如,使用 手指、手写笔或其它合适的装置)触摸显示器102时,玻璃层200内的波形在玻璃层200与 手指或手写笔之间的接触点处被干扰。由于玻璃层200内的光使用全内反射,所以与玻璃 层200的接触一或者乃至与玻璃层200的接近一引起玻璃层200内的光图案的扰动。此类 扰动被称为“受抑全内反射”。检测器210中的一个检测器检测此扰动并经由通知信号将其 报告给机箱104中的电路逻辑。通过确定哪个光源和哪个检测器对应于该扰动,电路逻辑 可以确定玻璃层200上的触摸的精确位置。然后,电路逻辑根据需要将此位置信息供应给 软件应用程序。现在进一步阐明此检测技术。图2中的虚线206对应于图3中所示的显示器102的横截面图。除示出图2的部 件之外,图3还示出上面提到的显示表面304。在至少某些实施例中,玻璃层200在玻璃层 200与显示表面之间的其表面上包括涂层,以使得上述玻璃层200内的全内反射不会仅仅 由于与显示表面的接近而受到干扰或“受抑”。该涂层可以包括任何适当的透明材料,其具 有与玻璃层200的折射率不同的折射率,以使得玻璃层200到显示表面的接近不阻碍玻璃 层200的全内反射能力。如所示,在工作中,光源212朝着反射镜层202发射光。反射镜层202包括与光源 212对准的反射镜对214。反射镜对214包括两个部件一反射镜21 和另一反射镜214b。 在至少某些实施例中,这些反射镜部件是弯曲的。多个反射镜部件促进光贯穿玻璃层200 的传播。特别地,从光源212发射的光束首先撞击反射镜214a,反射镜21 朝着反射镜 214b反射该光束。继而,反射镜214b将光束反射到玻璃层200中。反射镜21 和214b相对于彼此成一角度,以使得当反射镜214b反射光束时,光束被以一定范围的角度引入到玻 璃层200中,其中该范围的每个角度小于发生全内反射所需的临界角。该角度范围是足够 宽的,以便使光波形充满玻璃层200中(即,防止光波形内的间隙)。具体而言,波形300和 302被引入玻璃层200中。波形300表示以全内反射所需的临界角引入的光。波形302表 示在小于上述临界角的期望的角度范围内引入的光。波形302被引入以充满或“填充”未 被波形300覆盖的任何间隙。同时,以在波形300和302的角度之间的角度进入的光使玻 璃层200的至少一部分充满光。在某些实施例中,由单个光源212发射的光未充满整个玻 璃层200,相反而是仅充满玻璃层200的一部分,如图5B中所示和下文所述的。图2中的虚线208对应于图4中所示的显示器102的横截面图。由玻璃层200上 的触摸引起的光的扰动被示出为说明性的光束401。反射镜层202包括反射镜对214。图 4的反射镜对214包括反射镜部件400a和400b。反射镜400b接收说明性的光束401并将 其反射至反射镜400a。继而,反射镜400a将说明性的光束401提供给检测器210。继而, 检测器210捕获该说明性的光束并将关于所捕获的光束的数据提供给显示器102和/或机 箱104中的电路逻辑。图5A示出通过如图2中所示的光源212和检测器210的布置形成在显示器102中 的概念性“检测网格”。图5A的图示是自顶向下的视图。概念性网格中的每个水平线表示 可以由光源212发射的离散光束。将这些光束共同地称为光束阵列500。为了易于参考和 讨论,为光束分配参考数字1 M。概念性网格中的每个垂直线表示离散的检测路径。受 到手指或手写笔干扰的光沿着检测路径行进到检测器210。将这些检测器路径共同地称为 检测器路径阵列502。为了易于参考和讨论,为检测器路径分配参考数字25 58。同时参考图2和5A,在工作中,计算机系统100使每个光源212轮流发射(即,发射 光并随后停止发射光)。因此,例如,对应于光束1的光源212将首先发射,之后是对应于光 束2的光源,之后是对应于光束3的光源,等等。通过这种方式,每个光源212将轮流发射, 从而使得在与光束M相关联的光源212发射之后,对应于光束1的光源212将再次发射。 换言之,光源212以“循环”方式发射。发射周期(即,光源发光期间的时间长度)可以是任 何适当的时间长度(例如,大约小于1皮秒 1毫秒)。延迟时段(即,光源停止发光的时间 与下一个光源开始发光的时间之间的时间长度)也可以具有任何适当的长度(例如,大约小 于1皮秒 1毫秒)。还可以使用其它速度。每当光源发射时,控制检测器210的电路逻辑以“循环”方式激活每个检测器210。 例如,在光束1的光源212发射的同时,每个检测器210被激活和去激活,以使得每个路径 25 58都被扫描以检测由显示器触摸引起的任何光扰动。在所有的检测器路径都已被扫 描之后,光束1的光源212停止发射,并且,作为替代,光束2的光源212发射。在光束2的 光源212发射的同时,以循环的方式再次扫描每个检测器路径25 58以检测由显示器触 摸引起的任何光扰动。该过程无休止地继续。当检测器210检测到光扰动时,检测器210 向其控制逻辑发送信号,从而将可能的触摸通知给该控制逻辑。检测周期(即检测器激活期 间的时间长度)可以是任何适当的时间长度(例如,大约小于1毫微秒 1秒)。检测延迟时 段(即,检测器关闭的时间与下一个检测器被激活的时间之间的时间长度)也可以具有任何 适当的长度(例如,大约小于1皮秒 1毫秒)。也可以使用其它速度。通过这种方式,光源 212和检测器210 —起工作以反复地对显示器102进行“扫描”以检测触摸。在至少某些实施例中,扫描图5A中所示的整个网格所需的时间(例如,小于1皮秒 1秒)小于手指或手 写笔在触摸期间在与显示器102的玻璃层200接触或在其附近所可能花费的最小时间量。仍参考图5A,示出了说明性的触摸点504。触摸点504指示显示器102上的以下 这样的位置,在该位置处,可能在与在显示器102上(例如,与软件应用程序相关联地)显示 的图形用户界面(GUI)相交互的同时已使用了手指、手写笔或其它装置。在工作中,在与光 束1 8相关联的光源的每次发射期间(使用检测器210)扫描每个检测器路径25 58之 后,可能没有检测到光扰动。然而,当与光束9相关联的光源212发射时,在触摸点504处 压在显示器102上的触摸使光受到干扰。当与检测器路径38相关联的检测器210检测到 受扰光时,检测器210向其电路逻辑发送通知信号。继而,电路逻辑确定1)哪个检测器210 和2)哪个光源212在检测时被激活。然后,电路逻辑确定与该检测器的检测路径和该光源 的光束相对应的网格上的交叉点。此交叉点被确定为触摸点。电路逻辑在必要时将该交叉 点转发到处理逻辑、软件应用程序等。图5B举例说明上述检测过程。如所示,光源212使用反射镜21 b来发射图 5A的光束9。手指506在触摸点504处触摸显示器102。该手指触摸使来自束9的光受到 干扰或“泄漏”,被示为受扰光508。使用反射镜2Hc d,检测器210(对应于图5A的检测 路径38)检测到受扰光508。然后,检测器210如上所述地生成并发送通知信号。还可以使 用上述技术来检测多个(例如,同时的)触摸。图6示出包括光源212和检测器210的显示器102。光源212和检测器210耦合 到显示控制逻辑602。显示控制逻辑602如上所述地控制光源212和检测器210。显示控 制逻辑602可以耦合到包括一个或多个应用程序606的存储器600。应用程序606在被执 行时使显示控制逻辑602执行上述功能中的至少某些功能,并且可以包括背景减除和/或 校准。显示控制逻辑602可以被容纳在计算机系统机箱104内或显示器102内。显示控制 逻辑602耦合到处理逻辑604。处理逻辑604处理计算机系统100的许多处理功能,诸如执 行操作系统、软件应用程序等。处理逻辑604可以执行存储在存储器610上的一个或多个 应用程序608,并且向应用程序提供所检测到的触摸信息。可以由显示控制逻辑602来处理 从检测器210接收到的触摸数据。在某些情况下,可以接收多个触摸。为了确保正确地解 释多个触摸,应用程序606分析与触摸相关联(例如触摸之间)的定时。虽然该技术在本文 中被描述为被编码到应用程序606上并由显示控制逻辑602来执行,但也可以使用应用程 序608和处理逻辑604。在某些实施例中,可以使用其它类似的应用程序和/或处理逻辑。 现在详细地描述该技术。图7示出依照实施例实现的说明性方法700的状态图。参考图6和7,方法700通 过在“等待输入状态”下等待输入(方框702)开始。例如,显示控制逻辑602可以处于空闲 或等待状态。如果显示控制逻辑602在显示器102上检测到单个触摸(箭头704),则显示控 制逻辑602记录触摸的时间和位置(例如,记录在存储器600中的寄存器中)。显示控制逻 辑602现在处于“等待确认状态”(方框706)。换言之,显示控制逻辑602已检测到触摸且 现在正在等待确定是否要接收另一触摸。在显示控制逻辑602正在等待时,其使用内部计 数器(未具体示出)或其它机制来确定自从在箭头704处检测到的触摸以来已经过去的时间 量。如果该时间量超过预定阈值(例如,被编程到应用程序606中;箭头708),或者如果在距 离原始触摸位置超过预定距离阈值的位置处检测到另一触摸(例如,被编程到应用程序606中;箭头708),则显示控制逻辑602确认已接收到一个且仅一个触摸(方框710)。换言之, 显示控制逻辑602进入“一个已确认状态”(方框710)并记录该触摸的位置。当所有触摸 设备已被从显示器102去除时(箭头712),显示控制逻辑602返回到“等待输入状态”(方框 702)。上述预定时间阈值被选择为允许足够的可允许误差以便两个触摸被检测为同时 的触摸而不管这些触摸是在不同的时间被收到的。这种情况在已在分别的时间检测到这些 触摸时或在已在相同的时间检测到这些触摸但这些触摸随后(例如,通过展开手指)移动分 开时出现。如果在处于“一个已确认状态”时显示控制逻辑602检测到第二触摸,则显示控制 逻辑602可以识别这两个触摸中的哪一个最接近于被确认处于“一个已确认状态”下的原 始触摸。显示控制逻辑602可以将该已识别的触摸指定为原始触摸。然而,显示控制逻辑 602通常不会直接从确认一个触摸过渡至确认两个触摸。如果在处于“等待确认状态”时(方框706)显示控制逻辑602检测到第二触摸(箭 头714),则显示控制逻辑602进入“两个已确认状态”(方框716),其中两个触摸被确认并 记录触摸的位置。第二触摸(箭头714)必须是在前述阈值时间帧内接收到的。第二触摸(箭 头714)还必须位于在前述位置阈值之外的位置处。否则,遵循箭头708至“一个已确认状 态”(方框710)。可以遵循另一路径至“两个已确认状态”(方框716)。如果在处于“等待输入状态” (方框702)时显示控制逻辑602检测到两个同时的触摸(箭头718),则显示控制逻辑602进 入“两个已确认状态”(方框716)。如果在处于“两个已确认”(方框716)时显示控制逻辑 602确认所有触摸设备已被从显示器102去除(箭头720),则显示控制逻辑602返回至“等 待输入状态”(方框702)。在处于“两个已确认状态”716时,触摸中的一个触摸可能被从触摸屏去除,而另一 个触摸保留。在这种情况下,显示控制逻辑602继续认可两个触摸。显示控制逻辑602使 用向量来近似现在缺少的触摸的位置。具体而言,缺少的触摸位置将被近似在其起点对应 于仍存在于触摸屏上的触摸的向量的终点处。该向量保持与从最后两个(或更多)记录的触 摸位置的各个位置导出的第二向量相同的角度和长度。特别地,第二向量的起点被选择为 最后两个(或更多)记录的位置中距离所接收到的单个触摸位置最近的该单独的位置。方法700的步骤可被适配为检测多于两个的触摸。上述阈值时间帧和位置阈值两 者都是用户可调整的。所有这样的改变都被包括在本公开的范围内。图8A示出其中可以实现方法700的另一系统800。系统800包括处理逻辑802、 包括应用程序806 807的存储器804、显示控制逻辑808、显示器810、触摸屏812、光收发 器814和816以及包括应用程序820和822的存储器818。触摸屏812沿着其边缘包括下 面描述的后向反射带830。方法700的技术可以被编码到诸如应用程序806的软件上并由 处理逻辑802来执行。可替换地,方法700的技术可以被编码到诸如应用程序820的软件 上并由显示控制逻辑808来执行。不同于使用光源和检测器的网格来检测触摸的系统100, 系统800包括多个光收发器814和816,所述多个光收发器814和816都发射光并检测存在 于触摸屏812上的障碍。图8B示出工作中的系统800。假设用户使用手指在触摸点拟4处触摸所述触摸屏812。显示控制逻辑808使光收发器814发射跨越触摸屏812的光(例如,红外光)。后向反 射带830 (例如,包括多个微型反射角隅棱镜的材料)被沿着触摸屏812的边缘设置。后向 反射带830使从光收发器814发射的光沿着与光到达后向反射带830的方向基本上相同的 方向(例如,以基本上相同的角度)返回或“弹回”。可以在触摸屏812的任一侧上发射红外 光,只要手指或其它障碍能够如下所述地阻挡光即可。光收发器816以类似的方式工作。如所示,在触摸点拟4处建立的触摸阻挡由光收发器814和816发射的光。因此, 除被触摸点拟4处的触摸所阻挡的光之外,由光收发器814发射的光撞击后向反射带830 并返回到光收发器814。相似地,除被触摸点拟4处的触摸所阻挡的光之外,由光收发器 816发射的光撞击后向反射带830并返回到光收发器816。通过这种方式,光收发器814和 816中的每个确定诸如手指的障碍所位于的路径。可以使用三角测量法技术来确定由收发 器814和816确定的障碍路径834和836的交叉点832,从而识别触摸点8M处的障碍(或 触摸)的精确位置。图8C同样举例说明触摸屏812,不同之处在于,图8C中的触摸屏812具有两个触 摸点拟4和826。由光收发器814和816执行的上述三角测量法技术对触摸点拟4和拟6 进行识别。然而,不同于图8B中所示的触摸屏,图8C的触摸屏具有多个触摸点。结果,光 收发器814和816不仅识别两个实际的触摸点拟4和826,而且它们还识别另外的两个交叉 点一称为幻影触摸点828—其看起来是实际的触摸点,但事实上不是实际的触摸点。在实际 的触摸点和幻影触摸点之间进行区分是期望的,因为只有实际的触摸点应当被使用。系统 800如现在所述的那样区分实际的触摸点和幻影触摸点。当由显示控制逻辑808执行时,应用程序822使显示控制逻辑808使用光收发器 814和816来执行上面提到的三角测量法技术。当执行三角测量法技术时,显示控制逻辑 808使用分别与障碍路径838、840、842和844相对应的障碍846、848、850和852的角度来 预测多个触摸点拟4、拟6和828中的每一个的性质。显示控制逻辑808还使用障碍路径 838,840,842和844相对于触摸屏812的取向来预测多个触摸点拟4、拟6和828中的每一 个的性质。此外,显示控制逻辑808可以保持关于光收发器814和816的、与它们相对于触 摸屏812的位置相对应的附加信息。使用由光收发器814和816收集的某些或所有信息,显示控制逻辑808确定与触 摸点拟4、拟6和拟8相关联的空间性质。此类性质包括触摸点的可能的大小、形状、取向 等。显示控制逻辑808然后可以比较触摸点拟4、拟8和828的不同的空间性质以确定触摸 点拟4、拟6和拟8中的哪些最可能是实际的触摸点以及哪些最可能是幻影触摸点。显示控 制逻辑808可以通过根据需要使用预编程公式等对某些或所有空间性质进行加权来执行 这样的比较。现在描述对每个上述空间性质的确定。显示控制逻辑808可以结合触摸点的位置使用与该触摸点相关联的障碍路径角 度来确定触摸点的形状(即,使用三角测量法)。例如,由于假设触摸点是椭圆形的(例如, 因为手指和指尖趋向于类似椭圆形),所以显示控制逻辑808可以使用来自光收发器814和 816的诸如触摸点的宽度的光学信息来确定与触摸点相关联的长轴和短轴的长度。具体而 言,在显示控制逻辑808已使用光收发器814和816来确定其形状待确定的触摸点的位置 之后,显示控制逻辑808使用与该触摸点相对应的障碍角度,以及触摸点与光收发器814和 816的距离来确定触摸点的长轴的长度(即,使用基本三角法技术)。可以使用类似的技术来确定触摸点的短轴的长度。然后,显示控制逻辑808可以确定长轴和短轴的长度之间的 差并除以该差的绝对值以确定椭圆形触摸点的偏心率。偏心率越大,触摸点越是椭圆形的。 可以使用其它类似的技术使用由光收发器814和816收集的某些或所有数据来确定触摸点 的形状信息。例如,参考图8C,如果要确定触摸点824的形状,则可以进行使椭圆形内切在 菱形障碍825内的近似。在某些实施例中,可以对显示控制逻辑808进行编程以假设在四个可能的触摸 点之中,两个实际的触摸点和两个幻影触摸点会以交错的方式被布置。此假设是基于实际 和幻影触摸点通常趋向于以这样的交错方式布置这一事实。因此,例如,参考图8C,触摸点 被以交错方式示出一实际的触摸点824,后面是幻影触摸点8 中的一个,再后面是实际的 触摸点826,再后面是另一幻影触摸点828。因此,如果显示控制逻辑808使用本文所述的 任何技术来精确地确定可能的触摸点中的仅一个的身份(即,该触摸点是实际的触摸点还 是幻影触摸点),则显示控制逻辑808可以自动地确定其余触摸点的身份,因为触摸点在实 际的触摸点与幻影触摸点之间进行交错。在某些这样的情况下,如果可能的触摸点中的仅 一个触摸点位于离开触摸屏812处,则该可能的触摸点的身份被立即并精确地确定。被确 定为位于离开触摸屏812处的可能的触摸点是幻影触摸点,从而确定其余可能的触摸点的 身份。显示控制逻辑808可以使用障碍路径取向和角度以及光收发器814和816的位置 信息来确定触摸点的大小。如前所述,显示控制逻辑808可以确定每个可能的触摸点的长 轴和短轴的长度。显示控制逻辑808可以使用这些长度来确定与每个可能的触摸点相关联 的大小(即面积)。为了确定可能的触摸点的面积,显示控制逻辑808将长轴和短轴的乘积 乘以η。在确定了每个可能的触摸点的面积之后,显示控制逻辑808可以确定所有可能的 触摸点的平均大小。然而,显示控制逻辑808可以将每个可能的触摸点的大小或成对的可 能的触摸点的大小与所有可能的触摸点的平均大小相比较,以确定哪些触摸点最可能是实 际的触摸点以及哪些最可能是幻影触摸点。在某些实施例中,具有精密地近似于平均触摸 点大小的大小的触摸点比大小不精密地近似于平均触摸点大小的触摸点更有可能是实际 的触摸点。还可以使用其它类似的技术。显示控制逻辑808可以基于使用光收发器814和816收集的信息来确定触摸点的 取向。具体而言,对于每个可能的触摸点,显示控制逻辑808确定与该触摸点相关联的障碍 角度以及该触摸点相对于光收发器814和816的位置。使用此信息,显示控制逻辑808预测 该可能的触摸点是水平取向的还是垂直取向的。假设由光收发器中的一个(例如,光收发器 814)测量的障碍角度比由另一光收发器(例如,光收发器816)测量的障碍角度大。在这种 情况下,如果显示控制逻辑808确定该可能的触摸点更靠近光收发器814而不是更靠近光 收发器816,则一从几何学上说一该可能的触摸点更有可能是水平取向的而不是垂直取向 的。然而,如果该可能的触摸点更靠近光收发器816而不是更靠近光收发器814,则该可能 的触摸点更有可能是垂直取向的而不是水平取向的。相似地,假设由光收发器816测量的 障碍角度大于由光收发器814测量的障碍角度。如果该可能的触摸点更靠近光收发器816 而不是更靠近光收发器814,则该触摸点更有可能是水平取向的。否则,该触摸点更有可能 是垂直取向的。一般而言,如果一个可能的触摸点的取向与其它可能的触摸点的取向不匹 配,则该可能的触摸点很可能是幻影触摸点。
在执行上述确定时,显示控制逻辑808可以给予不同的因子更大或更小的权重。 例如,显示控制逻辑808可以向关于触摸点形状进行的确定给予额外权重,并可以向关于 触摸点取向进行的确定给予较小的权重。可以根据需要对触摸点预测进行加权。在某些实 施例中,在加权之后,可以将这些预测组合以生成累积值或预测,其随后指示哪些触摸点一 已将某些或所有可用信息考虑在内一最有可能是实际的触摸点以及哪些最有可能是幻影 触摸点。在某些实施例中,可以基于预编程方案对上述因子分配数值,并且在加权之后,可 以将它们用于一个或多个预编程公式中以确定(或预测)可能的触摸中的哪些是实际的触 摸以及哪些是幻影触摸。在某些实施例中,不执行加权。对这些技术的任何和所有改变都 被涵盖在本公开的范围内。上述障碍路径角度信息被光收发器收集并通过使用信号被提供给显示控制逻辑 808。显示控制逻辑808可以监视此类信号的指示障碍路径的变化(例如,倾斜)。显示控制 逻辑808可以分析此类变化(例如,倾斜宽度)来确定与所识别的障碍路径相关联的角度。 还可以使用此类信号变化来确定诸如触摸点角度的其它信息。在已以这种方式获得信息 时,显示控制逻辑808可以使用上述因子来预测可能的触摸点中的哪些是实际的触摸点以 及哪些是幻影触摸点。在已预测了哪些是实际的触摸点时,显示控制逻辑808可以将这样 的预测转发到此时可能正在运行的任何适用的软件。在某些情况下,两个实际的触摸可能不是同时引入到触摸屏812的。换言之,可能 引入了触摸中的一个,然后是在稍后的时间引入第二触摸。系统800适合于在单个的触摸、 连续的多个触摸和多个同时的触摸之间进行区分。更具体而言,应用程序822被编程为使 得当显示控制逻辑808检测到触摸屏812上的第一触摸时,显示控制逻辑808在将第一触 摸作为鼠标向下事件处理之前等待预定的(例如,用户指定的)时间长度。等待此延迟时间 使得允许引入第二触摸。如果第一触摸被抬起离开触摸屏812,则可以中止该延迟。在这种情况下,显示控 制逻辑808将第一触摸作为点击事件处理。可替换地,如果第一触摸从第一触摸的原始位 置移动了预定距离,则可以中止此延迟,这是因为这样的移动表明用户意图“拖曳”触摸屏 812的图形用户界面(⑶I)上的对象。在这种情况下,显示控制逻辑808将第一触摸和拖曳 作为拖曳事件处理。此外,如果在触摸屏812上检测到第二触摸,则可以中止此延迟。如果 延迟时间在检测到第二触摸之前到期,则仅处理第一触摸事件,并且不处理其它触摸,直至 所有触摸被从触摸屏812解除为止。相似地,如果在延迟期间检测到第二触摸,则该延迟到 期且仅处理双触摸事件,直至所有触摸抬起离开触摸屏812为止。可以根据需要将其它这 样的触摸规则编程到应用程序822中。虽然通常将上述技术描述为已由显示控制逻辑808来执行,但是在某些实施例 中,可以由处理逻辑802在执行应用程序807时执行上述技术。无论所使用的计算机系统的类型如何(例如,系统100、系统800或实现本文所公 开的技术的另一系统),使用显示器和显示控制逻辑收集的触摸数据随后被提供给正被执 行的适当应用程序。例如,计算机系统的用户可以在显示器上看到GUI。使用应用程序来生 成GUI。用户通过触摸显示器来与GUI相交互。显示控制逻辑收集此触摸信息并将其提供 给用来生成用户正与之相交互的GUI的应用程序。图9示出包括适当地收集并路由触摸数据的软件架构的一般计算机系统1000(例如,是系统100和/或800的示例)。计算机系统1000包括触摸屏显示器1002、处理逻辑 1004、存储器1006及其它电路逻辑1008 (例如,视频卡、总线)。存储器1006包括系统服务 应用程序(“SS”)1010和管理应用程序(“AA”)1012。存储器1006还包括一个或多个一般 用户应用程序1014和标准化驱动器堆栈(“SDD”)1016。可以将SS 1010定义为进行工作以 接受来自硬件的输入并将该输入提供给操作系统和/或管理应用程序(AA)的程序。可以将 AA 1012定义为接受来自系统服务应用程序的输入并基于每个用户将该输入提供给操作系 统和/或协作应用程序的程序。可以将SDD 1016定义为打算解释来自协作硬件的输入并 以独立于实施方式的统一方式将其呈现给应用程序的一组程序。应用程序1014包括操作 系统(“0S”)1018,诸如WINDOWS VISTA OS。当存储在存储器1006上的软件在本文中被描 述为执行动作时,应理解的是,作为执行该软件的结果,处理逻辑1004实际上执行该动作。在OS 1018启动后SS 1010被发起。SS 1010经由SDD 1016接收来自显示器1002 的信息并经由SDD 1016向显示器1002传输信息。当没有用户登录至系统1000时,SS 1010 相应地(例如,用登录屏幕)配置显示器1002。当多个用户中的每一个登录时,由处理逻辑 1004来发起并执行AA 1012的分别的实例。当SS 1010从显示器1002接收到触摸数据时, SS 1010将触摸数据路由到与当前登录且当前活动的用户相对应的AA 1012的实例。使用 任何适当/合适的进程间通信的方法来传输触摸数据。继而,接收到触摸数据的AA 1012实 例分析触摸数据以确定应如何进一步路由触摸数据。在某些实施例中,如果AA 1012确定 触摸数据仅包括单个触摸,则AA 1012将该单个触摸提供给OS 1018以进行默认或“正常” 处理。然而,在某些实施例中,如果AA 1012确定触摸数据包括多个触摸,则AA 1012将触 数据提供给目前运行的应用程序1014,应用程序1014可以出于诸如扩展、收缩、抓取和 拖曳操作的目的而利用多个触摸数据。对这种路由的多个改变是可能。所有这样的改变都 被包括在本公开的范围内。SS 1010基于从AA 1012的实例接收到的用户上下文信息来确定触摸数据应被路 由到AA 1012的哪个实例。由AA 1012的每个实例提供的用户上下文信息指示与该实例相 关联的用户的状态。例如,用户上下文信息可以指示用户当前已登录;用户当前已登录但 是不活动;用户当前已登录且是活动的;屏幕保护程序正在运行;等等。根据需要可以将用 户上下文信息编程为包括任何此类信息。如前文所解释的,可以使用用户上下文信息来将接收到的触摸数据路由到AA 1012的适当实例(例如,对应于已登录且活动的用户的实例)。然而,用户上下文信息还便于 沿相反方向的数据传输。具体而言,SS 1010可以使用用户上下文信息来依照用户偏好而 配置触摸屏显示器1002。例如,如果AA 1012的特定实例对应于当前已登录的、活动的用 户,则SS 1010将依照该用户的偏好来配置触摸屏显示器1002。可以将每个用户的偏好存 储在存储器1006上一例如以数据库的形式。图10示出上述软件架构的概念性图示1020。如所示,显示器硬件1002 (其包括 显示控制逻辑)与SDD 1016通信。继而,SDD 1016与SS 1010通信。当SS 1010经由SDD 1016从显示器硬件1002接收到触摸数据时,SS 1010将触摸数据路由到可能正在系统1000 上运行的AA 1012的(可能)多个实例中的一个。触摸数据所路由到的AA 1012实例取决 于从AA 1012的实例接收到的用户上下文信息(例如,取决于当时哪个用户当前已在系统 1000上登录且是活动的)。例如,如果用户目前是活动的,则SS 1010将触摸数据路由到该用户的AA 1012的实例。如所示,AA 1012的多个实例中的每一个可以与一个或多个应用程 序1014通信。因此,接收到触摸数据的AA 1012的实例可以将触摸数据路由到当前正在使 用中的应用程序1014中的一个应用程序(例如,“活动的”或“最高级的”应用程序)。在某些 实施例中,接收到触摸数据的AA 1012的实例将触摸数据路由到作为应用程序1014之一的 OS 1018。当触摸数据仅包括单个触摸时,数据通常被从AA 1012实例路由到OS 1018。如 果触摸数据包括双触摸,则AA 1012的实例将触摸数据提供给可以使用多个触摸数据(例 如,用于窗口扩展或收缩、拖曳事件)的适当应用程序1014。然而,各种这样的路由是可能 的且被包括在本公开的范围内。如前文所解释的,SS 1010可以依照当时可能正在运行的AA 1012的无论哪个实 例使用SDD 1016来配置显示器1002上的参数。SS 1010还可以依照当时可能正在运行的 无论哪个应用程序1014 (与当时正在运行的AA 1012的特定实例相关联地)来配置显示器 1002上的参数。上述讨论是意图说明本发明的原理和各种实施例。一旦完全理解以上公开,许多 变更和修改将变得对于本领域的技术人员来说显而易见。意图是使将以下权利要求解释为 涵盖所有此类变更和修改。
权利要求
1.一种系统,包括多个光源,其被配置为向触摸屏的波导层提供光束,所述光束中的至少一个在对象在 触摸点处触摸所述触摸屏时被干扰;多个检测器,所述检测器中的至少一个被配置为检测所述受扰光;以及 被耦合到所述至少一个检测器的控制逻辑,作为所述至少一个检测器检测到所述受扰 光的结果,所述控制逻辑确定所述触摸点的位置;其中,所述多个光源和多个检测器被包含在源/检测器层内,所述源/检测器层通过反 射镜层与波导层分开,所述反射镜层包括在源/检测器层与波导层之间传输光的多个反射
2.权利要求1的系统,其中,所述多个光源中的至少某些包括红外激光二极管。
3.权利要求1的系统,其中,所述控制逻辑通过确定所述多个光源中的哪个发射了被 干扰的光束来确定所述位置。
4.权利要求1的系统,其中,所述多个光源被沿着与所述多个检测器不同的源/检测器层的一侧布置。
5.权利要求1的系统,其中,所述受扰光包括从由所述多个光源中的一个发射的光束 弥散开的光。
6.权利要求1的系统,其中,所述多个光源被设置为邻近触摸屏的一侧,该侧与触摸屏 的另一侧垂直,所述多个检测器被设置为邻近所述另一侧。
7.权利要求1的系统,其中,相邻光源之间的间隔在0.Olmm与IOmm之间。
8.权利要求1的系统,其中,所述多个光源中的每一个与包括两个部件的反射镜对相 关联,并且其中,所述反射镜对将来自光源的光束传输至所述触摸屏,并且所述反射镜对在 将光束提供给触摸屏时将该光束扩展至一定的角度范围内。
9.权利要求1的方法,其中,在所述多个光源中的第一个被激活的同时,所述多个检测 器中的每一个被激活和去激活,并且其中,在所述多个光源中的第二个被激活的同时,所述 多个检测器中的每一个被激活和去激活,在所述多个光源中的所述第一个被去激活时,所 述多个光源中的所述第二个被激活。
10.权利要求1的系统,其中,全部的所述多个光源和全部的所述多个检测器在100毫 秒内被激活。
11.一种系统,包括 第一层,其能够引导光波;邻近所述第一层的第二层,所述第二层包括多个反射器件;邻近所述第二层的第三层,所述第三层包括多个光源和多个检测器,所述光源被布置 在所述第三层的一对侧边中的一个或多个上,以及所述检测器被布置在所述第三层的另一 对侧边中的一个或多个上;以及控制逻辑,其被耦合到所述多个检测器;其中,所述光源中的每个被激活,以使得光经由所述多个反射器件中的一个从该光源 传递至所述第一层,所述光源中的每个被以循环的方式激活和去激活;其中,在所述光源中的每个被激活的同时,所述多个检测器中的每一个被以循环的方 式激活和去激活;其中,作为所述多个检测器中的一个检测到光的结果,所述控制逻辑确定所检测到的 光是由所述多个光源中的哪个生成的。
12.权利要求11的系统,其中,所述多个检测器中的所述一个在与所述多个检测器中 的所述一个以及生成所述所检测到的光的光源相对应的位置处检测到作为到所述第一层 的受抑全内反射的结果而反射的所述光。
13.权利要求11的系统,其中,所述一对侧边与所述另一对侧边垂直。
14.权利要求11的系统,其中,所述多个光源中的每一个被以循环方式激活和去激活 以及所述多个检测器中的每一个被以循环方式激活和去激活所用的总时间量小于100毫 秒。
15.权利要求11的系统,其中,经由所述多个反射器件中的一个从光源传递至所述第 一层的所述光以平行于所述另一对侧边行进的光束的方式行进穿过所述第一层。
16.权利要求11的系统,其中,所述系统包括选自包括显示器、电视机、台式计算机系 统、移动通信设备、个人数字助理和便携式音乐播放器的组的系统。
17.一种方法,包括生成使用全内反射沿着显示器的长度传播的光束;使所述光束的所述全内反射受抑,从而泄漏所述光束的至少一部分;对多个检测器中的每一个进行激活和去激活,直到所述检测器中的一个检测到所述泄 漏光的反射部分为止;以及使用检测到漏出光的所述反射部分的检测器的位置和生成所述光束的光源的位置,确 定所述光束的所述全内反射受抑的一个或多个位置。
18.权利要求17的方法,其中,生成沿着所述长度的所述光束包括使用所述光源来生 成所述光束,将所述光束提供给一对反射镜,并将来自该对反射镜的所述光束引入所述显 示器中,所述显示器包括能够引导波形的玻璃层。
19.权利要求17的方法,还包括将所述一个或多个位置提供给正在执行应用程序并正 在显示与所述应用程序相关联的图形用户界面(GUI)的处理器。
20.权利要求17的方法,其中,生成所述光束包括使用红外激光二极管。
21.—种系统,包括光源和检测器层(LSDL),其包括沿着LSDL的一对侧边中的至少一个设置的多个光源, 并且还包括沿着LSDL的另一对侧边中的至少一个设置的多个检测器;邻近所述LSDL的反射镜层,所述反射镜层包括多个反射镜对,所述多个反射镜对中的 至少一个与所述多个光源中的一个对准,所述反射镜对中的至少另一个与所述多个检测器 中的一个对准;以及玻璃层,其邻近所述反射镜层。
22.权利要求21的系统,其中,所述多个光源与将从所述多个光源发射的光反射到玻 璃层中的单个反射镜对对准。
23.权利要求21的系统,其中,所述多个检测器与将来自玻璃层的光反射到所述多个 检测器的单个反射镜对对准。
24.权利要求21的系统,其中,所述多个光源被间隔开Imm至IOOmm之间。
25.权利要求21的系统,其中,所述系统包括计算机显示器。
全文摘要
一种系统包括被配置为向触摸屏的波导层提供光束的多个光源。光束中的至少一个在对象在触摸点处触摸所述触摸屏时被干扰。所述系统还包括多个检测器,其中,检测器中的至少一个被配置为检测受扰光。所述系统包括被耦合到所述至少一个检测器的控制逻辑。所述控制逻辑作为所述至少一个检测器检测到受扰光的结果而确定触摸点的位置。所述多个光源和多个检测器被包含在源/检测器层内。所述源/检测器层通过反射镜层与波导层分开,所述反射镜层包括在源/检测器层与波导层之间传输光的多个反射镜。
文档编号G06F3/041GK102132230SQ200880130885
公开日2011年7月20日 申请日期2008年9月26日 优先权日2008年9月26日
发明者B·N·萨格斯 申请人:惠普开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1