CN107305432B - 一种终端及在终端上实现触觉反馈的方法、装置 - Google Patents
一种终端及在终端上实现触觉反馈的方法、装置 Download PDFInfo
- Publication number
- CN107305432B CN107305432B CN201610261321.6A CN201610261321A CN107305432B CN 107305432 B CN107305432 B CN 107305432B CN 201610261321 A CN201610261321 A CN 201610261321A CN 107305432 B CN107305432 B CN 107305432B
- Authority
- CN
- China
- Prior art keywords
- touch screen
- vibration device
- vibration
- pressure data
- terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供了一种在终端上实现触觉反馈的方法,所述终端包括触摸屏,所述方法包括:获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;获取触摸屏的当前按压位置;基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈。本发明实施例还公开了一种在终端上实现触觉反馈的装置和一种终端。
Description
技术领域
本发明涉及终端震动控制技术,尤其涉及一种终端及在终端上实现触觉反馈的方法、装置。
背景技术
在终端设备中,压力传感器的应用渐渐兴起,例如,在手机上可以实现3DTouch压力传感功能;而如何利用压力传感技术取得更优美更震撼的体验,成为一个新的课题。
在现有技术中,对压力传感技术的应用较为简单,不能基于压力传感器来实现力反馈。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种终端及在终端上实现触觉反馈的方法、装置,能够基于用户按压触摸屏的历史压力数据和触摸屏当前按压位置进行触觉反馈。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种在终端上实现触觉反馈的方法,所述终端包括触摸屏,所述方法包括:
获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
获取触摸屏的当前按压位置;
基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈。
上述方案中,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
上述方案中,所述基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈,包括:在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;基于查找出的压力数据设计震动函数;基于所设计的震动函数,提供触觉反馈。
上述方案中,所述终端包括至少一个震动装置;
所述方法还包括:为每个震动装置设置震动权重值;
所述基于查找出的压力数据设计震动函数,包括:根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;
所述基于所设计的震动函数,提供触觉反馈,包括:基于每个震动装置对应的震动函数,驱动对应震动装置进行震动。
上述方案中,所述为每个震动装置设置震动权重值,包括:根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数。
上述方案中,所述方法还包括:获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数。
上述方案中,所述获取触摸屏的当前按压位置包括:采集触摸屏的当前按压位置,或者,将终端当前显示界面的至少一个操控位置作为触摸屏的当前按压位置。
本发明实施例还提供了一种在终端上实现触觉反馈的装置,所述终端包括触摸屏,所述装置包括:第一获取模块、第二获取模块和反馈模块;其中,
第一获取模块,用于获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
第二获取模块,用于获取触摸屏的当前按压位置;
反馈模块,用于基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈。
上述方案中,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
上述方案中,所述反馈模块包括查找单元、设计单元和反馈单元;其中,
查找单元,用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;
设计单元,用于基于查找出的压力数据设计震动函数;
反馈单元,用于基于所设计的震动函数,提供触觉反馈。
上述方案中,所述终端包括至少一个震动装置;所述装置还包括设置模块;
设置模块,用于为每个震动装置设置震动权重值;
所述设计单元,具体用于根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;
所述反馈单元,具体用于基于每个震动装置对应的震动函数,驱动对应震动装置进行震动。
上述方案中,所述设置模块,具体用于根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数。
上述方案中,所述设置模块,还用于获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数。
本发明实施例还提供了一种终端,终端包括触摸屏、处理器和至少一个震动装置;其中,
处理器,用于获取用户按压触摸屏的历史压力数据和触摸屏的当前按压位置;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
所述处理器,还用于基于与触摸屏的当前按压位置对应的压力数据,向至少一个震动装置发送驱动信号;
每个震动装置,用于根据接收的驱动信号产生震动。
上述方案中,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
上述方案中,所述处理器,具体用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;基于查找出的压力数据设计震动函数;根据所设计的震动函数,向各个震动装置发送相应的驱动信号。
上述方案中,所述处理器,还用于为每个震动装置设置震动权重值;根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;根据各个震动装置对应的震动函数,向各个震动装置发送相应的驱动信号。
本发明实施例还提供了一种计算机存储介质,存储有用于按照以下操作步骤进行处理的程序:
获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
获取触摸屏的当前按压位置;
基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈。
本发明实施例提供的一种终端及在终端上实现触觉反馈的方法、装置中,获取用户按压触摸屏的历史压力数据;获取触摸屏的当前按压位置;基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈;如此,能够基于用户按压触摸屏的历史压力数据和触摸屏当前按压位置进行触觉反馈,因而能够生成多种触觉反馈效果,丰富了对压力传感技术的应用,具有可靠性高的特点;另外,由于终端上所使用的硬件都是终端现有的配置,不需要增加额外的成本。
附图说明
图1为本发明实施例在终端上实现触觉反馈的方法的第一实施例的流程图;
图2为本发明实施例中同一时间点触摸屏不同位置处的压力值的示意图;
图3为本发明实施例中一个按压位置处的压力值函数的示意图;
图4为本发明在终端上实现触觉反馈的方法的第二实施例所使用的终端的硬件结构的一个示例图;
图5为本发明在终端上实现触觉反馈的方法的第二实施例的流程图;
图6为本发明在终端上实现触觉反馈的方法的第三实施例中终端的手持姿态的示意图;
图7为本发明在终端上实现触觉反馈的方法的第三实施例的流程图;
图8为本发明在终端上实现触觉反馈的方法的第三实施例中每个震动装置与触摸屏的当前按压位置的水平距离的一个示意图;
图9为本发明在终端上实现触觉反馈的方法的第三实施例中为各个马达设置的震动函数的示意图;
图10为本发明实施例在终端上实现触觉反馈的装置的组成结构示意图;
图11为本发明实施例在终端上实现触觉反馈的装置中反馈模块的结构示意图;
图12为本发明实施例的终端的结构示意图。
具体实施方式
以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例记载一种在终端上实现触觉反馈的方法,可以应用于终端中,所述终端包括触摸屏,终端可以是固定终端或移动终端;上述移动终端可以是智能手机、平板电脑或穿戴式设备(如智能眼镜、智能手表等),还可以是智能汽车、智能家电(如智能冰箱、智能电池、机顶盒等);智能手机的操作***可以是安卓操作***、IOS操作***或其他任意第三方开发的可以运行于微型计算机结构(至少包括处理器和内存)的操作***(如移动版Linux***、黑莓QNX操作***等)。
上述终端上设置有触摸屏,触摸屏是一种可接收触头等输入讯号的感应式显示装置,当接触了屏幕上的图形按钮时,屏幕上的触觉反馈***可根据预先编程的程式驱动各种连结装置,可用以取代机械式的按钮面板,并借由显示画面制造出生动的影音效果。
终端还可以包括用于采集触摸屏按压信息的传感器,触摸屏按压信息包括以下至少一种信息:至少一个按压位置、以及与每个按压位置对应的压力数据;在实际应用中,传感器可以设置在终端的触摸屏的下方,传感器可以是压力传感器或实现3d touch功能的压力触控模组。
终端上还可以设置处理器,处理器可以是实施本发明实施例而专门设置的处理器;处理器与传感器形成通信连接,处理器可以获取触摸屏按压位置信息,并对获取的信息进行处理。
基于上述记载的终端和触摸屏,提出以下各具体实施例。
第一实施例
本发明第一实施例提供了一种在终端上实现触觉反馈的方法,图1为本发明实施例在终端上实现触觉反馈的方法的第一实施例的流程图,如图1所示,该流程包括:
步骤100:获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据。
这里,所述与每个按压位置对应的压力数据可以是:采集到的触摸屏对应按压位置处的压力值与时间的对应关系;触摸屏对应按压位置处的压力值用于表征触摸屏对应按压位置处的压力大小。
在实际应用中,在用户按压触摸屏时,可以采用压力传感器或压力触控模组采集触摸屏多个按压位置的压力值,对于触摸屏的每个按压位置,其压力值通常随时间的变化而产生变化,也就是说,触摸屏的每个按压位置的压力值是以时间为自变量的函数;因此,在获取采集到的触摸屏对应按压位置处的压力值与时间的对应关系后,实际上已经得出了触摸屏对应按压位置处的压力值函数。
示例性地,可以将按压位置以二维坐标的形式进行表示,坐标为(x,y)的按压位置的压力值可以表示为pressure(x,y)或p(x,y),这里,x和y分别表示在触摸屏所在平面建立的二维坐标系的横坐标和纵坐标,在触摸屏所在平面建立的二维坐标系中,原点的位置可以根据情况进行设置,例如,将原点设置在触摸屏的中心处、左上角处、右上角处、左下角处或右下角处。
这里,在用户按压触摸屏的历史压力数据中,在同一时间点,不同按压位置处的压力值可能是不同的,图2为本发明实施例中同一时间点触摸屏不同位置处的压力值的示意图,如图2所示,X轴表示在触摸屏所在平面建立的二维坐标系的横轴,Y轴表示在触摸屏所在平面建立的二维坐标系的纵轴,Z轴用于表征不同按压位置处的压力值;图2中,压力值大于0的二维坐标位置表示用户的按压位置,而压力值为0的二维坐标位置表示未被用户按压的位置。
相应地,可以根据采集到的触摸屏对应按压位置处的压力值与时间的对应关系,构建触摸屏对应按压位置处的压力值函数p(t),p(t)表示以时间t为自变量的函数,图3为本发明实施例中一个按压位置处的压力值函数的示意图,如图3所示,横轴表示时间t,纵轴表示压力值p(t)。
在实际应用中,在采集到触摸屏对应按压位置处的压力值与时间的对应关系时,可以采集从设定时间长度对应按压位置处的压力值,设定时间长度可以为大于等于1秒。
步骤101:获取触摸屏的当前按压位置。
本步骤中,可以采用以下两种方式获取触摸屏的当前按压位置。
方式1:采集触摸屏的当前按压位置。
这里,可以利用压力传感器或实现3d touch功能的压力触控模组来采集触摸屏的当前按压位置;在实际应用中,在用户手指按压触摸屏时,用户手指的按压位置是触摸屏所在平面的一个区域,因此,在利用压力传感器或实现3d touch功能的压力触控模组采集到用户手指的按压区域时,可以在用户手指的按压区域中选取一点作为触摸屏的当前按压位置。
方式2:将终端当前显示界面的至少一个操控位置作为触摸屏的当前按压位置。
这里,终端当前显示界面可以是显示桌面图标的界面,也可以是终端的任意一个应用的人机交互界面;在按压终端当前显示界面的任意一个操控位置时,可以实现人机交互;例如,终端当前显示界面的操控位置被包含在终端当前显示界面的一个操控图标位置,在实际应用中,可以首先获取终端当前显示界面的一个操控图标位置,之后,将终端当前显示界面的一个操控图标位置的一点作为触摸屏的当前按压位置。
下面以“赛车游戏”的人机交互界面为例进行说明。终端当前的显示界面为“赛车游戏”的人机交互界面,“赛车游戏”的人机交互界面中具有“油门”操控图标位置和“刹车”操控图标位置,此时,可以在“油门”操控图标位置或“刹车”操控图标位置中选取一点作为触摸屏的当前按压位置。
步骤102:基于与触摸屏的当前按压位置对应的压力数据,提供触觉反馈。
本步骤具体包括:在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;基于查找出的压力数据设计震动函数;基于所设计的震动函数,提供触觉反馈。
这里,由于上述记载的用户按压触摸屏的历史压力数据包括按压位置与压力数据的对应关系,因此,在触摸屏的当前按压位置被包括在用户按压触摸屏的历史压力数据时,可以基于用户按压触摸屏的历史压力数据,查找触摸屏的当前按压位置对应的压力数据;当然,如果上述记载的用户按压触摸屏的历史压力数据中的按压位置不包含触摸屏的当前按压位置时,不能查找出触摸屏的当前按压位置对应的压力数据,此时,直接结束流程。
这里,震动函数可以是用于表示触觉反馈幅度与时间的对应关系,也就是说,震动函数是以时间为自变量的触觉反馈幅度函数,而查找出的压力数据包括触摸屏的当前按压位置的压力值与时间的对应关系,因此,上述记载的基于查找出的压力数据设计震动函数包括:根据触摸屏的当前按压位置的压力值与时间的对应关系,设计震动函数;例如,触摸屏的当前按压位置的压力值与时间的对应关系可以表示为以时间t为自变量的压力值函数p1(t),此时,可以基于函数p1(t)设计震动函数,特别地,可以直接将函数p1(t)作为震动函数。
在实际应用中,触觉反馈可以通过在终端上设置的震动装置实现时,相应地,触觉反馈幅度可以是震动装置的震动幅度。
可以看出,在与每个按压位置对应的压力数据包括触摸屏对应按压位置处的压力值与时间的对应关系时,便于基于查找出的压力数据设计震动函数,进而有利于提供触觉反馈。
本发明在终端上实现触觉反馈的方法的第一实施例中,用于可以基于用户按压触摸屏的历史压力数据和触摸屏当前按压位置进行触觉反馈,因而能够生成多种触觉反馈效果,丰富了对压力传感技术的应用,具有可靠性高的特点;另外,由于终端上所使用的硬件都是终端现有的配置,不需要增加额外的成本。
第二实施例
为了能更加体现本发明的目的,在本发明第一实施例的基础上,进行进一步的举例说明。
为了实现本发明第二实施例的在终端上实现触觉反馈的方法,在终端上设置至少一个震动装置,震动装置可以是线性马达等震动器件,震动装置可以在震动控制信号的控制下进行震动,震动控制信号可以终端的处理器生成。
这里,不对震动装置的个数和震动装置所在位置进行限定,下面通过图4说明对震动装置的个数和位置进行示例性的说明。
图4为本发明在终端上实现触觉反馈的方法的第二实施例所使用的终端的硬件结构的一个示例图,如图4所示,终端的触摸屏处设置有实现3d touch功能的压力触控模组401,压力触控模组401包括多个压力传感器;在触摸屏的下方的面板设置有4个线性马达402(图4中圆圈所标记的位置),线性马达是终端上设置的震动装置,这4个线性马达分别设置在相应面板的四角位置。
图5为本发明在终端上实现触觉反馈的方法的第二实施例的流程图,如图5所示,该流程包括:
步骤500~501:与步骤100~101完全相同,这里不再重复。
步骤502:为每个震动装置设置震动权重值。
本步骤具体包括:根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数。
这里,每个震动装置通常不处于触摸屏所在平面,每个震动装置与触摸屏的当前按压位置的水平距离用于表示对应震动装置在触摸屏上的投影位置与触摸屏的当前按压位置的距离;而每个震动装置在触摸屏上的投影位置可以预先输入至终端中,如此,在获取触摸屏的当前按压位置后,通过计算便可得出每个震动装置与触摸屏的当前按压位置的水平距离;例如,一个震动装置在触摸屏上的投影位置的坐标为(x1,y1),而触摸屏的当前按压位置的坐标为(x2,y2),则对应震动装置与触摸屏的当前按压位置的水平距离d1为:
这里,每个震动装置的矫正参数可以预先设置,在终端上设置有多个矫正参数时,各个震动装置的矫正参数可以相同,也可以不同。
优选地,可以获取终端的姿态信息,之后基于所述终端的姿态信息,为每个震动装置设置矫正参数;具体地,可以基于所述终端的姿态信息,分别对震动装置进行标记,对于任意一个震动装置,可以标记为重点震动装置或辅助震动装置,为各个重点震动装置设置相同的矫正参数,记为参数1;为各个辅助震动装置设置相同的矫正参数,记为参数2,参数1大于参数2。
这里,还可以根据应用场景调整每个震动装置的矫正参数的取值,例如,在某些激烈场景模式下,每个震动装置的矫正参数取值可偏大。
进一步地,所述终端的姿态信息包括触摸屏所在平面与水平面的角度,触摸屏所在平面与水平面的角度的取值在0度到90度之间。
如果触摸屏所在平面与水平面的角度等于0度或90度,可以为各个震动装置的相同的矫正参数,即,将每个震动装置均标记为重点震动装置或辅助震动装置。
如果触摸屏所在平面与水平面的角度大于0度且小于等于45度,将每个下方震动装置标记为第一种震动装置,将每个上方震动装置标记为第二种震动装置,其中,下方震动装置在触摸屏上的投影与触摸屏底部的距离小于等于下方震动装置在触摸屏上的投影与触摸屏顶部的距离,上方震动装置在触摸屏上的投影与触摸屏顶部的距离小于等于下方震动装置在触摸屏上的投影与触摸屏底部的距离,第一种震动装置为重点震动装置时,第二种震动装置为辅助震动装置;第一种震动装置为辅助震动装置时,第二种震动装置为重点震动装置。
如果触摸屏所在平面与水平面的角度大于45度且小于90度,将每个上方震动装置标记为第一种震动装置,将每个下方震动装置标记为第二种震动装置。
本步骤中,在终端为智能手机时,终端的姿态信息为终端的手持姿态,在实际应用中,可以利用终端上设置的陀螺仪等传感器检测终端的手持姿态,图6为本发明在终端上实现触觉反馈的方法的第三实施例中终端的手持姿态的示意图;图6中,数字1、2、3和4分别4个线性马达在触摸屏的投影位置,例如,可以将数字1和2对应的马达标记为辅助震动装置,将数字3和4对应的马达标记为重点震动装置。
本步骤中,可以采用三种方式为每个震动装置设置震动权重值,下面分别进行说明。
方式1,根据每个震动装置与触摸屏的当前按压位置的水平距离,设置对应震动装置的震动权重值。
在采用方式1为每个震动装置设置震动权重值时,将震动装置与触摸屏的当前按压位置的水平距离记为L1,则震动装置的震动权重值可以与L1成正比,也可以与L1成反比。
方式2,根据设置的每个震动装置的矫正参数,设置对应震动装置的震动权重值。
在采用方式2为每个震动装置设置震动权重值时,震动装置的震动权重值与震动装置的矫正参数成正比。
方式3,根据每个震动装置与触摸屏的当前按压位置的水平距离、以及设置的每个震动装置的矫正参数,设置对应震动装置的震动权重值。
在采用方式3为每个震动装置设置震动权重值时,将震动装置与触摸屏的当前按压位置的水平距离记为L2,将震动装置的矫正参数记为S,则震动装置的震动权重值可以与L2*S成正比,也可以与S/L2成正比。
步骤503:在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;基于每个震动装置对应的震动函数,驱动对应震动装置进行震动。
本步骤中,对于为每个震动装置设计相应的震动函数的实现方式,具体地说,根据查找出的压力数据,为每个震动装置设置初始反馈函数,将初始反馈函数乘以对应震动装置的震动权重值,得出为对应震动装置设计的震动函数;这里,初始反馈函数用于表示对应震动装置震动幅度与时间的对应关系,也就是说,初始反馈函数是以时间为自变量的震动幅度函数。例如,为任意一个震动装置设置的初始反馈函数为p2(t),而对应震动装置的震动权重值为w,则为对应震动装置设计的震动函数p3(t)等于w*p2(t)。
进一步地,查找出的压力数据包括触摸屏的当前按压位置的压力值与时间的对应关系时,可以根据触摸屏的当前按压位置的压力值与时间的对应关系,设计初始反馈函数。
本步骤中,在获取每个震动装置对应的震动函数后,可以根据每个震动装置对应的震动函数,向每个震动装置发送相应的震动控制信号,以控制对应震动装置按照震动函数进行震动。
进一步地,对于步骤502,图5只是示例性地说明了其执行顺序,在实际应用中,只需确保步骤502在步骤503前执行即可,具体地,可以在步骤500之前执行步骤502,也可以在步骤500和步骤501之间执行步骤502。
本发明在终端上实现触觉反馈的方法的第二实施例中,由于可以根据每个震动装置的震动权重值来设计震动函数,进而根据震动函数驱动相应的震动装置进行震动,因此可以为每个震动装置配置多种震动策略;进一步地,由于在设置每个震动装置的震动权重值时,还需要考虑对应震动装置与触摸屏的当前按压位置的水平距离和/或设置的对应震动装置的矫正参数,如此,可以对不同震动装置设置不同的震动策略;另外,由于需要根据每个震动装置对应的震动函数,向每个震动装置发送相应的震动控制信号,所以可以设计相应的精确复杂的震动控制信号,并驱动终端上的至少一个震动装置,带给用户更优美更震撼的触觉反馈体验,丰富了力反馈的内容。
第三实施例。
为了能更加体现本发明的目的,在本发明第一实施例和第二实施例的基础上,进行进一步的举例说明。
本发明第三实施例提供了一种在终端上实现触觉反馈的方法,在本发明第三实施例中,终端为智能手机,参照图4,终端上设置有压力触控模组和4个线性马达,这4个线性马达分别标记为马达1、马达2、马达3和马达4。
图7为本发明在终端上实现触觉反馈的方法的第三实施例的流程图,如图7所示,该流程包括:
步骤700~701:与步骤100~101完全相同,这里不再重复。
步骤702:获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数。
这里,将马达1的矫正参数标记为x_1,将马达2的矫正参数标记为x_2,将马达3的矫正参数标记为y_1,将马达4的矫正参数标记为y_2,例如,在4个马达的矫正参数中,x_1和x_2偏大,y_1极小,接近于0,y_2大于y_1,并小于x_1和x_2。
步骤703:获取每个震动装置与触摸屏的当前按压位置的水平距离。
图8为本发明在终端上实现触觉反馈的方法的第三实施例中每个震动装置与触摸屏的当前按压位置的水平距离的一个示意图,如图8所示,将马达1与触摸屏的当前按压位置的水平距离记为a,将马达2与触摸屏的当前按压位置的水平距离记为b,马达3与触摸屏的当前按压位置的水平距离记为c,将马达4与触摸屏的当前按压位置的水平距离记为d。
步骤704:根据每个震动装置与触摸屏的当前按压位置的水平距离、以及设置的每个震动装置的矫正参数,设置对应震动装置的震动权重值。
这里,将马达1的震动权重值记为α,将马达2的震动权重值记为β,将马达3的震动权重值记为γ,将马达4的震动权重值记为δ,则有α=a*x_1,=b*x_2,γ=c*y_1,δ=d*y_2。
这里,将每个马达设置的初始反馈函数为用户按压触摸屏的历史压力数据中查找出的触摸屏的当前按压位置的压力值函数,将每个马达设置的初始反馈函数记为P(t),将马达1、马达2、马达3和马达4对应的震动函数分别记为vibrate-1(t)、vibrate-2(t)、vibrate-3(t)、vibrate-4(t),则有:
vibrate-1(t)=α×P(t)
vibrate-2(t)=β×P(t)
vibrate-3(t)=γ×P(t)
vibrate-4(t)=δ×P(t)。
图9为本发明在终端上实现触觉反馈的方法的第三实施例中为各个马达设置的震动函数的示意图,图9中,竖直的轴表示震动幅度,两个横轴分别为时间轴和马达轴,在马达轴上,1、2、3和4分别表示马达1、马达2、马达3和马达4;数字1开始的箭头所指的曲线表示马达1对应的震动函数,数字2开始的箭头所指的曲线表示马达2对应的震动函数,数字3开始的箭头所指的曲线表示马达3对应的震动函数,数字4开始的箭头所指的曲线表示马达4对应的震动函数。
步骤705:与步骤503完全相同,这里不再重复。
进一步地,在获取触摸屏当前按压位置后,还可以获取当前按压位置初始时刻的压力值,基于当前按压位置初始时刻的压力值标定初始力反馈的启动数据。还可以根据触摸屏当前按压位置所对应的操控图标,为每个震动装置设置不同的震动策略,例如,触摸屏当前按压位置分别对应“油门用力踩”的图标和“油门轻踩”的图标时,产生的触觉反馈的幅度是不同的,触摸屏当前按压位置对应“刹车”图标时,触觉反馈的形式为产生急剧高频震动,以及前倾的假象;触摸屏当前按压位置同时对应“刹车”图标和“油门”图标时,触觉反馈的形式为产生力反馈又甩尾的震感,以及漂移离心假象。
第四实施例
针对本发明第一实施例和第二实施例的在终端上实现触觉反馈的方法,本发明第四实施例提供了一种在终端上实现触觉反馈的装置,所述终端包括触摸屏。
图10为本发明实施例在终端上实现触觉反馈的装置的组成结构示意图,如图10所示,该装置包括:第一获取模块1000、第二获取模块1001和反馈模块1002;
其中,第一获取模块1000,用于获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据。
第二获取模块1001,用于获取触摸屏的当前按压位置。
反馈模块1002,用于基于与当前按压位置对应的压力数据,提供触觉反馈。
具体地,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
图11为本发明实施例在终端上实现触觉反馈的装置中反馈模块的结构示意图,如图11所示,所述反馈模块1002包括查找单元1100、设计单元1101和反馈单元1102;其中,
查找单元1100,用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;
设计单元1101,用于基于查找出的压力数据设计震动函数;
反馈单元1102,用于基于所设计的震动函数,提供触觉反馈。
进一步地,所述终端包括至少一个震动装置;参照图10,所述装置还包括设置模块1003;
设置模块1003,用于为每个震动装置设置震动权重值;
所述设计单元1101,具体用于根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;
所述反馈单元1102,具体用于基于每个震动装置对应的震动函数,驱动对应震动装置进行震动。
具体地,所述设置模块1003,用于根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数。
所述设置模块1003,还用于获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数。
在实际应用中,所述第一获取模块1000、第二获取模块1001、反馈模块1002和设置模块1003均可由位于终端中的中央处理器(Central Processing Unit,CPU)、微处理器(Micro Processor Unit,MPU)、数字信号处理器(Digital Signal Processor,DSP)、或现场可编程门阵列(Field Programmable Gate Array,FPGA)等实现。
第五实施例
针对本发明第一实施例和第二实施例的在终端上实现触觉反馈的方法,本发明第五实施例提供了一种终端。
图12为本发明实施例的终端的结构示意图,终端包括触摸屏1200、处理器1201和至少一个震动装置1202;其中,
处理器1201,用于获取用户按压触摸屏的历史压力数据和触摸屏的当前按压位置;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
所述处理器1201,还用于基于与当前按压位置对应的压力数据,向至少一个震动装置发送驱动信号;
每个震动装置1202,用于根据接收的驱动信号产生震动。
具体地,所述处理器1201,用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;基于查找出的压力数据设计震动函数;根据所设计的震动函数,向各个震动装置发送相应的驱动信号。
所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
进一步地,所述处理器1201,还用于每个震动装置设置震动权重值;根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;根据各个震动装置对应的震动函数,向各个震动装置发送相应的驱动信号。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (7)
1.一种在终端上实现触觉反馈的方法,其特征在于,所述终端包括触摸屏和至少一个震动装置,所述方法包括:
获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
获取触摸屏的当前按压位置;
在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;
获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数,以及对每个震动装置均标记为重点震动装置或辅助震动装置,其中重点震动装置的矫正参数大于辅助震动装置的矫正参数;
根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数;
根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;
基于每个震动装置对应的震动函数,驱动对应震动装置进行震动。
2.根据权利要求1所述的方法,其特征在于,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
3.根据权利要求1至2任一项所述的方法,其特征在于,所述获取触摸屏的当前按压位置包括:采集触摸屏的当前按压位置,或者,将终端当前显示界面的至少一个操控位置作为触摸屏的当前按压位置。
4.一种在终端上实现触觉反馈的装置,其特征在于,所述终端包括触摸屏,所述装置包括:第一获取模块、第二获取模块和反馈模块;其中,
第一获取模块,用于获取用户按压触摸屏的历史压力数据;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
第二获取模块,用于获取触摸屏的当前按压位置;
反馈模块,用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;
设置模块,具体用于获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数,以及对每个震动装置均标记为重点震动装置或辅助震动装置,其中重点震动装置的矫正参数大于辅助震动装置的矫正参数;设置模块,还用于根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数;
反馈模块,用于根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;
基于每个震动装置对应的震动函数,驱动对应震动装置进行震动。
5.根据权利要求4所述的装置,其特征在于,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
6.一种终端,其特征在于,所述终端包括触摸屏、处理器和至少一个震动装置;其中,
处理器,用于获取用户按压触摸屏的历史压力数据和触摸屏的当前按压位置;所述用户按压触摸屏的历史压力数据包括:至少一个按压位置、以及与每个按压位置对应的压力数据;
处理器,用于获取触摸屏的当前按压位置;
处理器,用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;
处理器,用于获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数,以及对每个震动装置均标记为重点震动装置或辅助震动装置,其中重点震动装置的矫正参数大于辅助震动装置的矫正参数;
处理器,用于根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数;
所述处理器,还用于在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;在获取的用户按压触摸屏的历史压力数据中,查找触摸屏的当前按压位置对应的压力数据;获取终端的姿态信息,基于所述终端的姿态信息,为每个震动装置设置矫正参数,以及对每个震动装置均标记为重点震动装置或辅助震动装置,其中重点震动装置的矫正参数大于辅助震动装置的矫正参数;根据以下至少一种信息设置每个震动装置的震动权重值:对应震动装置与触摸屏的当前按压位置的水平距离、设置的对应震动装置的矫正参数;根据查找出的压力数据、以及每个震动装置的震动权重值,为每个震动装置设计相应的震动函数;根据所设计的震动函数,向至少一个震动装置发送驱动信号;
每个震动装置,用于根据接收的驱动信号产生震动。
7.根据权利要求6所述的终端,其特征在于,所述与每个按压位置对应的压力数据包括:采集到的触摸屏对应按压位置处的压力值与时间的对应关系。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610261321.6A CN107305432B (zh) | 2016-04-25 | 2016-04-25 | 一种终端及在终端上实现触觉反馈的方法、装置 |
PCT/CN2016/086262 WO2017185502A1 (zh) | 2016-04-25 | 2016-06-17 | 一种终端及在终端上实现触觉反馈的方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610261321.6A CN107305432B (zh) | 2016-04-25 | 2016-04-25 | 一种终端及在终端上实现触觉反馈的方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107305432A CN107305432A (zh) | 2017-10-31 |
CN107305432B true CN107305432B (zh) | 2021-06-29 |
Family
ID=60150246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610261321.6A Active CN107305432B (zh) | 2016-04-25 | 2016-04-25 | 一种终端及在终端上实现触觉反馈的方法、装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107305432B (zh) |
WO (1) | WO2017185502A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110241566B (zh) * | 2018-03-07 | 2023-11-10 | 重庆海尔滚筒洗衣机有限公司 | 一种带震动功能的洗衣机及控制方法 |
CN109144460B (zh) * | 2018-07-09 | 2021-07-13 | Oppo广东移动通信有限公司 | 发声控制方法、装置、电子装置以及存储介质 |
CN111273797B (zh) * | 2019-12-25 | 2021-06-22 | 深圳市鸿合创新信息技术有限责任公司 | 书写笔迹生成方法、装置、存储介质、电子设备及*** |
CN117897760A (zh) * | 2022-08-10 | 2024-04-16 | 京东方科技集团股份有限公司 | 驱动控制电路、其驱动方法及触觉反馈装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006525073A (ja) * | 2003-04-03 | 2006-11-09 | ユニヴァースティ オブ ヴァージニア パテント ファウンデイション | 人間の歩行特性を導き出すためおよび床振動から転倒を受動的に検知するための方法およびシステム |
CN101118469A (zh) * | 2006-07-31 | 2008-02-06 | 索尼株式会社 | 用于基于触觉反馈和压力测量的触摸屏交互的设备和方法 |
CN102402318A (zh) * | 2010-09-09 | 2012-04-04 | 瑞声声学科技(深圳)有限公司 | 实现定位及力反馈的方法 |
CN102498459A (zh) * | 2009-08-27 | 2012-06-13 | 京瓷株式会社 | 触感提供装置和触感提供装置的控制方法 |
WO2015092168A1 (fr) * | 2013-12-19 | 2015-06-25 | Dav | Dispositif de controle pour vehicule automobile et procede de commande |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011048606A (ja) * | 2009-08-27 | 2011-03-10 | Kyocera Corp | 入力装置 |
JP2011048685A (ja) * | 2009-08-27 | 2011-03-10 | Kyocera Corp | 入力装置 |
US8892162B2 (en) * | 2011-04-25 | 2014-11-18 | Apple Inc. | Vibration sensing system and method for categorizing portable device context and modifying device operation |
CN103246379A (zh) * | 2012-02-10 | 2013-08-14 | 联想移动通信科技有限公司 | 触摸反馈方法、装置及无线终端 |
US8896524B2 (en) * | 2012-08-24 | 2014-11-25 | Immersion Corporation | Context-dependent haptic confirmation system |
-
2016
- 2016-04-25 CN CN201610261321.6A patent/CN107305432B/zh active Active
- 2016-06-17 WO PCT/CN2016/086262 patent/WO2017185502A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006525073A (ja) * | 2003-04-03 | 2006-11-09 | ユニヴァースティ オブ ヴァージニア パテント ファウンデイション | 人間の歩行特性を導き出すためおよび床振動から転倒を受動的に検知するための方法およびシステム |
CN101118469A (zh) * | 2006-07-31 | 2008-02-06 | 索尼株式会社 | 用于基于触觉反馈和压力测量的触摸屏交互的设备和方法 |
CN102498459A (zh) * | 2009-08-27 | 2012-06-13 | 京瓷株式会社 | 触感提供装置和触感提供装置的控制方法 |
CN102402318A (zh) * | 2010-09-09 | 2012-04-04 | 瑞声声学科技(深圳)有限公司 | 实现定位及力反馈的方法 |
WO2015092168A1 (fr) * | 2013-12-19 | 2015-06-25 | Dav | Dispositif de controle pour vehicule automobile et procede de commande |
Also Published As
Publication number | Publication date |
---|---|
CN107305432A (zh) | 2017-10-31 |
WO2017185502A1 (zh) | 2017-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9958944B2 (en) | Encoding dynamic haptic effects | |
US11573696B2 (en) | Application display method and terminal | |
CN107305432B (zh) | 一种终端及在终端上实现触觉反馈的方法、装置 | |
US10332563B2 (en) | Method and program for generating responsive image | |
EP3343328A1 (en) | Haptic effect generation for space-dependent content | |
US9433857B2 (en) | Input control device, input control method, and input control program | |
WO2018133627A1 (zh) | 反馈方法和装置 | |
CN106873886B (zh) | 一种立体显示的控制方法、装置和电子设备 | |
KR20140148492A (ko) | 가상 아이콘 터치스크린 어플리케이션 프로그램을 위한 동작 제어 변환 방법 및 터치스크린 단말 | |
CN103513894A (zh) | 显示设备、远程控制设备及其控制方法 | |
CN104081307A (zh) | 图像处理装置、图像处理方法和程序 | |
CN103324400A (zh) | 一种在3d模型中展示菜单的方法及装置 | |
WO2020232738A1 (zh) | 触觉反馈方法、电子设备以及存储介质 | |
KR20140003149A (ko) | 사용자 맞춤형 인터페이스 시스템 및 그 구현 방법 | |
CN204945943U (zh) | 用于为外部显示设备提供远程控制信号的远程控制设备 | |
CN112262364A (zh) | 用于生成对象的电子装置和*** | |
CN109529320A (zh) | 一种游戏中的转向控制方法和装置 | |
CN105373329A (zh) | 显示器与展台的交互方法及*** | |
CN109324748B (zh) | 一种设备控制的方法、电子设备及存储介质 | |
CN103885696A (zh) | 一种信息处理方法及电子设备 | |
TWI664997B (zh) | 電子設備及玩具控制方法 | |
CN112328155B (zh) | 输入设备的控制方法、装置和电子设备 | |
CN104580967A (zh) | 一种基于便携式投影仪的地图投影方法和用于投影的装置 | |
US9256305B2 (en) | Remote control apparatus and method of audio video navigation system | |
CN112287708A (zh) | 近场通信nfc模拟卡切换方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |