CN108255752A - Inertial measurement method, system and wear display equipment - Google Patents

Inertial measurement method, system and wear display equipment Download PDF

Info

Publication number
CN108255752A
CN108255752A CN201810040600.9A CN201810040600A CN108255752A CN 108255752 A CN108255752 A CN 108255752A CN 201810040600 A CN201810040600 A CN 201810040600A CN 108255752 A CN108255752 A CN 108255752A
Authority
CN
China
Prior art keywords
memory access
access controller
direct memory
measurement data
synchronization field
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
CN201810040600.9A
Other languages
Chinese (zh)
Other versions
CN108255752B (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.)
Shenzhen Skyworth New World Technology Co Ltd
Original Assignee
Shenzhen Skyworth New World Technology 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 Shenzhen Skyworth New World Technology Co Ltd filed Critical Shenzhen Skyworth New World Technology Co Ltd
Priority to CN201810040600.9A priority Critical patent/CN108255752B/en
Publication of CN108255752A publication Critical patent/CN108255752A/en
Application granted granted Critical
Publication of CN108255752B publication Critical patent/CN108255752B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality

Abstract

The present invention provides a kind of inertial measurement method, system and wears display equipment.The inertial measurement method is applied to inertial measurement system.The method includes:Microprocessor defines multiple synchronization fields, and high frequency reads the measurement data of Inertial Measurement Unit, measurement data with one of synchronization field in multiple synchronization fields is associated with, the measurement data with synchronization field is generated and is sent to push-up storage.Direct memory access controller moves the measurement data with synchronization field to shared drive from push-up storage.Central processing unit reads measurement data, and obtain pose according to measurement data according to the synchronization field of the measurement data with synchronization field from shared drive.The inertial measurement method, system and wear display equipment when reading measurement data, avoid User space and kernel state switching, interrupt processing and possible process scheduling, measurement data reading speed is improved, makes pose resolving that can meet requirement of real-time, and then improve tracking accuracy.

Description

