一种反馈方法和装置与流程

文档序号:15019551发布日期:2018-07-25 00:22阅读:157来源:国知局

本发明涉及虚拟现实技术领域,尤其涉及一种反馈方法和装置。



背景技术:

现今,在终端设备中,当前厂商对于终端设备的研究不再局限于拍照、音乐等功能的发掘,而是越来越关注终端设备的触觉体验。

随着3Dtouch和压力传感器的应用这些新的技术点的渐渐兴起,同时,虚拟现实在终端产品上也是一个崭新的内容,如何利用这些新的技术点取得虚拟现实中更真实更震撼的体验,是一个新的课题。

然而,在现有技术中,对压力传感技术的应用较为简单,不能基于压力传感器来实现反馈。



技术实现要素:

有鉴于此,本发明实施例期望提供一种反馈方法和装置,能够基于用户的当前按压位置为用户实现触觉反馈和听觉反馈,提高了用户沉浸感和用户体检度。

为达到上述目的,本发明的技术方案是这样实现的:

第一方面,本发明实施例提供一种反馈方法,包括:获取用户对终端的触摸屏上发出的按压位置;根据所述按压位置,确定出所述按压位置对应的压力函数;根据所述按压位置对应的压力函数,为所述用户提供触觉反馈和听觉反馈。

进一步地,所述压力函数是以时间为自变量的函数。

进一步地,所述根据所述按压位置对应的压力函数,为所述用户提供触觉反馈和听觉反馈,包括:根据所述按压位置对应的压力函数,确定出振动函数和声音函数;根据所述振动函数,为所述用户提供触觉反馈,根据所述声音函数,为所述用户提供听觉反馈。

进一步地,所述终端包括至少一个振动装置和至少一个发声装置;所述方法还包括:为每个振动装置设置振动权重值,为每个发声装置设置声音权重值;相应地,所述根据所述按压位置对应的压力函数,确定出振动函数和声音函数,包括:根据所述按压位置对应的压力函数、以及每个振动装置的振动权重值,为每个振动装置设计相应的振动函数;根据所述按压位置对应的压力函数、以及每个发声装置的声音权重值,为每个发声装置设计相应的声音函数;相应地,所述根据所述振动函数,为所述用户提供触觉反馈,根据所述声音函数,为所述用户提供听觉反馈,包括:基于每个振动装置对应的振动函数,驱动对应振动装置进行振动;基于每个发声装置对应的声音函数,驱动对应发声装置进行播放。

进一步地,所述为每个振动装置设置振动权重值,包括:根据以下至少一种信息设置每个振动装置的振动权重值:对应振动装置与触摸屏的当前按压位置的水平距离、设置的对应振动装置的矫正参数;所述为每个发声装置设置声音权重值,包括:根据以下至少一种信息设置每个发声装置的声音权重值:对应发声装置与触摸屏的当前按压位置的水平距离、设置的对应发声装置的矫正参数。

进一步地,所述方法还包括:获取终端的姿态信息,基于所述终端的姿态信息,分别为每个振动装置和每个发声装置设置对应的矫正参数。

第二方面,本发明实施例提供一种反馈装置,包括:获取模块,用于获取用户对终端的触摸屏上发出的按压位置;确定模块,用于根据所述按压位置,确定出所述按压位置对应的压力函数;反馈模块,用于根据所述按压位置对应的压力函数,为所述用户提供触觉反馈和听觉反馈。

进一步地,所述压力函数是以时间为自变量的函数。

进一步地,所述反馈模块,包括:确定子模块,用于根据所述按压位置对应的压力函数,确定出振动函数和声音函数;提供子模块,用于根据所述振动函数,为所述用户提供触觉反馈,根据所述声音函数,为所述用户提供听觉反馈。

