CN108333956A - 用于运动仿真平台的反解联动算法 - Google Patents
用于运动仿真平台的反解联动算法 Download PDFInfo
- Publication number
- CN108333956A CN108333956A CN201711413878.8A CN201711413878A CN108333956A CN 108333956 A CN108333956 A CN 108333956A CN 201711413878 A CN201711413878 A CN 201711413878A CN 108333956 A CN108333956 A CN 108333956A
- Authority
- CN
- China
- Prior art keywords
- platform
- space
- virtual
- real
- movement
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉具体是一种用于运动仿真平台的反解联动算法;其特征是:反解联动算法具体执行下述步骤:实时获取虚拟空间中主体的三维姿态信息;将虚拟空间中的三维坐标系与现实空间中运动仿真平台的三维坐标系相转换;以每秒100帧的速率将虚拟空间中主体的三维姿态信息输送至控制电脑中;控制电脑依据虚拟空间中主题的三维姿态信息而解析出现实空间中坐标轴的各个轴的长度值,进而通过控制器调整各油缸的伸缩幅度实现控制运动仿真平台的联动,即实现虚拟主体姿态到现实平台姿态的实时转换。反解联动算法采用的是虚拟主体优先策略,根据虚拟空间中主体的旋转姿态来反向对现实空间中的平台进行调整从而实现更好的浸入式虚拟体验。
Description
技术领域
本发明涉及浸入式模拟***领域,具体是一种用于运动仿真平台的反解联动算法。
背景技术
六自由度运动仿真平台是由六支油缸,上、下各六只万向铰链和上、下两个平台组成,下平台固定在基础上,借助六只油缸的伸缩运动,完成上平台在空间六个自由度(X,Y,Z,α,β,γ)的运动,可分解为平台在空间中沿着O-XYZ三个坐标轴方向上的平移(X、Y、Z方向),以及绕O-XYZ三个坐标轴的旋转(α,β,γ方向)。目前,六自由度运动仿真平台被可广泛应用到各种训练模拟器中,如飞行模拟器、舰艇模拟器、海军直升机起降模拟平台、坦克模拟器、汽车驾驶模拟器、火车驾驶模拟器、地震模拟器以及动感电影、娱乐设备等领域,甚至可用到空间宇宙飞船的对接,空中加油机的加油对接的模拟中。而在加工制造业,六自由度运动仿真平台可以转变成六轴联动机床及灵巧机器人。由于六自由度运动仿真平台联动***的研制涉及机械、液压、电气、控制、计算机、传感器,空间运动数学模型、实时信号传输处理、图形显示、动态仿真等多个技术领域,因而六自由度运动仿真平台联动***的研制是一个综合性的难题。目前,常见的驾驶模拟、飞行模拟以及动感影院等运动仿真平台产品中普遍存在的一个问题就是虚拟主体姿态动作和平台姿态动作不协调、不同步,造成仿真度不够不逼真。举例来说,在驾驶模拟平台中,画面中虚拟车子的加速、上坡、颠簸、转向等动作反应到现实平台上的实际的姿态是简单的晃动,而画面中主体的一系列动作姿态无法全部、准确地反应到现实平台上,如此的结果简单归结就是整个仿真平台的体验感不佳,模拟效果达不到预期。其原因主要在于,目前的仿真平台中,是事先对整个仿真平台预设几个固定的动作,只有到指定动作的时候才单独发出指定动作的控制命令,例如CN201610055784就公开了这样一种现实平台优先策略的车辆道路模拟***。采用现实平台优先策略的仿真平台的缺点在于,其并不对虚拟画面中主体的三维信息做实时反解并实时用于现实平台的姿态联动控制中,从而,导致在实际体验时,虚拟世界中的动作幅度无法精确地反映到现实中的平台上,从而使得整个仿真平台的沉浸感差,并且由于需要等待现实平台优先作出动作并且达到预设动作幅度,因此造成整个仿真平台的动作模拟不流畅。
发明内容
本发明的目的在于克服现有运动仿真平仿真度不够,动作模拟不流畅的缺陷,提供一种用于运动仿真平台的反解联动算法。
为了达到上述目的,本发明是这样实现的:
一种用于运动仿真平台的反解联动算法,所述运动仿真平台包括控制模块和动作模块;其中,
动作模块包括油缸,万向铰链和上、下两个平台,下平台固定在基础上,上平台和下平台之间通过油缸和万向铰链实现转动连接;上平台借助油缸的伸缩运动完成在空间六个自由度X,Y,Z,α,β,γ的运动,即完成在空间中移动和倾斜的动作;控制模块包括与外部画面显示屏连接的控制电脑和控制油缸伸缩动作的控制器,所述控制电脑通过控制器来协调控制油缸的伸缩运动实现上平台在空间中的移动和倾斜动作,控制电脑装载有预置反解联动算法的存储记忆体并通过该反解联动算法控制油缸的伸缩动作;所述反解联动算法具体执行下述步骤:
步骤1、实时获取虚拟空间中主体的三维姿态信息,三维姿态信息包括在x、y、z三个坐标轴方向上当前的旋转状态、虚拟主体当前的运动速度;虚拟主体当前的加速度;
步骤2、将虚拟空间中的三维坐标系与现实空间中运动仿真平台的三维坐标系相转换;为了避免六自由度运动仿真平台在联动过程中发生角度间的“耦合”,通常会采用欧拉角来描述刚体的旋转状态,而欧拉角的定义又随旋转次序的不同而不同,而目前主流游戏引擎(Unity3d)中对欧拉角的定义分两种:1).当认为顺序是yxz时(其实就是heading - pitch- bank),是传统的欧拉角变换,也就是以物体自己的坐标系为轴的;2).当认为顺序是zxy时(roll - pitch - yaw),也是官方文档的顺序时,是以惯性坐标系为轴的(惯性坐标系是原点与物体坐标系重合,xyz轴平行于世界xyz轴的坐标系)。所以我们在***开发阶段为了完美匹配目前主流游戏引擎(Unity3d)中对欧拉角的定义,采用roll-pitch-yaw的形式来转换到真实空间中的姿态变化。
步骤3、以每秒100帧的速率将虚拟空间中主体的三维姿态信息输送至控制电脑中;
步骤4、控制电脑依据虚拟空间中主题的三维姿态信息而解析出现实空间中坐标轴的各个轴的长度值,进而通过控制器调整各油缸的伸缩幅度实现控制运动仿真平台的联动,即实现虚拟主体姿态到现实平台姿态的实时转换。
上述用于运动仿真平台的反解联动算法,
步骤1还包括:实时提取相关游戏主体的虚拟三维空间中绕各轴旋转值,pitch、yaw、roll的数据;
步骤2还包括根据实际平台的轴向排布,对实时获取的虚拟主体旋转值pitch、yaw、roll做角度限制规范,根据数学函数对数据做平滑转换处理,而不是简单生硬的上下限阈值形式;
步骤4还包括:
4.1、根据实际平台的轴数量,将规范处理过的游戏主体旋转值pitch、yaw、roll做为参数带入六自由度或三自由度运动反解算法,实时求得各个轴的长度;
4.2、根据外置预设的各轴最大实际运行行程,对4.1中获取的各轴长再做一次平滑的数据映射限位处理,避免运算出的轴长超过实际缸的最大行程,导致撞缸出现设备故障甚至危险。
从上所述可以了解,所谓反解联动算法与现行运动仿真平台的关键区别在于,反解联动算法采用的是虚拟主体优先策略,即反解联动算法是将虚拟空间中主体的姿态精确地反映到对现实空间中的平台上。如此能带来的好处是体验者在现实平台中并不能预知下一步动作,而仅是能更具物理常识对整个平台的下一步动作进行预判,如此,现实空间中平台的动作将依据整个***的预载程序进行运行并完全将体验者带入浸入式的体验环境中。
附图说明
图1为采用反解联动算法进行动作的运动仿真平台的运作示意图。
图2为反解联动算法的运作示意图。
具体实施方式
如图1所示,一种用于运动仿真平台的反解联动算法,所述运动仿真平台包括控制模块和动作模块;其中,
动作模块包括油缸,万向铰链和上、下两个平台,下平台固定在基础上,上平台和下平台之间通过油缸和万向铰链实现转动连接;上平台借助油缸的伸缩运动完成在空间六个自由度X,Y,Z,α,β,γ的运动,即完成在空间中移动和倾斜的动作;控制模块包括与外部画面显示屏连接的控制电脑和控制油缸伸缩动作的控制器,所述控制电脑通过控制器来协调控制油缸的伸缩运动实现上平台在空间中的移动和倾斜动作,控制电脑装载有预置反解联动算法的存储记忆体并通过该反解联动算法控制油缸的伸缩动作。
如图2所示,所述反解联动算法具体执行下述步骤:
步骤1、实时获取虚拟空间中主体的三维姿态信息,三维姿态信息包括在x、y、z三个坐标轴方向上当前的旋转状态、虚拟主体当前的运动速度;虚拟主体当前的加速度;
步骤2、将虚拟空间中的三维坐标系与现实空间中运动仿真平台的三维坐标系相转换;为了避免六自由度运动仿真平台在联动过程中发生角度间的“耦合”,通常会采用欧拉角来描述刚体的旋转状态,而欧拉角的定义又随旋转次序的不同而不同,而目前主流游戏引擎(Unity3d)中对欧拉角的定义分两种:1).当认为顺序是yxz时(其实就是heading - pitch- bank),是传统的欧拉角变换,也就是以物体自己的坐标系为轴的;2).当认为顺序是zxy时(roll - pitch - yaw),也是官方文档的顺序时,是以惯性坐标系为轴的(惯性坐标系是原点与物体坐标系重合,xyz轴平行于世界xyz轴的坐标系)。所以我们在***开发阶段为了完美匹配目前主流游戏引擎(Unity3d)中对欧拉角的定义,采用roll-pitch-yaw的形式来转换到真实空间中的姿态变化。
步骤3、以每秒100帧的速率将虚拟空间中主体的三维姿态信息输送至控制电脑中;
步骤4、控制电脑依据虚拟空间中主题的三维姿态信息而解析出现实空间中坐标轴的各个轴的长度值,进而通过控制器调整各油缸的伸缩幅度实现控制运动仿真平台的联动,即实现虚拟主体姿态到现实平台姿态的实时转换。
以下通过各具体实施例进一步说明采用反解联动算法的运动仿真平台。
实施例一、赛车模拟游戏
赛车模拟游戏中,遇到上坡道路时,游戏场景中车子的车头向上倾斜,反应在虚拟三维环境中的数据表现之一就是车子主体的空间旋转量发生了变化,及主体在虚拟三维世界中绕着X、Y、Z轴旋转量的变化。
要完成实时仿真平台准确动作反馈,需要以下几个步骤:
1)、实时提取相关游戏主体的虚拟三维空间中绕各轴旋转值,pitch、yaw、roll的数据。
2)、根据实际平台的轴向排布,对实时获取的虚拟主体旋转值pitch、yaw、roll做角度限制规范(例如:roll值数据规范到正负20度,代表着实际平台左右倾斜最大幅度,一方面可以自由调整体验感强烈程度,一方面也是安全措施,避免游戏中虚拟主体出现翻车之类的情况下,数据变动剧烈,导致平台体验晃动剧烈。),根据数学函数对数据做一个平滑转换处理,而不是简单生硬的上下限阈值形式。
3)、根据实际平台的轴数量,将规范处理过的游戏主体旋转值pitch、yaw、roll做为参数带入六自由度或三自由度运动反解算法(具体算法资料参考相关论文文档),实时求得各个轴的长度。
4)、根据外置预设的各轴最大实际运行行程,对“3)”中获取的各轴长再做一次平滑的数据映射限位处理,避免运算出的轴长超过实际缸的最大行程,导致撞缸出现设备故障甚至危险。
5)、经过以上步骤后,此时将最后计算出的各轴长用于实时平台控制,在每秒100帧的数据通信控制下,这样就可以流畅的完成整个游戏体验中主体的每一个姿态动作的实时表现和反馈。
上述赛车模拟游戏中的单个情节的运算过程,还可以应用在以下这些场景中:
实施例二、飞行影院
1、概述
该***是一个全自动的180度环幕飞行影院***,由放映***、六自由度动感平台***,轨道车***、音箱***、控制***、操作监控一体化等子***构成,各子***协同作用,构成一个整体,共同刺激观众的视觉、听觉、感觉等各个器官。
2、项目目的
通过超越常规的感受影像,结合声、光、电等特效手法,让观看节目的观众在获得极大试听和感官震撼的同时,把呼和浩特的城市特色、草原美景和未来发展深刻的印在脑海中,成为愉悦并且难忘的知识内容。
3、项目操作说明
观众在工作人员的指导下,入座后检查安全压杆是否压紧,并保持安静。小孩需要家长的特别看护,观众身上的贵重物品各自收好,以免在观看时掉入动感平台下方,导致损坏。
影片开始后,观众观看银幕,就可以观赏电影及现场特效。如果有不舒适感,请观众闭上眼睛等待。
在完成影片的观看后,需要观众按工作人员指引离开。
4、项目所演示的科学技术原理
(1)、三维动画技术:三维动画(3D动画)是相对于二维动画(2D动画)而言的,因其采用了立体空间的概念,所以更显真实,而且对空间操作的随意性也较强。也更容易吸引人。
(2)、同步控制与无缝拼接技术:将多通道投影画面进行统一速率播放,使画面状态一致,同时采用无缝拼接技术将多通道画面拼接成一个整体画面。对于观众来说,优秀的同步控制技术和无缝拼接技术可以让他们感觉不到所看的画面是由多台设备播放拼接而成,就是一个完整的巨大影像。
(3)、飞行动力学模型:应用于飞机飞行姿态的解算,并控制六自由度平台模拟飞机的飞行姿态;
实施例三、动感机车—超越城市
1、概述
该***是一个主动式模拟驾驶***,模拟在草原驾驶汽车的过程。模拟器为驾驶员提供一个逼真的驾驶环境,从视觉、听觉、感觉和触觉上模拟汽车从发动、行驶、颠簸、制动以及发生紧急状况等行驶过程。
2、展示目的
以草原为场景,设计草原驾驶的场景,制作逼真的驾驶平台,使用大型拼接屏演示驾驶过程,展示草原的自然生态环境及规划建设,从而使游客更直观欣赏草原优美的旖旎风光。
3、项目操作说明
游戏者可以坐在机车座位上,通过方向盘上按钮选择自己喜欢的车型颜色,完全模拟真车驾驶操作,从进入车体的一瞬间,游戏者就仿佛驾驶着真实的汽车驰骋在宽广的草原上,屏幕中将展现的是游戏中参与者所行驶到的每个角落,逼真的声效、风效将使行驶过程烘托得更为真实。车内的仪表盘将实时体现当前的行驶速度,游戏者可以操作方向盘以控制汽车的行驶方向,遇到紧急情况时可以踩刹车令汽车停止行驶。
4、项目所演示的科学技术原理
(1)虚拟现实技术:采用3D虚拟现实场景作为游戏的显示方式,更加自然,更加逼真,这也带给参与者无与伦比的精彩游戏体验;
(2)刚体动力学(动力学模型):汽车的动力学***采用业界普遍应用的ODE引擎,该引擎具有非常强的真实效果。合理采用刚体动力学模型,可以模拟出汽车在虚拟世界中的碰撞、滑行等事件,使游戏者和虚拟世界发生互动,让游戏的体验更加真实;
(3)力回馈技术:通过力回馈技术,将汽车的行驶状态更加细腻地反馈给操作者,从而获得极为真实的游戏操作体验;
(4)实时视景生成技术:驾驶***使用Microsoft最新的DirectX进行视景的生成,具备有非常真实的感觉,能够模拟大量的灯光,反射及阴影效果,并且具备有较快的渲染速度,一般场景的渲染速度在1024×768的高分辨率下能够达到每秒30帧以上,非常适合模拟驾驶类的***需要;
(5)计算机多媒体技术:展示VR技术在视频、音频和交互等人机互动领域中的应用,让参与者了解VR技术在数字内容展示中所起到的作用,在了解汽车驾驶知识的同时欣赏到VR技术带来的愉悦体验。
Claims (2)
1.一种用于运动仿真平台的反解联动算法,所述运动仿真平台包括控制模块和动作模块;其中,
动作模块包括油缸,万向铰链和上、下两个平台,下平台固定在基础上,上平台和下平台之间通过油缸和万向铰链实现转动连接;上平台借助油缸的伸缩运动完成在空间六个自由度X,Y,Z,α,β,γ的运动,即完成在空间中移动和倾斜的动作;控制模块包括与外部画面显示屏连接的控制电脑和控制油缸伸缩动作的控制器,所述控制电脑通过控制器来协调控制油缸的伸缩运动实现上平台在空间中的移动和倾斜动作,其特征是:控制电脑装载有预置反解联动算法的存储记忆体并通过该反解联动算法控制油缸的伸缩动作;所述反解联动算法具体执行下述步骤:
步骤1、实时获取虚拟空间中主体的三维姿态信息,三维姿态信息包括在x、y、z三个坐标轴方向上当前的旋转状态、虚拟主体当前的运动速度;虚拟主体当前的加速度;
步骤2、将虚拟空间中的三维坐标系与现实空间中运动仿真平台的三维坐标系相转换;
步骤3、以每秒100帧的速率将虚拟空间中主体的三维姿态信息输送至控制电脑中;
步骤4、控制电脑依据虚拟空间中主题的三维姿态信息而解析出现实空间中坐标轴的各个轴的长度值,进而通过控制器调整各油缸的伸缩幅度实现控制运动仿真平台的联动,即实现虚拟主体姿态到现实平台姿态的实时转换。
2.根据权利要求1所述的用于运动仿真平台的反解联动算法,其特征是:步骤1还包括:实时提取相关游戏主体的虚拟三维空间中绕各轴旋转值,pitch、yaw、roll的数据;
步骤2还包括根据实际平台的轴向排布,对实时获取的虚拟主体旋转值pitch、yaw、roll做角度限制规范,根据数学函数对数据做平滑转换处理,而不是简单生硬的上下限阈值形式;
步骤4还包括:
4.1、根据实际平台的轴数量,将规范处理过的游戏主体旋转值pitch、yaw、roll做为参数带入六自由度或三自由度运动反解算法,实时求得各个轴的长度;
4.2、根据外置预设的各轴最大实际运行行程,对4.1中获取的各轴长再做一次平滑的数据映射限位处理,避免运算出的轴长超过实际缸的最大行程,导致撞缸出现设备故障甚至危险。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711413878.8A CN108333956A (zh) | 2017-12-24 | 2017-12-24 | 用于运动仿真平台的反解联动算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711413878.8A CN108333956A (zh) | 2017-12-24 | 2017-12-24 | 用于运动仿真平台的反解联动算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108333956A true CN108333956A (zh) | 2018-07-27 |
Family
ID=62923296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711413878.8A Pending CN108333956A (zh) | 2017-12-24 | 2017-12-24 | 用于运动仿真平台的反解联动算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108333956A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110688770A (zh) * | 2019-09-16 | 2020-01-14 | 华强方特(深圳)科技有限公司 | 一种大型游乐设施体验效果的复现模拟方法 |
CN111694368A (zh) * | 2020-06-04 | 2020-09-22 | 哈尔滨工业大学 | 六自由度平台控制方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317204A (zh) * | 2014-10-17 | 2015-01-28 | 哈尔滨工业大学 | 基于虚拟现实技术的二次平台半物理仿真***及方法 |
-
2017
- 2017-12-24 CN CN201711413878.8A patent/CN108333956A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317204A (zh) * | 2014-10-17 | 2015-01-28 | 哈尔滨工业大学 | 基于虚拟现实技术的二次平台半物理仿真***及方法 |
Non-Patent Citations (4)
Title |
---|
励映群等: "六自由度运动平台可视化软件的设计与实现", 《计算机仿真》 * |
李晓等: "风浪条件下六自由度舰船运动模拟器运动仿真", 《自动化应用》 * |
邱正师等: "基于粒子群迭代的一种冗余机械手逆解算法", 《制造技术与机床》 * |
郭云鹏等: "一种六自由度海浪模拟并联平台的零点标定与性能评估", 《机电工程》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110688770A (zh) * | 2019-09-16 | 2020-01-14 | 华强方特(深圳)科技有限公司 | 一种大型游乐设施体验效果的复现模拟方法 |
CN110688770B (zh) * | 2019-09-16 | 2023-05-30 | 华强方特(深圳)科技有限公司 | 一种大型游乐设施体验效果的复现模拟方法 |
CN111694368A (zh) * | 2020-06-04 | 2020-09-22 | 哈尔滨工业大学 | 六自由度平台控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9789411B2 (en) | Applied layout in virtual motion-acceleration spherical simulator | |
JP7298932B2 (ja) | 仮想現実に基づくパイロット訓練システム | |
WO2018012395A1 (ja) | シミュレーションシステム、処理方法及び情報記憶媒体 | |
US9558676B2 (en) | Method for simulating specific movements by haptic feedback, and device implementing the method | |
CN202171880U (zh) | 一种三维视景仿真驾驶*** | |
CN112150885B (zh) | 基于混合现实的驾驶舱***及场景构建方法 | |
US6384834B1 (en) | Three-dimensional simulator apparatus and image synthesis method using texture computation and texture information storage | |
CN110109552A (zh) | 基于真实环境的虚拟驾驶场景建模方法 | |
EP3918447A1 (en) | System and method for robot interactions in mixed reality applications | |
Samak et al. | Autodrive simulator: A simulator for scaled autonomous vehicle research and education | |
CN108333956A (zh) | 用于运动仿真平台的反解联动算法 | |
KR20220016872A (ko) | 모션 시스템 | |
CN109154867A (zh) | 通用平移和旋转运动模拟器 | |
EP3262624A1 (en) | Immersive vehicle simulator apparatus and method | |
JP2019202061A (ja) | シミュレーションシステム及びプログラム | |
KR101881227B1 (ko) | 무인 비행체를 이용한 비행 체험 방법 및 장치 | |
JP2019533831A (ja) | 運動シミュレーションシステム | |
Tseng et al. | Implementation of a driving simulator based on a stewart platform and computer graphics technologies | |
Peng et al. | A Vehicle Driving Simulator Based on Virtual Reality | |
RU2820357C1 (ru) | Тренажер авиационный на базе беспилотного летательного аппарата | |
US20240095418A1 (en) | System and method for an augmented-virtual reality driving simulator using a vehicle | |
JP3638669B2 (ja) | 画像合成方法及びゲーム装置 | |
CN117238192A (zh) | 一种基于vr技术的五边飞行目视科目培训方法 | |
JP2022512226A (ja) | 運転体験をシミュレートするための最適化された装置 | |
STELLA | An educational experience in virtual and augmented reality to raise awareness about space debris |
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 |