Inertial measurement method, system and wear display equipment
Technical field
The present invention relates to data transmission, technical field of virtual reality, in particular to a kind of inertial measurement method, are Unite and wear display equipment.
Background technology
Inertial Measurement Unit (Inertial measurement unit, IMU) is to measure object three-axis attitude angle (or angle Rate) and acceleration device.Generally, an Inertial Measurement Unit contains three uniaxial accelerometers and three lists The gyroscope of axis is respectively used to measure the angular speed and acceleration of object in three dimensions, and the position of object is calculated with this Appearance.In addition, an Inertial Measurement Unit can also include three uniaxial magnetometers, for testing magnetic field intensity and direction, knot Accelerometer and gyro are closed, is calculated more accurately or comprising the more poses of information.At present, Inertial Measurement Unit is usually used in virtually existing Real head-wearing display device and augmented reality head-wearing display device to track head pose, be also commonly used in unmanned plane with acquisition nobody Seat in the plane appearance and realize flight navigation control and be usually used in NI Vision Builder for Automated Inspection combination vision measurement posture merge stablized Posture etc..
With virtual reality head-wearing display device, augmented reality head-wearing display device, unmanned plane and NI Vision Builder for Automated Inspection Development, it is higher and higher to the tracking accuracy and requirement of real-time of pose.And existing virtual reality head-wearing display device, enhancing are now Real head-wearing display device, unmanned plane and NI Vision Builder for Automated Inspection etc. are slow by Inertial Measurement Unit acquisition pose speed, can not meet Requirement of real-time, cause pose update not in time, tracking accuracy it is low.
Invention content
In view of this, the purpose of the present invention is to provide a kind of inertial measurement method, system and the heads of quick obtaining pose Display equipment is worn, to solve the above problems.
To achieve the above object, the present invention provides following technical solution:
Present pre-ferred embodiments provide a kind of inertial measurement method, applied to inertial measurement system, the inertia measurement System include microprocessor, Inertial Measurement Unit, push-up storage, direct memory access controller, shared drive and in Central processor, the method includes:
The microprocessor defines multiple synchronization fields, and high frequency reads the measurement data of the Inertial Measurement Unit, by institute It states measurement data to be associated with one of synchronization field in the multiple synchronization field, generates the measurement data with synchronization field And the measurement data with synchronization field is sent to the push-up storage;
The direct memory access controller is by the measurement data with synchronization field from the push-up storage It moves to the shared drive;
The central processing unit is according to the synchronization field of the measurement data with synchronization field from the shared drive Measurement data is read, and pose is obtained according to the measurement data.
Optionally, the direct memory access controller by the measurement data with synchronization field from the first in first out Memory, which was moved to the step of shared drive, to be included:
The central processing unit carries out initial configuration to the direct memory access controller;
The direct memory access controller is according to the initial configuration by the measurement data with synchronization field from institute Push-up storage is stated to move to the shared drive.
Optionally, the central processing unit to the direct memory access controller carry out initial configuration the step of include by The following steps that the central processing unit performs:
The shared drive is allocated, the physical memory of the chained list as the direct memory access controller obtains Take the physical address of the chained list of the direct memory access controller;
Obtain the physical address of the physical address of the register of the direct memory access controller and the register of clock;
It is virtual address by the physical address map of the register of the direct memory access controller;
It is virtual address by the physical address map of the register of the clock of the direct memory access controller;
Initialize the chained list of the direct memory access controller.
Optionally, the step of chained list of the initialization direct memory access controller is included by the central processing The following steps that device performs:
The chained list for defining the direct memory access controller includes at least two catenas;
Each catena includes four byte groups, is denoted as the first byte group, the second byte group, third byte group and the Quadlets;
The physical address of the push-up storage is stored in the first byte group;
The physical address of the shared drive is stored in the second byte group;
The entry address of next catena is stored in the third byte group;
The direct memory access controller is moved into control information deposit quadlets, wherein, it is described to move control Information processed includes moving direction, move bit wide and moving byte number every time.
Optionally, the method further includes:
The central processing unit sends the physics of the physical address of the chained list of the direct memory access controller, register The physical address of the register of address and clock is sent to the microprocessor;
The offset of the measurement data with synchronization field of Inertial Measurement Unit described in the microcomputer reads, with reference to described The physical address of the register of the physical address of the chained list of direct memory access controller, the physical address of register and clock, Generate updating the data for the chained list of the direct memory access controller;
Updating the data for the chained list of the direct memory access controller is sent to the advanced elder generation by the microprocessor Go out memory.
Optionally, after the direct memory access controller has moved the primary measurement data with synchronization field, institute Direct memory access controller is stated to move the measurement data with synchronization field to described from the push-up storage The step of shared drive, includes:
The direct memory access controller obtains the direct memory access controller from the push-up storage Chained list update the data the chained list for updating the direct memory access controller, obtain updated direct memory access control Device is configured;
The direct memory access controller is configured according to the updated direct memory access controller by the band The measurement data of synchronization field is moved from the push-up storage to the shared drive.
A kind of inertial measurement system, the inertial measurement system are deposited including microprocessor, Inertial Measurement Unit, first in first out Reservoir, direct memory access controller, shared drive and central processing unit;
For the microprocessor for defining multiple synchronization fields, high frequency reads the measurement data of the Inertial Measurement Unit, The measurement data with one of synchronization field in the multiple synchronization field is associated with, generates the measurement with synchronization field The measurement data with synchronization field is simultaneously sent to the push-up storage by data;
The direct memory access controller is used to deposit the measurement data with synchronization field from the first in first out Reservoir is moved to the shared drive;
The central processing unit is used for the synchronization field according to the measurement data with synchronization field out of described share Middle reading measurement data is deposited, and pose is obtained according to the measurement data..
One kind wears display equipment, and the display equipment of wearing includes the inertial measurement system described in claim 7.
Optionally, the display equipment of wearing is that virtual reality wears display equipment or augmented reality wears display equipment.
Inertial measurement method provided by the invention, system and display equipment is worn, be outer when transmitting inertia measurement data Portion's microprocessor actively reads the measurement data of external Inertial Measurement Unit and is sent to push-up storage, then by directly interior Access controller is deposited to move into system shared drive from push-up storage.Since shared drive is by central processing unit point Dispensing direct memory access controller, central processing unit then reads measurement data in User space, avoids User space and kernel State switching, interrupt processing and possible process scheduling, reduce overhead and time delay, accelerate measurement data reading speed, make position Appearance resolving can meet requirement of real-time, and then improve tracking accuracy.
Description of the drawings
It in order to illustrate the technical solution of the embodiments of the present invention more clearly, below will be to needed in the embodiment attached Figure is briefly described.It should be appreciated that the following drawings illustrates only certain embodiments of the present invention, therefore it is not construed as pair The restriction of range, for those of ordinary skill in the art, without creative efforts, can also be according to this A little attached drawings obtain other relevant attached drawings.
Fig. 1 is the block diagram of a kind of inertial measurement system that present pre-ferred embodiments provide.
Fig. 2 is the flow chart of a kind of inertial measurement method that present pre-ferred embodiments provide.
Fig. 3 is the flow chart of sub-step that step S3 includes in Fig. 2.
Fig. 4 is the flow chart of sub-step that sub-step S31 includes in Fig. 3.
Fig. 5 is the flow chart of sub-step that sub-step S319 includes in Fig. 4.
Fig. 6 is the flow chart of another inertial measurement method that present pre-ferred embodiments provide.
Fig. 7 is the flow chart of another seed step that step S3 includes in Fig. 6.
Icon:1- inertial measurement systems;10- Inertial Measurement Units;20- microprocessors;30- push-up storages;40- Direct memory access controller;50- shared drives;60- central processing units.
Specific embodiment
Present inventor is after the above problem is had found, to existing virtual reality head-wearing display device, augmented reality head It wears display device, unmanned plane and NI Vision Builder for Automated Inspection etc. and careful grind has been carried out by the process of Inertial Measurement Unit acquisition pose Study carefully.The study found that existing virtual reality head-wearing display device, augmented reality head-wearing display device, unmanned plane and machine vision System etc. obtains the measurement data of Inertial Measurement Unit, is that central processing unit is directly read by SPI, iic bus or usb bus The measurement data of Inertial Measurement Unit.
The basic procedure that central processing unit directly reads the measurement data of Inertial Measurement Unit by SPI or iic bus is: Application program (central processing unit) is by file system interface (such as read), and data are read in the driving to Inertial Measurement Unit, at this moment System enters kernel state by User space and waits for the measurement data of Inertial Measurement Unit ready.After Inertial Measurement Unit measurement data, By interrupt notification central processing unit, after central processing unit receives interruption, in kernel state, by SPI or iic bus to inertia Measuring unit reads data.After data are run through, system returns to User space by kernel state again, and the process that application program is once read is just complete Into.The process entirely read is related to User space and kernel state switching, interruption and interrupt processing and possible process scheduling, these Additional switching, interrupt processing and possible process scheduling both increases whole time delay.Using Inertial Measurement Unit as 1kHz's For refresh rate, system call timeslice minimum is set as 1ms.If reading data course is related to switching, interruption between not homomorphism Processing and possible process scheduling, then reading data procedures at least needs 1ms, along with data processing time (is surveyed by inertia The measurement data for measuring unit resolves pose, general only to need several~tens microsecond), the refresh rate of pose 1kHz can not be met.It can be with Find out, in the prior art, read data time much larger than processing data time.Therefore, existing virtual reality wears display dress It puts, that augmented reality head-wearing display device, unmanned plane and NI Vision Builder for Automated Inspection etc. obtain pose speed by Inertial Measurement Unit is slow The main reason for be:Central processing unit read Inertial Measurement Unit measurement data when, be related to User space and kernel state switching, Interrupt processing and possible process scheduling.These the additional switching of not homomorphism, interrupt processing and possible process schedulings increase Obtain the time delay of pose.
Central processing unit reads the measurement data of Inertial Measurement Unit by usb bus, if the side driven with kernel USB Formula equally exists the above problem.It is if real although most operation is moved on to User space in a manner that User space drives What data still were carried out in kernel state read in border, thus still remain User space and kernel state switch, interrupt processing and it is possible into Journey is dispatched, so still there are the above problems.
It should be noted that the defects of present in above scheme of the prior art, be that inventor is passing through practice and son Obtained after thin research as a result, therefore, the discovery procedure of the above problem and the hereinafter embodiment of the present invention are regarding to the issue above The solution proposed all should be the contribution that inventor makes the present invention in process of the present invention.
Below in conjunction with the attached drawing in the embodiment of the present invention, the technical solution in the embodiment of the present invention is carried out clear, complete Site preparation describes.Obviously, described embodiment is only the part of the embodiment of the present invention, instead of all the embodiments.It is logical The component for the embodiment of the present invention being often described and illustrated herein in the accompanying drawings can be configured to arrange and design with a variety of different.
Therefore, below the detailed description of the embodiment of the present invention to providing in the accompanying drawings be not intended to limit it is claimed The scope of the present invention, but be merely representative of the present invention selected embodiment.Based on the embodiment of the present invention, people in the art Member's all other embodiments obtained under the premise of creative work is not made, shall fall within the protection scope of the present invention.
It should be noted that:Similar label and letter represents similar terms in following attached drawing, therefore, once a certain Xiang Yi It is defined in a attached drawing, does not then need to that it is further defined and explained in subsequent attached drawing.In description of the invention In, term " first ", " second ", " third ", " the 4th " etc. are only used for distinguishing description, and it is not intended that being or implying opposite Importance.
It after above-mentioned in-depth analysis, please refers to Fig.1, Fig. 1 is a kind of inertia measurement that present pre-ferred embodiments provide The block diagram of system 1.The inertial measurement system 1 includes Inertial Measurement Unit 10, microprocessor 20, first in first out storage Device 30, direct memory access controller 40, shared drive 50 and central processing unit 60.The microprocessor 20, inertia measurement list Member 10, push-up storage 30, direct memory access controller 40, shared drive 50 and central processing unit 60 are straight between each other It connects or is electrically connected indirectly, to realize the transmission of data or interaction.For example, these elements can pass through one or more between each other Communication bus or signal wire, which are realized, to be electrically connected.
For the microprocessor 20 for defining multiple synchronization fields, high frequency reads the measurement number of the Inertial Measurement Unit 10 According to the measurement data with one of synchronization field in the multiple synchronization field is associated with, is generated with synchronization field The measurement data with synchronization field is simultaneously sent to the push-up storage 30 by measurement data.
Wherein, the microprocessor 20 may be, but not limited to, MPU.For example, the microprocessor 20 can also be general Processor, including central processing unit (Central Processing Unit, CPU), network processing unit (Network Processor, NP) etc. or digital signal processor (DSP)), application-specific integrated circuit (ASIC), field programmable gate array (FPGA), other programmable logic device, discrete gate, transistor logic, discrete hardware components etc..
The direct memory access controller 40 is used for the measurement data with synchronization field from the first in first out Memory 30 is moved to the shared drive 50.Wherein, push-up storage 30, i.e. First In First Out, FIFO, So that the measurement data with synchronization field being more first written, can more first be moved by direct memory access controller 40, so that The measurement data of Inertial Measurement Unit 10 can be moved shared drive 50 by time of measuring sequencing.
For moving the measurement data with synchronization field for the first time, the central processing unit 60 is needed to described directly interior It deposits access (Direct Memory Access, DMA) controller 40 and carries out initial configuration.Wherein, central processing unit 60 is to described The step of progress initial configuration of direct memory access controller 40, can include:The shared drive 50 is allocated, as The physical memory of the chained list of the direct memory access controller 40 obtains the chained list of the direct memory access controller 40 Physical address;Obtain the physical address of the register of the direct memory access controller 40 and direct memory access control The physical address of the register of the clock of device 40;By the physical address map of the register of the direct memory access controller 40 For virtual address;It is virtual address by the physical address map of the register of the clock of the direct memory access controller 40; Initialize the chained list of the direct memory access controller 40.
Wherein, the step of initializing the chained list of the direct memory access controller 40 is included by the central processing unit 60 The following steps of execution:
(1) chained list for defining the direct memory access controller 40 includes at least two catenas.Wherein, it defines at least The purpose of two catenas is the direct memory access controller 40 is removed the measurement data with synchronization field At least two positions of shared drive 50 are moved into, obtaining the band from shared drive 50 to 60 more time of central processing unit synchronizes The measurement data of field to avoid loss of data, reduces the probability for reading error.For example, when the direct memory access controls When the chained list of device 40 includes a catena, central processing unit 60 does not also read upper one with synchronization field from shared drive 50 During measurement data, the direct memory access controller 40 moves the new measurement data with synchronization field in shared It deposits 50 and overrides a measurement data with synchronization field, then lead to loss of data, read error.
(2) each catena includes four byte groups, is denoted as the first byte group, the second byte group, third byte group With quadlets.First byte group, the second byte group, the size of third byte group and quadlets are according to circumstances specifically set It puts.
(3) physical address of the push-up storage 30 is stored in the first byte group.
(4) physical address of the shared drive 50 is stored in the second byte group.
(5) entry address of next catena is stored in the third byte group.For example, the first byte group, the second word Section group, third byte group and quadlets are 4 bytes, then each catena includes 16 bytes.First chained list The entry address of item is dma_lli_phy, and the entry address of next catena is dma_lli_phy+16.For last A catena, without next catena, then third byte group is 0.
(6) direct memory access controller 40 is moved into control information deposit quadlets, wherein, it is described to remove Control information is moved to include moving direction, move bit wide and moving byte number every time.For example, 0x0f49202f represents that moving direction is From push-up storage 30 to shared drive 50, bit wide is moved as 4 bytes, and burst size are 8.The last one catena can Think 0x8f48002f, represent that last chained list closes to interrupt and (that is, direct memory access controller 40 is moved and is over, do not interrupt, no Bother central processing unit 60).
After central processing unit 60 carries out initial configuration to the direct memory access controller 40, the direct memory is visited Ask that controller 40 can store the measurement data with synchronization field from the first in first out according to the initial configuration Device 30 is moved to the shared drive 50.Direct memory access controller 40 is by the measurement data with synchronization field from described When push-up storage 30 is moved to the shared drive 50, it can move direct memory access controller 40 by instruction Synchronization field is completed within a bus cycles, i.e., moves synchronization field using atomic operation mode, it is ensured that the synchronization character moved Section is complete, to ensure that synchronization field matches with measurement data.
When needing to update the chained list of direct memory access control, the central processing unit 60 is additionally operable to send described direct The physical address of the chained list of internal storage access controller 40, the direct memory access controller 40 register physical address and The physical address of the register of the clock of the direct memory access controller 40 is sent to the microprocessor 20.Micro- place Reason device 20 is additionally operable to read the offset of the measurement data with synchronization field of the Inertial Measurement Unit 10, with reference to it is described directly in Deposit the physical address of the chained list of access controller 40, the physical address of the register of the direct memory access controller 40 and institute The physical address of the register of the clock of direct memory access controller 40 is stated, generates the direct memory access controller 40 Chained list updates the data.The microprocessor 20 is additionally operable to updating the data the chained list of the direct memory access controller 40 It is sent to the push-up storage 30.
It is described direct after the direct memory access controller 40 has moved the primary measurement data with synchronization field Internal storage access controller 40 can according to updated chained list by the measurement data with synchronization field from the first in first out Memory 30 is moved to the shared drive 50.It is specifically as follows, the direct memory access controller 40 is from the advanced elder generation Go out memory 30 and obtain the chained list of the direct memory access controller 40 to update the data the update direct memory access control The chained list of device 40 processed obtains updated direct memory access controller 40 and is configured.The direct memory access controller 40 It is configured according to the updated direct memory access controller 40 by the measurement data with synchronization field from the advanced elder generation Go out memory 30 to move to the shared drive 50.
The central processing unit 60 is used to be shared from described according to the synchronization field of the measurement data with synchronization field Measurement data is read in memory 50.When the central processing unit 60 reads measurement data from the shared drive 50, Ke Yitong Crossing instruction makes the reading of central processing unit 60 synchronization field be completed within a bus cycles, i.e., is read using atomic operation mode Take synchronization field, it is ensured that the synchronization field of reading is complete, to ensure that synchronization field matches with measurement data.
It is clear that virtual reality head-wearing display device, augmented reality head-wearing display device, unmanned plane and machine vision system System can include above-mentioned inertial measurement system 1.Specifically, present pre-ferred embodiments also provide one kind and wear display equipment, institute It states to wear and shows that equipment includes above-mentioned inertial measurement system 1.Optionally, it is described wear display equipment for virtual reality wear it is aobvious Show that equipment or augmented reality wear display equipment.
Referring to Fig. 2, present pre-ferred embodiments also provide a kind of inertial measurement method, applied to above-mentioned inertia measurement system System 1.The method includes:Step S1, step S3 and step S5.
Step S1, the microprocessor 20 define multiple synchronization fields, and high frequency reads the survey of the Inertial Measurement Unit 10 Data are measured, the measurement data is associated with one of synchronization field in the multiple synchronization field, generation band synchronization character The measurement data with synchronization field is simultaneously sent to the push-up storage 30 by the measurement data of section.
Step S3, the direct memory access controller 40 is by the measurement data with synchronization field from the advanced elder generation Go out memory 30 to move to the shared drive 50.
Optionally, referring to Fig. 3, in the present embodiment, step S3 includes sub-step S31 and sub-step S33.
Sub-step S31, the central processing unit 60 carry out initial configuration to the direct memory access controller 40.
Optionally, referring to Fig. 4, in the present embodiment, sub-step S31 includes the sub-step performed by central processing unit 60 S311, sub-step S313, sub-step S315, sub-step S317 and sub-step S319.
Sub-step S311 is allocated the shared drive 50, the chain as the direct memory access controller 40 The physical memory of table obtains the physical address of the chained list of the direct memory access controller 40;
Sub-step S313 obtains the deposit of the physical address and clock of the register of the direct memory access controller 40 The physical address of device;
Sub-step S315, by the physical address map of the register of the direct memory access controller 40 for virtually Location;
The physical address map of the register of the clock of the direct memory access controller 40 is void by sub-step S317 Intend address;
Sub-step S319 initializes the chained list of the direct memory access controller 40.
Optionally, referring to Fig. 5, in the present embodiment, sub-step S319 includes the sub-step performed by central processing unit 60 Rapid S3191, sub-step S3192, sub-step S3193, sub-step S3194, sub-step S3195 and sub-step S3196.
Sub-step S3191, the chained list for defining the direct memory access controller 40 include at least two catenas;
Sub-step S3192, each catena include four byte groups, are denoted as the first byte group, the second byte group, the Three byte groups and quadlets;
The physical address of the push-up storage 30 is stored in the first byte group by sub-step S3193;
The physical address of the shared drive 50 is stored in the second byte group by sub-step S3194;
The entry address of next catena is stored in the third byte group by sub-step S3195;
The direct memory access controller 40 is moved control information deposit quadlets by sub-step S3196, In, the control information of moving includes moving direction, move bit wide and moving byte number every time.
Sub-step S33, the direct memory access controller 40 is according to the initial configuration by described with synchronization field Measurement data is moved from the push-up storage 30 to the shared drive 50.
Referring to Fig. 6, optionally, when needing to update the chained list of direct memory access control, the method further includes step Rapid S6, step S7 and step S8.
Step S6, the central processing unit 60 send the chained list of the direct memory access controller 40 physical address, The physical address of the physical address of register and the register of clock is sent to the microprocessor 20.
Step S7, the microprocessor 20 read the inclined of the measurement data with synchronization field of the Inertial Measurement Unit 10 It moves, with reference to the deposit of the physical address of chained list of the direct memory access controller 40, the physical address of register and clock The physical address of device, the chained list for generating the direct memory access controller 40 update the data.
The updating the data for chained list of the direct memory access controller 40 is sent to by step S8, the microprocessor 20 The push-up storage 30.
The direct memory access controller 40 has moved the primary measurement number with synchronization field according to initial configuration According to rear, the direct memory access controller 40 can according to updated chained list by the measurement data with synchronization field from The push-up storage 30 is moved to the shared drive 50.Referring to Fig. 7, at this time step S3 include sub-step S35 and Sub-step S37.
Sub-step S35, the direct memory access controller 40 obtain described direct from the push-up storage 30 The chained list of internal storage access controller 40 updates the data the chained list for updating the direct memory access controller 40, after obtaining update Direct memory access controller 40 be configured.
Sub-step S37, the direct memory access controller 40 is according to the updated direct memory access controller 40 configurations move the measurement data with synchronization field to the shared drive 50 from the push-up storage 30.
Step S5, the central processing unit 60 is according to the synchronization field of the measurement data with synchronization field from described common It enjoys and measurement data is read in memory 50, and pose is obtained according to the measurement data.
Wherein, it can directly be solved according to the measurement data of Inertial Measurement Unit 10 to obtain pose according to the measurement data It calculates pose or is gone out according to the measurement data combination vision measurement or other measurement Combined Calculations of Inertial Measurement Unit 10 Pose.
Inertial measurement method that present pre-ferred embodiments provide and wears display equipment at system, in transmission inertia measurement It is that external microprocessor 20 actively reads the measurement data of external Inertial Measurement Unit 10 and is sent to first in first out and deposits during data Reservoir 30, then moved by direct memory access controller 40 from push-up storage 30 into system shared drive 50.Due to Shared drive 50 is to distribute to direct memory access controller 40 by central processing unit 60, and central processing unit 60 is then in User space Middle reading measurement data avoids User space and kernel state from switching, interrupt processing and possible process scheduling, reduce overhead and Time delay accelerates measurement data reading speed, makes pose resolving that can meet requirement of real-time, and then improve tracking accuracy.
Any feature disclosed in this specification (including any accessory claim, abstract and attached drawing), except non-specifically chatting It states, can be replaced by other alternative features that are equivalent or have similar purpose.That is, unless specifically stated, each feature is only It is an example in a series of equivalent or similar characteristics.
The foregoing is only a preferred embodiment of the present invention, is not intended to restrict the invention, for the skill of this field For art personnel, the invention may be variously modified and varied.All within the spirits and principles of the present invention, that is made any repaiies Change, equivalent replacement, improvement etc., should all be included in the protection scope of the present invention.