进一步地,所述终端包括至少一个振动装置和至少一个发声装置;所述装置还包括:设置模块,用于为每个振动装置设置振动权重值,为每个发声装置设置声音权重值;相应地,所述确定子模块,具体用于根据所述按压位置对应的压力函数、以及每个振动装置的振动权重值,为每个振动装置设计相应的振动函数;根据所述按压位置对应的压力函数、以及每个发声装置的声音权重值,为每个发声装置设计相应的声音函数;相应地,所述提供子模块,具体用于基于每个振动装置对应的振动函数,驱动对应振动装置进行振动;基于每个发声装置对应的声音函数,驱动对应发声装置进行播放。

进一步地,所述设置模块,具体用于根据以下至少一种信息设置每个振动装置的振动权重值:对应振动装置与触摸屏的当前按压位置的水平距离、设置的对应振动装置的矫正参数;根据以下至少一种信息设置每个发声装置的声音权重值:对应发声装置与触摸屏的当前按压位置的水平距离、设置的对应发声装置的矫正参数。

进一步地,所述获取模块,还用于获取终端的姿态信息,基于所述终端的姿态信息,分别为每个振动装置和每个发声装置设置对应的矫正参数。

本发明实施例所提供的反馈方法和装置,首先,获取用户对终端的触摸屏上发出的按压位置,然后根据按压位置确定出该按压位置对应的压力函数,最后根据该按压位置对应的压力函数,为该用户提供触觉反馈和听觉反馈;也就是说,本发明实施例通过获取到的按压位置可以获得对应的压力函数,通过该压力函数可以知晓该按压位置处的压力变化,在得知该按压位置处的压力变化之后,根据该压力变化为用户提供触觉反馈和听觉反馈,使得压力变化与用户的触觉和听觉相关联,从而能够基于用户的当前按压位置为用户实现触觉反馈和听觉反馈,提高了用户沉浸感和用户体检度。

附图说明

图1为本发明实施例中反馈方法的流程示意图;

图2为本发明实施例中同一时间点触摸屏不同位置处的压力值的示意图;

图3为本发明实施例中一个按压位置处的压力函数的示意图;

图4为本发明实施例中反馈方法的一种可选的流程示意图;

图5为本发明在终端上实现触觉反馈的方法所使用的终端的硬件结构的一个示例图;

图6为本发明在终端上实现触觉反馈的方法的为各个马达设置的振动函数的示意图;

图7为本发明实施例中反馈装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

本发明实施例提供一种反馈方法,可以应用于终端中,所述终端包括触摸屏,终端可以是固定终端或移动终端;上述移动终端可以是智能手机、平板电脑或穿戴式设备(如智能眼镜、智能手表等),还可以是智能汽车、智能家电(如智能冰箱、智能电池、机顶盒等);智能手机的操作系统可以是安卓操作系统、IOS操作系统或其他任意第三方开发的可以运行于微型计算机结构(至少包括处理器和内存)的操作系统(如移动版Linux系统、黑莓QNX操作系统等)。

上述终端上设置有触摸屏,触摸屏是一种可接收触头等输入讯号的感应式显示装置,当接触了屏幕上的图形按钮时,屏幕上的触觉反馈系统可根据预先编程的程式驱动各种连结装置,可用以取代机械式的按钮面板,并借由显示画面制造出生动的影音效果。

终端还可以包括用于采集触摸屏按压信息的传感器,触摸屏按压信息包括以下至少一种信息:至少一个按压位置、以及与每个按压位置对应的压力数据;在实际应用中,传感器可以设置在终端的触摸屏的下方,传感器可以是压力传感器或实现3D touch功能的压力触控模组。

终端上还可以设置处理器,处理器可以是实施本发明实施例而专门设置的处理器;处理器与传感器形成通信连接,处理器可以获取触摸屏按压位置信息,并对获取的信息进行处理。

图1为本发明实施例中反馈方法的流程示意图,如图1所示,该方法包括:

S101:获取用户对终端的触摸屏上发出的按压位置;

具体来说,可以采用以下两种方式获取用户对终端的触摸屏上发出的按压位置。

