一种触摸屏交互的方法及装置与流程

文档序号:11198809
一种触摸屏交互的方法及装置与流程

本发明属于计算机,人机交互,智能外设,增强现实,电子装置等技术领域,尤其适用于需要复杂触屏交互的应用场景。



背景技术:

当今社会配备电容式触摸屏的智能设备已经相当普及,诸如智能手机、平板电脑、触摸屏电视机等。绝大多数情况下,电容式触摸屏设备的交互手段主要是用户手指触摸的方式。还有一些辅助设备通过模拟用户的手指触摸点,来达到交互的目的,例如触摸笔等。此类交互方式中,触摸屏设备仅仅识别触摸者(手指或模拟设备)的接触点位置,但并不能识别触摸者的身份,以及朝向(转角)等。另有一些辅助装置,按照一定的规则排布多个触摸点(通常是三个以上),通过配套应用程序解析这些触摸点的坐标及相对位置,计算出该装置的身份、位置及朝向。然而此类装置的触摸点依然基于模拟手指触摸的方式,触摸点通常占用较大体积及接触面积,导致装置体积笨重。不仅如此,由于受到触摸屏智能设备本身对触摸点并发数量的限制(通常为10个触摸点以内),以及相邻较近的此类辅助装置之间容易造成触摸点排布歧义和干扰等原因,此类辅助往往只能支持独占式交互场景(即:一次仅允许有一个装置与触摸屏交互)。另外,由于此类装置在生产制造时即被固定了其触摸点的排布情况,因此只能用于被动识别身份、方位等有限的信息,而无法向系统主动传输多种动态信息。

鉴于此,对于有复杂触屏交互的应用场景,迫切的需要有一种触摸屏交互的方法及装置来解决现有技术存在的问题和风险。本发明就是用来解决此类问题的,本发明提出的一种触摸屏交互的方法及装置,其每个装置上都配备有两个体积微小(约2毫米见方)的主动式触摸点,并且可以动态定制编码,通过发送频闪式触摸信号序列,实现了向系统报告身份、位置、朝向、控制指令等多种动态信息的功能。在此基础上,结合配套系统的单总线协议轮询机制,突破触摸屏设备对触摸点并发数量的限制,允许多个交互装置同时进行交互,极大地丰富了应用场景。



技术实现要素:

本发明的目的就是提供一种触摸屏交互的方法及装置,来解决现有技术中存在的诸多问题。

本发明包括了实现本发明目的的方法和装置,其中所述的装置是由封装内部元器件的外壳,用户交互接口,供电装置,计算单元及控制电路,电容触摸端和感光接收器等元器件组成的。

所述的用户交互接口用以接收用户的输入操作。此交互接口可采用多种实现方式,包括但不限于物理按键、电容触摸键、感光组件等。

所述的供电装置为各内部元器件提供收发信号,处理信息,芯片运算等需要的电能。实现方式包括但不限于可置换的碱性干电池、纽扣电池、可充电锂电池等。

所述的计算单元及控制电路用以处理信号收发、信号处理、逻辑运算、流程控制、存储数据等任务。

所述的电容触摸端为该装置的信号输出接口。该接口采用主动式电容触发方式,当该装置置于电容屏之上时,与电容屏相接触,并由计算处理单元控制,向电容屏输出触摸信号。每一个装置的两个触摸端都分为主、副两个触摸点,其输出的触摸信息分别代表数字信号0和1,通过间歇性地发送不同组合序列的0、1信号,向配套应用程序传递动态的二进制指令信息。

所述的感光接收器为该装置的信号输入接口。用以接收电容屏传递的光信号。该接收器可以采用多种实现方式,包括但不限于单色阈值识别(强光与弱光的交替序列构成信号),多色光敏信号识别(不同颜色的组合序列构成不同信号)等。

本发名提供一种触摸屏交互的方法及装置,其方法实现的步骤又包括了初始化过程和具体交互两种场景。其中初始化的过程具体步骤如下:

