CN108170050A - 一种基于Linux系统的高性能陀螺仪数据采集方法 - Google Patents

一种基于Linux系统的高性能陀螺仪数据采集方法 Download PDF

Info

Publication number
CN108170050A
CN108170050A CN201711393677.6A CN201711393677A CN108170050A CN 108170050 A CN108170050 A CN 108170050A CN 201711393677 A CN201711393677 A CN 201711393677A CN 108170050 A CN108170050 A CN 108170050A
Authority
CN
China
Prior art keywords
data acquisition
data
linux system
linux
method based
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
Application number
CN201711393677.6A
Other languages
English (en)
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.)
Heilongjiang Huida Technology Development Co Ltd
Original Assignee
Heilongjiang Huida Technology Development 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 Heilongjiang Huida Technology Development Co Ltd filed Critical Heilongjiang Huida Technology Development Co Ltd
Priority to CN201711393677.6A priority Critical patent/CN108170050A/zh
Publication of CN108170050A publication Critical patent/CN108170050A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24215Scada supervisory control and data acquisition

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于Linux系统的高性能陀螺仪数据采集方法,包含以下步骤:A、在Linux使用dma方式读取陀螺仪芯片的fifo数据;B、在每个dma中断后对所有的fifo数据打时间戳;C、通过共享内存方式映射到用户态。采用本发明的方法,能够同时兼有MPU及CPU两种方式的优点,提高基于Linux系统的陀螺仪数据采集性能,提高数据采集的实时性,对基于IMU的INS姿态计算精度有显著效果。

Description

一种基于Linux系统的高性能陀螺仪数据采集方法
技术领域
本发明涉及一种无人机、机器人领域,具体是一种基于Linux系统的高性能陀螺仪数据采集方法。
背景技术
目前无人机、机器人等领域中,使用的基本都是ARM架构的MPU或CPU,在测量机身姿态时,会采用IMU单元进行测量计算,存在以下几点问题:
1、MPU采集陀螺仪数据方式,虽然比较实时,但MPU主频低,且无OS或采用微内核OS,可维护性低;
2、CPU采集陀螺仪数据方式,采用Linux操作系统,可维护性较高,但是使用通用的POSIX设备读写接口进行数据采集,虽然CPU主频高,但是数据量多的情况会严重占用CPU使用率,且实时性差。
发明内容
本发明的目的在于提供一种基于Linux系统的高性能陀螺仪数据采集方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种基于Linux系统的高性能陀螺仪数据采集方法,包含以下步骤:
A、在Linux使用dma方式读取陀螺仪芯片的fifo数据;
B、在每个dma中断后对所有的fifo数据打时间戳;
C、通过共享内存方式映射到用户态。
作为本发明的进一步技术方案:所述fifo数据具体是:一组数据触发一次数据采集,且每个数据的时间间隔一致。
与现有技术相比,本发明的有益效果是:采用本发明的方法,能够同时兼有MPU及CPU两种方式的优点,提高基于Linux系统的陀螺仪数据采集性能,提高数据采集的实时性,对基于IMU的INS姿态计算精度有显著效果。
附图说明
图1为本发明的原理图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,一种基于Linux系统的高性能陀螺仪数据采集方法,包含以下步骤:
A、在Linux使用dma方式读取陀螺仪芯片的fifo数据;
B、在每个dma中断后对所有的fifo数据打时间戳;
C、通过共享内存方式映射到用户态。
fifo数据具体是:一组数据触发一次数据采集,且每个数据的时间间隔一致。
本发明的工作原理是:1、硬件结构采用arm cpu + 陀螺仪芯片;
2、使用Linux操作系统,并将陀螺仪芯片配置为fifo模式(一组数据触发一次数据采集,且每个数据的时间间隔一致),用于提高IO性能;
3、在Linux使用dma方式读取陀螺仪芯片的fifo数据,在每个dma中断后对所有的fifo数据打时间戳,通过共享内存方式映射到用户态,实现数据的实时性及降低CPU占用率的效果。
采用POSIX标准接口下的CPU占用率为25%,实时性为30ms。
采用本发明方法下的CPU占用率为2%,实时性为1ms。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (2)