方式1:采集触摸屏的当前按压位置。

这里,可以利用压力传感器或实现3D touch功能的压力触控模组来采集触摸屏的当前按压位置;在实际应用中,在用户手指按压触摸屏时,用户手指的按压位置是触摸屏所在平面的一个区域,因此,在利用压力传感器或实现3D touch功能的压力触控模组采集到用户手指的按压区域时,可以在用户手指的按压区域中选取一点作为用户对终端的触摸屏上发出的按压位置。

方式2:将终端当前显示界面的至少一个操控位置作为用户对终端的触摸屏上发出的按压位置。

这里,终端当前显示界面可以是显示桌面图标的界面,也可以是终端的任意一个应用的人机交互界面;在按压终端当前显示界面的任意一个操控位置时,可以实现人机交互;例如,终端当前显示界面的操控位置被包含在终端当前显示界面的一个操控图标位置,在实际应用中,可以首先获取终端当前显示界面的一个操控图标位置,之后,将终端当前显示界面的一个操控图标位置的一点作为触摸屏的当前按压位置。

下面以“赛车游戏”的人机交互界面为例进行说明。终端当前的显示界面为“赛车游戏”的人机交互界面,“赛车游戏”的人机交互界面中具有“油门”操控图标位置和“刹车”操控图标位置,此时,可以在“油门”操控图标位置或“刹车”操控图标位置中选取一点作为触摸屏的当前按压位置。

S102:根据按压位置,确定出按压位置对应的压力函数;

通过S101得到了按压位置之后,可以从建立好的数据库中查找出该按压位置对应的压力函数,其中,压力函数是以时间为自变量的函数。

这里,所述与每个按压位置对应的压力函数可以是:采集到的触摸屏对应按压位置处的压力值与时间的对应关系;触摸屏对应按压位置处的压力值用于表征触摸屏对应按压位置处的压力大小。

在实际应用中,为了建立数据库,在用户按压触摸屏时,可以采用压力传感器或压力触控模组采集触摸屏多个按压位置的压力值,对于触摸屏的每个按压位置,其压力值通常随时间的变化而产生变化,也就是说,触摸屏的每个按压位置的压力值是以时间为自变量的函数;因此,在获取采集到的触摸屏对应按压位置处的压力值与时间的对应关系后,实际上已经得出了触摸屏对应按压位置处的压力函数。