步骤S101:应用程序进入初始化模式。在该模式下,应用程序等待本发明所述的装置依次放置于触摸屏上,对其进行逐一识别,以供后续场景中持续跟踪各个装置。

步骤S102:用户启动一个本发明所述装置,并使其进入“报到”模式。在该模式下,装置周期性地不断向外发出代表“报到”的触摸指令。

步骤S103:当处于“报到模式”的装置置于触摸屏上,其发出的“报到”信号即刻被应用程序所捕获。应用程序立即在获得该信息的坐标位置生成一个光斑,该光斑由应用程序及装置双方协议所预定义的特殊颜色填充,用以跟踪该装置,并向装置传递信号。在该步骤中,应用程序通过光斑向装置发出指令,询问其编码及朝向。

步骤S104:处于“报到模式”的装置,通过感光接收器接收到光斑所传递的“询问编码及方位”信号,立即停止循环发送“报到信号”的行为,并发送自身的编码及朝向信息。装置的编码信息即可以是装置的出厂设置,也可以由应用程序重新自定义,存储于装置内芯片中的可擦写存储单元中。以上两种方式,只要满足其编码在配套的一组装置中具有唯一性即可。装置的方位信息,则只需通过装置的主、副触摸端依次闪烁一次即可,具体识别方法在下一步骤详述。

步骤S105:应用程序接收到装置发出的编码及方位信息,将其与对应的光斑坐标绑定,存储于内存变量中,供后续场景使用。对装置方位信息的识别方法为:当接收到装置的主、副触摸端闪烁信号后,先解析出主、副触摸端的坐标,对其进行求和平均,得到棋子的坐标。再根据主、副端坐标进行向量计算,得到一个起点为主端坐标、方向指向副端坐标的角向量,从而获得棋子的朝向。

类似地,针对每一个装置,依次进行步骤S102至步骤S105的操作步骤,从而获得全部装置及其对应光斑的状态信息。

在完成场景初始化后,在具体的交互场景进行过程中,其具体步骤如下:

步骤S201:经过初始化步骤,应用程序已存储了所有装置及对应的光斑的状态信息,称之为状态队列。在接下来的周期性同步过程中的每一次循环开始时,应用程序从状态队列中选取下一个装置,以对其进行状态同步与更新。当同步更新至队列中最后一个装置后,则又跳至队列第一个装置,开始新一轮循环。

步骤S202:应用程序对选取的装置状态信息进行判断,若该装置标记为“在盘”(即:装置处于触摸屏之上且保持接触,其对应光斑位置与装置保持同步),则应用程序通过光斑向该装置传递“询问方位”的指令。

步骤S203:应用程序对选取的装置状态信息进行判断,若该装置标记为“已脱离”,则本次循环跳过该装置。

步骤S204:应用程序通过光斑发出的“询问方位”指令时,若装置的物理状态为保持与触摸屏接触良好,且与光斑重叠位置充足,则该指令将被装置接收,经装置内部运算处理单元计算后,通过触摸端向应用程序反馈其方位信息。输出和解析方位信息的具体方法参考图1中的步骤S105。

步骤S205:应用程序通过光斑发出的“询问方位”指令时,若装置因移动太快或被用户移出触摸屏,致使装置与光斑位置重叠不够充分甚至错位,都会导致装置接收不到该指令。此时,装置对指令无响应。

步骤S206:针对步骤S204、步骤S205两种情况下装置的反馈,应用程序将最新状态信息进行同步与更新。如果是步骤S204所述情况,则应用程序将接收到的装置方位信息更新至队列中该装置的方位变量中,并将屏幕中光斑的位置移动至该位置,使其与装置在物理空间上重新保持完全重叠。如果是步骤S205所述情况,应用程序在等待响应的时间片段中得不到装置的应答,则在队列中将该装置的状态从“在盘”变更为“已脱离”,并将对应光斑隐藏。

至此,针对一个装置的一次同步更新过程完成。类似地,应用程序针对队列中的每一个装置循环地进行步骤S201至步骤S206的操作,从而实现对装置及其光斑状态的同步跟踪。