1.一种基于Linux系统的高性能陀螺仪数据采集方法,其特征在于,包含以下步骤:
A、在Linux使用dma方式读取陀螺仪芯片的fifo数据;
B、在每个dma中断后对所有的fifo数据打时间戳;
C、通过共享内存方式映射到用户态。
2.根据权利要求1所述的一种基于Linux系统的高性能陀螺仪数据采集方法,其特征在于,所述fifo数据具体是:一组数据触发一次数据采集,且每个数据的时间间隔一致。
CN201711393677.6A 2017-12-21 2017-12-21 一种基于Linux系统的高性能陀螺仪数据采集方法 Pending CN108170050A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711393677.6A CN108170050A (zh) 2017-12-21 2017-12-21 一种基于Linux系统的高性能陀螺仪数据采集方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711393677.6A CN108170050A (zh) 2017-12-21 2017-12-21 一种基于Linux系统的高性能陀螺仪数据采集方法

Publications (1)

Publication Number Publication Date
CN108170050A true CN108170050A (zh) 2018-06-15

Family

ID=62522949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711393677.6A Pending CN108170050A (zh) 2017-12-21 2017-12-21 一种基于Linux系统的高性能陀螺仪数据采集方法

Country Status (1)

Country Link
CN (1) CN108170050A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111679923A (zh) * 2020-06-11 2020-09-18 北京经纬恒润科技有限公司 实时通信方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120110297A1 (en) * 2010-10-29 2012-05-03 Unisys Corp. Secure partitioning with shared input/output
CN105404598A (zh) * 2015-12-07 2016-03-16 中国电子科技集团公司第三十二研究所 实时数据采集系统及方法
CN107066395A (zh) * 2017-02-04 2017-08-18 上海市共进通信技术有限公司 基于Linux系统实现外设数据高速传输与处理的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120110297A1 (en) * 2010-10-29 2012-05-03 Unisys Corp. Secure partitioning with shared input/output
CN105404598A (zh) * 2015-12-07 2016-03-16 中国电子科技集团公司第三十二研究所 实时数据采集系统及方法
CN107066395A (zh) * 2017-02-04 2017-08-18 上海市共进通信技术有限公司 基于Linux系统实现外设数据高速传输与处理的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
魏效征、等: "综合导航信息融合系统的多串口设计方法", 《自动化与仪表》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111679923A (zh) * 2020-06-11 2020-09-18 北京经纬恒润科技有限公司 实时通信方法和系统
CN111679923B (zh) * 2020-06-11 2023-08-08 北京经纬恒润科技股份有限公司 实时通信方法和系统

Similar Documents

Publication Publication Date Title
US10646139B2 (en) Body movement tracking
CN110457414B (zh) 离线地图处理、虚拟对象显示方法、装置、介质和设备
JP6308306B2 (ja) ウエアラブルデバイスの着用状態の処理方法及び装置
CN106648088B (zh) 惯性运动捕捉姿态瞬时校准方法及其系统
US11669993B2 (en) Systems and methods for position and pose determination and tracking
CN105359054B (zh) 在空间中对设备进行定位和取向
US20120277890A1 (en) Method of Ball Game Motion Recognition, Apparatus for the same, and motion assisting device
Lin et al. Development of the wireless ultra-miniaturized inertial measurement unit WB-4: Preliminary performance evaluation
EP2359606A1 (en) Tracking system calibration with minimal user input
WO2017177582A1 (zh) 实现运动设备速度测量的方法和装置
WO2017086364A1 (ja) リンク列マッピング装置、リンク列マッピング方法、及びプログラム
CN110327048A (zh) 一种基于可穿戴式惯性传感器的人体上肢姿态重建系统
CN108170050A (zh) 一种基于Linux系统的高性能陀螺仪数据采集方法
CN107014381A (zh) Pld、dsp、组合导航系统、数据处理方法和装置
WO2019113374A1 (en) System for fusing acoustic and inertial position determination
CN111420391A (zh) 一种头戴显示系统及其空间定位方法
CN102538953A (zh) 一种电线塔振动频率监测方法及系统
Young et al. Distributed estimation of linear acceleration for improved accuracy in wireless inertial motion capture
CN208435653U (zh) 一种帕金森患者用手抖频率记录装置
CN102564570A (zh) 一种电线塔振幅监测方法及系统
CN203001823U (zh) 一种基于物联网和动作识别技术的健康促进系统
CN104516660B (zh) 一种信息处理方法、系统及电子设备
CN203139506U (zh) 一种基于动作识别技术的仰卧起坐训练辅助系统
TW201625905A (zh) 用於電子裝置的使用雙磁力儀的虛擬陀螺儀
US10162909B2 (en) Device placement automatic calculation apparatus

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