Claims (9)

1. a kind of inertial measurement method, which is characterized in that applied to inertial measurement system, the inertial measurement system includes micro- place Device, Inertial Measurement Unit, push-up storage, direct memory access controller, shared drive and central processing unit are managed, it is described Method includes:
The microprocessor defines multiple synchronization fields, and high frequency reads the measurement data of the Inertial Measurement Unit, by the survey Amount data are associated with one of synchronization field in the multiple synchronization field, are generated the measurement data with synchronization field and are incited somebody to action The measurement data with synchronization field is sent to the push-up storage;
The direct memory access controller moves the measurement data with synchronization field from the push-up storage To the shared drive;
The central processing unit is read according to the synchronization field of the measurement data with synchronization field from the shared drive Measurement data, and pose is obtained according to the measurement data.
2. inertial measurement method according to claim 1, which is characterized in that the direct memory access controller is by described in Measurement data with synchronization field, which is moved from the push-up storage to the step of shared drive, to be included:
The central processing unit carries out initial configuration to the direct memory access controller;
The direct memory access controller is according to the initial configuration by the measurement data with synchronization field from the elder generation It is moved into memory is first gone out to the shared drive.
3. inertial measurement method according to claim 2, which is characterized in that the central processing unit is to the direct memory Access controller carries out the step of initial configuration and includes the following steps that are performed by the central processing unit:
The shared drive is allocated, the physical memory of the chained list as the direct memory access controller, obtains institute State the physical address of the chained list of direct memory access controller;
Obtain the physical address of the physical address of the register of the direct memory access controller and the register of clock;
It is virtual address by the physical address map of the register of the direct memory access controller;
It is virtual address by the physical address map of the register of the clock of the direct memory access controller;
Initialize the chained list of the direct memory access controller.
4. inertial measurement method according to claim 3, which is characterized in that the initialization direct memory access control The step of chained list of device processed, includes the following steps that are performed by the central processing unit:
The chained list for defining the direct memory access controller includes at least two catenas;
Each catena includes four byte groups, is denoted as the first byte group, the second byte group, third byte group and the 4th word Section group;
The physical address of the push-up storage is stored in the first byte group;
The physical address of the shared drive is stored in the second byte group;
The entry address of next catena is stored in the third byte group;
The direct memory access controller is moved into control information deposit quadlets, wherein, it is described to move control letter Breath includes moving direction, move bit wide and moving byte number every time.
5. inertial measurement method according to claim 3 or 4, which is characterized in that the method further includes:
The central processing unit sends the physical address of the physical address of the chained list of the direct memory access controller, register The microprocessor is sent to the physical address of the register of clock;
The offset of the measurement data with synchronization field of Inertial Measurement Unit described in the microcomputer reads, with reference to described direct The physical address of the register of the physical address of the chained list of internal storage access controller, the physical address of register and clock, generation The chained list of the direct memory access controller updates the data;
Updating the data for the chained list of the direct memory access controller is sent to the first in first out and deposited by the microprocessor Reservoir.
6. inertial measurement method according to claim 5, which is characterized in that the direct memory access controller has been moved After the primary measurement data with synchronization field, the direct memory access controller is by the measurement number with synchronization field Include according to being moved from the push-up storage to the step of shared drive:
The direct memory access controller obtains the chain of the direct memory access controller from the push-up storage Table updates the data the chained list for updating the direct memory access controller, obtains updated direct memory access controller and matches It puts;
The direct memory access controller synchronizes the band according to the updated direct memory access controller configuration The measurement data of field is moved from the push-up storage to the shared drive.
7. a kind of inertial measurement system, which is characterized in that the inertial measurement system include microprocessor, Inertial Measurement Unit, Push-up storage, direct memory access controller, shared drive and central processing unit;
The microprocessor is for defining multiple synchronization fields, and high frequency reads the measurement data of the Inertial Measurement Unit, by institute It states measurement data to be associated with one of synchronization field in the multiple synchronization field, generates the measurement data with synchronization field And the measurement data with synchronization field is sent to the push-up storage;
The direct memory access controller is used for the measurement data with synchronization field from the push-up storage It moves to the shared drive;
The central processing unit is used for the synchronization field according to the measurement data with synchronization field from the shared drive Measurement data is read, and pose is obtained according to the measurement data.
8. one kind wears display equipment, which is characterized in that the display equipment of wearing includes the inertia measurement described in claim 7 System.
9. according to claim 8 wear display equipment, which is characterized in that the display equipment of wearing is virtual reality head It wears display equipment or augmented reality wears display equipment.
CN201810040600.9A 2018-01-16 2018-01-16 Inertial measurement method, system and wear display equipment Active CN108255752B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810040600.9A CN108255752B (en) 2018-01-16 2018-01-16 Inertial measurement method, system and wear display equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810040600.9A CN108255752B (en) 2018-01-16 2018-01-16 Inertial measurement method, system and wear display equipment