步骤S207:一个已经脱离的装置重新稳定地放置于触摸屏之上时,应用程序需对其进行识别及归队的操作。为了触发这一过程,装置在某一限定的时间阈值内未接收到来自光斑的任何信息,则进入周期性循环输出“复位请求”信息的状态。

步骤S208:当一个循环发送“复位”信息的装置接触到触摸屏时,应用程序接收到该信息,通过“复位”信息中包含的主、副坐标计算出装置的位置(过程参考图1中步骤105),在该坐标位置生成一个对应的光斑,并通过该光斑向装置发送询问方位信息的指令。

步骤S209:装置接收到光斑询问方位的指令,对其进行响应,反馈当前的方位信息。过程参考步骤S204。在接下来的步骤S206中,该装置在对了中的状态信息从“已脱离”恢复为“在盘”。

类似地,经过步骤S207至步骤S209,一个脱离的装置即可重新回归到同步更新的循环队列当中。

本发明,通过所述装置及轮询机制,在毫秒级时间片段内,依次对所记录的交互装置进行同步更新,系统能识别装置身份和跟踪其坐标及朝向。与现有技术相比,具有以下有益效果:

1、大幅提升交互装置的并行数量。

本发明所描述的交互方法采用单总线轮询机制,在每个时间片段内仅有一部装置与触摸屏进行信息交互,从而避免了相邻交互装置之间可能发生的信息干扰或歧义,也避免了与电容触摸屏设备对触摸点并发数量上限的冲突。通过这些手段,为并行多个交互装置提供了算法基础。

2、提升了交互装置的交互性,支持更丰富的应用场景。

本发明所描述的交互装置及其配套应用程序,构建了一套双向、动态的交互方法,允许用户通过交互装置上的触摸键、物理按键等多种方式,向应用程序输入指令,从而能够实现更丰富的应用场景。

3、大幅减少交互装置的体积。

本发明所描述的交互装置由于采用了主动式电容触摸点,大幅缩小了每个触摸点所占体积。通过主、副两个触摸点传递二进制编码信息,进一步降低了每个装置所需配备的触摸点个数。通过这两个手段,交互装置整体体积大幅降低。

附图说明:

图1、2是本发明的方法流程图。

图3、4、5、6是本发明实例1示意图。

图7是本发明实例2示意图。

具体实施方式

为了使本发明的目的,技术方案及有益效果更加清楚明白,以下结合实例,对本发明进行进一步详细说明。应当理解为此处所描述的具体实例仅用以解释本发明,并不用于限制本发明的保护范围。

实例1:

如图1所示,本例假设使用场景为一个塔防游戏,包含配备电容式触摸屏的智能设备101、运行在智能设备上的应用程序102、触摸屏交互装置(本例中以下统称为“棋子”)103、104、105、106。需要指出的是,在本发明所述方法中,棋子的并行数量理论上并无上限,可根据具体使用场景的业务逻辑规则进行动态配置。放置于触摸屏上的若干棋子,与配套应用程序102进行实时信息同步,从而实现了针对每一个棋子的身份识别、方位识别、及交互指令识别。如图3所示,应用程序时刻知晓每一颗棋子是谁,朝向哪个方向,发出何种指令等。基于此,业务逻辑层的开发者可以定制出独特而丰富的交互场景。

如图4所示,为一颗棋子的结构图。每一颗棋子包含:外壳201:用以封装棋子的各项内部结构。用户交互接口202:此为棋子与用户的交互接口,用以接收用户的输入操作。此交互接口可采用多种实现方式,本例假设为电容触摸键。电源203:用以提供棋子收发信号、处理信息、芯片运算等所需的电能。本例假设为纽扣电池。计算单元及其控制电路204:该单元用以处理信号收发、信号处理、逻辑运算、流程控制、存储数据等任务。电容触摸端205、206:此为棋子的信号输出接口。该接口采用主动式电容触发方式,当棋子置于电容屏之上时,与电容屏相接触,并由计算处理单元204控制,向电容屏输出触摸信号。每一颗棋子的两个触摸端都分为主、副两个触摸点,其输出的触摸信息分别代表数字信号0和1,通过间歇性地发送不同组合序列的0、1信号,向配套应用程序传递动态的二进制指令信息。感光接收器207:此为棋子的信号输入接口。用以接收电容屏传递的光信号。该接收器可以采用多种实现方式,本例假设为多色光敏信号识别(不同颜色的组合序列构成不同信号)。