示例性地,可以将按压位置以二维坐标的形式进行表示,坐标为(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秒。

S103:根据按压位置对应的压力函数,为用户提供触觉反馈和听觉反馈。

这里,通过S102,得到按压位置对应的压力函数之后,也就获得了按压位置处时间与压力值之间的变化规律,可以根据该变化规律为用户提供触觉反馈和听觉反馈。

为了为用户提供触觉反馈和听觉反馈,在具体实施过程中,图4为本发明实施例中反馈方法的一种可选的流程示意图,如图4所示,S103可以包括:

S401:根据按压位置对应的压力函数,确定出振动函数和声音函数;

S402:根据振动函数,为用户提供触觉反馈,根据声音函数,为用户提供听觉反馈。

具体来说,在获取到按压位置之后,在数据库中查找触摸屏的按压位置对应的压力函数;基于查找出的压力函数分别设计振动函数和声音函数;基于所设计的振动函数,提供触觉反馈;基于所设计的声音函数,提供听觉反馈。

这里,由于上述数据库中包括按压位置与压力函数的对应关系,因此,在触摸屏的当前按压位置被包括在用户按压触摸屏的数据库中时,可以基于用户按压触摸屏的数据库,查找触摸屏的当前按压位置对应的压力函数;当然,如果上述数据库中不包含触摸屏的当前按压位置时,不能查找出触摸屏的当前按压位置对应的压力函数,此时,直接结束流程。

这里,振动函数可以是用于表示触觉反馈幅度与时间的对应关系,也就是说,振动函数是以时间为自变量的触觉反馈幅度函数,而查找出的压力函数包括触摸屏的当前按压位置的压力值与时间的对应关系,因此,上述记载的基于查找出的压力函数设计振动函数包括:根据触摸屏的当前按压位置的压力值与时间的对应关系,设计振动函数;例如,触摸屏的当前按压位置的压力值与时间的对应关系可以表示为以时间t为自变量的压力值函数p1(t),此时,可以基于函数p1(t)设计振动函数,特别地,可以直接将函数p1(t)作为振动函数。

声音函数可以是用于表示听觉反馈幅度与时间的对应关系,也就是说,声音函数是以时间为自变量的听觉反馈幅度函数,而查找出的压力函数包括触摸屏的当前按压位置的压力值与时间的对应关系,因此,上述记载的基于查找出的压力函数设计声音函数包括:根据触摸屏的当前按压位置的压力值与时间的对应关系,设计声音函数;例如,触摸屏的当前按压位置的压力值与时间的对应关系可以表示为以时间t为自变量的压力值函数p1(t),此时,可以基于函数p1(t)设计声音函数,特别地,可以直接将函数p1(t)作为声音函数。

在实际应用中,触觉反馈和听觉反馈分别可以通过在终端上设置的振动装置和发声装置实现时,相应地,触觉反馈幅度可以是振动装置的振动幅度,听觉反馈幅度可以是发声装置的声波幅度。

可以看出,在与每个按压位置对应的压力函数包括触摸屏对应按压位置处的压力值与时间的对应关系时,便于基于查找出的压力函数设计振动函数和声音函数,进而有利于提供触觉反馈和听觉反馈。

在一种可选的实施例中,上述终端包括至少一个振动装置和至少一个发声装置;上述方法还包括:为每个振动装置设置振动权重值,为每个发声装置设置声音权重值;

相应地,S401可以包括:根据按压位置对应的压力函数、以及每个振动装置的振动权重值,为每个振动装置设计相应的振动函数;根据按压位置对应的压力函数、以及每个发声装置的声音权重值,为每个发声装置设计相应的声音函数;

相应地,S402可以包括:基于每个振动装置对应的振动函数,驱动对应振动装置进行振动;基于每个发声装置对应的声音函数,驱动对应发声装置进行播放。

上述振动装置可以是线性马达等振动器件,振动装置可以在振动控制信号的控制下进行振动,振动控制信号可以终端的处理器生成;发声装置可以是喇叭等声音器件,发声装置可以在声音控制信号的控制下进行播放,声音控制信号可以终端的处理器生成。

这里,不对振动装置的个数和振动装置所在位置进行限定,不对发声装置的个数和发声装置所在位置进行限定。

下面通过图5说明对振动装置的个数和位置进行示例性的说明。

图5为本发明在终端上实现触觉反馈的方法所使用的终端的硬件结构的一个示例图,如图5所示,终端的触摸屏处设置有实现3D touch功能的压力触控模组501,压力触控模组501包括多个压力传感器;在触摸屏的下方的面板设置有4个线性马达502(图4中圆圈所标记的位置),线性马达是终端上设置的振动装置,这4个线性马达分别设置在相应面板的四角位置。

具体来说,为每个振动装置设计相应的振动函数和为每个发声装置设计相应的声音函数的实现方式是类似的,对于为每个振动装置设计相应的振动函数,可以根据查找出的压力函数,为每个振动装置设置初始反馈函数,将初始反馈函数乘以对应振动装置的振动权重值,得出为对应振动装置设计的振动函数;这里,初始反馈函数用于表示对应振动装置振动幅度与时间的对应关系,也就是说,初始反馈函数是以时间为自变量的振动幅度函数。例如,为任意一个振动装置设置的初始反馈函数为p2(t),而对应振动装置的振动权重值为w,则为对应振动装置设计的振动函数p3(t)等于w*p2(t)。

进一步地,查找出的数据库中包括触摸屏的当前按压位置的压力值与时间的对应关系时,可以根据触摸屏的当前按压位置的压力值与时间的对应关系,设计初始反馈函数。

在获取每个振动装置对应的振动函数后,可以根据每个振动装置对应的振动函数,向每个振动装置发送相应的振动控制信号,以控制对应振动装置按照振动函数进行振动。

另外,由于可以根据每个振动装置的振动权重值来设计振动函数,进而根据振动函数驱动相应的振动装置进行振动,因此可以为每个振动装置配置多种振动策略;进一步地,由于在设置每个振动装置的振动权重值时,还需要考虑对应振动装置与触摸屏的当前按压位置的水平距离和/或设置的对应振动装置的矫正参数,如此,可以对不同振动装置设置不同的振动策略;另外,由于需要根据每个振动装置对应的振动函数,向每个振动装置发送相应的振动控制信号,所以可以设计相应的精确复杂的振动控制信号,并驱动终端上的至少一个振动装置,带给用户更优美更震撼的触觉反馈体验,丰富了力反馈的内容。

并且,对于每个发声装置的声音函数驱动相应的发声装置来播放声音的播放策略与上述振动策略类似,这里,不再赘述。

为了设计出振动函数和声音函数,在一种可选的实施例中,上述为每个振动装置设置振动权重值,包括:根据以下至少一种信息设置每个振动装置的振动权重值:对应振动装置与触摸屏的当前按压位置的水平距离、设置的对应振动装置的矫正参数;上述为每个发声装置设置声音权重值,包括:根据以下至少一种信息设置每个发声装置的声音权重值:对应发声装置与触摸屏的当前按压位置的水平距离、设置的对应发声装置的矫正参数。

具体来说,每个振动装置通常不处于触摸屏所在平面,每个振动装置与触摸屏的当前按压位置的水平距离用于表示对应振动装置在触摸屏上的投影位置与触摸屏的当前按压位置的距离;而每个振动装置在触摸屏上的投影位置可以预先输入至终端中,如此,在获取触摸屏的当前按压位置后,通过计算便可得出每个振动装置与触摸屏的当前按压位置的水平距离;例如,一个振动装置在触摸屏上的投影位置的坐标为(x1,y1),而触摸屏的当前按压位置的坐标为(x2,y2),则对应振动装置与触摸屏的当前按压位置的水平距离d1为:

这里,每个振动装置的矫正参数可以预先设置,在终端上设置有多个矫正参数时,各个振动装置的矫正参数可以相同,也可以不同。

同理,每个发声装置通常不处于触摸屏所在平面,每个发声装置与触摸屏的当前按压位置的水平距离用于表示对应振动装置在触摸屏上的投影位置与触摸屏的当前按压位置的距离;而每个发声装置在触摸屏上的投影位置可以预先输入至终端中,如此,在获取触摸屏的当前按压位置后,通过计算便可得出每个发声装置与触摸屏的当前按压位置的水平距离;例如,一个发声装置在触摸屏上的投影位置的坐标为(x3,y3),而触摸屏的当前按压位置的坐标为(x2,y2),则对应发声装置与触摸屏的当前按压位置的水平距离d2为:

这里,每个发声装置的矫正参数可以预先设置,在终端上设置有多个矫正参数时,各个发声装置的矫正参数可以相同,也可以不同。

在一种可选的实施例中,上述方法还包括:获取终端的姿态信息,基于终端的姿态信息,分别为每个振动装置和每个发声装置设置对应的矫正参数。

具体地,可以基于所述终端的姿态信息,分别对振动装置进行标记,对于任意一个振动装置,可以标记为重点振动装置或辅助振动装置,为各个重点振动装置设置相同的矫正参数,记为参数1;为各个辅助振动装置设置相同的矫正参数,记为参数2,参数1大于参数2。

这里,还可以根据应用场景调整每个振动装置的矫正参数的取值,例如,在某些激烈场景模式下,每个振动装置的矫正参数取值可偏大。

进一步地,所述终端的姿态信息包括触摸屏所在平面与水平面的角度,触摸屏所在平面与水平面的角度的取值在0度到90度之间。

如果触摸屏所在平面与水平面的角度等于0度或90度,可以为各个振动装置的相同的矫正参数,即,将每个振动装置均标记为重点振动装置或辅助振动装置。

如果触摸屏所在平面与水平面的角度大于0度且小于等于45度,将每个下方振动装置标记为第一种振动装置,将每个上方振动装置标记为第二种振动装置,其中,下方振动装置在触摸屏上的投影与触摸屏底部的距离小于等于下方振动装置在触摸屏上的投影与触摸屏顶部的距离,上方振动装置在触摸屏上的投影与触摸屏顶部的距离小于等于下方振动装置在触摸屏上的投影与触摸屏底部的距离,第一种振动装置为重点振动装置时,第二种振动装置为辅助振动装置;第一种振动装置为辅助振动装置时,第二种振动装置为重点振动装置。

如果触摸屏所在平面与水平面的角度大于45度且小于90度,将每个上方振动装置标记为第一种振动装置,将每个下方振动装置标记为第二种振动装置。

同理,为每个发声装置设置对应的矫正参数的方式可以采用上述方式,这里,不再赘述。

其中,在终端为智能手机时,终端的姿态信息为终端的手持姿态,在实际应用中,可以利用终端上设置的陀螺仪等传感器检测终端的手持姿态。

基于上述实施例,还可以采用三种方式为每个振动装置设置振动权重值,下面分别进行说明。

方式1,根据每个振动装置与触摸屏的当前按压位置的水平距离,设置对应振动装置的振动权重值。

在采用方式1为每个振动装置设置振动权重值时,将振动装置与触摸屏的当前按压位置的水平距离记为L1,则振动装置的振动权重值可以与L1成正比,也可以与L1成反比。

方式2,根据设置的每个振动装置的矫正参数,设置对应振动装置的振动权重值。

在采用方式2为每个振动装置设置振动权重值时,振动装置的振动权重值与振动装置的矫正参数成正比。

方式3,根据每个振动装置与触摸屏的当前按压位置的水平距离、以及设置的每个振动装置的矫正参数,设置对应振动装置的振动权重值。

在采用方式3为每个振动装置设置终端权重值时,将终端装置与触摸屏的当前按压位置的水平距离记为L2,将振动装置的矫正参数记为S,则振动装置的振动权重值可以与L2*S成正比,也可以与S/L2成正比。

需要说明的是,上述为每个发声装置设置声音权重值的方式同样可以采用上述方式,这里,不再赘述。

为了能更加体现本发明的目的,下面举实例来对上述反馈方法中的一个或多个实施例进行说明。

参考图5所示,终端为智能手机,终端上设置有压力触控模组和4个线性马达,还包括两个喇叭,这4个线性马达分别标记为马达1、马达2、马达3和马达4,两个喇叭分别标记为喇叭1和喇叭2;该反馈方法包括:

步骤A:获取用户对终端的触摸屏上发出的按压位置;

步骤B:根据按压位置,确定出按压位置对应的压力函数;

步骤C:获取终端的姿态信息,基于终端的姿态信息,分别为每个马达设置矫正参数,为每个喇叭设置矫正参数;

其中,将马达1的矫正参数标记为x_1,将马达2的矫正参数标记为x_2,将马达3的矫正参数标记为y_1,将马达4的矫正参数标记为y_2,将喇叭1的矫正参数标记为z_1,将喇叭2的矫正参数标记为z_2,例如,在4个马达的矫正参数中,x_1和x_2偏大,y_1极小,接近于0,y_2大于y_1,并小于x_1和x_2。

步骤D:获取每个振动装置与触摸屏的当前按压位置的水平距离。

将马达1与触摸屏的当前按压位置的水平距离记为a,将马达2与触摸屏的当前按压位置的水平距离记为b,马达3与触摸屏的当前按压位置的水平距离记为c,将马达4与触摸屏的当前按压位置的水平距离记为d,将喇叭1与触摸屏的当前按压位置的水平距离记为e,将喇叭2与触摸屏的当前按压位置的水平距离记为f。

步骤E:根据每个振动装置与触摸屏的当前按压位置的水平距离、以及设置的每个振动装置的矫正参数,设置对应振动装置的振动权重值;根据每个发声装置与触摸屏的当前按压位置的水平距离、以及设置的每个发声装置的矫正参数,设置对应发声装置的振动权重值。

这里,将马达1的振动权重值记为α,将马达2的振动权重值记为β,将马达3的振动权重值记为γ,将马达4的振动权重值记为δ,将喇叭1的声音权重值记为μ,将喇叭2的声音权重值记为ν,则有α=a*x_1,β=b*x_2,γ=c*y_1,δ=d*y_2,μ=e*z_1,ν=f*z_2。

这里,将每个马达设置的初始反馈函数为用户按压触摸屏的数据库中查找出的触摸屏的当前按压位置的压力函数,将每个马达设置的初始反馈函数记为P(t),将马达1、马达2、马达3和马达4对应的振动函数分别记为vibrate-1(t)、vibrate-2(t)、vibrate-3(t)、vibrate-4(t),将喇叭1和喇叭2对应的声音函数分别记为voice-1(t)、voice-2(t),则有:

vibrate-1(t)=α×P(t)

vibrate-2(t)=β×P(t)

vibrate-3(t)=γ×P(t)

vibrate-4(t)=δ×P(t)

voice-1(t)=μ×P(t)

voice-2(t)=ν×P(t)

图6为本发明在终端上实现触觉反馈的方法的为各个马达设置的振动函数的示意图,图6中,竖直的轴表示振动幅度,两个横轴分别为时间轴和马达轴,在马达轴上,1、2、3和4分别表示马达1、马达2、马达3和马达4;数字1开始的箭头所指的曲线表示马达1对应的振动函数,数字2开始的箭头所指的曲线表示马达2对应的振动函数,数字3开始的箭头所指的曲线表示马达3对应的振动函数,数字4开始的箭头所指的曲线表示马达4对应的振动函数。

步骤F:基于每个振动装置对应的振动函数,驱动对应振动装置进行振动;基于每个发声装置对应的声音函数,驱动对应发声装置进行播放。

进一步地,在获取触摸屏当前按压位置后,还可以获取当前按压位置初始时刻的压力值,基于当前按压位置初始时刻的压力值标定初始力反馈的启动数据。还可以根据触摸屏当前按压位置所对应的操控图标,为每个振动装置设置不同的振动策略,为每个发声装置设置不同的播放策略,例如,触摸屏当前按压位置分别对应“油门用力踩”的图标和“油门轻踩”的图标时,产生的触觉反馈的幅度是不同的,触摸屏当前按压位置对应“刹车”图标时,触觉反馈的形式为产生急剧高频振动,以及前倾的假象;触摸屏当前按压位置同时对应“刹车”图标和“油门”图标时,触觉反馈的形式为产生力反馈又甩尾的震感,以及漂移离心假象。

本发明实施例所提供的反馈方法,首先,获取用户对终端的触摸屏上发出的按压位置,然后根据按压位置确定出该按压位置对应的压力函数,最后根据该按压位置对应的压力函数,为该用户提供触觉反馈和听觉反馈;也就是说,本发明实施例通过获取到的按压位置可以获得对应的压力函数,通过该压力函数可以知晓该按压位置处的压力变化,在得知该按压位置处的压力变化之后,根据该压力变化为用户提供触觉反馈和听觉反馈,使得压力变化与用户的触觉和听觉相关联,从而能够基于用户的当前按压位置为用户实现触觉反馈和听觉反馈,提高了用户沉浸感和用户体检度。

基于同一发明构思,本发明实施例还提供一种反馈装置,图7为本发明实施例中反馈装置的结构示意图,如图7所示,该装置包括:获取模块71、确定模块72和反馈模块73;

其中,获取模块71,用于获取用户对终端的触摸屏上发出的按压位置;确定模块72,用于根据按压位置,确定出按压位置对应的压力函数;反馈模块73,用于根据按压位置对应的压力函数,为用户提供触觉反馈和听觉反馈。

其中,上述压力函数是以时间为自变量的函数。

为了为用户提供触觉反馈和听觉反馈,在具体实施过程中,上述反馈模块73,包括:确定子模块,用于根据按压位置对应的压力函数,确定出振动函数和声音函数;提供子模块,用于根据振动函数,为用户提供触觉反馈,根据声音函数,为用户提供听觉反馈。

上述终端包括至少一个振动装置和至少一个发声装置;在一种可选的实施例中,上述装置还包括:设置模块,用于为每个振动装置设置振动权重值,为每个发声装置设置声音权重值;相应地,上述确定子模块,具体用于根据按压位置对应的压力函数、以及每个振动装置的振动权重值,为每个振动装置设计相应的振动函数;根据按压位置对应的压力函数、以及每个发声装置的声音权重值,为每个发声装置设计相应的声音函数;相应地,上述提供子模块,具体用于基于每个振动装置对应的振动函数,驱动对应振动装置进行振动;基于每个发声装置对应的声音函数,驱动对应发声装置进行播放。

为了设计出振动函数和声音函数,在一种可选的实施例中,上述设置模块,具体用于根据以下至少一种信息设置每个振动装置的振动权重值:对应振动装置与触摸屏的当前按压位置的水平距离、设置的对应振动装置的矫正参数;根据以下至少一种信息设置每个发声装置的声音权重值:对应发声装置与触摸屏的当前按压位置的水平距离、设置的对应发声装置的矫正参数。

为了为每个振动装置和每个发声装置设置对应的矫正参数,在一种可选的实施例中,上述获取模块71,还用于获取终端的姿态信息,基于终端的姿态信息,分别为每个振动装置和每个发声装置设置对应的矫正参数。

在实际应用中,获取模块71、确定模块72、反馈模块73、确定子模块、提供子模块和设置模块均可由位于装置的CPU、微处理器(MPU,Microprocessor Unit)、专用集成电路(ASIC,Application Specific Integrated Circuit)或现场可编程门阵列(FPGA,Field-Programmable Gate Array)等实现。

本实施例记载一种计算机可读介质,可以为ROM(例如,只读存储器、FLASH存储器、转移装置等)、磁存储介质(例如,磁带、磁盘驱动器等)、光学存储介质(例如,CD-ROM、DVD-ROM、纸卡、纸带等)以及其他熟知类型的程序存储器;计算机可读介质中存储有计算机可执行指令,当执行指令时,引起至少一个处理器执行包括以下的操作:

获取用户对终端的触摸屏上发出的按压位置;根据按压位置,确定出按压位置对应的压力函数;根据按压位置对应的压力函数,为用户提供触觉反馈和听觉反馈。

本发明实施例所提供的反馈方法,首先,获取用户对终端的触摸屏上发出的按压位置,然后根据按压位置确定出该按压位置对应的压力函数,最后根据该按压位置对应的压力函数,为该用户提供触觉反馈和听觉反馈;也就是说,本发明实施例通过获取到的按压位置可以获得对应的压力函数,通过该压力函数可以知晓该按压位置处的压力变化,在得知该按压位置处的压力变化之后,根据该压力变化为用户提供触觉反馈和听觉反馈,使得压力变化与用户的触觉和听觉相关联,从而能够基于用户的当前按压位置为用户实现触觉反馈和听觉反馈,提高了用户沉浸感和用户体检度。

这里需要指出的是:以上装置实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果,因此不做赘述。对于本发明装置实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解,为节约篇幅,这里不再赘述。

这里需要指出的是:

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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