Publications (2)

Publication Number Publication Date
CN108255752A true CN108255752A (en) 2018-07-06
CN108255752B CN108255752B (en) 2019-11-12

Family

ID=62740908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810040600.9A Active CN108255752B (en) 2018-01-16 2018-01-16 Inertial measurement method, system and wear display equipment

Country Status (1)

Country Link
CN (1) CN108255752B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817322A (en) * 2020-12-31 2021-05-18 珠海紫燕无人飞行器有限公司 Head-mounted unmanned helicopter control system and control method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604088A (en) * 2004-11-17 2005-04-06 浙江大学 Fault collection and detection apparatus and method
JP2011114452A (en) * 2009-11-25 2011-06-09 Canon Inc Imaging apparatus
CN105426121A (en) * 2015-10-30 2016-03-23 山东科技大学 Method for storing measurement data of multiple ship-borne sensors together in real time
CN106776056A (en) * 2016-11-10 2017-05-31 北京像素软件科技股份有限公司 Game data processing method, device and server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604088A (en) * 2004-11-17 2005-04-06 浙江大学 Fault collection and detection apparatus and method
JP2011114452A (en) * 2009-11-25 2011-06-09 Canon Inc Imaging apparatus
CN105426121A (en) * 2015-10-30 2016-03-23 山东科技大学 Method for storing measurement data of multiple ship-borne sensors together in real time
CN106776056A (en) * 2016-11-10 2017-05-31 北京像素软件科技股份有限公司 Game data processing method, device and server

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
巫华菊等: ""基于ADXRS6XX陀螺仪高速数据采集系统的研究与设计"", 《漳州师范学院学报(自然科学版)》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817322A (en) * 2020-12-31 2021-05-18 珠海紫燕无人飞行器有限公司 Head-mounted unmanned helicopter control system and control method thereof