开始本例的塔防游戏前需要先对组棋子与配套应用程序的场景初始化,如图5所示,其过程包括以下步骤:按着步骤S301:应用程序进入初始化模式。在该模式下,应用程序等待棋子依次放置于触摸屏上,对其进行逐一识别,以供后续场景中持续跟踪各个棋子。按着步骤S302:用户启动一颗棋子(本例中可以是用户按下棋子上202的电容触摸按键),并使其进入“报到”模式。在该模式下,棋子周期性地不断向外发出代表“报到”的触摸指令。按着步骤S303:当处于“报到模式”的棋子置于触摸屏上,其发出的“报到”信号即刻被应用程序所捕获。应用程序立即在获得该信息的坐标位置生成一个光斑,该光斑由应用程序及棋子双方协议所预定义的特殊颜色填充,用以跟踪棋子,并向棋子传递信号。在该步骤中,应用程序通过光斑向棋子发出指令,询问其编码(识别棋子身份)及朝向(如炮塔的朝向等)。按着步骤S304:处于“报到模式”的棋子,通过感光接收器接收到光斑所传递的“询问编码及方位”信号,立即停止循环发送“报到信号”的行为,并发送自身的编码及朝向信息。棋子的编码信息即可以是棋子的出厂设置,也可以由应用程序重新自定义,存储于棋子芯片中的可擦写存储单元中。以上两种方式,只要满足其编码在配套的一组棋子中具有唯一性即可。棋子的方位信息,则只需通过棋子的主、副触摸端(参考图4中205、206)依次闪烁一次即可,具体识别方法在下一步骤详述。按着步骤S305:应用程序接收到棋子发出的编码及方位信息,将其与对应的光斑坐标绑定,存储于内存变量中,供后续场景使用。对棋子方位信息的识别方法为:当接收到棋子的主、副触摸端闪烁信号后,先解析出主、副触摸端的坐标,对其进行求和平均,得到棋子的坐标。再根据主、副端坐标进行向量计算,得到一个起点为主端坐标、方向指向副端坐标的角向量,从而获得棋子的朝向。类似地,针对每一颗棋子,依次进行步骤S302至步骤S305的操作步骤,从而获得全部棋子及其对应光斑的状态信息。

