首页 / 专利分类库 / 电通信技术 / 传输 / 近场传输系统,例如感应环型的 / 数据传输方法、装置、设备及系统

数据传输方法、装置、设备及系统

申请号 CN202210827190.9 申请日 2022-07-13 公开(公告)号 CN117459924A 公开(公告)日 2024-01-26
申请人 北京字跳网络技术有限公司; 发明人 张秀志;
摘要 本 申请 提供了一种数据传输方法、装置、设备及系统,其中方法包括:获取 马 达控制信息;根据马达控制信息,生成震动数据,震动数据包括:音频震动数据和普通震动数据;向和头戴式显示设备通讯连接的外设装置发送震动数据,以指示外设装置震动。本申请通过利用私有的无线传输方式进行数据传输,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。
权利要求

1.一种数据传输方法,其特征在于,应用于头戴式显示设备,所述方法包括:
获取达控制信息;
根据所述马达控制信息,生成震动数据,所述震动数据包括:音频震动数据和普通震动数据;
向和所述头戴式显示设备通讯连接的外设装置发送所述震动数据,以指示所述外设装置震动。
2.根据权利要求1所述的方法,其特征在于,所述马达控制信息为音频信息,所述获取马达控制信息,具体包括:
获取所述头戴式显示设备的待播放音频信息;
确定所述待播放音频信息包括震动事件;
将所述待播放音频信息确定为马达控制信息。
3.根据权利要求2所述的方法,其特征在于,确定所述待播放音频信息包括震动事件,包括:
获取所述待播放音频信息包含的事件信息,
确定所述事件信息是否与预设震动事件匹配;
若是,则确定所述待播放音频信息包括震动事件。
4.根据权利要求3所述的方法,其特征在于,根据所述马达控制信息,生成震动数据,包括:
根据所述待播放音频信息,确定音频震动数据。
5.根据权利要求1所述的方法,其特征在于,所述马达控制信息为命令信息,所述获取马达控制信息,具体包括:
根据用户操作触发的控制指令,生成命令信息;
将所述命令信息确定为马达控制信息。
6.根据权利要求1‑5任一项所述的方法,其特征在于,还包括:
确定所述头戴式显示设备和所述外设装置的通信信道。
7.一种数据传输方法,其特征在于,应用于和头戴式显示设备通讯连接的外设装置,所述方法包括:
接收所述头戴式显示设备发送的震动数据;
根据所述震动数据,控制马达进行震动。
8.根据权利要求7所述的方法,其特征在于,根据所述震动数据,控制马达进行震动之前,还包括:
对所述震动数据进行处理,得到震动波形文件;
相应的,根据所述震动数据,控制马达进行震动,包括:
根据所述震动波形文件,控制所述马达进行震动。
9.根据权利要求7‑8任一项所述的方法,其特征在于,还包括:
确定所述头戴式显示设备和所述外设装置的通信信道。
10.一种数据传输装置,其特征在于,配置于头戴式显示设备,包括:
获取模,用于获取马达控制信息;
生成模块,用于根据所述马达控制信息,生成震动数据,所述震动数据包括:音频震动数据和普通震动数据;
发送模块,用于向和所述头戴式显示设备通讯连接的外设装置发送所述震动数据,以指示所述外设装置震动。
11.一种数据传输装置,其特征在于,配置于和头戴式显示设备通讯连接的外设装置,包括:
接收模块,用于接收所述头戴式显示设备发送的震动数据;
制模块,用于根据所述震动数据,控制马达进行震动。
12.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1至9中任一项所述的数据传输方法。
13.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行权利要求1至9中任一项所述的数据传输方法。
14.一种包含程序指令的计算机程序产品,其特征在于,当所述程序指令在电子设备上运行时,使得所述电子设备执行如权利要求1至9中任一项所述的数据传输方法。
15.一种数据传输系统,其特征在于,包括:如权利要求12所述的电子设备,所述电子设备包括:头戴式显示设备和外设装置;
其中,所述头戴式显示设备包括第一无线芯片;
所述外设装置包括第二无线芯片和马达。

说明书全文

数据传输方法、装置、设备及系统

技术领域

[0001] 本申请实施例涉及数据传输技术,特别涉及一种数据传输方法、装置、设备及系统。

背景技术

[0002] 目前,虚拟现实(Virtual Reality,简称VR)技术中的头戴式显示设备和外设装置之间的数据传输常基于蓝牙实现的。例如,基于蓝牙将头戴式显示设备的震动数据传输给外设装置,以使外设装置执行震动操作。然而,由于蓝牙传输数据时需要进行复杂的数据编码和数据解码操作,导致数据的传输速率低且延时大,显然无法满足VR系统对数据高速率低延时的传输要求。因此,如何实现高速率低延时的数据传输,成为目前亟需解决的问题。发明内容
[0003] 本申请提供一种数据传输方法、装置、设备及系统,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。
[0004] 第一方面,本申请提供了一种数据传输方法,应用于头戴式显示设备,所述方法包括:
[0005] 获取达控制信息;
[0006] 根据所述马达控制信息,生成震动数据,所述震动数据包括:音频震动数据和普通震动数据;
[0007] 向和所述头戴式显示设备通讯连接的外设装置发送所述震动数据,以指示所述外设装置震动。
[0008] 第二方面,本申请实施例提供了一种数据传输方法,应用于和头戴式显示设备通讯连接的外设装置,所述方法包括:
[0009] 接收所述头戴式显示设备发送的震动数据;
[0010] 根据所述震动数据,控制马达进行震动。
[0011] 第三方面,本申请实施例提供了一种数据传输装置,配置于头戴式显示设备,包括:
[0012] 获取模,用于获取马达控制信息;
[0013] 生成模块,用于根据所述马达控制信息,生成震动数据,所述震动数据包括:音频震动数据和普通震动数据;
[0014] 发送模块,用于向和所述头戴式显示设备通讯连接的外设装置发送所述震动数据,以指示所述外设装置震动。
[0015] 第四方面,本申请实施例提供了一种数据传输装置,配置于和头戴式显示设备通讯连接的外设装置,包括:
[0016] 接收模块,用于接收所述头戴式显示设备发送的震动数据;
[0017] 控制模块,用于根据所述震动数据,控制马达进行震动。
[0018] 第五方面,本申请实施例提供了一种电子设备,包括:
[0019] 处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行前述实施例所述的数据传输方法。
[0020] 第六方面,本申请实施例提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行前述实施例所述的数据传输方法。
[0021] 第七方面,本申请实施例提供了一种包含程序指令的计算机程序产品,当所述程序指令在电子设备上运行时,使得所述电子设备执行如前述实施例所述的数据传输方法。
[0022] 第八方面,本申请实施例提供了一种数据传输系统,包括:如第五方面实施例所述的电子设备,所述电子设备包括:头戴式显示设备和外设装置;
[0023] 其中,所述头戴式显示设备包括第一无线芯片;
[0024] 所述外设装置包括第二无线芯片和马达。
[0025] 本申请实施例公开的技术方案,至少具有如下有益效果:
[0026] 通过头戴式显示设备获取马达控制信息,以根据马达控制信息生成震动数据,然后向和头戴式显示设备通讯连接的外设装置该震动数据,以使外设装置震动。由此,通过利用私有的无线传输方式进行数据传输,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。附图说明
[0027] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0028] 图1是本申请实施例提供的第一种数据传输方法的流程示意图;
[0029] 图2是本申请实施例提供的头戴式显示设备的结构示意图;
[0030] 图3是本申请实施例提供的第二种数据传输方法的流程示意图;
[0031] 图4是本申请实施例提供的第三种数据传输方法的流程示意图;
[0032] 图5是本申请实施例提供的第四种数据传输方法的流程示意图;
[0033] 图6是本申请实施例提供的第五种数据传输方法的流程示意图;
[0034] 图7是本申请实施例提供的一个外设装置的结构示意图;
[0035] 图8是本申请实施例提供的另一个外设装置的结构示意图;
[0036] 图9是本申请实施例提供的第六种数据传输方法的流程示意图;
[0037] 图10是本申请实施例提供的第七种数据传输方法的流程示意图;
[0038] 图11是本申请实施例提供的一种数据传输装置的示意性框图
[0039] 图12是本申请实施例提供的另一种数据传输装置的示意性框图;
[0040] 图13是本申请实施例提供的一种电子设备的示意性框图;
[0041] 图14是本申请实施例提供的一种数据传输系统的示意性框图;
[0042] 图15是本申请实施例提供的另一种数据传输系统的示意性框图;
[0043] 图16是本申请实施例提供的数据传输系统中头戴式显示设备和外设装置之间震动数据传输的示意图;
[0044] 图17是本申请实施例提供的数据传输系统的时间同步的示意性框图;
[0045] 图18是本申请实施例提供的数据传输系统中头戴式显示设备与各手柄之间无线通信过程的示意图。