Also Published As

Publication number Publication date
CN108255752B (en) 2019-11-12

Similar Documents

Publication Publication Date Title
US20170243324A1 (en) Separate time-warping for a scene and an object for display of virtual reality content
CN106445130B (en) A kind of motion capture gloves and its calibration method for gesture identification
CN108351690A (en) Information processing unit, information processing system and information processing method
CN108604121A (en) Both hands object manipulation in virtual reality
US10642368B2 (en) Body posture detection system, suit and method
CN110169822A (en) Augmented reality navigation system and its application method for being used together with robotic surgical system
US20180335834A1 (en) Tracking torso orientation to generate inputs for computer systems
CN110140099A (en) System and method for tracking control unit
CN103649874A (en) Interface using eye tracking contact lenses
CN108292166A (en) Limited field in virtual reality
CN105807798B (en) A kind of head-wearing type intelligent glasses vibration control method and device
CN105359054A (en) Locating and orienting device in space
CN105388994A (en) Wearable watch and display method thereof
CN108318027A (en) The determination method and apparatus of the attitude data of carrier
CN104067318B (en) Use the Time Continuous collision detection of three dimensional rasterization
CN108267715A (en) Localization method and device, the virtual reality device and system of external equipment
CN108389264A (en) Coordinate system determines method, apparatus, storage medium and electronic equipment
CN109766882A (en) Label identification method, the device of human body luminous point
CN108388347A (en) Interaction control method and device in virtual reality and storage medium, terminal
CN110514228A (en) Small and micro-satellite navigation attitude measuring system dynamic comprehensive performance testing device and method
CN108255752B (en) Inertial measurement method, system and wear display equipment
CN107391005B (en) Method for controlling cursor movement on host screen and game handle
CN110431468B (en) Determining a position and orientation of a user's torso for a display system
CN108236782A (en) Localization method and device, the virtual reality device and system of external equipment
US10204420B2 (en) Low latency simulation apparatus and method using direction prediction, and computer program therefor

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