在完成初始化过程后,即可开始塔防游戏了,游戏的过程中,为确保时刻跟踪到每一颗棋子的状态,应用程序周期性地进行信息同步,如图6所示,其过程包括以下步骤:按着步骤S401:经过初始化步骤,应用程序已存储了所有棋子及对应的光斑的状态信息,称之为状态队列。在接下来的周期性同步过程中的每一次循环开始时,应用程序从状态队列中选取下一个棋子,以对其进行状态同步与更新。当同步更新至队列中最后一颗棋子后,则又跳至队列第一颗棋子,开始新一轮循环。按着步骤S402:应用程序对选取的棋子状态信息进行判断,若该棋子标记为“在盘”(即:棋子处于触摸屏之上且保持接触,其对应光斑位置与棋子保持同步),则应用程序通过光斑向该棋子传递“询问方位”的指令。按着步骤S403:应用程序对选取的棋子状态信息进行判断,若该棋子标记为“已脱离”(如棋子被吃掉),则本次循环跳过该棋子。按着步骤S404:应用程序通过光斑发出的“询问方位”指令时,若棋子的物理状态为保持与触摸屏接触良好,且与光斑重叠位置充足,则该指令将被棋子接收,经棋子内部运算处理单元计算后,通过触摸端向应用程序反馈其方位信息。输出和解析方位信息的具体方法参考图5中的步骤S305。按着步骤S405:应用程序通过光斑发出的“询问方位”指令时,若棋子因移动太快或被用户移出触摸屏,致使棋子与光斑位置重叠不够充分甚至错位,都会导致棋子接收不到该指令。此时,棋子对指令无响应。按着步骤S406:针对步骤S404、步骤S405两种情况下棋子的反馈,应用程序将最新状态信息进行同步与更新。如果是步骤S404所述情况,则应用程序将接收到的棋子方位信息更新至队列中该棋子的方位变量中,并将屏幕中光斑的位置移动至该位置,使其与棋子在物理空间上重新保持完全重叠。如果是步骤S405所述情况,应用程序在等待响应的时间片段中得不到棋子的应答,则在队列中将该棋子的状态从“在盘”变更为“已脱离”,并将对应光斑隐藏。至此,针对一颗棋子的一次同步更新过程完成。类似地,应用程序针对队列中的每一颗棋子循环地进行步骤S401至步骤S406的操作,从而实现对棋子及其光斑状态的同步跟踪。按着步骤S407:一颗已经脱离的棋子重新稳定地放置于触摸屏之上时(如拿起棋子将其移动到新的位置),应用程序需对其进行识别及归队的操作。为了触发这一过程,棋子在某一限定的时间阈值内未接收到来自光斑的任何信息,则进入周期性循环输出“复位请求”信息的状态。按着步骤S408:当一颗循环发送“复位”信息的棋子接触到触摸屏时,应用程序接收到该信息,通过“复位”信息中包含的主、副坐标计算出棋子的位置(过程参考图5中步骤305),在该坐标位置生成一个对应的光斑,并通过该光斑向棋子发送询问方位信息的指令。按着步骤S409:棋子接收到光斑询问方位的指令,对其进行响应,反馈当前的方位信息。过程参考步骤S404。在接下来的步骤S406中,该棋子在对了中的状态信息从“已脱离”恢复为“在盘”。类似地,经过步骤S407至步骤S409,一颗脱离的棋子即可重新回归到同步更新的循环队列当中。通过这样的步骤,可以完全实现塔防游戏的全部过程,如新建炮塔(增加棋子到触摸屏上),设置炮塔方向(询问计算棋子朝向),移除炮塔(将棋子离开触摸屏)等游戏相关的各个步骤,并且对于炮塔(棋子)的数量没有上限要求,从而极大的丰富了类似触屏类游戏的应用场景。

实例2:

本实例假设为一个音乐控制的应用场景,如图7所示,包含配备电容式触摸屏的智能设备501、运行在智能设备上的应用程序502、触摸屏交互装置,如旋钮503,开关504。整个触摸屏设备展现为一个音响控制台,本发明所述装置展现为控制台上的推动开关和旋钮,开始音乐控制应用场景时,先对其开关和旋钮及配套应用程序初始化,其过程包括以下步骤:按着步骤S301:应用程序进入初始化模式。在该模式下,应用程序等待开关和旋钮依次放置于触摸屏上,对其进行逐一识别,以供后续场景中持续跟踪各个装置。按着步骤S302:用户启动一个开关或旋钮(本例中可以是用户按下开关上的物理按键),并使其进入“报到”模式。在该模式下,开关或旋钮周期性地不断向外发出代表“报到”的触摸指令。按着步骤S303:当处于“报到模式”的开关或旋钮置于触摸屏上,其发出的“报到”信号即刻被应用程序所捕获。应用程序立即在获得该信息的坐标位置生成一个光斑,该光斑由应用程序及开关或旋钮双方协议所预定义的特殊颜色填充,用以跟踪该装置,并向装置传递信号。在该步骤中,应用程序通过光斑向开关或者旋钮发出指令,询问其编码(识别是开关还是旋钮)及朝向(如旋钮的旋转角度等)。按着步骤S304:处于“报到模式”的装置,通过感光接收器接收到光斑所传递的“询问编码及方位”信号,立即停止循环发送“报到信号”的行为,并发送自身的编码及朝向信息。按着步骤S305:应用程序接收到开关或者旋钮发出的编码及方位信息,将其与对应的光斑坐标绑定,存储于内存变量中,供后续场景使用。类似地,依次进行步骤S302至步骤S305的操作步骤,从而获得全部开关和旋钮及其对应光斑的状态信息。

