基于UE4与电动伺服器之间数据同步的互动车的实现方法与流程

文档序号:14993179发布日期:2018-07-20 22:53阅读:873来源:国知局

本发明属于vr游戏内容与相应硬件设备的实现方法的设计领域,尤其涉及一种基于ue4与电动伺服器之间数据同步的互动车的实现方法。



背景技术:

目前ue4(unrealengine4)与硬件互动时彼此之间看似同时有着交互,实则各自运行各自的程序,并没有真正达到数据交换。比如,ue4固定一套运动路径,将路径存储之后导出一份固定的电动缸移动路径,每次运行的时候ue4内容与电动伺服器同时播放达到同步效果。如果ue4程序中有些许的抖动或者细节的变化,在伺服器方面是无法做到实时识别的。

因此,需要提出一种实现ue4与硬件实时互动的方法。



技术实现要素:

本发明要解决的技术问题是提供一种基于ue4与电动伺服器之间数据同步的互动车的实现方法,以解决ue4与伺服电动缸之间的实时性问题,让ue4中actor的动作与伺服器电缸达到实时的数据交互,也就是说,伺服器的动作是实时的根据ue4中的数据来移动的。

为解决上述问题,本发明的技术方案为:

一种基于ue4与电动伺服器之间数据同步的互动车的实现方法,包括如下步骤:

s1:ue4中读取actor的rotation,并计算出相应的电动缸数据;

其中,所述电动缸用以支撑所述互动车;

s2:将所述电动缸数据转换成相应脉冲信号数据;

s3:将所述脉冲信号数据转换成电动缸udp协议数据;

s4:伺服驱动器读取所述电动缸udp协议数据,并根据读取的数据计算出所述电动缸的运动参数以及位置参数;

s5:伺服电机读取所述运动参数以及所述位置参数;

s6:之后所述伺服电机以所述电动缸udp协议数据中的频率向所述电动缸发送脉冲指令,所述电动缸作出反应。

根据本发明一实施例,在所述步骤s6之后还包括数据校准步骤s7,具体为:

s7:所述电动缸作出动作之后,将完成的动作以脉冲形式回传给所述伺服电机,用以校对所述电动缸的动作是否执行到位;

若所述电动缸的动作的误差大于0.1mm,则返回步骤s6;

若所述电动缸的动作的误差不大于0.1mm或执行操作大于所述电动缸udp协议数据中的规定时间,则本次动作的数据同步结束,校准将在下次发送所述电动缸udp协议数据时继续执行。

根据本发明一实施例,所述电动缸包括第一电动缸、第二电动缸、第三电动缸;

所述电动缸udp协议数据包括协议头数据、协议尾数据、第一电动缸数据、第二电动缸数据以及第三电动缸数据。

根据本发明一实施例,所述位置参数包括所述第一电动缸的位置、所述第二电动缸的位置以及所述第三电动缸的位置;

所述运动参数包括所述第一电动缸的力矩和转速、所述第二电动缸的力矩和转速以及所述第三电动缸的力矩和转速。

根据本发明一实施例,所述脉冲信号为十进制脉冲信号。

根据本发明一实施例,所述步骤s3包括,

s31:指定并打开ip端口;

s32:将所述脉冲信号数据以tchar格式转化为数据格式的数据,然后将所述数据格式的数据转化成utf8格式的数据;

s33:将所述utf8格式的数据转化成所述电动缸udp协议数据;并且其中,所述电动缸udp协议数据为十六进制数据格式;

s34:将所述电动缸udp协议数据从所述ip端口传入伺服驱动器。

本发明由于采用以上技术方案,使其与现有技术相比具有以下的优点和积极效果:

本发明是基于ue4与伺服器电动缸的互动,通过读取并处理ue4引擎中actor的具体rotation,翻译成相应协议再以udp的形式传输给电动伺服器,电动伺服器再将信息进行进一步处理分类后传输信号给电动缸,电动缸做出反应;解决了ue4与伺服电动缸之间的实时性问题,让ue4中actor的动作与伺服器电缸达到实时的数据交互。

附图说明

图1为本发明的一种基于ue4与电动伺服器之间数据同步的互动车的实现方法的流程图。

具体实施方式

以下结合附图和具体实施例对本发明提出的一种基于ue4与电动伺服器之间数据同步的互动车的实现方法作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比率,仅用以方便、明晰地辅助说明本发明实施例的目的。

参看图1,一种基于ue4与电动伺服器之间数据同步的互动车的实现方法,包括如下步骤:

s1:ue4中读取actor的rotation,并计算出相应的电动缸数据;

其中,电动缸用以支撑互动车;

s2:将电动缸数据转换成相应脉冲信号数据;

s3:将脉冲信号数据转换成电动缸udp协议数据;

s4:伺服驱动器读取电动缸udp协议数据,并根据读取的数据计算出电动缸的运动参数以及位置参数;

s5:伺服电机读取运动参数以及位置参数;

s6:之后伺服电机以电动缸udp协议数据中的频率向电动缸发送脉冲指令,电动缸作出反应。

具体地,电动缸包括第一电动缸(流程图中对应的为一号缸)、第二电动缸(流程图中对应的为二号缸)、第三电动缸(流程图中对应的为三号缸);电动缸udp协议数据包括协议头数据、协议尾数据、第一电动缸数据、第二电动缸数据以及第三电动缸数据。

具体地,位置参数包括第一电动缸的位置、第二电动缸的位置以及第三电动缸的位置;运动参数包括第一电动缸的力矩和转速、第二电动缸的力矩和转速以及第三电动缸的力矩和转速。

具体地,脉冲信号为十进制脉冲信号。

具体地,步骤s3包括,s31:指定并打开ip端口;s32:将脉冲信号数据以tchar格式转化为数据格式的数据,然后将数据格式的数据转化成utf8格式的数据;s33:将utf8格式的数据转化成电动缸udp协议数据;并且其中,电动缸udp协议数据为十六进制数据格式;s34:将电动缸udp协议数据从ip端口传入伺服驱动器。

较佳地,在步骤s6之后还包括数据校准步骤s7,具体为,s7:电动缸作出动作之后,将完成的动作以脉冲形式回传给伺服电机,用以校对电动缸的动作是否执行到位;若电动缸的动作的误差大于0.1mm,则返回步骤s6;若电动缸的动作的误差不大于0.1mm或执行操作大于电动缸udp协议数据中的规定时间,则本次动作的数据同步结束,校准将在下次发送电动缸udp协议数据时继续执行。可以理解,通过进行数据校准提高了电动缸动作的精确度;并且其中的误差比较值并不一定为0.1mm,根据实际情况可以作出适应性的修改。

本领域技术人员能够理解,actor是ue4引擎世界中的某个东西,其包含广义狭义看得见或者看不见摸得着或者摸不着的东西;比如汽车、房子、太阳、光线、声音、风等等都可认为是actor。而rotation作为actor的基本属性之一,其中的三个数据控制着actor在世界存在的旋转角度。

本发明是基于ue4与伺服器电动缸的互动,通过读取并处理ue4引擎中actor的具体rotation,翻译成相应协议再以udp的形式传输给电动伺服器,电动伺服器再将信息进行进一步处理分类后传输信号给电动缸,电动缸做出反应;解决了ue4与伺服电动缸之间的实时性问题,让ue4中actor的动作与伺服器电缸达到实时的数据交互,也就是说,伺服器的动作是实时的根据ue4中的数据来移动的。上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式。即使对本发明作出各种变化,倘若这些变化属于本发明权利要求及其等同技术的范围之内,则仍落入在本发明的保护范围之中。

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