CN107907129A - Vr手柄姿态初始算法、vr手柄及存储介质 - Google Patents
Vr手柄姿态初始算法、vr手柄及存储介质 Download PDFInfo
- Publication number
- CN107907129A CN107907129A CN201710882008.9A CN201710882008A CN107907129A CN 107907129 A CN107907129 A CN 107907129A CN 201710882008 A CN201710882008 A CN 201710882008A CN 107907129 A CN107907129 A CN 107907129A
- Authority
- CN
- China
- Prior art keywords
- acceleration
- magnetometer
- formula
- acc
- handles
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Navigation (AREA)
Abstract
本发明公开了VR手柄姿态初始化算法,包括以下步骤:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,对标定后的加速度和磁力计进行归一化处理,根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。按照传统AHRS和IMU算法,通过该方法解决姿态初始化问题,能够让VR三自由度交互手柄瞬间进入稳态,从而解决漂移问题。
Description
技术领域
本发明涉及一种手柄姿态精准计算,尤其涉及一种VR手柄姿态初始算法、VR手柄及存储介质。
背景技术
目前,市面上普通的VR手柄设备的初始姿态一般采用(w,x,y,z)=(1,0,0,0)作为初始化姿态,用欧拉角表示为(yaw,pitch,roll)=[0,0,0],这种姿态初始化值,是继承于普通AHRS或IMU设备算法,通过一点时间的收敛可以到达一个稳定状态。
但是,现有的技术存在以下缺陷:
(1)传统方法对于传统产品,如无人机不存在任何问题,但是对于VR手柄来讲,初始化姿态漂移会导致在收敛过程中一直存在漂移。
发明内容
为了克服现有技术的不足,本发明的目的之一在于提供一种VR手柄姿态初始算法,其基于传统的AHRS和IMU算法,让VR手柄瞬间进入稳态。
本发明的目的之二在于提供一种VR手柄,其基于传统的AHRS和IMU算法,让VR手柄瞬间进入稳态。
本发明的目的之三在于提供一种计算机可读存储介质,其基于传统的AHRS和IMU算法,让VR手柄瞬间进入稳态。
本发明的目的之一采用如下技术方案实现:
VR手柄姿态初始化算法,包括如下步骤:
标定步骤:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,其中,Acc为加速度,Mag为磁力计,Acc′为加速度的标定,Mag′为磁力计的标定,Ca为加速度的标定参数,Cm为磁力计的标定参数;
归一步骤:通过公式对标定后的加速度和磁力计进行归一化处理;为加速度的归一化,为磁力计的归一化;
计算步骤:根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。
进一步地,标定步骤中,将加速度和磁力计分别进行滤波后再进行标定。
进一步地,计算步骤中,包括如下子步骤:
翻滚角计算子步骤:通过公式计算得到翻滚角;其中,Accx为加速度在X方向上的大小,Accy为加速度在Y方向上的大小;
俯仰角计算子步骤:预设判断pitch_b是否为零,若是,则通过公式计算得到俯仰角,否则,通过公式计算得到俯仰角;
偏航角计算子步骤:通过公式
计算得到偏航角。
本发明的目的之二采用如下技术方案实现:
一种VR手柄,该手柄内设有处理器、存储器和存储在存储器中并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
标定步骤:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,其中,Acc为加速度,Mag为磁力计,Acc′为加速度的标定,Mag′为磁力计的标定,Ca为加速度的标定参数,Cm为磁力计的标定参数;
归一步骤:通过公式对标定后的加速度和磁力计进行归一化处理;为加速度的归一化,为磁力计的归一化;
计算步骤:根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。
进一步地,标定步骤中,将加速度和磁力计分别进行滤波后再进行标定。
进一步地,计算步骤中,包括如下子步骤:
翻滚角计算子步骤:通过公式计算得到翻滚角;其中,Accx为加速度在X方向上的大小,Accy为加速度在Y方向上的大小;
俯仰角计算子步骤:预设判断pitch_b是否为零,若是,则通过公式计算得到俯仰角,否则,通过公式计算得到俯仰角;
偏航角计算子步骤:通过公式
计算得到偏航角。
本发明的目的之三采用如下技术方案实现:
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现如本发明目的之一所述的算法。
相比现有技术,本发明的有益效果在于:
(1)按照传统AHRS和IMU算法,对于初始化姿态都采用(w,x,y,z)=(1,0,0,0),通过该方法解决姿态初始化问题,能够让VRVR交互手柄瞬间进入稳态,从而解决漂移问题。
附图说明
图1为本发明的VR手柄姿态初始化算法流程图。
具体实施方式
下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
如图1所示,本发明提供一种VR手柄姿态初始化算法,其包括如下步骤:
S1:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,其中,Acc为加速度,Mag为磁力计,Acc′为加速度的标定,Mag′为磁力计的标定,Ca为加速度的标定参数,Cm为磁力计的标定参数;
S2:通过公式对标定后的加速度和磁力计进行归一化处理;为加速度的归一化,为磁力计的归一化;
S3:根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。
本发明的算法主要适用于XYZ系统的AHRS系统,其中Z轴旋转影响yaw方向,X轴旋转影响roll方向,Y轴旋转影响pitch方向。
在步骤S1中,还对加速度和磁力计分别先进行滤波操作,对滤波后的加速度和磁力计再进行标定。加速度的标定参数和磁力计的标定参数都是提前设定,是已知量。
S3中,包括如下子步骤:
翻滚角计算子步骤:通过公式计算得到翻滚角;Accx为加速度在X方向上的大小,Accy为加速度在Y方向上的大小。
俯仰角计算子步骤:预设判断pitch_b是否为零,若是,则通过公式计算得到俯仰角,否则,通过公式计算得到俯仰角;本步骤中如果不判断为零,否则pitch_b会作为分母进行除法,从而导致无穷大。
偏航角计算子步骤:通过公式
计算得到偏航角。
本发明还提供一种VR手柄,其内部设有处理器、存储器和存储在存储器中并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
标定步骤:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,其中,Acc为加速度,Mag为磁力计,Acc′为加速度的标定,Mag′为磁力计的标定,Ca为加速度的标定参数,Cm为磁力计的标定参数;
归一步骤:通过公式对标定后的加速度和磁力计进行归一化处理;为加速度的归一化,为磁力计的归一化;
计算步骤:根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。
另外还提供一种计算机可读存储介质,其存储有计算机程序,计算机程序可被处理器执行,在被执行时实现本发明的算法流程。
上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。
Claims (7)
1.VR手柄姿态初始化算法,其特征在于,包括如下步骤:
标定步骤:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,其中,Acc为加速度,Mag为磁力计,Acc′为加速度的标定,Mag′为磁力计的标定,Ca为加速度的标定参数,Cm为磁力计的标定参数;
归一步骤:通过公式对标定后的加速度和磁力计进行归一化处理;为加速度的归一化,为磁力计的归一化;
计算步骤:根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。
2.如权利要求1所述的VR手柄姿态初始化算法,其特征在于,标定步骤中,将加速度和磁力计分别进行滤波后再进行标定。
3.如权利要求1所述的VR手柄姿态初始化算法,其特征在于,计算步骤中,包括如下子步骤:
翻滚角计算子步骤:通过公式计算得到翻滚角;其中,Accx为加速度在X方向上的大小,Accy为加速度在Y方向上的大小;
俯仰角计算子步骤:预设判断pitch_b是否为零,若是,则通过公式计算得到俯仰角,否则,通过公式计算得到俯仰角;
偏航角计算子步骤:通过公式
计算得到偏航角。
4.一种VR手柄,该手柄内设有处理器、存储器和存储在存储器中并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
标定步骤:将加速度和磁力计分别通过公式进行标定以得到初始姿态信息,其中,Acc为加速度,Mag为磁力计,Acc′为加速度的标定,Mag′为磁力计的标定,Ca为加速度的标定参数,Cm为磁力计的标定参数;
归一步骤:通过公式对标定后的加速度和磁力计进行归一化处理;为加速度的归一化,为磁力计的归一化;
计算步骤:根据标定后的加速度和磁力计进行初始化姿态计算,得到姿态初始化值,该姿态初始化值以欧垃角表示。
5.如权利要求4所述的VR手柄,其特征在于,标定步骤中,将加速度和磁力计分别进行滤波后再进行标定。
6.如权利要求4所述的VR手柄,其特征在于,计算步骤中,包括如下子步骤:
翻滚角计算子步骤:通过公式计算得到翻滚角;其中,Accx为加速度在X方向上的大小,Accy为加速度在Y方向上的大小;
俯仰角计算子步骤:预设判断pitch_b是否为零,若是,则通过公式计算得到俯仰角,否则,通过公式计算得到俯仰角;
偏航角计算子步骤:通过公式
计算得到偏航角。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1-3任一项所述的算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710882008.9A CN107907129B (zh) | 2017-09-26 | 2017-09-26 | Vr手柄姿态初始化方法、vr手柄及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710882008.9A CN107907129B (zh) | 2017-09-26 | 2017-09-26 | Vr手柄姿态初始化方法、vr手柄及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107907129A true CN107907129A (zh) | 2018-04-13 |
CN107907129B CN107907129B (zh) | 2021-11-09 |
Family
ID=61840261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710882008.9A Active CN107907129B (zh) | 2017-09-26 | 2017-09-26 | Vr手柄姿态初始化方法、vr手柄及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107907129B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109387205A (zh) * | 2018-11-30 | 2019-02-26 | 歌尔科技有限公司 | 获取姿态角变化幅度方法、设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102313543A (zh) * | 2011-07-11 | 2012-01-11 | 上海大学 | 基于巨磁阻传感器的地磁方位角测量系统、测量方法及正交补偿方法 |
EP2514707A1 (en) * | 2011-04-19 | 2012-10-24 | Honeywell International Inc. | Crane jib attitude and heading reference system calibration and initialization |
CN102865881A (zh) * | 2012-03-06 | 2013-01-09 | 武汉大学 | 一种惯性测量单元的快速标定方法 |
CN103499348A (zh) * | 2013-09-24 | 2014-01-08 | 成都市星达通科技有限公司 | Ahrs高精度姿态数据计算方法 |
CN103930854A (zh) * | 2011-09-09 | 2014-07-16 | 莫韦公司 | 借助指示器的姿态的测量控制光标的方法及实施所述方法的指示器 |
CN104850127A (zh) * | 2015-03-13 | 2015-08-19 | 哈尔滨工程大学 | 一种可动感操控四旋翼飞行器的方法 |
CN104898681A (zh) * | 2015-05-04 | 2015-09-09 | 浙江工业大学 | 一种采用三阶近似毕卡四元数的四旋翼飞行器姿态获取方法 |
CN105300381A (zh) * | 2015-11-23 | 2016-02-03 | 南京航空航天大学 | 一种基于改进互补滤波的自平衡移动机器人姿态快速收敛方法 |
EP3214404A1 (en) * | 2016-03-03 | 2017-09-06 | Innovative Solutions & Support, Incorporated | Systems and methods for calibrating and adjusting a heading reference system |
CN107168515A (zh) * | 2017-03-31 | 2017-09-15 | 北京奇艺世纪科技有限公司 | 一种vr一体机中手柄的定位方法和装置 |
-
2017
- 2017-09-26 CN CN201710882008.9A patent/CN107907129B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2514707A1 (en) * | 2011-04-19 | 2012-10-24 | Honeywell International Inc. | Crane jib attitude and heading reference system calibration and initialization |
CN102313543A (zh) * | 2011-07-11 | 2012-01-11 | 上海大学 | 基于巨磁阻传感器的地磁方位角测量系统、测量方法及正交补偿方法 |
CN103930854A (zh) * | 2011-09-09 | 2014-07-16 | 莫韦公司 | 借助指示器的姿态的测量控制光标的方法及实施所述方法的指示器 |
CN102865881A (zh) * | 2012-03-06 | 2013-01-09 | 武汉大学 | 一种惯性测量单元的快速标定方法 |
CN103499348A (zh) * | 2013-09-24 | 2014-01-08 | 成都市星达通科技有限公司 | Ahrs高精度姿态数据计算方法 |
CN104850127A (zh) * | 2015-03-13 | 2015-08-19 | 哈尔滨工程大学 | 一种可动感操控四旋翼飞行器的方法 |
CN104898681A (zh) * | 2015-05-04 | 2015-09-09 | 浙江工业大学 | 一种采用三阶近似毕卡四元数的四旋翼飞行器姿态获取方法 |
CN105300381A (zh) * | 2015-11-23 | 2016-02-03 | 南京航空航天大学 | 一种基于改进互补滤波的自平衡移动机器人姿态快速收敛方法 |
EP3214404A1 (en) * | 2016-03-03 | 2017-09-06 | Innovative Solutions & Support, Incorporated | Systems and methods for calibrating and adjusting a heading reference system |
CN107168515A (zh) * | 2017-03-31 | 2017-09-15 | 北京奇艺世纪科技有限公司 | 一种vr一体机中手柄的定位方法和装置 |
Non-Patent Citations (3)
Title |
---|
LONG ZHAO等: "Design of an Attitude and Heading Reference System Based on Distributed Filtering for Small UAV", 《MATHEMATICAL PROBLEMS IN ENGINEERING》 * |
王建等: "基于姿态的多关节履带机器人越障控制", 《东南大学学报(自然科学版)》 * |
程剑等: "虚拟现实环境下载人机动装置仿真系统", 《机械工程学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109387205A (zh) * | 2018-11-30 | 2019-02-26 | 歌尔科技有限公司 | 获取姿态角变化幅度方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107907129B (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018099198A1 (zh) | 无人机姿态控制方法、装置及无人机 | |
US9862091B2 (en) | Information processing apparatus and information processing method | |
CN103940425B (zh) | 一种磁‑惯性组合捷联测量方法 | |
US20200408358A1 (en) | Method and system for controlling a gimbal | |
CN108827299A (zh) | 一种基于改进四元数二阶互补滤波的飞行器姿态解算方法 | |
CN107065901A (zh) | 一种旋翼无人机姿态控制方法、装置及无人机 | |
CN109724602A (zh) | 一种基于硬件fpu的姿态解算系统及其解算方法 | |
CN105809702A (zh) | 一种基于Tsai算法的改进位姿估计方法 | |
CN108932737A (zh) | 车载相机俯仰角标定方法和装置、电子设备以及车辆 | |
US20200386782A1 (en) | Apparatus and method for calibrating inertial measuring unit | |
CN107270940B (zh) | 三轴磁强计的输出偏差估计方法 | |
CN104913775B (zh) | 无人机对地高度的测量方法、无人机定位方法及装置 | |
CN106500699A (zh) | 一种适用于无人机室内自主降落的位姿估计方法 | |
CN108318035A (zh) | 一种基于欧拉角的姿态测量算法中避免万向节死锁的方法 | |
CN109445620B (zh) | 一种交互笔自动识别方法 | |
CN109359537A (zh) | 基于神经网络的人脸姿态角度检测方法及系统 | |
CN107809191A (zh) | 一种同步电机无速度传感器的角度观测方法 | |
CN107907129A (zh) | Vr手柄姿态初始算法、vr手柄及存储介质 | |
WO2021115040A1 (zh) | 图像校正方法、装置、终端设备和存储介质 | |
CN111273701B (zh) | 一种云台视觉控制系统以及控制方法 | |
CN106292297B (zh) | 基于pid控制器和l1自适应控制器的姿态控制方法 | |
CN105953793A (zh) | 一种车辆急转弯的识别方法以及装置 | |
CN106408589B (zh) | 基于车载俯视相机的车辆运动测量方法 | |
CN111796605A (zh) | 无人机降落控制方法、控制器和无人机 | |
CN107883953A (zh) | Vr手柄静态检测算法、vr手柄及存储介质 |
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 |