在完成初始化过程后,即可开始音乐的应用程序了,为确保时刻跟踪到每一个开关或旋钮的状态,应用程序周期性地进行信息同步,其过程包括以下步骤:按着步骤S401:经过初始化步骤,应用程序已存储了所有开关或旋钮及对应的光斑的状态信息,称之为状态队列。在接下来的周期性同步过程中的每一次循环开始时,应用程序从状态队列中选取下一个开关或旋钮,以对其进行状态同步与更新。当同步更新至队列中最后一个开关或旋钮后,则又跳至队列第一开关或旋钮,开始新一轮循环。按着步骤S402:应用程序对选取的开关或旋钮状态信息进行判断,若该装置标记为“在盘”(即:开关或旋钮处于触摸屏之上且保持接触,其对应光斑位置与装置保持同步),则应用程序通过光斑向该开关或旋钮传递“询问方位”的指令。按着步骤S403:应用程序对选取的开关或旋钮状态信息进行判断,若该装置标记为“已脱离”(如开关被关闭或旋钮被拿开),则本次循环跳过该开关或者旋钮。按着步骤S404:应用程序通过光斑发出的“询问方位”指令时,若开关或旋钮的物理状态为保持与触摸屏接触良好,且与光斑重叠位置充足,则该指令将被开关或旋钮接收,经开关或旋钮内部运算处理单元计算后,通过触摸端向应用程序反馈其方位信息,如开关调节的大小或者旋钮旋转的角度。按着步骤S405:应用程序通过光斑发出的“询问方位”指令时,若开关或旋钮因移动太快或被用户移出触摸屏,致使开关或旋钮与光斑位置重叠不够充分甚至错位,都会导致该装置接收不到该指令。此时,开关或者旋钮对指令无响应。按着步骤S406:针对步骤S404、步骤S405两种情况下开关或旋钮的反馈,应用程序将最新状态信息进行同步与更新。如果是步骤S404所述情况,则应用程序将接收到的开关或旋钮方位信息更新至队列中该装置的方位变量中,并将屏幕中光斑的位置移动至该位置,使其与开关或旋钮在物理空间上重新保持完全重叠。如果是步骤S405所述情况,应用程序在等待响应的时间片段中得不到开关或旋钮的应答,则在队列中将该装置的状态从“在盘”变更为“已脱离”,并将对应光斑隐藏。至此,针对一个开关或旋钮的一次同步更新过程完成。类似地,应用程序针对队列中的每一个开关或旋钮循环地进行步骤S401至步骤S406的操作,从而实现对开关或旋钮及其光斑状态的同步跟踪。按着步骤S407:一个已经脱离的开关或旋钮重新稳定地放置于触摸屏之上时,应用程序需对其进行识别及归队的操作。为了触发这一过程,开关或旋钮在某一限定的时间阈值内未接收到来自光斑的任何信息,则进入周期性循环输出“复位请求”信息的状态。按着步骤S408:当一个循环发送“复位”信息的开关或旋钮接触到触摸屏时,应用程序接收到该信息,通过“复位”信息中包含的主、副坐标计算出开关或旋钮的位置,在该坐标位置生成一个对应的光斑,并通过该光斑向开关或旋钮发送询问方位信息的指令。按着步骤S409:开关或旋钮接收到光斑询问方位的指令,对其进行响应,反馈当前的方位信息。类似地,经过步骤S407至步骤S409,一个脱离的开关或旋钮即可重新回归到同步更新的循环队列当中。通过这样的步骤,可以实现一些音乐控制场景的应用开发。

总之,本发明通过一种触摸屏交互的方法及装置,因其开放性,可编程性,极大的方便了开发者进行新的触摸屏类应用的开发,同时因为本发明所述的装置在触摸屏上的数量又没有理论上的上限,又进一步的减少了对于应用开发的限制。能够最大限度上激发开发者的创意,并最终为客户带来更好,更真实的应用体验。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1