具体实施方式

[0046] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0047] 需要说明的是,本申请的说明书权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0048] 本申请适用于虚拟现实技术中头戴式显示设备和外设装置之间的数据传输场景。考虑到目前基于蓝牙传输数据时,需要进行复杂的数据编码和数据解码操作,导致数据的传输速率低且延时大的问题,本申请设计了一种数据传输方法,通过该方法以满足虚拟现实场景中对数据高速率低延时的传输要求。
[0049] 下面结合附图对本申请实施例提供的一种数据传输方法进行详细说明。首先,以头戴式显示设备为例,对本申请实施例的数据传输方法进行说明,具体如图1所示。本申请实施例中,头戴式显示设备可以是但不限于:虚拟现实头盔和虚拟现实眼镜等。
[0050] 如图2所示,头戴式显示设备可包括第一无线芯片、处理器、摄像头模块、惯性测量单元(Inertial Measurement Unit,简称:IMU)以及天线等,其中IMU又称为惯性测量传感器。头戴式显示设备可通过惯性测量传感器和相机进行6自由度追踪。并且,头戴式显示设备向外设装置发送数据以及接收外设装置发送的数据,均通过第一无线芯片实现。本实施例中,第一无线芯片使用的是2.4G数据通讯协议。
[0051] 其中,外设装置可以是但不限于:手柄、手持控制器、手环、腕带以及手套等。
[0052] 图1是本申请实施例提供的一种数据传输方法的流程示意图。本实施例提供的应用于头戴式显示设备的数据传输方法,可由数据传输装置来执行,以实现对头戴式显示设备和外设装置之间的数据传输过程进行控制。该数据传输装置可由硬件和/或软件组成,并可集成于头戴式显示设备中。如图1所示,本申请数据传输方法包括以下步骤:
[0053] S101,获取马达控制信息。
[0054] 由于头戴式显示设备在工作过程中,除了显示画面图像之外,还会输出与画面同步的音频信息。而音频信息可以作为反馈信息发送给用户,以使用户基于该反馈信息,对显示画面有进一步的了解。因此,本申请可获取该音频信息作为马达控制信息。
[0055] 又因为用户使用头戴式显示设备时,可能需要通过与该头戴式显示设备通信连接的外设装置向用户输出震动反馈,以增强使用体验。那么用户可主动触发震动控制指令,以控制外设装置向用户输出不同强度的震动反馈。基于此,本申请还可通过获取用户触发的控制指令生成命令信息,并将该命令信息作为马达控制信息。
[0056] 其中,通过获取用户触发的控制指令生成命令信息,并将该命令信息作为马达控制信息,具体为:通过分析获取到的控制指令,以确定该控制指令是否为控制马达震动的指令。如果确定该控制指令为控制马达震动的指令,则基于该控制指令生成命令信息。例如,用户通过触发菜单中震动幅度调整指令,以使外设装置输出震动调整提示信息时,生成命令信息。如果确定该控制指令不为控制马达震动的指令,则根据该控制指令执行相应的操作,比如切换画面等。
[0057] 也就是说,本申请马达控制信息包括音频信息和命令信息。
[0058] S102,根据马达控制信息,生成震动数据,震动数据包括:音频震动数据和普通震动数据。
[0059] 示例性的,如果马达控制信息为音频信息,则因为音频信息格式等原因无法直接作为震动数据。因此,需要基于音频信息生成震动数据。
[0060] 在本申请实施例中,基于音频信息生成震动数据,可选对音频信息进行转换,以生成音频震动数据,具体生成过程将在下面实施例部分进行详细说明。
[0061] 如果马达控制信息为命令信息,因命令信息可直接用于对外设装置进行震动控制。因此,本实施例可直接将获取到的命令信息作为普通震动数据,以减少不必要的数据处理
[0062] 也就是说,本申请实施例可基于音频信息生成音频震动数据,或基于命令信息生成普通震动数据,从而基于该两类震动数据中的任意一个可为后续控制外设装置震动,以向用户输出震动反馈奠定基础
[0063] S103,向和头戴式显示设备通讯连接的外设装置发送震动数据,以指示外设装置震动。
[0064] 其中,通讯连接是指头戴式显示设备和外设装置之间相互传输数据的通信通道,该通信通道为无线传输通道,且该通道数量可以是一个或者多个,此处不做限制。并且,该无线传输通道是头戴式显示设备通过扫描所在环境得到的,具体获取过程将在下面实施例中详细说明。
[0065] 示例性的,生成到震动数据之后,本实施例可使用简单低延时的编码算法,例如ADPCM编码算法,对震动数据进行编码,以将震动数据压缩到原始数据的四分之一,从而达到低延时高速率的数据传输目的。然后,头戴式显示设备通过串行外设接口(Serial Peripheral Interface,简称SPI)将震动数据发送给第一无线芯片。进而,第一无线芯片基于无线传输通道将该震动数据发送给外设装置,以使外设装置根据该震动数据震动,从而为提高用户的使用体验提供条件。
[0066] 其中,外设装置震动具体是指外设装置中的马达震动。本实施例中,外设装置中的马达优选为宽频马达,当然还可以是其他类型马达,比如线性马达等,此处对其不做具体限制。
[0067] 本申请提供的数据传输方法,通过头戴式显示设备获取马达控制信息,以根据马达控制信息生成震动数据,然后向和头戴式显示设备通讯连接的外设装置该震动数据,以使外设装置震动。由此,通过利用私有的无线传输方式进行数据传输,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。
[0068] 作为本申请的一种可选实现方式,考虑到马达控制信息可以是音频信息,那么下面结合图3,对马达控制信息为音频信息,并基于音频信息生成震动数据,以控制外设装置震动的实现过程进行具体说明。
[0069] 如图3所示,该方法包括以下步骤:
[0070] S201,获取头戴式显示设备的待播放音频信息。
[0071] 考虑到头戴式显示设备在工作过程中,除了向用户显示画面图像之外,还向用户输出与画面内容同步的音频信息。因此,本申请可实时获取头戴式显示设备的待播放音频信息,以为后续生成震动数据奠定基础。
[0072] 可选的,本申请获取待播放音频信息时,可根据显示画面从音频数据库中获取对应的待播放音频信息,或者对显示画面进行识别,以根据识别结果从音频数据库中获取对应的待播放音频信息等,本申请对其不作具体限制。
[0073] 其中,音频数据库可以是头戴显示设备的本地数据库,也可以是后台服务端的数据库等,此处对其不作具体限制。
[0074] S202,确定待播放音频信息包括震动事件。
[0075] S203,将待播放音频信息确定为马达控制信息。
[0076] 获取到待播放音频信息之后,本申请可通过分析该待播放音频信息,以确定该音频信息中是否包括震动事件。如果确定该音频信息中包括震动事件,则将该音频信息确定为马达控制信息,否则不作为马达控制信息。
[0077] 本申请确定该音频信息中是否包括震动事件时,可通过获取音频信息包含的所有事件信息,之后将每个事件信息与预设震动事件进行比对,以确定该音频信息包含的事件信息是否与预设震动事件匹配。如果任意事件信息与任一预设震动事件匹配,则确定该音频信息包括震动事件。如果所有事件信息均与所有预设震动事件均不匹配,则确定该音频信息不包括震动事件,那么此时无需做任何操作,并继续执行获取头戴式显示设备的待播放音频信息。
[0078] 在本实施例中,预设震动事件可根据用户的触觉感知需求进行适应性设置。具体可以是用户自定义设置的,或者头戴式显示设备出厂时预先设置的等。例如,当用户在玩射击游戏时,每射击一次头戴式显示设备除了会向用户输出射击音频,并且还可通过控制马达震动以将射击结果反馈给用户,使得用户根据结果获知是否成功射击,那么此时可设置射击震动事件,等等。
[0079] S204,根据马达控制信息,生成震动数据。
[0080] 本申请实施例中,震动数据具体是指音频震动数据。
[0081] 考虑到马达控制信息为音频信息时,因音频信息格式等原因,无法直接作为震动数据。因此,如果马达控制信息为音频信息,则需要根据马达控制信息生成震动数据。示例性的,根据待播放音频信息,确定音频震动数据。
[0082] 作为一种可选的实现方式,本申请根据待播放音频信息,确定音频震动数据时,可通过对音频信息进行转换处理,以得到音频震动数据,并将该音频震动数据确定为震动数据。
[0083] 具体实现时,可先利用简单低延时的解码算法对该音频信息进行解码,并将该解码后的音频信息采用震动转换算法转换成音频震动数据。然后,将该音频震动数据确定为震动数据。其中,震动转换算法可以是任意能够将音频信息转换成震动数据的算法,本申请对此不做具体限制。
[0084] 其中,对音频信息进行解码之后,本申请实施例还可将解码后的音频信息通过头戴式显示设备的扬声器进行输出操作,以使用户能够听到屏幕当前显示画面所对应的音频信息。
[0085] S205,向和头戴式显示设备通讯连接的外设装置发送震动数据,以指示外设装置震动。
[0086] 本申请提供的数据传输方法,通过头戴式显示设备获取马达控制信息,如果马达控制信息为音频信息,且该音频信息包括震动事件,则根据该音频信息生成震动数据,然后向和头戴式显示设备通讯连接的外设装置该震动数据,以使外设装置震动。由此,通过利用私有的无线传输方式进行数据传输,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。
[0087] 作为本申请的一个可选实现方式,本申请实施例获取马达控制信息之前,还包括:获取用于头戴式显示设备和外设装置之间进行数据传输的通信通道。下面结合图4,对本申请实施例提供的数据传输方法的上述获取通信通道的具体过程进行说明。
[0088] 如图4所示,该数据传输方法包括以下步骤:
[0089] S301,向外设装置发送第一配对信息,第一配对信息包括:第一设备标识。
[0090] S302,接收外设装置返回的第二配对信息,第二配对信息包括:第二设备地址。
[0091] 在本申请实施例中,第一设备具体是指头戴式显示设备;第一设备标识是指能够唯一确定头戴式显示设备身份的信息,例如头戴式显示设备的唯一标识码或者头戴式显示设备中第一无线芯片的唯一标识码等。
[0092] 第二设备具体是指外设装置;第二设备地址是指外设装置的通讯地址,例如MAC地址。
[0093] 示例性的,根据用户触发的配对操作,头戴式显示设备进入配对状态。其中,用户触发的配对操作,可以是触发头戴式显示设备的配对控件,或者触发外设装置的配对按键等。
[0094] 进入配对状态后,头戴式显示设备将配对广播地址和配对传输通道发送给外设装置,以使外设装置和头戴式显示设备使用相同的配对广播地址和配对传输通道进行配对操作。其中,配对广播地址是预先配置于头戴式显示设备中的信息。例如可选的广播地址为:0x12 0x34 0x56 0x78等等。配对传输通道可以是头戴式显示设备从扫描得到的所有无线传输通道中选择一定数量的通道作为配对传输通道。需要说明的是,因为配对传输通道是用于建立头戴式显示设备和外设装置之间的通信连接,所以数据传输的实时性要求不高。
那么为了提高后续头戴式显示设备和外设装置之间数据交互的高速率和低延时,本实施例可选的将配对传输通道的数量设置为大于或等于1且小于或等于3中的任一值。
[0095] 根据配对广播地址和配对传输通道进行配对操作时,头戴式显示设备可基于配对广播地址和配对传输通道,按照第一时间间隔向外设装置发送广播信号。同时,外设装置按照第二时间间隔接收头戴式显示设备发送的广播信号。当外设装置接收到头戴设备发送的广播信号时,基于配对传输通道向头戴式显示设备发送响应信号,以告知头戴式显示设备自己已成功收到上述广播信号。其中,第一时间间隔是基于头戴式显示设备时间系统确定的,第二时间间隔是基于外设装置时间系统确定的,且第一时间间隔小于或大于第二时间间隔。
[0096] 考虑到头戴式显示设备和外设装置各自的时间系统存在时间不统一的问题,导致头戴式显示设备需要向外设装置发送多次广播信号,外设装置才能收到该广播信号。例如,配对传输通道的数量为3个,头戴式显示设备用于发送或接收数据的第一时间间隔为1秒(s),外设装置用于接收或发送数据的第二时间间隔为3s,那么头戴设备在第1秒时通过第一个配对传输通道向外设装置发送一次广播信号,在第2秒时则从第一个配对传输通道切换至第二个配对传输通道,并通过第二个配对传输通道向外设装置发送一次广播信号,在第3秒时则从第二个配对传输通道切换值第三个配对传输通道,并通过第三个配对传输通道向外设装置发送一次广播信号。然而,因外设装置的第二时间间隔为3s,那么当外设装置基于第一个配对传输通道接收头戴式显示设备发送的广播信号时,头戴式显示设备已经从第一个配对传输通道切换值第二个配对传输通道,然后从第二个配对传输通道切换值第三个配对传输通道。所以,头戴式显示设备基于上述3个配对传输通道向外设装置发送的第一轮广播信号,外设装置是无法使用相同的配对传输通道成功接收到。但是,当头戴式显示设备基于上述三个配对传输通道发送第二轮广播信号时,因外设装置的第二时间间隔为3s,那么在第二轮中头戴式显示设备基于第一个配对传输通道向外设装置发送广播信号时,因外设装置还处于第一配对传输通道,那么此时外设装置能够接收到头戴式显示设备发送的广播信号。
[0097] 基于上述原因,本申请可通过对外设装置和头戴式显示设备进行时间统一处理,使得外设装置和头戴式显示设备之间数据传输更协调统一。具体的,头戴式显示设备可基于配对传输通道向外设装置发送时间同步信息,以指示外设装置根据时间同步信息进行时间同步处理。或者,外设装置可基于配对传输通道向头戴式显示设备发送时间同步信息,以指示头戴式显示设备根据时间同步信息进行时间同步处理。其中,时间同步信息具体用于调整外设装置的时间和头戴式显示设备的时间相同。并且,该时间同步信息包括:同步时间戳。当时间同步信息是由头戴式显示设备发送时,同步时间戳为头戴式显示设备的时间戳;当时间同步信息是由外设装置发送时,同步时间戳为外设装置的时间戳。
[0098] 又因头戴式显示设备主要用于发送控制数据,以控制外设装置执行相应操作,相当于主设备;而外设装置主要用于接收头戴式显示设备发送的控制数据,并根据控制数据执行相应操作,相当于从设备。并且,外设装置主要用于接收头戴式显示设备发送的控制数据执行相应动作。因此,本实施例优选头戴式显示设备基于配对传输通道向外设装置发送时间同步信息,以指示外设装置根据时间同步信息进行时间同步处理。
[0099] 具体实现时,头戴式显示设备向外设装置发送同步时间戳,使得外设装置在接收到该同步时间戳之后,根据接收同步时间戳的接收时间和同步时间戳,计算的时间差值。然后,外设装置根据时间差值对自己的时间系统进行时间同步处理。
[0100] 在头戴式显示设备和外设装置完成时间同步处理之后,头戴式显示设备即可按照第一时间间隔(预设时间间隔)基于配对传输通道向外设装置发送第一配对信息,以使外设装置基于第一配对信息与头戴式显示设备建立无线配对连接。其中,第一配对信息包括:第一设备标识。
[0101] 进一步的,当外设装置接收到第一配对信息时,外设装置可根据第一配对信息中的第一设备标识和第二设备标识,生成第二设备地址。然后,保存该第二设备地址,并将第二设备地址发送给头戴式显示设备,以使头戴式显示设备基于第二设备地址与外设装置建立无线配对连接。
[0102] S303,存储第二设备地址,并向外设装置发送配对成功信息。
[0103] 当接收到外设装置发送的第二设备地址之后,头戴式显示设备可存储该第二设备地址,并基于该第二设备地址与外设装置建立无线配对连接。并且,建立无线配对连接之后,可向外设装置发送配对成功信息,以告知外设装置已完成无线配对连接。
[0104] 需要说明的是,本申请实施例中头戴式显示设备和外设装置之间的配对操作只需进行一次,即用户首次使用头戴式显示设备和外设装置时进行一次配对操作,后续用户再次使用该头戴式显示设备和该外设装置时直接基于首次配对所建立的无线配对连接进行数据交互即可,从而简化头戴式显示设备和外设装置的使用繁琐度,为提高数据传输的速度及效率提供依据。
[0105] S304,向外设装置发送处于配对状态时扫描到的无线传输通道。
[0106] 头戴式显示设备与外设装置完成无线配对连接之后,头戴式显示设备即可基于无线配对连接向外设装置发送在数据传输中所使用的无线传输通道。由此,使得头戴式显示设备和外设装置之间可基于该无线传输通道进行数据传输,从而能够满足数据传输的高速率低延时要求。
[0107] 在本实施例中,无线传输通道,具体是指头戴式显示设备扫描到的所有传输通道中除配对传输通道之外的剩余无线传输通道。
[0108] 作为本申请的一个可选实现方式,考虑到头戴式显示设备和外设装置之间的无线传输通道可能受环境中存在干扰源的影响,导致外设装置无法接收到头戴式显示设备发送的震动数据。因此针对环境中存在干扰源,对头戴式显示设备和外设装置之间震动数据传输造成的影响,本申请实施例对数据传输方法进行进一步优化。下面结合图5,对本申请实施例上述优化过程进行具体说明。
[0109] 如图5所示,该数据传输方法包括以下步骤:
[0110] S401,获取马达控制信息。
[0111] S402,根据马达控制信息,生成震动数据,震动数据包括:音频震动数据和普通震动数据。
[0112] S403,确定正在使用的无线传输通道是否满足通道切换条件,若是,则执行S404,否则,则执行406。
[0113] 其中,正在使用的无线传输通道,是指头戴式显示设备和外设装置当前正在使用的通信通道,以通过该通信通道进行数据传输操作。
[0114] 在本申请实施例中,通道切换条件包括:正在使用的无线传输通道受到干扰;和/或,当前时刻为通道切换时刻。
[0115] 其中,正在使用的无线传输通道受到干扰,是指该通道受到雷达或微波等干扰,导致通道环境变差,进而性能受到影响,导致数据传输速率下降的情况。
[0116] 通道切换时刻,可以是指从当前使用的通道切换至所属无线传输通道列表中其他任一其他通道的时间信息;或者,也可以是指对当前使用的通道所属无线传输通道列表进行更新的时间信息,本申请对此不作具体限制。其中,无线传输通道列表,具体为头戴式显示设备和外设装置双方事先约定的通道列表,且该通道列表中包括至少两个无线传输通道。
[0117] 考虑到头戴式显示设备和外设装置所在环境中可能存在干扰信息,从而导致外设装置无法接收到头戴式显示设备基于无线传输通道发送的震动数据。因此,本申请头戴式显示设备基于无线传输通道,向外设装置发送震动数据之前,需要检测当前使用的无线传输通道是否受到干扰。然后,根据检测结果选用不同的方式进行数据传输。
[0118] 示例性的,检测当前使用的无线传输通道是否受到干扰,具体实现方式为:通过头戴式显示设备测量该无线传输通道,以对该无线传输通道进行评估,以得到通道评估信息。然后,根据该通道评估信息确定该无线传输通道是否受到干扰。
[0119] 本实施例中,通道评估信息包括:无线传输通道是否受到干扰。
[0120] 其中,当通道受到干扰时,该通道评估信息还包括:干扰源信息以及干扰源产生的干扰强度等信息。
[0121] 进一步的,根据检测结果采用不同的方式进行数据传输,具体包括以下情况:
[0122] 情况一
[0123] 若确定正在使用的无线传输通道受到干扰,则说明如果继续使用该无线传输通道进行数据传输有可能出现数据丢失,进而导致外设装置无法接收到头戴式显示设备发送的震动数据。因此,本申请需要利用头戴设备扫描到的新的无线传输通道(目标无线传输通道)进行数据传输,以保证头戴式显示设备和外设装置之间交互数据不会出现丢失等情况。
[0124] 情况二
[0125] 若确定正在使用的无线传输通道未受到干扰,则说明继续使用该无线传输通道进行数据传输时,不会出现数据丢失等情况。因此本申请可基于该无线传输通道继续进行数据的传输操作,以将震动数据发送给外设装置。
[0126] 进一步的,为了确保头戴式显示设备和外设装置之间的无线传输通道的质量始终处于最佳状态,本申请还可对头戴式显示设备和外设装置当前正在使用的无线传输通道进行主动切换。
[0127] 示例性的,本申请基于正在使用的无线传输通道,向外设装置发送震动数据之前,头戴式显示设备可根据上一无线传输通道切换时刻和预设周期,确定当前通道切换时刻。然后,确定当前时刻是否为当前通道切换时刻。
[0128] 其中,如果确定当前时刻为当前通道切换时刻,则说明头戴式显示设备需要利用实时扫描到的目标无线传输通道进行数据传输,这样才能保证头戴式显示设备和外设装置之间交互数据不会出现丢失等情况。
[0129] 如果确定当前时刻不为当前通道切换时刻,则说明头戴式显示设备继续使用该正在使用的无线传输通道进行数据传输时,不会出现数据丢失等情况。那么此时头戴式显示设备可利用该正在使用的无线传输通道继续向外设装置发送震动数据。
[0130] 在本实施例中,预设周期是根据头戴式显示设备和外设装置之间进行时间同步后确定的时间间隔。具体的,该预设周期可根据头戴式显示设备和外设装置进行通道切换需求进行适应性设置,本申请对此不做具体限制。比如,预设周期可为5分钟(min)、10min、20min、30min或1小时(h)等。
[0131] S404,如果满足通道切换条件,则基于正在使用的无线传输通道向外设装置发送通道切换信息,以指示外设装置基于通道切换信息进行通道切换操作,通道切换信息包括:目标无线传输通道标识和通道切换计数值。
[0132] 其中,目标无线传输通道标识是指能够唯一确定无线传输通道的身份信息,例如通道名称或序号等等。
[0133] 通道切换计数值,具体是指限制向外设装置发送通道切换信息次数的参数。该计数值可根据实际应用需要进行适应性设置,此处对其不做具体限制。比如,3次或5次。
[0134] 示例性的,如果确定正在使用的无线传输通道受到干扰,和/或当前时刻为通道切换时刻,则头戴式显示设备可将实时扫描到的目标无线传输通道标识携带在通道切换信息中,以基于正在使用的无线传输通道将该通道切换信息发送给外设装置,以使外设装置在接收到该通道切换信息时,能够根据头戴式显示设备的指示进行无线传输通道切换操作。
[0135] 其中,确定目标无线传输通道的实现方式具体为:扫描无线传输通道;根据无线传输通道的干扰信息,确定目标无线传输通道。
[0136] 具体实现过程为,头戴式显示设备通过扫描所有无线传输通道;之后,将所有无线传输通道作为候选通道,并分析确定所有候选通道中哪些候选通道存在干扰,哪些候选通道不存在干扰。然后,将不存在干扰的候选通道确定为目标无线传输通道。
[0137] 其中,如果所有候选通道中每个候选通道均存在干扰,则从所有候选通道中选择干扰少的预设数量通道作为目标无线传输通道。本实施例中预设数量可根据实际应用需要进行灵活设置,此处对其不作具体限制。
[0138] 进一步的,考虑到受到干扰的无线传输通道,和/或当前时刻为通道切换时刻,利用当前无线传输通道传输通道切换信息时可能存在数据丢失的情况。因此,本申请头戴式显示设备基于当前无线传输通道向外设装置发送该通道切换信息时,还可以在该通道切换信息中设置一通道切换计数值。进而,头戴设备可基于正在使用的无线传输通道,向外设装置发送多次通道切换信息,并且每发送一次通道切换信息之后,就自动对该通道切换信息中的通道切换计数值进行减一处理。如此一来,可以确保外设装置能够至少一次接收到该通道切换信息。
[0139] 在本实施例中,通道切换计数值可为大于或等于2的正整数。当然该通道切换计数值还可以采用其他方式更新,例如每发送一次通道切换信息之后,就自动对通道切换计数值进行加一处理等等,此处对其不作限制。
[0140] 也即是说,基于设置的通道切换计数值向外设装置发送多次通道切换信息,使得外设装置能够有至少一次接收到该通道切换信息,从而能够确定在什么时间点与头戴式显示设备同步进行无线传输通道切换操作。然后,头戴式显示设备和外设装置可使用切换后的目标无线传输通道进行数据传输。从而避免因环境中存在雷达或微波等干扰,导致数据传输过程中出现丢包,导致外设装置无法接收到完整的数据,从而可能导致定位延迟、控制指令丢失等问题。
[0141] 在本申请实施例中,每当外设装置接收到头戴式显示设备发送的一个通道切换信息,外设装置可基于正在使用的无线传输通道向头戴式显示设备返回一个第一响应信息,以告知头戴式显示设备自己已经成功接收到通道切换信息。进而,头戴式显示设备可根据外设装置返回的第一响应信息,能够和外设装置在同一时间点进行无线传输通道切换操作,从而为后续数据的正常传输奠定基础。
[0142] 作为一种可选的实现方式,本申请头戴式显示设备向外设装置发送通道切换信息,以及外设装置向头戴式显示设备返回第一响应信息时,可按照一定时间间隔执行。并且,该时间间隔可基于头戴式显示设备和外设装置进行时间同步后确定,具体时间同步过程在下面实施例中具体说明,此处对此不作过多赘述。
[0143] S405,如果接收到外设装置返回的第一响应信息,且通道切换计数值为预设值,则基于目标无线传输通道向外设装置发送震动数据,以使外设装置基于目标无线传输通道接收震动数据并震动。
[0144] 在本申请实施例中,如果采用对通道切换计数值进行减一处理,则本实施例中预设值优选为零。如果采用对通道切换计数值进行加一处理,则本申请实施例中预设值可选为任一正整数,例如3或5等,此处对其不做具体限制。
[0145] 示例性的,头戴式显示设备每向外设装置发送一次通道切换信息,就自动对通道切换计数值进行减一或加一的更新处理,并且会确定更新后的通道切换计数值是否为预设值。如果为预设值,且成功接收到一次外设装置返回的第一响应信息,则说明头戴式显示设备和外设装置此时可同步进行无线传输通道切换操作。进而,头戴式显示设备可执行从正在使用的无线传输通道切换至目标无线传输通道的操作。如果不为预设值,则此时无论是否成功接收到外设装置返回的第一响应信息,头戴式显示设备均继续基于正在使用的无线传输通道无线传输通道向外设装置发送通道切换信息,直至通道切换计数值更新成预设值,且成功接收到一次外设装置返回的第一响应信息为止。
[0146] 切换完无线传输通道之后,头戴式显示设备可基于目标无线传输通道向外设装置发送震动数据,以使外设装置基于切换后的目标无线传输通道接收该震动数据,并基于该震动数据进行震动。
[0147] S406,如果不满足通道切换条件,则基于正在使用的无线传输通道向外设装置发送震动数据,以指示外设装置震动。
[0148] 示例性的,如果确定正在使用的无线传输通道未受到干扰,和/或当前时刻不为通道切换时刻,则说明头戴式显示设备可以继续使用该正在使用的无线传输通道向外设装置发送震动数据,且不会出现数据丢失等情况。此时,头戴式显示设备可继续使用该正在使用的无线传输通道向外设装置发送震动数据,以使外设装置根据该震动数据震动。
[0149] 本申请提供的数据传输方法,通过头戴式显示设备获取马达控制信息,以根据马达控制信息生成震动数据,然后确定正在使用的无线传输通道是否受到干扰,和/或当前时刻是否为无线传输通道切换时刻;如果确定满足通道切换条件,则基于正在使用的无线传输通道向外设装置发送通道切换信息,以指示外设装置基于通道切换信息进行通道切换操作;如果接收到外设装置返回的第一响应信息,且通道切换计数值为预设值,则从正在使用的无线传输通道切换到目标无线传输通道,并基于目标无线传输通道向外设装置发送震动数据,以使外设装置基于目标无线传输通道接收震动数据并震动,如果确定不满足通道切换条件,则基于正在使用的无线传输通道向外设装置发送震动数据,以指示外设装置震动。由此,通过利用私有的无线传输方式进行数据传输,并且在传输数据过程中,一旦检测到无线传输通道受到干扰,自动利用新的无线传输通道进行数据的传输,从而不仅满足数据传输的高速率低延时要求,还能实现多个设备间的同步控制,并且避免了因环境中存在干扰导致数据传输出现丢失等情况发生。
[0150] 下面结合附图以外设装置为例,对本申请实施例的数据传输方法进行说明,具体如图6。本申请实施例中,如果外设装置为手柄,则手柄的数量为两个,分别为:左手柄和右手柄,使得用户双手各持一个,为实时跟踪用户位置及双手运动轨迹奠定基础。
[0151] 参见图7和图8所示,如果外设装置为左右手柄,则手柄可包括:第二无线芯片、用户输入模块、触摸按键输入模块、发光二极管模块、IMU传感器模块、线性马达模块以及天线。手柄获取的传感器数据、用户输入数据以及触摸数据等数据,均通过第二无线芯片发送给头戴式显示设备,并通过第二无线芯片接收头戴式显示设备发送的数据。需要说明的是,本实施例中第二无线芯片使用的是2.4数据通讯协议。
[0152] 图6是本申请实施例提供的第五种数据传输方法的流程示意图。本实施例提供的应用于外设装置的数据传输方法,可由数据传输装置来执行,以实现对头戴式显示设备和外设装置之间的数据传输过程进行控制。该数据传输装置可由硬件和/或软件组成,并可集成于外设装置中。如图6所示,本申请数据传输方法包括以下步骤:
[0153] S501,接收头戴式显示设备发送的震动数据。
[0154] S502,根据震动数据,控制马达进行震动。
[0155] 本实施例中,马达优选为宽频马达。
[0156] 示例性的,外设装置基于第二无线芯片,通过头戴式显示设备和外设装置之间相互传输数据的无线传输通道,接收到头戴式显示设备发送的震动数据。然后,根据震动数据控制马达进行震动,以向用户输出震动反馈。
[0157] 考虑到震动数据是经过编码处理的,因此无法直接使用该震动数据,从而当接收到震动数据之后,外设装置可对震动数据进行解码处理,以得到用于驱动马达进行震动的文件格式。
[0158] 具体的,对震动数据进行解码处理,得到震动波形文件可包括如下情况:
[0159] 第一种情况
[0160] 当震动数据为音频震动数据时,利用简单的低延时解码算法对该震动数据进行解码,以得到解码后的震动波形文件。
[0161] 其中,解码后的震动音频数据的格式可为PCM格式。
[0162] 第二种情况
[0163] 当震动数据对应的是命令信息时,基于预制波形生成与命令信息对应震动波形文件。
[0164] 进而,可将震动波形文件发送给马达驱动,以使马达驱动根据震动波形文件控制马达进行震动。
[0165] 假设外设装置的数据传输频率为500HZ,外设装置为手柄,那么左右手柄分别使用音频的左右声道数据。当音频数据为8KHz 16bits,那么音频震动数据长度8个字节即可完成实时传输。当音频震动数据为48K 16bits,那么音频震动数据长度为48个字节也可以完成实施传输,等等。
[0166] 本申请提供的数据传输方法,通过外设装置接收头戴式显示设备发送的震动数据,并根据震动数据控制马达进行震动。由此,通过利用私有的无线传输方式进行数据传输,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。
[0167] 作为本申请的一个可选实现方式,本申请实施例外设装置接收头戴式显示设备发送的震动数据之前,还包括:获取用于头戴式显示设备和外设装置之间进行数据传输的通信通道。下面结合图9,对本申请实施例上述通信通道获取过程进行具体说明。
[0168] 如图9所示,该数据传输方法包括以下步骤:
[0169] S601,接收头戴式显示设备发送的第一配对信息,第一配对信息包括:第一设备标识。
[0170] S602,根据第一设备标识和第二设备标识,生成第二设备地址。
[0171] 具体的,当头戴式显示设备根据用户触发的配对操作,进入配对状态后,头戴式显示设备可将配对广播地址和配对传输通道发送给外设装置,以使外设装置和头戴式显示设备使用相同的配对广播地址和配对传输通道进行配对操作。其中,配对传输通道可以是头戴式显示设备从扫描得到的所有无线传输通道中选择一定数据量的通道作为配对传输通道。
[0172] 根据配对广播地址和配对传输通道进行配对操作时,头戴式显示设备可基于配对广播地址和配对传输通道,按照第一时间间隔向外设装置发送广播信号。同时外设装置可按照第二时间间隔接收头戴式显示设备发送的广播信号。当外设装置接收到头戴设备发送的广播信号时,基于配对传输通道向头戴式显示设备发送响应信号,以告知头戴式显示设备自己成功收到上述广播信号。其中,第一时间间隔是基于头戴式显示设备时间系统确定的,第二时间间隔是基于外设装置时间系统确定的,且第一时间间隔小于或大于第二时间间隔。
[0173] 考虑到头戴式显示设备和外设装置各自的时间系统存在时间不统一的问题,导致头戴式显示设备需要向外设装置发送多次广播信号,外设装置才能收到该广播信号。因此,本申请可对外设装置和头戴式显示设备进行时间统一处理,使得外设装置和头戴式显示设备之间数据传输更协调统一。
[0174] 具体的,可通过头戴式显示设备基于配对传输通道向外设装置发送时间同步信息,以指示外设装置根据时间同步信息进行时间同步处理。或者,通过外设装置基于配对传输通道向头戴式显示设备发送时间同步信息,以指示头戴式显示设备根据时间同步信息进行时间同步处理。其中,时间同步信息具体用于调整外设装置的时间和头戴式显示设备的时间相同。并且,该时间同步信息包括:同步时间戳。当时间同步信息是由头戴式显示设备发送时,同步时间戳为头戴式显示设备的时间戳;当时间同步信息是由外设装置发送时,同步时间戳为外设装置的时间戳。
[0175] 又因头戴式显示设备主要用于发送控制数据,以控制外设装置执行相应操作,相当于主设备;而外设装置主要用于接收头戴式显示设备发送的控制数据,并根据控制数据执行相应操作,相当于从设备。并且,外设装置主要用于接收头戴式显示设备发送的控制数据执行相应动作。因此,本实施例优选通过头戴式显示设备基于配对传输通道向外设装置发送时间同步信息,以指示外设装置根据时间同步信息进行时间同步处理。即,接收头戴式显示设备发送的时间同步信息。
[0176] 具体实现时,当外设装置接收到头戴式显示设备发送的同步时间戳之后,可根据接收同步时间戳的接收时间和同步时间戳,计算的时间差值。然后,外设装置根据时间差值进行时间同步处理。
[0177] 其中,根据时间差值进行时间同步处理,具体为:在外设装置的时间戳基础上增加一个时间差,以使外设装置的时间与头戴式显示设备的时间相同。
[0178] 在头戴式显示设备和外设装置完成时间同步处理之后,头戴式显示设备即可按照第一时间间隔(预设时间间隔)基于配对传输通道向外设装置发送第一配对信息。外设装置接收到头戴式显示设备发送的第一配对信息之后,即可根据第一配对信息中的第一设备标识和第二设备标识,按照第一设备标识+第二设备标识的格式,生成第二设备地址。并且,存储该第二设备地址。
[0179] 例如,假设第一设备标识为xxxx,第二设备地址为yyyy,则按照第一设备标识+第二设备标识的格式,生成第二设备地址为:xxxx+yyyy。
[0180] S603,向头戴式显示设备返回的第二配对信息,第二配对信息包括:第二设备地址。
[0181] S604,接收配对成功信息。
[0182] 示例性的,外设装置生成第二配对信息之后,可基于配对传输通道,将该第二配对信息发送头戴式显示设备,以使头戴式显示设备基于第二配对信息与外设装置建立无线配对连接。
[0183] 并且,在建立无线配对连接之后,外设装置还可接收头戴式显示设备发送配对成功信息,已完成无线配对连接。
[0184] S605,接收头戴式显示设备发送的无线传输通道,无线传输通道为头戴式显示设备处于配对状态时扫描得到的。
[0185] 头戴式显示设备与外设装置完成无线配对连接之后,头戴式显示设备可基于无线配对连接向外设装置发送在数据传输中所使用的无线传输通道。由此,使得头戴式显示设备和外设装置之间可基于该无线传输通道进行数据传输,从而能够满足数据传输的高速率低延时要求。
[0186] 在本实施例中,无线传输通道,具体是指头戴式显示设备扫描到的所有传输通道中除配对传输通道之外的剩余无线传输通道。
[0187] 作为本申请的一个可选实现方式,考虑到实际使用过程中因正在使用的无线传输通道可能会受到环境中干扰源的影响,导致外设装置接收不到头戴式显示设备发送的震动数据。因此针对环境中存在干扰源,对头戴式显示设备和外设装置之间震动数据传输造成的影响,本申请实施例对数据传输方法进行进一步优化。下面结合图10,对本申请实施例上述优化过程进行具体说明。如图10所示,该数据传输方法包括以下步骤:
[0188] 需要说明的是,本实施例中S701和S704及其分别与上述步骤关联的其他步骤,分别给出了正在使用的无线传输通道受到干扰和/或当前时刻为通道切换时刻,以及正在使用的无线传输通道未受到干扰和/或当前时刻不为通道切换时刻时的相关操作,具体的:
[0189] S701,如果正在使用的无线传输通道满足通道切换条件,则接收头戴式显示设备发送的通道切换信息,通道切换信息包括:目标无线传输通道标识和通道切换计数值。
[0190] S702,基于正在使用的无线传输通道向头戴式显示设备发送第一响应信息。
[0191] 在本申请实施例中,通道切换条件包括:正在使用的无线传输通道受到干扰;和/或,当前时刻为通道切换时刻。
[0192] 其中,目标无线传输通道标识是指能够唯一确定无线传输通道的身份信息,例如通道名称或序号等等。
[0193] 示例性的,外设装置基于正在使用的无线传输通道接收到头戴式显示设备发送的通道切换信息之后,即可确定在什么时间点与头戴式显示设备同步进行无线传输通道切换操作。并且,还可向头戴式显示设备发送第一响应信息,以告知自身成功接收到该通道切换信息。具体实现过程可参见前述实施例,此处对此不做过多赘述。
[0194] S703,如果通道切换计数值为预设值,则基于目标无线传输通道接收头戴式显示设备发送的震动数据。
[0195] 具体的,外设装置接收到的通道切换信息之后,可确定该通道切换信息中通道切换计数值是否为预设值。如果通道切换计数值不为预设值,则说明还未到达通道切换时间,此时外设装置继续使用正在使用的无线传输通道接收通道切换信息;如果通道切换计数值为预设值,则说明达到了通道切换时间,此时外设装置和头戴式显示设备即可同步进行无线传输通道切换操作。进而,外设装置可基于切换后的目标无线传输通道接收头戴式显示设备发送的震动数据。
[0196] S704,如果正在使用的无线传输通道不满足通道切换条件,则基于正在使用的无线传输通道接收头戴式显示设备发送的震动数据。
[0197] 示例性的,如果正在使用的无线传输通道未受到干扰,和/或当前时刻不为无线传输通道切换时刻,则外设装置可继续使用该正在使用的无线传输通道接收头戴式显示设备发送的震动数据。
[0198] S705,根据震动数据,控制马达进行震动。
[0199] 本申请提供的数据传输方法,接收头戴式显示设备发送的震动数据之前,如果正在使用的无线传输通道满足通道切换条件,则基于正在使用的无线传输通道接收头戴式显示设备发送的通道切换信息,并基于正在使用的无线传输通道向头戴式显示设备发送第一响应信息,如果通道切换计数值为预设值,则基于目标无线传输通道接收头戴式显示设备发送的震动数据;如果正在使用的无线传输通道不满足通道切换条件,则基于正在使用的无线传输通道接收头戴式显示设备发送的震动数据;然后根据震动数据,控制马达进行震动。由此,通过利用私有的无线传输方式进行数据传输,并且在传输数据过程中,一旦检测到无线传输通道受到干扰,自动利用新的无线传输通道进行数据的传输,从而不仅满足数据传输的高速率低延时要求,还能实现多个设备间的同步控制,并且避免了因环境中存在干扰导致数据传输出现丢失等情况发生。
[0200] 下面参照附图11,对本申请实施例提出的配置于头戴式显示设备中一种数据传输装置进行描述。图11是本申请实施例提供的一种数据传输装置的示意性框图。
[0201] 如图11所示,该数据传输装置800包括:获取模块810、生成模块820和发送模块830。
[0202] 其中,获取模块810,用于获取马达控制信息;
[0203] 生成模块820,用于根据所述马达控制信息,生成震动数据,所述震动数据包括:音频震动数据和普通震动数据;
[0204] 发送模块830,用于向和所述头戴式显示设备通讯连接的外设装置发送所述震动数据,以指示所述外设装置震动。
[0205] 本申请实施例的一种可选实现方式,所述马达控制信息为音频信息,获取模块810,具体用于:
[0206] 获取所述头戴式显示设备的待播放音频信息;
[0207] 确定所述待播放音频信息包括震动事件;
[0208] 将所述待播放音频信息确定为马达控制信息。
[0209] 本申请实施例的一种可选实现方式,获取模块810,还用于:
[0210] 获取所述待播放音频信息包含的事件信息,
[0211] 确定所述事件信息是否与预设震动事件匹配;
[0212] 若是,则确定所述待播放音频信息包括震动事件。
[0213] 本申请实施例的一种可选实现方式,生成模块820,具体用于:
[0214] 根据所述待播放音频信息,确定音频震动数据。
[0215] 本申请实施例的一种可选实现方式,所述马达控制信息为命令信息,获取模块810,具体用于:
[0216] 根据用户操作触发的控制指令,生成命令信息;
[0217] 将所述命令信息确定为马达控制信息。
[0218] 本申请实施例的一种可选实现方式,装置800,还包括:
[0219] 确定模块,用于确定所述头戴式显示设备和所述外设装置的通信信道。
[0220] 应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图11所示的装置800可以执行图1对应的方法实施例,并且装置800中的各个模块的前述和其它操作和/或功能分别为了实现图1中的各个方法中的相应流程,为了简洁,在此不再赘述。
[0221] 上文中结合附图从功能模块的度描述了本申请实施例的装置800。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
[0222] 下面参照附图12,对本申请实施例提出的配置于和头戴式显示设备通讯连接的外设装置中的一种数据传输装置进行描述。图12是本申请实施例提供的另一种数据传输装置的示意性框图。
[0223] 如图12所示,该数据传输装置900包括:接收模块910和控制模块920。
[0224] 其中,接收模块910,用于接收所述头戴式显示设备发送的震动数据;
[0225] 控制模块920,用于根据所述震动数据,控制马达进行震动。
[0226] 本申请实施例的一种可选实现方式,数据传输装置900还包括:
[0227] 处理模块,用于对所述震动数据进行处理,得到震动波形文件;
[0228] 相应的,控制模块920,具体用于:
[0229] 根据所述震动波形文件,控制所述马达进行震动。
[0230] 本申请实施例的一种可选实现方式,数据传输装置900还包括:
[0231] 确定模块,用于确定所述头戴式显示设备和所述外设装置的通信信道。
[0232] 应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图12所示的装置900可以执行图6对应的方法实施例,并且装置900中的各个模块的前述和其它操作和/或功能分别为了实现图6中的各个方法中的相应流程,为了简洁,在此不再赘述。
[0233] 上文中结合附图从功能模块的角度描述了本申请实施例的装置900。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
[0234] 图13是本申请实施例提供的一种电子设备的示意性框图。
[0235] 如图13所示,该电子设备1000可包括:
[0236] 存储器1010和处理器1020,该存储器1010用于存储计算机程序,并将该程序代码传输给该处理器1020。换言之,该处理器1020可以从存储器1010中调用并运行计算机程序,以实现本申请实施例中的方法。
[0237] 例如,该处理器1020可用于根据该计算机程序中的指令执行上述方法实施例。
[0238] 在本申请的一些实施例中,该处理器1020可以包括但不限于:
[0239] 通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
[0240] 在本申请的一些实施例中,该存储器1010包括但不限于:
[0241] 易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read‑Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
[0242] 在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器1010中,并由该处理器1020执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
[0243] 如图13所示,该电子设备还可包括:
[0244] 收发器1030,该收发器1030可连接至该处理器1020或存储器1010。
[0245] 其中,处理器1020可以控制该收发器1030与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器1030可以包括发射机和接收机。收发器1030还可以进一步包括天线,天线的数量可以为一个或多个。
[0246] 应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
[0247] 本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
[0248] 当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
[0249] 图14是本申请实施例提供的一种数据传输系统的示意性框图。如图14所示,本申请实施例中,数据传输系统1100包括:上述实施例中的电子设备。其中,电子设备包括:头戴式显示设备1110和外设装置1120。
[0250] 其中,头戴式显示设备1110可以是但不限于:虚拟现实头盔和虚拟现实眼镜等。
[0251] 外设装置1120可以是但不限于:手柄、手持控制器、手环、腕带以及手套等。其中,如果外设装置1120为手柄时,手柄数量为两个,且分别为:左手柄和右手柄。
[0252] 本实施例以外设装置1120为手柄为例进行说明。
[0253] 如图15所示,数据传输系统1100中的头戴式显示设备1110包括:第一无线芯片1111;手柄1120包括:第二无线芯片1121和马达1122。其中,马达1122具体为宽频马达。
[0254] 本申请实施例中,头戴式显示设备1110和手柄1120通过第一无线芯片1111和第二无线芯片1121进行无线通信连接。其中,第一无线芯片1111和第二无线芯片1122可组成私有的无线通信系统,具体参见图15。
[0255] 为了更清楚的说明数据传输系统1100,本申请可提供头戴式显示设备1110和手柄1120之间震动数据传输的具体示意图,具体如图16所示。
[0256] 需要说明的是,本实施例在第一无线芯片1111和第二无线芯片1121均使用2.4G数据通讯协议进行无线通信。2.4G数据通讯是无线发射器和无线接收器物理层之间的数据传输,整个数据传输过程没有数据重传,电磁波的传输速度远远大于发射器和接收器之间的距离,所以本实施例在数据传播时间的延时是个恒定值。
[0257] 因此,基于该恒定延时值,本申请可实现把左手柄时间系统和右手柄时间系统同步到头戴式显示设备1110中第一无线芯片的时间系统。这样,手柄1120的IMU传感器数据就可具有统一的时间戳信息,且头戴式显示设备1110通过时间系统也可以精确控制手柄1120的发光二极管与摄像头模块的曝光时间点相对应,具体如图17所示。
[0258] 在本实施例中,宽频马达的震动频率一般都在几十赫兹到几百赫兹的范围,从采样定理分析,大于8K的数据传输基本可以满足音频信号的输出。进一步的,通过控制左右手柄采用分时的方式,实现与头戴式显示设备1110的无线通道时,按照马达的震动频率为500Hz的数据传输逻辑,那么根据 计算出两个手柄之间的
数据传输延迟会在1ms以内,那么这个延时可以保证左右手柄震动体验一致,进而提高用户使用体验。
[0259] 如图18所示,本申请中手柄1120与头戴式显示设备1110进行无线通信时,可在一个时间段控制某一个手柄1120与头戴式显示设备1110进行无线通信。当该手柄1120不传输数据的时间段时,可在另一时间段控制另一个手柄1120与头戴式显示设备进行无线通道。由此通过采用分时的方式,实现头戴式显示设备1110和每个手柄1120的无线通道,使得数据传输效率更高,数据传输的延时更短。
[0260] 其中,手柄1120与头戴式显示设备1110无线通信时传输的数据可以是用于控制手柄1120中马达1122进行震动的震动数据,或者还可以是控制手柄1120执行相应控制操作的控制数据,又或者还可以是手柄1120获取到的外设装置数据等。
[0261] 本申请提供的数据传输系统,通过头戴式显示设备获取马达控制信息,以根据马达控制信息生成震动数据,然后向外设装置发送该震动数据,以使外设装置基于震动数据控制马达进行震动。由此,通过利用私有的无线传输方式进行数据传输,不仅满足了数据传输的高速率低延时要求,还能实现多个设备间的同步控制。
[0262] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0263] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0264] 作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
[0265] 以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
QQ群二维码
意见反馈