CN107830871A - 一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统 - Google Patents

一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统 Download PDF

Info

Publication number
CN107830871A
CN107830871A CN201710947888.3A CN201710947888A CN107830871A CN 107830871 A CN107830871 A CN 107830871A CN 201710947888 A CN201710947888 A CN 201710947888A CN 107830871 A CN107830871 A CN 107830871A
Authority
CN
China
Prior art keywords
gyroscope
moment
angular velocity
quaternary number
velocity data
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
Application number
CN201710947888.3A
Other languages
English (en)
Other versions
CN107830871B (zh
Inventor
陈维亮
程玺谋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Goertek Techology Co Ltd
Original Assignee
Goertek Techology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Goertek Techology Co Ltd filed Critical Goertek Techology Co Ltd
Priority to CN201710947888.3A priority Critical patent/CN107830871B/zh
Publication of CN107830871A publication Critical patent/CN107830871A/zh
Application granted granted Critical
Publication of CN107830871B publication Critical patent/CN107830871B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
    • G01C25/005Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass initial alignment, calibration or starting-up of inertial devices

Abstract

本发明公开了一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和补偿陀螺仪角速度数据的系统。该方法包括:根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据第一时刻的加速度数据计算第一时刻的加速度值;判断第一时刻的加速度值是否在预设加速度值范围内;若判断为是,根据第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算陀螺仪的补偿系数和零偏值;使用补偿系数和零偏值补偿陀螺仪采集的第二时刻的角速度数据,获得陀螺仪补偿后的第二时刻的角速度数据。本发明的技术方案可以消除陀螺仪的累计误差,保证陀螺仪准确性,增强用户体验。

Description

一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统
技术领域
本发明涉及传感器技术领域,特别涉及一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和补偿陀螺仪角速度数据的系统。
背景技术
陀螺仪在进行姿态角的测量时会存在累计误差,即本次计算的姿态角是基于前一次计算的姿态角的基础上获得的,这样就会导致陀螺仪上一次测量的误差累计到本次的结果中,进而随着时间的推移使得陀螺仪测量结果中的误差越来越大,影响陀螺仪的准确性。因此,减小或者消除累计误差,是陀螺仪测量准确与否的重要保证。但是,目前还无法实现对陀螺仪累计误差的消除。
发明内容
鉴于上述问题,提出了本发明的一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和补偿陀螺仪角速度数据的系统,以便消除陀螺仪的累积误差。
根据本发明的一个方面,提供了一种补偿陀螺仪角速度数据的方法,所述方法包括:
根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据所述第一时刻的加速度数据计算第一时刻的加速度值;
判断所述第一时刻的加速度值是否在预设加速度值范围内;
若加速度值在预设加速度值范围内,根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值;
使用所述补偿系数和所述零偏值补偿所述陀螺仪采集的第二时刻的角速度数据,获得所述陀螺仪补偿后的第二时刻的角速度数据。
根据本发明的另一个方面,提供了一种补偿陀螺仪角速度数据的装置,所述装置包括:
第一计算单元,用于根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据所述加速度数据计算第一时刻的加速度值;
判断单元,用于判断所述第一时刻的加速度值是否在预设加速度值范围内;
第二计算单元,用于若加速度值在预设加速度值范围内,根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值;
补偿单元,用于使用所述补偿系数和所述零偏值补偿所述陀螺仪采集的第二时刻的角速度数据,获得所述陀螺仪补偿后的第二时刻的角速度数据。
根据本发明的又一个方面,提供了一种补偿陀螺仪角速度数据的装置,所述装置包括存储器和处理器,所述存储器和所述处理器之间通过内部总线通讯连接,所述存储器存储有能够被所述处理器执行的计算机程序,所述计算机程序被所述处理器执行时能够实现前述的方法步骤。
根据本发明的再一个方面,提供了一种陀螺仪,所述陀螺仪包括如前所述的补偿陀螺仪角速度数据的装置。
根据本发明的再一个方面,提供了一种补偿陀螺仪角速度数据的系统,所述系统包括如前所述的陀螺仪、加速度传感器和磁力计;
所述加速度传感器,用于采集第一时刻的加速度数据,并将所述第一时刻的加速度数据发送给所述陀螺仪;
所述磁力计,用于采集第一时刻的磁场数据,并将所述第一时刻的磁场数据发送给所述陀螺仪;
所述陀螺仪,用于根据接收到的所述第一时刻的加速度数据和所述第一时刻的磁场数据计算第一组四元数,以及根据所述第一时刻的加速度数据计算第一时刻的加速度值;判断所述第一时刻的加速度值是否在预设加速度值范围内;若加速度值在预设加速度值范围内,根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值;使用所述补偿系数和所述零偏值补偿所述陀螺仪采集的第二时刻的角速度数据,获得所述陀螺仪补偿后的第二时刻的角速度数据。
综上所述,本发明的有益效果是:首先判断加速度传感器采集的加速度值是否在预设加速度值范围内,若判断为是,说明相比较存在累计误差的陀螺仪计算的四元数来说,利用加速度传感器和磁力计计算的四元数是比较准确的,然后根据比较准确的四元数获得陀螺仪的补偿系数和零偏值,该补偿系数和零偏值标定了陀螺仪当前的累计误差,使用该补偿系数和零偏值补偿陀螺仪的角速度数据,可以补偿陀螺仪的累积误差。可见,本发明的技术方案利用加速度传感器和磁力计采集的数据对陀螺仪角速度数据补偿,可以消除陀螺仪的累计误差,保证陀螺仪准确性,增强用户体验。
附图说明
图1为本发明一个实施例提供的一种补偿陀螺仪角速度数据的方法流程示意图;
图2为本发明一个实施例提供的一种补偿陀螺仪角速度数据的装置的功能结构示意图;
图3为本发明另一个实施例提供的一种补偿陀螺仪角速度数据的装置的功能结构示意图;
图4为本发明一个实施例提供的一种陀螺仪的功能结构示意图;
图5为本发明一个实施例提供的一种补偿陀螺仪角速度数据的系统的功能结构示意图。
具体实施方式
本发明的设计思路是:因目前无法对陀螺仪的累积误差进行消除,即使采用融合算法也只能减少累积误差,又考虑到加速度传感器采集的加速度值接近重力加速度值的理想状态时,利用加速度传感器和磁力计计算的四元数是相对准确的,本发明利用该相对准确的四元数获得陀螺仪的补偿系数和零偏值,标定陀螺仪的累计误差,再用该补偿系数和零偏值补偿陀螺仪的角速度数据时,可以将陀螺仪的累积误差消除。为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1为本发明一个实施例提供的一种补偿陀螺仪角速度数据的方法流程示意图。如图1所示,该方法包括:
步骤S110,根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据第一时刻的加速度数据计算第一时刻的加速度值。
四元数通过姿态角计算。这里的姿态角包括俯仰角、翻滚角和航向角,因为在计算过程中角度的正弦、余弦、正切等计算不方便,所以引入了四元数的概念,四元数的目的就是为了简化计算。
本实施例中,步骤S110中的根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的磁场数据计算第一组四元数包括:根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的磁场数据计算姿态角;根据姿态角计算第一组四元数。
具体地,加速度传感器采集的加速度数据是X轴、Y轴、Z轴的加速度值,用aX、aY、aZ表示,则俯仰角和翻滚角
磁力计采集的磁场数据是X轴、Y轴、Z轴的磁场值,用MX、MY、MZ表示,则航向角为其中,arcsin是反正弦,arctan2是反正切。
也就是说,利用加速度传感器采集的加速度数据可以计算姿态角中的俯仰角和翻滚角,然后再结合磁力计采集的磁场数据可以计算姿态角中的航向角。
然后利用姿态角计算四元数。计算公式为:
q1=cos(pitch/2)·cos(roll/2)·cos(yaw/2)+sin(pitch/2)·sin(roll/2)·sin(yaw/2)
q2=cos(pitch/2)·sin(roll/2)·cos(yaw/2)-sin(pitch/2)·cos(roll/2)·sin(yaw/2)
q3=sin(pitch/2)·cos(roll/2)·cos(yaw/2)+cos(pitch/2)·sin(roll/2)·sin(yaw/2)
q4=cos(pitch/2)·cos(roll/2)·sin(yaw/2)-sin(pitch/2)·sin(roll/2)·cos(yaw/2)
其中,四元数表示为pitch为俯仰角,roll为翻滚角,yaw为航向角。
本实施例中,加速度传感器采集的X轴、Y轴、Z轴的加速度值分别用aX、aY、aZ表示,则步骤S110中的根据第一时刻的加速度数据计算第一时刻的加速度值为:
步骤S120,判断第一时刻的加速度值是否在预设加速度值范围内。
加速度传感器的缺点是在运动加速度过快时,测得的结果不准确,即计算的四元数不准确,最理想的情况是仅存在重力,加速度三个轴上的测量值是对重力加速度的分解,这是计算的四元数是相对准确的,在本实施例中,设定了对陀螺仪进行补偿的触发条件,即判断是否在预设加速度值范围内,满足该条件,说明加速度传感器的数据是相对准确的,计算的四元数也是相对准确的,此时以该四元数作为基准反推陀螺仪的正确角速度数据时,获得的角速度数据也是相对准确的。所以,只有满足该触发条件时,才可以对陀螺仪的角速度数据进行补偿,以消除陀螺仪的累计误差,也就是说,并非是任何时候采用本方案对陀螺仪进行补偿,都可以达到消除累积误差的目的。
这里的预设加速度值范围是[0.7g,1.3g]。
步骤S130,若加速度值在预设加速度值范围内,根据第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算陀螺仪的补偿系数和零偏值。
本实施例中,若加速度传感器采集的加速度值在预设加速度值范围内,则说明此时由加速度传感器和磁力计计算的姿态角是准确的,即四元数是准确的,可以对陀螺仪的累计误差进行标记;若加速度传感器采集的加速度值不在预设加速度值范围内,即使采用本方案对对陀螺仪的角速度数据进行标定补偿,则补偿结果仍然是不准确的,即无法达到消除陀螺仪的累计误差的效果。
在本实施例中,根据第一组四元数可以确定陀螺仪在没有累计误差的情况下的正确的角速度数据,根据该正确的角速度数据和当前陀螺仪采集的角速度数据,就可以计算出陀螺仪的补偿系数和零偏值,该补偿系数和零偏值可以标定累计误差。
步骤S140,使用补偿系数和零偏值补偿陀螺仪采集的第二时刻的角速度数据,获得陀螺仪补偿后的第二时刻的角速度数据。
综上所述,图1所示的方法,在计算第一四元数和加速度值后,首先判断加速度传感器采集的加速度值是否在预设加速度值范围内,若判断为是,说明相比较存在累计误差的陀螺仪计算的四元数来说,利用加速度传感器和磁力计计算的四元数是比较准确的,然后根据比较准确的四元数获得陀螺仪的补偿系数和零偏值,该补偿系数和零偏值标定了陀螺仪当前的累计误差,使用该补偿系数和零偏值补偿陀螺仪的角速度数据,可以补偿陀螺仪的累积误差。可见,本发明的技术方案利用加速度传感器和磁力计采集的数据对陀螺仪角速度数据补偿,可以消除陀螺仪的累计误差,保证陀螺仪准确性,增强用户体验。
获得陀螺仪补偿后的第二时刻的角速度数据后,为了获得第二时刻的姿态角,需要利用四元数进行计算,以简化计算。所以,姿态角的获取即是四元数的获取,四元数确定后,姿态角即可确定。在本发明的一个实施例中,图1所述的方法还包括:根据陀螺仪采集的第一时刻的角速度数据计算第二组四元数;将第一组四元数和第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;根据第一时刻的四元数和陀螺仪补偿后的第二时刻的角速度数据,计算第二时刻的四元数。
依据陀螺仪的角速度数据计算的四元数是依赖上一时刻的四元数的,即根据上一时刻的四元数和当前时刻的角速度数据计算当前时刻的四元数。在本实施例中,要计算第二时刻的四元数,需要将第一时刻的四元数计算出来。
在计算第一时刻的四元数时,首先根据陀螺仪采集的第一时刻的角速度数据计算第二组四元数,然后将第一组四元数和第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数。这里采用融合算法,按照预设的比例从第一组四元数和第二组四元数中得到新的一组四元数,这组新的四元数就是第一时刻的四元数。例如,第一组四元数中的其中一个值是q11,第二组四元数中其中一个值是q21,预设的比例是3:1,则计算后第一时刻的四元数中的q1=75%*q11+25%*q21,q2、q3、q4采用类似的方法进行计算。需要说明的是,这里预设的比例的确定可以采用现有融合算法中的比例的确定方式进行确定,这里不做具体限定。
获得第一时刻的四元数后,根据第一时刻的四元数和陀螺仪补偿后的第二时刻的角速度数据,计算第二时刻的四元数。具体是根据公式qk+1=Ak·qk计算的,在本实施例中,qk+1是第二时刻的四元数,Ak是陀螺仪三个轴向的积分,与陀螺仪补偿后的第二时刻的角速度数据有关,qk是第一时刻的四元数,即
这里的Ak可以表示为ωxyz为陀螺仪补偿后的三个轴的角速度数据,Δt为陀螺仪的采样间隔,例如,若陀螺仪来自博士公司,采则样间隔Δt为6ms。那么,利用公式qk+1=Ak·qk计算第二时刻的四元数为
需要说明的是,本实施例中的根据陀螺仪采集的第一时刻的角速度数据计算第二组四元数也是采用上述的步骤进行的,即根据第一时刻的前一时刻的四元数和第一时刻的陀螺仪的角速度数据进行计算,即利用公式qk+1=Ak·qk计算,计算过程类似,在此不再赘述。
在本发明的一个实施例中,图1所述的方法还包括:若加速度值不在预设加速度值范围内,则根据陀螺仪采集的第一时刻的角速度数据计算第二组四元数;将第一组四元数和第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;根据第一时刻的四元数和陀螺仪采集的第二时刻的角速度数据,计算第二时刻的四元数。
在本实施例中,计算第二时刻的四元数的融合算法和上一实施例中的融合算法一样,按照预设的比例从第一时刻的四元数和第二组四元数中得到新的一组四元数,这组新的四元数就是第一时刻的四元数。根据第一时刻的四元数和陀螺仪采集的第二时刻的角速度数据,计算第二时刻的四元数,也是采用公式qk+1=Ak·qk计算,计算过程类似,在此不再赘述。
本方案是利用加速度传感器和磁力计获得的四元数反推陀螺仪的正确角速度数据,然后根据陀螺仪采集的角速度数据,计算补偿系数和零偏值,进而对累积误差进行标定。在本发明的一个实施例中,图1所示的步骤S130的根据第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算陀螺仪的补偿系数和零偏值包括:根据第一组四元数和第一时刻的前一时刻的四元数,计算陀螺仪第一时刻的角速度数据;根据陀螺仪计算出的第一时刻的角速度数据和采集的第一时刻的角速度数据,采用交叉逼近的方式计算陀螺仪的补偿系数和零偏值。
本实施例中的计算的陀螺仪第一时刻的角速度数据就是利用加速度传感器和磁力计获得的四元数反推陀螺仪的正确角速度数据。在计算陀螺仪的补偿系数和零偏值时,是利用陀螺仪的补偿公式进行计算的,其中,Kx、Ky、Kz是陀螺仪的三轴的补偿系数,x_offset、y_offset、z_offset是陀螺仪三轴的零偏值,ωx'、ωy'、ωz'是计算出的陀螺仪的第一时刻的角速度数据,ωx、ωy、ωz是陀螺仪采集的第一时刻的角速度数据。
在本实施例中,因为只有三个补偿公式,却有六个未知量Kx、Ky、Kz、x_offset、y_offset、z_offset,在公式的个数少于未知量的个数的情况下,正常的计算方法是不能确定全部的未知量的,所以在本实施例中,采用了交叉逼近的方式进行计算。
进一步地,上述的采用交叉逼近的方式计算陀螺仪的补偿系数和零偏值包括:获取陀螺仪的当前补偿系数和当前零偏值;查看记录的前一次计算补偿系数和零偏值时使用的已知量是当前补偿系数还是当前零偏值;若记录的前一次计算补偿系数和零偏值时使用的已知量是当前补偿系数,则本次采用获取的当前零偏值作为已知量,计算陀螺仪的补偿系数,将当前零偏值作为陀螺仪的零偏值,并使用计算出的陀螺仪的补偿系数更新当前补偿系数;若记录的前一次计算补偿系数和零偏值时使用的已知量是当前零偏值,则本次采用获取的当前补偿系数作为已知量,计算陀螺仪的零偏值,将当前补偿系数作为陀螺仪的补偿系数,并使用计算的陀螺仪的零偏值更新当前零偏值;记录本次计算使用的已知量是当前补偿系数还是当前零偏值。
在本实施例中,陀螺仪在出厂时会进行一次标定补偿,上述的六个未知量都会有一个初始值,在交叉逼近的方法中,每次计算均可以采用上一次计算的数据作为已知量,例如,上一次计算将x_offset、y_offset、z_offset作为已知量计算Kx、Ky、Kz;本次计算,将上次计算得到的Kx、Ky、Kz作为已知量,将x_ofset、y_offset、z_offset作为未知量,进行求解,然后以此类推。
在一个具体的例子中,补偿陀螺仪角速度数据的方法具体步骤为:
根据当前时刻陀螺仪采集的角速度数据确定陀螺仪当前时刻的三个轴向的积分,利用上一时刻的四元数和当前时刻的三个轴向的积分计算当前时刻的第一组四元数;利用加速度传感器和磁力计计算姿态角,继而利用计算出的姿态角计算第二组四元数;判断加速度传感器采集的加速度值是否在预设加速度值范围内;若判断为是,则根据第一组四元数和陀螺仪采集的当前时刻的角速度数据,计算陀螺仪的补偿系数和零偏值,并且采用融合算法,根据第一组四元数和第二组四元数计算当前时刻的四元数;使用计算的补偿系数和零偏值补偿陀螺仪采集的下一时刻的角速度数据,获得补偿后的下一时刻的角速度数据,进而确定下一时刻的三个轴向的积分;然后利用当前时刻的四元数和下一时刻的三个轴向的积分计算下一时刻的四元数。此时,下一时刻的四元数即是消除累积误差的四元数。若判断为否,采用融合算法,根据第一组四元数和第二组四元数计算当前时刻的四元数,利用下一时刻的角速度数据确定下一时刻的三个轴向的积分,利用当前时刻的四元数和下一时刻的三个轴向的积分计算下一时刻的四元数。
图2为本发明一个实施例提供的一种补偿陀螺仪角速度数据的装置的功能结构示意图。如图2所示,该补偿陀螺仪角速度数据的装置200包括:
第一计算单元210,用于根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据加速度数据计算第一时刻的加速度值;
判断单元220,用于判断第一时刻的加速度值是否在预设加速度值范围内;
第二计算单元230,用于若加速度值在预设加速度值范围内,根据第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算陀螺仪的补偿系数和零偏值;
补偿单元240,用于使用补偿系数和零偏值补偿陀螺仪采集的第二时刻的角速度数据,获得陀螺仪补偿后的第二时刻的角速度数据。
在本发明的一个实施例中,第一计算单元210,还用于根据陀螺仪采集的第一时刻的角速度数据计算第二组四元数。
图2所示的装置还包括:四元数计算单元,用于将第一组四元数和第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;根据第一时刻的四元数和陀螺仪补偿后的第二时刻的角速度数据,计算第二时刻的四元数。
在本发明的一个实施例中,四元数计算单元,用于若加速度值不在预设加速度值范围内,则根据陀螺仪采集的第一时刻的角速度数据计算第二组四元数;将第一组四元数和第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;根据第一时刻的四元数和陀螺仪采集的第二时刻的角速度数据,计算第二时刻的四元数。
在本发明的一个实施例中,第二计算单元230,具体用于根据第一组四元数和第一时刻的前一时刻的四元数,计算陀螺仪第一时刻的角速度数据;根据陀螺仪计算出的第一时刻的角速度数据和采集的第一时刻的角速度数据,采用交叉逼近的方式计算陀螺仪的补偿系数和零偏值。
在本发明的一个实施例中,第二计算单元230的采用交叉逼近的方式计算陀螺仪的补偿系数和零偏值具体是获取陀螺仪的当前补偿系数和当前零偏值;查看记录的前一次计算补偿系数和零偏值时使用的已知量是当前补偿系数还是当前零偏值;若记录的前一次计算补偿系数和零偏值时使用的已知量是当前补偿系数,则本次采用获取的当前零偏值作为已知量,计算陀螺仪的补偿系数,将当前零偏值作为陀螺仪的零偏值,并使用计算出的陀螺仪的补偿系数更新当前补偿系数;若记录的前一次计算补偿系数和零偏值时使用的已知量是当前零偏值,则本次采用获取的当前补偿系数作为已知量,计算陀螺仪的零偏值,将当前补偿系数作为陀螺仪的补偿系数,并使用计算的陀螺仪的零偏值更新当前零偏值;记录本次计算使用的已知量是当前补偿系数还是当前零偏值。
图3为本发明另一个实施例提供的一种补偿陀螺仪角速度数据的装置的结构示意图。如图3所示,补偿陀螺仪角速度数据的装置300包括存储器310和处理器320,存储器310和处理器320之间通过内部总线330通讯连接,存储器310存储有能够被处理器320执行的补偿陀螺仪角速度数据的计算机程序311,该补偿陀螺仪角速度数据的计算机程序311被处理器320执行时能够实现图1中所示的各实施例的方法步骤。
在不同的实施例中,存储器310可以是内存或者非易失性存储器。其中非易失性存储器可以是:存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。内存可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存。进一步,非易失性存储器和内存作为机器可读存储介质,其上可存储由处理器320执行的补偿陀螺仪角速度数据的计算机程序311。
图4为本发明一个实施例提供的一种陀螺仪的功能结构示意图。如图4所示,该陀螺仪400包括如图2或图3的补偿陀螺仪角速度数据的装置410。
图5为本发明一个实施例提供的一种补偿陀螺仪角速度数据的系统的功能结构示意图。如图5所示,该补偿陀螺仪角速度数据的系统500包括如图4所示的陀螺仪400、加速度传感器510和磁力计520;
加速度传感器510,用于采集第一时刻的加速度数据,并将第一时刻的加速度数据发送给陀螺仪400。
磁力计520,用于采集第一时刻的磁场数据,并将第一时刻的磁场数据发送给陀螺仪400。
陀螺仪400,用于根据接收到的第一时刻的加速度数据和第一时刻的磁场数据计算第一组四元数,以及根据第一时刻的加速度数据计算第一时刻的加速度值;判断第一时刻的加速度值是否在预设加速度值范围内;若加速度值在预设加速度值范围内,根据第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算陀螺仪的补偿系数和零偏值;使用补偿系数和零偏值补偿陀螺仪采集的第二时刻的角速度数据,获得陀螺仪补偿后的第二时刻的角速度数据。
需要说明的是,图2或图3所示的装置,图4所示的陀螺仪和图5所示的系统的各实施例与图1所示的方法的各实施例对应相同,上文已有详细说明,在此不再赘述。
综上所述,本发明的有益效果是:首先判断加速度传感器采集的加速度值是否在预设加速度值范围内,若判断为是,说明相比较存在累计误差的陀螺仪计算的四元数来说,利用加速度传感器和磁力计计算的四元数是比较准确的,然后根据比较准确的四元数获得陀螺仪的补偿系数和零偏值,该补偿系数和零偏值标定了陀螺仪当前的累计误差,使用该补偿系数和零偏值补偿陀螺仪的角速度数据,可以补偿陀螺仪的累积误差。可见,本发明的技术方案利用加速度传感器和磁力计采集的数据对陀螺仪角速度数据补偿,可以消除陀螺仪的累计误差,保证陀螺仪准确性,增强用户体验。
以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种补偿陀螺仪角速度数据的方法,其特征在于,所述方法包括:
根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据所述第一时刻的加速度数据计算第一时刻的加速度值;
判断所述第一时刻的加速度值是否在预设加速度值范围内;
若加速度值在预设加速度值范围内,根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值;
使用所述补偿系数和所述零偏值补偿所述陀螺仪采集的第二时刻的角速度数据,获得所述陀螺仪补偿后的第二时刻的角速度数据。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述陀螺仪采集的第一时刻的角速度数据计算第二组四元数;
将所述第一组四元数和所述第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;
根据所述第一时刻的四元数和所述陀螺仪补偿后的第二时刻的角速度数据,计算第二时刻的四元数。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
若加速度值不在预设加速度值范围内,则根据所述陀螺仪采集的第一时刻的角速度数据计算第二组四元数;
将所述第一组四元数和所述第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;
根据所述第一时刻的四元数和所述陀螺仪采集的第二时刻的角速度数据,计算第二时刻的四元数。
4.如权利要求1所述的方法,其特征在于,所述根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值包括:
根据所述第一组四元数和第一时刻的前一时刻的四元数,计算所述陀螺仪第一时刻的角速度数据;
根据所述陀螺仪计算出的第一时刻的角速度数据和采集的第一时刻的角速度数据,采用交叉逼近的方式计算所述陀螺仪的补偿系数和零偏值。
5.如权利要求4所述的方法,其特征在于,所述采用交叉逼近的方式计算所述陀螺仪的补偿系数和零偏值包括:
获取所述陀螺仪的当前补偿系数和当前零偏值;
查看记录的前一次计算补偿系数和零偏值时使用的已知量是当前补偿系数还是当前零偏值;
若记录的前一次计算补偿系数和零偏值时使用的已知量是所述当前补偿系数,则本次采用获取的所述当前零偏值作为已知量,计算所述陀螺仪的补偿系数,将所述当前零偏值作为所述陀螺仪的零偏值,并使用计算出的所述陀螺仪的补偿系数更新所述当前补偿系数;
若记录的前一次计算补偿系数和零偏值时使用的已知量是所述当前零偏值,则本次采用获取的所述当前补偿系数作为已知量,计算所述陀螺仪的零偏值,将所述当前补偿系数作为所述陀螺仪的补偿系数,并使用计算的所述陀螺仪的零偏值更新所述当前零偏值;
记录本次计算使用的已知量是当前补偿系数还是当前零偏值。
6.一种补偿陀螺仪角速度数据的装置,其特征在于,所述装置包括:
第一计算单元,用于根据加速度传感器采集的第一时刻的加速度数据和磁力计采集的第一时刻的磁场数据计算第一组四元数,以及根据所述加速度数据计算第一时刻的加速度值;
判断单元,用于判断所述第一时刻的加速度值是否在预设加速度值范围内;
第二计算单元,用于若加速度值在预设加速度值范围内,根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值;
补偿单元,用于使用所述补偿系数和所述零偏值补偿所述陀螺仪采集的第二时刻的角速度数据,获得所述陀螺仪补偿后的第二时刻的角速度数据。
7.如权利要求6所述的装置,其特征在于,
所述第一计算单元,还用于根据所述陀螺仪采集的第一时刻的角速度数据计算第二组四元数;
所述装置还包括:
四元数计算单元,用于将所述第一组四元数和所述第二组四元数按照预设的比例进行融合计算,获得第一时刻的四元数;根据所述第一时刻的四元数和所述陀螺仪补偿后的第二时刻的角速度数据,计算第二时刻的四元数。
8.一种补偿陀螺仪角速度数据的装置,其特征在于,所述装置包括存储器和处理器,所述存储器和所述处理器之间通过内部总线通讯连接,所述存储器存储有能够被所述处理器执行的计算机程序,所述计算机程序被所述处理器执行时能够实现权利要求1-5任意一项所述的方法步骤。
9.一种陀螺仪,其特征在于,所述陀螺仪包括如权利要求6-8任一项所述的补偿陀螺仪角速度数据的装置。
10.一种补偿陀螺仪角速度数据的系统,其特征在于,所述系统包括如权利要求9所述的陀螺仪、加速度传感器和磁力计;
所述加速度传感器,用于采集第一时刻的加速度数据,并将所述第一时刻的加速度数据发送给所述陀螺仪;
所述磁力计,用于采集第一时刻的磁场数据,并将所述第一时刻的磁场数据发送给所述陀螺仪;
所述陀螺仪,用于根据接收到的所述第一时刻的加速度数据和所述第一时刻的磁场数据计算第一组四元数,以及根据所述第一时刻的加速度数据计算第一时刻的加速度值;判断所述第一时刻的加速度值是否在预设加速度值范围内;若加速度值在预设加速度值范围内,根据所述第一组四元数和陀螺仪采集的第一时刻的角速度数据,计算所述陀螺仪的补偿系数和零偏值;使用所述补偿系数和所述零偏值补偿所述陀螺仪采集的第二时刻的角速度数据,获得所述陀螺仪补偿后的第二时刻的角速度数据。
CN201710947888.3A 2017-10-12 2017-10-12 一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统 Active CN107830871B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710947888.3A CN107830871B (zh) 2017-10-12 2017-10-12 一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710947888.3A CN107830871B (zh) 2017-10-12 2017-10-12 一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统

Publications (2)

Publication Number Publication Date
CN107830871A true CN107830871A (zh) 2018-03-23
CN107830871B CN107830871B (zh) 2020-10-27

Family

ID=61647888

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710947888.3A Active CN107830871B (zh) 2017-10-12 2017-10-12 一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统

Country Status (1)

Country Link
CN (1) CN107830871B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109631947A (zh) * 2018-12-28 2019-04-16 Tcl移动通信科技(宁波)有限公司 一种移动终端的旋转修正方法、存储介质及移动终端
CN110081879A (zh) * 2019-04-30 2019-08-02 大器物联科技(广州)有限公司 一种通过陀螺仪和磁场传感器精确检测回转的方法
CN110141240A (zh) * 2019-06-05 2019-08-20 河南理工大学 一种基于磁/惯性器件的脊柱测量仪
CN112378417A (zh) * 2020-10-27 2021-02-19 苏州臻迪智能科技有限公司 一种基于惯性测量单元的陀螺仪零偏获取方法及系统
CN112444269A (zh) * 2019-09-03 2021-03-05 纳恩博(北京)科技有限公司 角速度的调整方法及装置、存储介质、电子装置
CN112985383A (zh) * 2019-12-14 2021-06-18 北京原子机器人科技有限公司 基于相互补偿的多陀螺仪系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1422380A (zh) * 2000-02-03 2003-06-04 独立技术有限责任公司 用变更四元数数据表示对可倾斜物体中的方位角估算
US20120166082A1 (en) * 2010-12-22 2012-06-28 Custom Sensors & Technologies, Inc. Method and system for initial quaternion and attitude estimation
CN103221788A (zh) * 2010-11-08 2013-07-24 阿尔派回放股份有限公司 陀螺仪传感器的标定设备和方法
CN103940442A (zh) * 2014-04-03 2014-07-23 深圳市宇恒互动科技开发有限公司 一种采用加速收敛算法的定位方法及装置
CN106370178A (zh) * 2015-07-21 2017-02-01 阿里巴巴集团控股有限公司 移动终端设备的姿态测量方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1422380A (zh) * 2000-02-03 2003-06-04 独立技术有限责任公司 用变更四元数数据表示对可倾斜物体中的方位角估算
CN103221788A (zh) * 2010-11-08 2013-07-24 阿尔派回放股份有限公司 陀螺仪传感器的标定设备和方法
US20120166082A1 (en) * 2010-12-22 2012-06-28 Custom Sensors & Technologies, Inc. Method and system for initial quaternion and attitude estimation
CN103940442A (zh) * 2014-04-03 2014-07-23 深圳市宇恒互动科技开发有限公司 一种采用加速收敛算法的定位方法及装置
CN106370178A (zh) * 2015-07-21 2017-02-01 阿里巴巴集团控股有限公司 移动终端设备的姿态测量方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
SUH, Y. S.: "Orientation estimation using a quaternion-based indirect Kalman filter with adaptive estimation of external acceleration", 《IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT》 *
何昆鹏: "MEMS惯性器件参数辨识及系统误差补偿技术", 《中国博士学位论文全文数据库工程科技Ⅱ辑》 *
宋静: "基于磁强计、加速度计和陀螺原理的姿态测试算法研究", 《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》 *
李海涛: "加速度计/磁强计捷联惯导系统姿态解算方法研究", 《中国硕士学位论文全文数据库工程科技Ⅱ辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109631947A (zh) * 2018-12-28 2019-04-16 Tcl移动通信科技(宁波)有限公司 一种移动终端的旋转修正方法、存储介质及移动终端
CN110081879A (zh) * 2019-04-30 2019-08-02 大器物联科技(广州)有限公司 一种通过陀螺仪和磁场传感器精确检测回转的方法
CN110141240A (zh) * 2019-06-05 2019-08-20 河南理工大学 一种基于磁/惯性器件的脊柱测量仪
CN112444269A (zh) * 2019-09-03 2021-03-05 纳恩博(北京)科技有限公司 角速度的调整方法及装置、存储介质、电子装置
CN112985383A (zh) * 2019-12-14 2021-06-18 北京原子机器人科技有限公司 基于相互补偿的多陀螺仪系统
CN112378417A (zh) * 2020-10-27 2021-02-19 苏州臻迪智能科技有限公司 一种基于惯性测量单元的陀螺仪零偏获取方法及系统

Also Published As

Publication number Publication date
CN107830871B (zh) 2020-10-27

Similar Documents

Publication Publication Date Title
CN107830871A (zh) 一种补偿陀螺仪角速度数据的方法、装置、陀螺仪和系统
CN111873991B (zh) 一种车辆转向的控制方法、装置、终端及存储介质
CN107167131B (zh) 一种微惯性测量信息的深度融合与实时补偿的方法及系统
CN106482734A (zh) 一种用于imu多传感器数据融合的滤波方法
CN108318038A (zh) 一种四元数高斯粒子滤波移动机器人姿态解算方法
CN202974288U (zh) 一种微型捷联航姿系统
CN109491369B (zh) 车辆实际控制单元的性能评估方法、装置、设备和介质
CN106767804A (zh) 一种运动物体的多维数据测量装置及方法
CN102980577A (zh) 一种微型捷联航姿系统及其工作方法
CN202904027U (zh) 一种自主室内定位系统
CN101652631A (zh) 方位感测系统的自动校准
CN101326094A (zh) 基于转向组件角度及角速率传感器的车辆陀螺仪
CN106393104A (zh) 一种移动机器人的行程校准方法
CN102224395B (zh) 带有振动陀螺仪的陀螺仪系统的标定
CN107664498A (zh) 一种姿态融合解算方法及系统
CN105424040A (zh) 一种新型mems惯性传感器阵列余度配置方法
CN108195404A (zh) 一种陀螺仪零点漂移的校准方法
CN108534744A (zh) 一种姿态角获取方法、装置和手柄
CN103712598A (zh) 一种小型无人机姿态确定系统与确定方法
CN107830861A (zh) 基于自适应增益互补滤波运动物体姿态测量方法及装置
CN109632185A (zh) 一种大惯量转动部件动不平衡特性在轨估计方法
CN114179825A (zh) 多传感器融合获取量测值置信度方法及自动驾驶车辆
CN104121930B (zh) 一种基于加表耦合的mems陀螺漂移误差的补偿方法
CN104236533B (zh) 一种陀螺仪数据融合方法
CN108426584A (zh) 汽车多传感器的校准方法

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