WO2015007001A1 - Data processing method for space mouse and control method for mouse pointer - Google Patents

Data processing method for space mouse and control method for mouse pointer Download PDF

Info

Publication number
WO2015007001A1
WO2015007001A1 PCT/CN2013/080985 CN2013080985W WO2015007001A1 WO 2015007001 A1 WO2015007001 A1 WO 2015007001A1 CN 2013080985 W CN2013080985 W CN 2013080985W WO 2015007001 A1 WO2015007001 A1 WO 2015007001A1
Authority
WO
WIPO (PCT)
Prior art keywords
space mouse
space
mouse
coordinate data
spatial coordinate
Prior art date
Application number
PCT/CN2013/080985
Other languages
French (fr)
Chinese (zh)
Inventor
龙涛
乔磊
滕敏
Original Assignee
江苏惠通集团有限责任公司
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 江苏惠通集团有限责任公司 filed Critical 江苏惠通集团有限责任公司
Publication of WO2015007001A1 publication Critical patent/WO2015007001A1/en

Links

Classifications

    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry

Definitions

  • the data processing method of the space mouse and the control method of the mouse pointer The present application claims to be submitted to the Chinese Patent Office on July 16, 2013, the application number is 201310298200.5, and the invention name is "the data processing method of the space mouse and the control method of the mouse pointer". Priority of the patent application, the entire contents of which is incorporated herein by reference.
  • TECHNICAL FIELD The present invention relates to the field of space mouse technologies, and in particular, to a data processing method for a space mouse and a method for controlling a mouse pointer.
  • BACKGROUND OF THE INVENTION At present, the positioning of computer mouse pointers is mostly realized by optical sensors or laser sensors, which are based on physical optical principles, so that the sensors need to be implemented by a platform such as a desktop.
  • the space mouse is an input device that operates the mouse pointer (screen cursor) like a traditional mouse, but does not need to be placed on any plane. In the air, it can directly control the mouse pointer by sensing the attitude of the air movement.
  • the inertial device is generally set in the space mouse, and the attitude of the motion carrier is tracked by the inertial device measurement technology.
  • the basic principle of the inertial tracking system is to measure the angular velocity and linear acceleration of the object motion using inertial devices such as gyro sensors and acceleration sensors based on the known initial position and attitude of the target, and then obtain the position of the object by integration. attitude.
  • inertial devices such as gyro sensors and acceleration sensors based on the known initial position and attitude of the target, and then obtain the position of the object by integration. attitude.
  • the present invention provides a data processing method for a space mouse, the space mouse comprising an inertial device adapted to acquire spatial coordinate data, the method comprising: recording a space collected last time before the inertial device is turned off Coordinate data; after the inertial device is re-opened, acquiring a compensation value of the current spatial coordinate, where the compensation value of the current spatial coordinate is a difference between the previously acquired spatial coordinate data and the recorded spatial coordinate data; The compensation value of the current spatial coordinate compensates the currently acquired spatial coordinate data to obtain an output value of the current spatial coordinate data.
  • the compensation value of the current spatial coordinate when the compensation value of the current spatial coordinate reaches the compensation threshold, the currently collected spatial coordinate data is no longer compensated.
  • the compensation threshold is 0.
  • the output value of the spatial coordinate data obtained for the first time after the inertial device is turned back on is discarded.
  • the amount of change in the displacement of the space mouse is obtained based on an output value of the spatial coordinate data.
  • the displacement variation includes: calculating the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • the obtaining the displacement change amount of the space mouse based on the output value of the spatial coordinate data comprises: receiving the coordinate output close command after receiving the coordinate output close command or receiving the coordinate output close command after receiving the coordinate output close command
  • the coordinate output open command calculates the displacement change amount of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data; if the coordinate output close command is received, the calculation of the displacement of the space mouse is stopped The amount of change; if the coordinate output open command is not received within the preset time range after receiving the coordinate output close command, the inertial device is turned off.
  • the spatial coordinate data collected by the inertial device is recorded within a preset time range after receiving the coordinate output close command.
  • the preset time range is greater than or equal to 5s.
  • the obtaining, by the output value of the spatial coordinate data, the displacement variation of the space mouse further comprises: discarding a displacement variation of the space mouse calculated by the inertia device after being restarted for the first time.
  • the obtaining the displacement change amount of the space mouse based on the output value of the spatial coordinate data further includes: after discarding the displacement variation of the space mouse calculated for the first time after the inertial device is re-opened, The data discard flag is set; the data discard flag is reset when the space mouse is initialized and when the inertial device is turned off.
  • the amount of change in the displacement of the space mouse is corrected based on the motion state of the space mouse.
  • the motion state of the space mouse is obtained by data of a gravity acceleration sensor, and the motion state includes motion in a horizontal state, motion in a vertical state, and motion in a side vertical state.
  • the correcting the displacement change of the space mouse based on the motion state of the space mouse comprises: if the space mouse moves in a horizontal state, maintaining the a displacement variation of the space mouse; if the space mouse moves in a vertical state, reducing a component of the displacement variation of the space mouse in the X direction and the y direction; if the space mouse moves in a side state, Then, the component of the displacement variation of the space mouse in the y direction is enlarged.
  • the components that reduce the displacement variation of the space mouse in the X direction and the y direction include:
  • the output value of the space coordinate data of the space mouse in the z direction is more Large, the smaller the amount of displacement of the space mouse in the X direction and the y direction is smaller, the smaller the output value of the spatial coordinate data of the space mouse in the z direction is, and the displacement variation of the space mouse is in the X direction.
  • the displacement variation of the space mouse is The component dx in the X direction is reduced to (f(z)/a) xdx, and the component dy of the displacement variation of the space mouse in the y direction is reduced to (f(z)/a) xdy, where f(z ) is the output value of the spatial coordinate data of the space mouse in the z direction, a is the attenuation coefficient, la 5.
  • reducing the component of the displacement variation of the space mouse in the X direction and the y direction further includes: if the reduced displacement of the space mouse is reduced
  • the components in the X direction and the y direction are larger than the component threshold, and the components in the X direction and the y direction of the displacement variation of the space mouse are set as the component threshold.
  • the component threshold is 100.
  • the component that magnifies the displacement variation of the space mouse in the y direction comprises: the larger the output value of the space coordinate data of the space mouse in the z direction, The smaller the degree of magnification of the displacement variation of the space mouse in the y direction, the larger the output value of the spatial coordinate data of the space mouse in the z direction, and the degree of component magnification of the displacement variation of the space mouse in the y direction. The bigger.
  • the component of the displacement change of the space mouse in the y direction is realized by: the displacement variation of the space mouse is in the y direction
  • the upper component dy is magnified as ( b / f(z) ) x dy , where f(z) is the output value of the spatial coordinate data of the space mouse in the z direction, b is the amplification factor, K b ⁇ 5
  • the technical solution of the present invention further provides a method for controlling a mouse pointer, comprising: acquiring a displacement variation of the space mouse by using a data processing method of a space mouse as described above; The displacement change amount controls the movement of the mouse pointer.
  • the technical solution of the present invention has the following advantages: after the inertial device is re-opened, the space coordinate data acquired before and the recorded inertial device are closed for the last time.
  • the difference value of the collected spatial coordinate data is used as a compensation value of the current spatial coordinate, and the currently collected spatial coordinate data is compensated.
  • Obtaining the output value of the current spatial coordinate data, after the inertial device is re-opened, after the above compensation process, the output value of the spatial coordinate and the spatial coordinate value acquired before the inertial device is turned off are in the same space coordinate system.
  • the problem that the spatial coordinate data caused by the initial point position is different after the re-opening of the inertial device has an error, so that the spatial coordinate data of the output is accurate and reliable.
  • FIG. 1 is a schematic diagram of a motion trajectory of a space mouse according to a first embodiment of the present invention
  • FIG. 2 is a schematic flowchart of a data processing method of a space mouse according to a first embodiment of the present invention
  • 4 is a schematic flow chart of a data processing method of a space mouse according to a third embodiment of the present invention
  • FIG. 5 is a schematic flowchart of a data processing method of a space mouse according to a fourth embodiment of the present invention
  • FIG. 7 is a flow chart of a data processing method for a space mouse according to Embodiment 6 of the present invention
  • FIG. 8 is a flow chart of a data processing method for a space mouse according to Embodiment 7 of the present invention
  • FIG. 9 is a flow chart showing a data processing method of a space mouse according to Embodiment 8 of the present invention.
  • the spatial coordinate data of the space mouse may be obtained by measuring parameter information such as the angular velocity measured by the gyro sensor, or the spatial coordinate data of the space mouse may be obtained by using parameter information such as linear acceleration measured by the gravity acceleration sensor, or The spatial coordinate data of the space mouse is obtained by combining the parameter information measured by the gyro sensor and the gravity acceleration sensor, and the method for obtaining the spatial coordinate data of the space mouse can be performed by using various methods known to those skilled in the art. , will not repeat them here.
  • the displacement variation of the space mouse can be obtained according to the spatial coordinate data twice before and after, and then converted into mouse pointer data by conversion calculation, such as a mouse on the display screen.
  • the amount of change in the plane coordinate or plane coordinate of the pointer completes the control of the mouse pointer by the space mouse. If the memory of the space mouse is allowed, the conversion process of the space coordinate data to the mouse pointer data can be performed inside the space mouse, and then the mouse pointer data is directly sent to the terminal, and then the terminal completes the movement of the mouse pointer on the display screen. control. In the process of obtaining spatial coordinate data based on the inertial device, obtaining the displacement variation of the space mouse, and finally obtaining the mouse pointer data, an error may occur in any stage. In the prior art, there is a displacement variation on the space mouse. The related techniques for calibration, but there is no complete and effective method to make the data obtained in each stage mentioned above accurate and effective.
  • the technical solution of the present invention provides a data processing method for a space mouse
  • the space mouse includes an inertial device adapted to acquire spatial coordinate data
  • the method includes: recording the last acquisition before the inertial device is turned off The spatial coordinate data; after the inertial device is re-opened, acquiring a compensation value of the current spatial coordinate, where the compensation value of the current spatial coordinate is a difference between the previously acquired spatial coordinate data and the recorded spatial coordinate data; The currently acquired spatial coordinate data is compensated by using the compensation value of the current spatial coordinate to obtain an output value of the current spatial coordinate data.
  • the currently collected spatial coordinate data is compensated, and the inertial device contained in the space mouse is closed by compensating the currently collected spatial coordinate data.
  • the currently acquired spatial coordinate data is in the same coordinate system as the spatial coordinate data acquired before the inertial device was last turned off, that is, the spatial coordinate system of the inertial device before being turned on again and before the last shutdown.
  • the zero coordinate (the coordinate origin of the spatial coordinate system) is coincident, so that the obtained spatial coordinate data is determined based on the same coordinate system, and the spatial coordinate data output by the mouse in the same position space is unique, and will not It varies depending on turning off or turning on the inertial device.
  • an iterative algorithm is used to make the inertial device coincide with the zero point coordinates (the coordinate origin of the coordinate system) of the coordinate system of the spatial coordinate data after the re-opening and before the last time the inertial device is turned off.
  • the spatial coordinate data of the space mouse is acquired by the inertial device, and the positions of the points (such as point L, ⁇ A, ⁇ ⁇ , point C) shown in the figure are each time.
  • the spatial coordinate data of the acquired space mouse is
  • trajectory a is the trajectory of the space mouse before the inertial device is turned off
  • point L is the position where the space mouse is located in the space before the inertial device is turned off
  • space coordinate data acquired by the inertial device at the point L is (X, y).
  • z here the space coordinate data of the point L is denoted as L(x, y, z)
  • the track b is the running track of the space mouse after the inertial device is re-opened
  • point A is the space mouse after the inertial device is turned back on.
  • the inertial device first collects the spatial coordinate data (xl, yl, zl) of the space mouse at point A, which is denoted as A (xl, yl, Zl), when the space mouse moves from point A to point B, the inertial device collects the spatial coordinate data (x2, y2, z2) of the space mouse at point B, which is denoted as B (x2, y2, z2), When the space mouse moves from point B to point C, the inertial device collects the spatial coordinate data (x3, y3, z3) of the space mouse at point C, which is denoted as C (x3, y3, z3), and so on. .
  • the inertial device compensates for the spatial coordinate data acquired at points, B, C, and subsequent points.
  • the spatial coordinate data acquired before and the spatial coordinate data collected last time before the inertial device is closed are used.
  • the difference compensates for the currently acquired spatial coordinate data. For example, during the operation of the space mouse, when the space mouse runs from point A to point B, it can be collected at the point L at the last time before the space coordinate data acquired at point A and the inertial device are turned off.
  • the difference of the spatial coordinate data compensates for the spatial coordinate data of the currently acquired point B. Specifically, the difference between the spatial coordinate data A (xl, yl, zl) of the point A and the spatial coordinate data L (x, y, z) of the point L, which is the point A and the point L, is first calculated.
  • the vector difference between the two here the difference is recorded as Am
  • the value of Am is used to compensate the spatial coordinate data B (x2, y2, z2) of the currently acquired point B, B (x2, y2) , z2 ) and the sum of A as the empty point B
  • the value compensated by the coordinate data that is, the final output value of the spatial coordinate data as point B, is denoted here as B (x2) L , y2 L , z2 L ).
  • the spatial coordinate data B (x2, y2, z2) of the point B and the point L are used.
  • the difference between the spatial coordinate data L (x, y, z) is compensated, and the spatial coordinate data B (x2, y2, z2) of point B and the spatial coordinate data L (x, y of point L) of point B are compensated.
  • the vector difference between z) is denoted by ⁇ , and the sum of C (x3, y3, z3) is used as the value compensated by the spatial coordinate data of point C, that is, the final output value of the spatial coordinate data as point C, Recorded here as C (x3 L , y3 L , z3, and so on, using the above iterative process to compensate the spatial coordinate data collected by each point in the running track after the inertial device is re-opened, as described above, the spatial coordinate data collected by the previous time (for example, A (xl , yl, zl)) and the difference between the last acquired spatial coordinate data (L (X, y, z)) before the inertial device is turned off (for example, A ) for the currently acquired spatial coordinate data (for example, B (x2, Y2, z2)) compensate to get the final output value of the current coordinate data of the current space (for example, B( x2 L , y2 L , Z2L)).
  • the spatial coordinate data collected by the previous time for point A, the last time before the inertial device is turned off
  • the difference between the acquired spatial coordinate data and the spatial coordinate data collected last time before the inertial device is turned off the difference is 0 in this calculation result
  • the space coordinate data collected at point A is compensated
  • the spatial coordinate data of point A is still problematic, so in the specific implementation, the space coordinate data A (xl, yl, zl) for point A can usually not be output. , which is The output value of the spatial coordinate data of point A is discarded.
  • the difference between the spatial coordinate data acquired before and the spatial coordinate data collected last time before the inertia device is turned off is gradually reduced, when the difference approaches 0, that is, When the compensation value of the currently collected spatial coordinate data approaches 0, it means that it is no longer necessary to compensate the currently acquired spatial coordinate data, that is, the coordinate system where the spatial coordinate data collected by the current inertial device is located and
  • the coordinate system in which the spatial coordinate data acquired before the inertial device was last turned off is basically in the same coordinate system, that is, the zero point coordinates of the coordinate system of the inertial device when re-opening and before the last shutdown are coincident.
  • step S201 is executed to record the spatial coordinate data collected last time before the inertial device is turned off.
  • step S202 is performed to obtain a compensation value of the current spatial coordinate after the inertial device is turned back on.
  • the compensation value of the current spatial coordinate is the difference between the previously acquired spatial coordinate data and the recorded spatial coordinate data.
  • step S203 is executed to discard the output value of the spatial coordinate data obtained for the first time after the inertial device is turned back on.
  • Step S204 is performed to compensate the currently collected spatial coordinate data by using the compensation value of the current spatial coordinate.
  • the currently acquired spatial coordinate data is added to the compensation value obtained in step S202 as the output value of the current spatial coordinate data.
  • Step S205 is performed, when the compensation value of the current spatial coordinate reaches the compensation threshold, the currently collected spatial coordinate data is no longer compensated.
  • the compensation threshold may be set according to the processing capability of the actual system and the specific requirements for the accuracy of the spatial coordinate data, and may be set to a threshold close to 0. In this embodiment, the compensation threshold is set to 0. . It can be seen by the embodiment that the method for obtaining the output value of the current spatial coordinate data by compensating the currently acquired spatial coordinate data can make the spatial coordinate data acquired by the inertial device re-opening and the previous shutdown.
  • Embodiment 2 This embodiment is a displacement change of a space mouse calculated for the first time after the inertia device is turned on in the process of obtaining the offset value of the spatial coordinate data after the compensation is obtained based on the first embodiment. The amount is filtered off. After the output value of the spatial coordinate data is obtained based on the first embodiment, the displacement variation of the space mouse can be obtained from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • the user often turns off the inertial device of the space mouse for a short time or a long time according to various practical use requirements.
  • the inertial device is reopened, there is a problem with the amount of displacement change at the initial point position. This is because the displacement variation is the difference between the currently acquired spatial coordinate data and the recorded previously acquired spatial coordinate data, and the spatial mouse system is used when the inertial device of the space mouse is turned off for a short time or a long time.
  • the last spatial coordinate data recorded by the system is the spatial coordinate data collected last time before the inertial device is turned off, and the inertial device is turned back on.
  • the spatial coordinate data acquired by the previous time is the spatial coordinate data collected last time before the inertial device is turned off, and the displacement variation of the space mouse calculated by the initial point position may be Problematic because inertial devices are usually turned off and on again It won't be in the same position or in a similar position.
  • the displacement variation of the space mouse calculated by the inertia device for the first time ie, the displacement change amount of the initial point position
  • the displacement variation of the space mouse does not exist as the problem of calculating the initial point position, so the displacement variation of the space mouse can be directly output.
  • step S301 is first performed to obtain an output value of the current spatial coordinate data.
  • Step S301 can refer to step S201 to step S205 of the first embodiment.
  • the output values of the current spatial coordinate data may also be obtained by using various methods in the prior art, without using the method for compensating the spatial coordinate data provided in steps S201 to S205 of the first embodiment.
  • Step S302 Calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • Step S303 determining whether the data discard flag is set.
  • a data discard flag may be preset to indicate whether the calculated displacement of the spatial mouse is discarded. This data discard flag is reset when the space mouse is initialized or when the inertial device is turned off. The amount of change in the displacement of the space mouse obtained after the first opening or reopening of the inertial device is required to be discarded, and the space calculated for the first time after the inertial device is first turned on or reopened is discarded. After the amount of change in the displacement of the mouse, the flag bit is discarded for the data. In this step, it is judged whether the data discard flag is set, and if so, step S305 is performed, otherwise step S304 is performed. Step S304, discarding the displacement change amount of the space mouse, and setting the data discard flag bit.
  • the displacement variation of the space mouse obtained by the first calculation after the inertial device is first turned on or re-opened is directly discarded, and no subsequent data is needed.
  • Reason When the data discard flag is not set, that is, in the case of reset, it indicates that the currently obtained packet data is the displacement of the space mouse that is calculated for the first time after the inertial device is first turned on or re-turned on.
  • the amount of change in the displacement of the spatial mouse obtained by the first calculation is problematic as described above, at which time the displacement variation of the current space mouse is discarded, and the data discard flag position is discarded.
  • the output value of the spatial coordinate data after the acquisition is continued, and the displacement change amount of the space mouse is calculated, that is, the process returns to step S301.
  • the output value of the previous spatial coordinate data can be set to 0 in advance, and the initial point is calculated.
  • Step S305 outputting a displacement variation of the space mouse.
  • the data discard flag indicates that the displacement of the space mouse that was calculated for the first time has been discarded after the inertial device is turned on. The displacement of the space mouse obtained at this time is correct, and can be directly The displacement variation of the space mouse is output for subsequent data processing.
  • Steps S301 to S305 of the present embodiment can be performed each time the inertial device acquires the spatial coordinate data.
  • the data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertia device is restarted; moreover, in this embodiment, the inertia is turned on.
  • the space mouse position calculated by the first calculation after the inertia device is turned on can be effectively avoided. There is an error in the amount of shift change, which leads to inaccurate subsequent data processing.
  • Embodiment 3 is an output value of the spatial coordinate data obtained after compensation according to the first embodiment, and the displacement variation of the space mouse according to different motion states of the space mouse during the process of obtaining the displacement variation of the space mouse Carry out the correction.
  • the displacement variation of the space mouse can be obtained from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • dx is the component of the displacement change amount in the X direction
  • dy is the component of the displacement change amount in the y direction.
  • the X direction corresponds to the horizontal direction of the screen
  • the y direction corresponds to the vertical direction of the screen
  • the z direction is perpendicular to the X direction and the y direction.
  • the rotation angle of the space mouse can be compensated by the data in the z direction, and the displacement changes dx and dy of the space mouse during the motion are obtained.
  • the data in the z direction is affected by the gravitational acceleration, and the gravitational acceleration is used as the reference point.
  • the value of the gravitational acceleration in the z direction is close to The zero point of the reference point of gravity acceleration, that is, the equivalent of no gravity acceleration for reference, the measured data in the z direction is error, the measured value will be larger, and a larger value is used for the space.
  • the rotation angle of the mouse is compensated, the displacement changes dx and dy of the space mouse during the motion are also large, and the more vertical the space mouse moves, the more the displacement changes dx and dy are. Big.
  • the displacement of the space mouse in the output direction is the component dx in the X direction and in the y direction due to the acceleration of gravity.
  • the value of the component dy on it may be error.
  • the displacement variation of the space mouse is corrected based on the motion state of the space mouse.
  • the motion state of the space mouse may be judged based on data of the gravity acceleration sensor, and the motion state may be motion in a horizontal state, motion in a vertical state, and motion in a side state.
  • step S401 is first executed to obtain the output value of the current spatial coordinate data.
  • Step S401 can refer to step S201 to step S205 of the first embodiment.
  • Step S402 calculating the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • the motion state of the current space mouse is judged according to the data of the gravity acceleration sensor.
  • the spatial acceleration data based on the gravity acceleration sensor can be obtained by the parameter information such as the linear acceleration measured by the gravity acceleration sensor, and the spatial coordinate based on the gravity acceleration sensor obtained at least twice before and after.
  • the data is used to determine the motion state of the current space mouse.
  • step S404 is performed to determine the current The space mouse moves in a horizontal state.
  • step S405 Determine the current space mouse is in the vertical state Exercise.
  • the displacement variation of the space mouse is corrected. Specifically, if the space mouse moves in a horizontal state, no correction may be performed; if the space mouse moves in a vertical state, when the spatial coordinate data of the space mouse has a larger output value in the z direction, The smaller the degree of reduction of the displacement of the spatial mouse in the X direction and the y direction, the smaller the output value of the spatial coordinate data of the space mouse in the z direction (ie, the more vertical the space mouse), the space mouse The amount of displacement change is larger in the X direction and the y direction; if the space mouse moves in the side state, when the spatial mouse data of the space mouse has a larger output value in the z direction, the space mouse The smaller the degree of magnification of the displacement change amount in the y direction is, the larger the output value of the spatial mouse of the space mouse is in the y direction.
  • step S404 When it is determined in step S404 that the current space mouse is in a horizontal state, the steps are performed.
  • the spatial mouse displacement variation obtained by the step S402 can be directly corrected without any correction.
  • step S405 When it is determined in step S405 that the current space mouse is in a vertical state, the steps are performed.
  • the component for reducing the displacement variation of the space mouse in the X direction and the y direction is implemented by: the displacement variation of the space mouse is on the X side.
  • the upward component dx is reduced to (f(z)/a) xdx
  • the component dy of the spatial mouse displacement variation in the y direction is reduced to (f(z)/a) xdy, where f(z) is The data of the spatial coordinate data based on the gravity acceleration sensor in the z direction
  • a is the attenuation coefficient, la 5.
  • a component threshold may also be set in advance for controlling the degree of dx and dy reduction.
  • a component threshold corresponding to dx and dy may be preset, and if the component of the spatial variation of the displacement of the reduced space in the X direction is greater than a component threshold corresponding to dx, And a component of the displacement variation of the space mouse in the X direction is forcibly set to the component threshold corresponding to dx; if the reduced displacement of the space mouse, the component of the displacement in the y direction is greater than a component corresponding to dy
  • the threshold value forcibly sets a component of the displacement variation of the space mouse in the y direction to the component threshold corresponding to dy.
  • step S409 is performed to enlarge the component of the displacement variation of the space mouse in the y direction.
  • the gravity acceleration will have the greatest influence on the motion in the y direction. Compared with the data in the z direction, this is equivalent to making a reference with a larger gravity acceleration.
  • the data value in the direction is relatively small.
  • the displacement dy of the space mouse during the motion is also small.
  • the dy is appropriately amplified, that is, the component of the displacement variation of the space mouse in the y direction is enlarged.
  • the component for amplifying the displacement variation of the space mouse in the y direction is realized by: the component dy of the displacement variation of the space mouse in the y direction is enlarged to (b/f ( z) ) xdy, where f(z) is the data in the z direction based on the spatial coordinate data of the gravitational acceleration sensor, and b is the amplification factor, lb 5.
  • Step S410 is executed to output a displacement change amount of the space mouse.
  • Steps S401 to S410 of the present embodiment can be performed each time the inertial device acquires the spatial coordinate data.
  • the data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened.
  • the displacement variation of the output space mouse is different due to the motion state (horizontal, vertical, and lateral). The motion in the state generates different errors.
  • Embodiment 4 is a displacement of a space mouse which is calculated for the first time after the inertial device is turned on in the process of obtaining the displacement value of the spatial coordinate data after the compensation is obtained based on the first embodiment. The amount of change is filtered out, and then the amount of displacement of the space mouse is corrected according to the different motion states of the space mouse. As shown in FIG. 5, step S501 is performed first, and the output value of the current spatial coordinate data is obtained. For example, refer to step S201 to step S205 of the first embodiment.
  • step S502 is executed to calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • step S503 and step S504 are performed, and steps S303 and S304 of the second embodiment can be referred to.
  • step S505 to step S511 are performed.
  • Step S512 is executed to output the displacement change amount of the space mouse.
  • the corrected displacement amount of the space mouse is output as the final value. It should be noted that, after the determination result in step S503 is YES and before step S505 is performed, or after step S509, S510 or S511 is performed and before step S512 is performed, some existing pairs may be further adopted according to actual application situations.
  • the displacement change amount dx, dy is corrected or compensated to eliminate the influence of other factors on the displacement variation of the space mouse, which can make the displacement variation of the mouse in the final output space more accurate.
  • the data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened.
  • the data processing method of the space mouse of the embodiment can also effectively avoid the problem that the displacement variation of the space mouse obtained by the first calculation after the inertia device is turned on and the displacement of the output space mouse due to the gravity acceleration.
  • the amount of change causes an error due to the difference in motion state.
  • Embodiment 5 This embodiment is an output value of the spatial coordinate data obtained after compensation according to the first embodiment, and in the process of obtaining the displacement variation of the space mouse, the space mouse is turned off for a short time but the inertial device is not turned off. Data processing performed below.
  • a coordinate output close command for turning off the coordinate output function can be issued by a specific key operation on the space mouse to control the space mouse to pause to the receiving terminal (such as a computer that controls the movement of the mouse pointer on the screen).
  • the device transmits coordinate data (such as the displacement of the space mouse or the output value of the spatial coordinate data), but does not turn off the inertial device at this time, that is, the inertial device still collects the spatial coordinate data of the space mouse without interruption.
  • the system can automatically turn off the inertial device of the space mouse.
  • the system performs compensation and calculation, it requires a certain amount.
  • the system consumes, and the coordinate data does not need to be output in a short time when the coordinate output is turned off.
  • the compensation calculation in a short time may cause unnecessary system consumption.
  • the compensation of the spatial coordinate data and the calculation of the displacement variation of the space mouse may not be performed to reduce the consumption of the system.
  • the data processing method of the space mouse of the embodiment continues to collect the space coordinate data and record it when receiving the coordinate output close command, but The displacement variation of the space mouse is not calculated. If the coordinate output enable command is received again within the preset time range, the space may be directly calculated from the currently acquired spatial coordinate data and the recorded previous spatial coordinate data. The displacement variation of the mouse can quickly and accurately obtain the displacement variation of the space mouse.
  • the preset time range should be a reasonable time range. If the setting is too short, the inertial device may be turned off and on frequently, thereby causing unnecessary system consumption; if the setting is too long, the system does not need to output.
  • the acquisition and recording of spatial coordinate data also results in system consumption.
  • the preset time range is set to 5s.
  • the data processing method of the space mouse of the embodiment shown in FIG. 6 first performs step S601 to obtain an output value of the current spatial coordinate data.
  • Step S602 and step S603 are performed to calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data, and then output the displacement variation of the space mouse.
  • Step S604 is executed to determine whether a coordinate output close command is received.
  • Step S605 The system determines in real time whether a coordinate output close command is received, and if yes, performs the step S605; if no, continue to calculate and output the displacement change amount of the space mouse from the spatial coordinate data, that is, return to step S601.
  • Step S605 recording spatial coordinate data collected by the inertial device. Since the coordinate output close command has been received at this time, it is not necessary to calculate the displacement variation of the space mouse, and the spatial coordinate data collected by the inertial device is recorded to receive the coordinate output again within the preset time range. When the command is turned on, the displacement variation of the space mouse can be directly calculated from the spatial coordinate data recorded last time.
  • Step S606 is performed to determine whether a coordinate output enable command is received.
  • step S607 is executed to determine that the coordinate output close command is continued. Whether the time exceeds 5s. If the result of the determination in step S607 is YES, that is, the coordinate output enable command is not received within 5 seconds, step S608 is executed to close the inertial device of the space mouse; if the result of the determination in step S607 is no, step S609 is performed to collect the current The space coordinate data is then executed in step S605 to record the spatial coordinate data acquired by the inertial device.
  • the data processing method of the space mouse of the embodiment can stop the compensation of the spatial coordinate data and the calculation and output of the displacement variation of the space mouse within the preset time range after receiving the coordinate output close command, thereby reducing the system power consumption; And continuously recording the spatial coordinate data collected by the inertial device within a preset time range, so that when the coordinate output open command is received again within the preset time range, the spatial coordinate data collected by the recorded inertial device can be quickly, Accurately calculate the displacement variation of the space mouse.
  • Embodiment 6 is an output value of the spatial coordinate data obtained after compensation according to the first embodiment, and the displacement variation of the space mouse according to different motion states of the space mouse in the process of obtaining the displacement variation of the space mouse Make corrections and target the space mouse for a short time Data processing with the coordinate output turned off without turning off the inertial device.
  • step S701 is first executed to obtain an output value of the current spatial coordinate data. Reference may be made to the first step S201 to the step S205.
  • Step S702 is executed to calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • Step S703 and step S704 are performed to correct the displacement variation of the space mouse according to different motion states of the space mouse.
  • Step S705 is executed to output a displacement change amount of the space mouse.
  • Steps S706 to S711 are performed to perform data processing for the space mouse to close the coordinate output in a short time without turning off the inertial device.
  • the data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened.
  • the data processing method of the space mouse of the present embodiment can also effectively avoid the problem that the displacement variation of the output space mouse is caused by the difference in the motion state due to the gravity acceleration.
  • Embodiment 7 This embodiment is a displacement of a space mouse which is calculated for the first time after the inertial device is turned on in the process of obtaining the displacement value of the spatial coordinate data after the compensation is obtained based on the first embodiment. The amount of change is filtered out, and then the data processing is performed with the space mouse turning off the coordinate output for a short time without turning off the inertial device.
  • step S801 is first performed to obtain an output value of the current spatial coordinate data.
  • step S201 to step S205 of Embodiment 1 may be referred to.
  • Step S802 calculating a displacement variation amount of the space mouse from an output value of the current spatial coordinate data and an output value of the previous spatial coordinate data.
  • step S803 and step S804 are performed, and steps S303 and S304 of the second embodiment can be referred to.
  • step S805 is performed to output the displacement variation amount of the space mouse.
  • Steps S806 to S811 are performed, and data processing is performed for the space mouse to close the coordinate output in a short time but the inertia device is not turned off.
  • Step S604 to Step S609 The data processing method of the space mouse of the present embodiment not only effectively solves the problem that the spatial coordinate data of the output is misaligned due to the difference in the position of the zero point after the inertial device is turned on again.
  • the data processing method of the space mouse of the embodiment can also effectively avoid the problem that the displacement variation of the space mouse obtained by the first calculation after the inertia device is turned on, and the coordinate output of the space mouse is closed for a short time but not When the inertia device is turned off for data processing, the system power consumption can be effectively reduced, and the displacement variation of the space mouse can be obtained quickly and accurately.
  • the displacement variation of the space mouse calculated for the first time after the inertial device is turned on is performed. Filter out, and then modify the displacement variation of the space mouse according to the different motion states of the space mouse, and perform data processing for the space mouse to close the coordinate output in a short time without turning off the inertial device.
  • step S901 is first executed to obtain an output value of the current spatial coordinate data. Reference may be made to the first step S201 to the step S205.
  • Step S902 Calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data.
  • Step S903 and step S904 are performed to filter out the data of the initial point position of the displacement variation of the space mouse. Reference may be made to steps S303 and S304 of the second embodiment. Then, according to the different motion states of the space mouse, the displacement variation of the space mouse is corrected. Specifically, step S905 and step S906 are performed. For details, refer to the third step S403 to step S409.
  • Step S907 is executed to output a displacement change amount of the space mouse.
  • Steps S908 to S913 are performed to perform data processing for the space mouse to close the coordinate output in a short time without turning off the inertial device.
  • Step S604 to Step S609 The data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened. Moreover, the data processing method of the space mouse of the embodiment can also effectively avoid the problem that the displacement variation of the space mouse obtained by the first calculation after the inertia device is turned on and the displacement of the output space mouse due to the gravity acceleration. The amount of change causes an error due to the difference in motion state.
  • the technical solution of the present invention further provides a method for controlling a mouse pointer, wherein the method uses the data processing method of the space mouse to acquire the displacement variation of the space mouse, and controls the movement of the mouse pointer according to the displacement variation of the space mouse. .

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Input By Displaying (AREA)

Abstract

A data processing method for a space mouse and a control method for a mouse pointer. The space mouse comprises an inertial device which is suitable for collecting space coordinate data. The data processing method for a space mouse comprises: recording space coordinate data which is collected at the last time before an inertial device is closed; after the inertial device is restarted, acquiring a compensation value of current space coordinates, the compensation value of the current space coordinates being the difference value of the space coordinate data which is collected at the previous time and the recorded space coordinate data; and using the compensation value of the current space coordinates to compensate the currently collected space coordinate data, so as to obtain an output value of the current space coordinate data. The technical solution of the present invention can effectively solve the problem that the space coordinate data output by a space mouse has an error, so that the space coordinate data output by the space mouse is accurate and reliable, and the locating accuracy of the space mouse is improved.

Description

空间鼠标的数据处理方法以及鼠标指针的控制方法 本申请要求 2013 年 7 月 16 日提交中国专利局、 申请号为 201310298200.5、 发明名称为 "空间鼠标的数据处理方法以及鼠标指 针的控制方法 "的中国专利申请的优先权, 其全部内容通过引用结合 在本申请中。 技术领域 本发明涉及空间鼠标技术领域,尤其涉及一种空间鼠标的数据处 理方法以及鼠标指针的控制方法。 背景技术 目前,计算机鼠标指针的定位大多数都依靠光学传感器或激光传 感器来实现, 这些传感器都基于物理光学原理, 使得传感器需要依靠 桌面等平台来实现。 但是在很多场合, 例如在计算机多媒体教学中, 用户想在空中操控鼠标指针或是通过在空中操控鼠标指针来实现多 媒体电视播放、 网页浏览等应用, 仅使用传统的传感器就无法实现, 于是空间鼠标应运而生。 空间鼠标是一种输入设备, 像传统鼠标一样 操作鼠标指针(屏幕光标), 但却不需要放在任何平面上, 在空中晃 动就能直接依靠空中运动姿态的感知实现对鼠标指针的控制。要实现 空中运动姿态的感知, 一般在空间鼠标中设置惯性器件, 利用惯性器 件测量技术实现对运动载体姿态的跟踪。 惯性跟踪系统的基本原理是在目标初始位置和姿态已知的基础 上, 依据惯性原理, 利用陀螺仪传感器、 加速度传感器等惯性器件测 量物体运动的角速度和直线加速度,然后通过积分获得物体的位置和 姿态。 但是在实际使用的过程中, 当关闭空间鼠标后就无法再检测到所 述空间鼠标的运动过程, 而在所述空间鼠标再次开启时, 它的坐标零 点就无法和关闭空间鼠标前的坐标零点重合, 这是因为, 空间鼠标的 初始点, 即坐标零点是由空间鼠标的系统假设的, 在每次开启所述空 间鼠标时, 系统重新确定坐标零点, 而所述重新确定的坐标零点是 4艮 难与上次关闭空间鼠标前的坐标零点重合的,此时所述空间鼠标的初 始点就会有问题, 以此为基础获得的空间鼠标的空间坐标就会有误 差, 并进而确定的所述空间鼠标的位置和姿态就会有误差, 鼠标定位 就会有误差。 相关技术可参考公开号为 US2009295729A1的美国专利申请,该 专利申请公开了一种空间定位的具体实现。 发明内容 本发明解决的问题是空间鼠标输出的空间坐标数据存在误差的 问题。 为解决上述问题, 本发明提供一种空间鼠标的数据处理方法, 所 述空间鼠标包括适于采集空间坐标数据的惯性器件, 所述方法包括: 记录所述惯性器件关闭前最后一次采集到的空间坐标数据;在所述惯 性器件重新开启后, 获取当前空间坐标的补偿值, 所述当前空间坐标 的补偿值为前一次采集到的空间坐标数据和所记录的空间坐标数据 的差值;采用所述当前空间坐标的补偿值对当前采集到的空间坐标数 据进行补偿, 以获得当前空间坐标数据的输出值。 可选的, 当所述当前空间坐标的补偿值达到补偿阈值, 则不再对 当前采集到的空间坐标数据进行补偿。 可选的, 所述补偿阈值为 0。 可选的,丢弃所述惯性器件重新开启后第一次获得的空间坐标数 据的输出值。 可选的,基于所述空间坐标数据的输出值获得所述空间鼠标的位 移变化量。 可选的,所述基于所述空间坐标数据的输出值获得所述空间鼠标 的位移变化量包括: 由当前空间坐标数据的输出值和前一次空间坐标 数据的输出值计算所述空间鼠标的位移变化量。 可选的,所述基于所述空间坐标数据的输出值获得所述空间鼠标 的位移变化量包括:若未接收到坐标输出关闭命令或在接收到坐标输 出关闭命令后预设时间范围内接收到坐标输出开启命令,则由当前空 间坐标数据的输出值和前一次空间坐标数据的输出值计算所述空间 鼠标的位移变化量; 若接收到坐标输出关闭命令, 则停止计算所述空 间鼠标的位移变化量;若在接收到坐标输出关闭命令后预设时间范围 内未接收到坐标输出开启命令, 则关闭所述惯性器件。 可选的,在接收到坐标输出关闭命令后预设时间范围内记录所述 惯性器件采集的空间坐标数据。 可选的, 所述预设时间范围大于或等于 5s。 可选的,所述基于所述空间坐标数据的输出值获得所述空间鼠标 的位移变化量还包括:丢弃所述惯性器件重新开启后第一次计算得到 的空间鼠标的位移变化量。 可选的,所述基于所述空间坐标数据的输出值获得所述空间鼠标 的位移变化量还包括:在丢弃所述惯性器件重新开启后第一次计算得 到的空间鼠标的位移变化量后, 对数据丢弃标志位置位; 所述数据丢 弃标志位在空间鼠标初始化时和惯性器件关闭时复位。 可选的,基于所述空间鼠标的运动状态, 修正所述空间鼠标的位 移变化量。 可选的,所述空间鼠标的运动状态由重力加速度传感器的数据获 得, 所述运动状态包括水平状态下的运动、垂直状态下的运动和侧立 态下的运动。 可选的, 所述基于所述空间鼠标的运动状态, 修正所述空间鼠标 的位移变化量包括: 若所述空间鼠标在水平状态下运动, 则保持所述 空间鼠标的位移变化量; 若所述空间鼠标在垂直状态下运动, 则缩小 所述空间鼠标的位移变化量在 X方向和 y方向上的分量;若所述空间 鼠标在侧立状态下运动,则放大所述空间鼠标的位移变化量在 y方向 上的分量。 可选的, 所述若所述空间鼠标在垂直状态下运动, 缩小所述空间 鼠标的位移变化量在 X方向和 y方向上的分量包括: 空间鼠标的空间 坐标数据在 z方向的输出值越大,所述空间鼠标的位移变化量在 X方 向和 y方向上的分量缩小程度越小, 空间鼠标的空间坐标数据在 z方 向的输出值越小,所述空间鼠标的位移变化量在 X方向和 y方向上的 分量缩小程度越大。 可选的, 所述若所述空间鼠标在垂直状态下运动, 缩小所述空间 鼠标的位移变化量在 X方向和 y方向上的分量通过下述方式实现: 所述空间鼠标的位移变化量在 X方向上的分量 dx缩小为( f(z)/a ) xdx,所述空间鼠标的位移变化量在 y方向上的分量 dy缩小为( f(z)/a ) xdy, 其中, f(z)是空间鼠标的空间坐标数据在 z 方向的输出值, a 为衰减系数, l a 5。 可选的, 所述若所述空间鼠标在垂直状态下运动, 缩小所述空间 鼠标的位移变化量在 X方向和 y方向上的分量还包括:若缩小后的所 述空间鼠标的位移变化量在 X方向和 y方向上的分量大于分量阈值, 则将所述空间鼠标的位移变化量在 X方向和 y方向上的分量设置为所 述分量阈值。 可选的, 所述分量阈值为 100。 可选的, 所述若所述空间鼠标在侧立状态下运动, 放大所述空间 鼠标的位移变化量在 y方向上的分量包括: 空间鼠标的空间坐标数据 在 z方向的输出值越大,所述空间鼠标的位移变化量在 y方向上的分 量放大程度越小, 空间鼠标的空间坐标数据在 z方向的输出值越大, 所述空间鼠标的位移变化量在 y方向上的分量放大程度越大。 可选的, 所述若所述空间鼠标在侧立状态下运动, 放大所述空间 鼠标的位移变化量在 y方向上的分量通过下述方式实现:所述空间鼠 标的位移变化量在 y方向上的分量 dy放大为( b/ f(z) )x dy ,其中, f(z) 是空间鼠标的空间坐标数据在 z方向的输出值, b为放大系数, K b < 5„ 为了解决上述技术问题,本发明技术方案还提供一种鼠标指针的 控制方法, 其特征在于, 包括: 采用如上所述的空间鼠标的数据处理 方法获取所述空间鼠标的位移变化量;根据所述空间鼠标的位移变化 量控制鼠标指针的移动。 与现有技术相比, 本发明的技术方案具有以下优点: 在惯性器件重新开启后,采用前一次采集到的空间坐标数据和记 录的惯性器件关闭前最后一次采集到的空间坐标数据的差值作为所 述当前空间坐标的补偿值, 对当前采集到的空间坐标数据进行补偿, 获得当前空间坐标数据的输出值的方法,可以使得惯性器件重新开启 后, 经过上述补偿过程, 将空间坐标的输出值和关闭所述惯性器件前 所采集的空间坐标值处于同一个空间坐标体系中,有效解决重新开启 惯性器件后由于初始点位置的不同,所导致的空间坐标数据存在误差 的问题, 使得输出的空间坐标数据精确和可靠。 在可选方案中, 在所述惯性器件开启后, 丢弃第一次计算得到的 空间鼠标的位移变化量,可以有效避免因第一次计算得到的空间鼠标 的位移变化量存在误差而导致后续数据处理不准确的问题。 在可选方案中, 在接收到坐标输出关闭命令后, 在预设时间范围 内继续记录所述惯性器件采集的空间坐标数据,停止计算所述空间鼠 标的位移变化量,则在预设时间范围内再次收到坐标输出开启命令的 时候, 就可以根据所述记录的惯性器件采集的空间坐标数据快速、 准 确获得所述空间鼠标的位移变化量的输出值。 在可选方案中, 根据所述空间鼠标的运动状态, 爹正空间鼠标的 位移变化量, 可以准确获得所述空间鼠标的位移变化量。 附图说明 图 1是本发明实施例一的空间鼠标的运动轨迹示意图; 图 2是本发明实施例一的空间鼠标的数据处理方法的流程示意 图; 图 3 是本发明实施例二的空间鼠标的数据处理方法的流程示意 图; 图 4是本发明实施例三的空间鼠标的数据处理方法的流程示意 图; 图 5 是本发明实施例四的空间鼠标的数据处理方法的流程示意 图; 图 6是本发明实施例五的空间鼠标的数据处理方法的流程示意 图; 图 7 是本发明实施例六的空间鼠标的数据处理方法的流程示意 图; 图 8 是本发明实施例七的空间鼠标的数据处理方法的流程示意 图; 图 9是本发明实施例八的空间鼠标的数据处理方法的流程示意 图。 具体实施方式 空间鼠标在正常使用时, 要先打开空间鼠标和终端的电源开关, 待空间鼠标和终端之间的无线通信链路建立后,空间鼠标就进入了工 作状态。 具体的, 空间鼠标进入工作状态后首先由惯性器件采集空间 坐标数据, 其中惯性器件可以是陀螺仪传感器或重力加速度传感器, 可以通过陀螺仪传感器测量得到的角速度等参数信息而得到所述空 间鼠标的空间坐标数据,也可以通过重力加速度传感器测量得到的直 线加速度等参数信息而得到所述空间鼠标的空间坐标数据,也可以通 过结合陀螺仪传感器以及重力加速度传感器测量得到的参数信息得 到所述空间鼠标的空间坐标数据,所述得到所述空间鼠标的空间坐标 数据的方法可以采用本领域技术人员所知晓的多种方法进行,在此不 再赘述。 终端接收到空间鼠标的空间坐标数据后, 根据前后两次的所 述空间坐标数据可以获得所述空间鼠标的位移变化量,然后通过转换 计算将其转换为鼠标指针数据,如显示屏幕上的鼠标指针的平面坐标 或平面坐标的变化量, 就完成了空间鼠标对鼠标指针的控制。 如果空 间鼠标的内存允许,还可以将空间坐标数据到鼠标指针数据的转换过 程放在空间鼠标内部执行, 然后直接将鼠标指针数据发送给终端, 再 由终端完成对鼠标指针在显示屏幕上的移动控制。 在基于惯性器件得到空间坐标数据、得到空间鼠标的位移变化量 以及最终得到鼠标指针数据的过程中,在任何一个阶段中都可能会产 生误差, 现有技术中, 有对空间鼠标的位移变化量进行校正的相关 技术, 但并没有一个完整、有效的方法可以使得上述各个阶段所得到 的数据都准确和有效。 上述过程中, 在基于惯性器件得到空间坐标数据是存在误差的。 这是因为, 在每次开启惯性器件时(所述开启惯性器件是指使惯性器 件处于工作状态,通过所述惯性器件可以采集空间鼠标的空间坐标数 据), 系统需要重新确定空间鼠标的初始点, 即需要重新确定坐标零 点, 而所述坐标零点是由空间鼠标系统假设的, 重新确定的坐标零点 是 4艮难与上次关闭惯性器件前的坐标零点重合的。而对于空间的任意 一点, 它的空间坐标数据 (即绝对坐标数据 )应该是基于同一个坐标 系确定的, 应该是唯一的, 不应该由于关闭或者开启惯性器件而有所 不同。 现有技术中并没有对此进行处理, 所以由于每次开启惯性器件 所确定的空间坐标的初始点的不同,会导致以不同的空间坐标的初始 点为基础获得的惯性器件的空间坐标数据就会有误差,导致在得到空 间鼠标各个阶段的数据中都会存在误差, 使得空间鼠标定位不准确。 而且, 空间鼠标在运动的过程中, 由于受到地球重力加速度的影响, 其本身在输出数据的过程中, 也会存在误差, 同样会导致鼠标定位不 准确的问题产生。 为解决上述问题,本发明技术方案提供一种空间鼠标的数据处理 方法, 所述空间鼠标包括适于采集空间坐标数据的惯性器件, 所述方 法包括: 记录所述惯性器件关闭前最后一次采集到的空间坐标数据; 在所述惯性器件重新开启后, 获取当前空间坐标的补偿值, 所述当前 空间坐标的补偿值为前一次采集到的空间坐标数据和所记录的空间 坐标数据的差值;采用所述当前空间坐标的补偿值对当前采集到的空 间坐标数据进行补偿, 以获得当前空间坐标数据的输出值。 为使本发明的上述目的、特征和优点能够更为明显易懂, 下面结 合附图对本发明的具体实施例做详细的说明。 实施例一 在本实施例中, 在空间鼠标重新开启后, 对当前采集到的空间坐 标数据进行补偿, 通过对当前采集到的空间坐标数据的补偿, 使得在 空间鼠标所含有的惯性器件由关闭状态到再次打开后, 当前采集到的 空间坐标数据和上次关闭惯性器件前所采集到的空间坐标数据处于 同一个坐标系中,即使得惯性器件在再次打开和上次关闭前的空间坐 标系的零点坐标(空间坐标系的坐标原点)重合在一起, 这样就使得 得到的空间坐标数据是基于同一个坐标系确定的,对于同一个位置空 间鼠标所输出的空间坐标数据是唯一的,不会由于关闭或者开启惯性 器件而有所不同。 在本实施例中,采用迭代的算法使得惯性器件在重新开启后和上 次关闭惯性器件前获取空间坐标数据的坐标系的零点坐标(坐标系的 坐标原点)重合在一起。 如图 1所示, 在空间鼠标运行的过程中, 通过惯性器件采集空间 鼠标的空间坐标数据, 图中所示的点 (如点 L、 Λ A, Λ Β, 点 C) 的位置就是每次采集到的空间鼠标的空间坐标数据。假设轨迹 a是惯 性器件关闭前的空间鼠标的运行轨迹,其中, 点 L为所述惯性器件关 闭前空间鼠标最后位于空间的位置,在点 L处惯性器件采集的空间坐 标数据为(X, y, z ), 在此将点 L的空间坐标数据记为 L( x, y, z ) , 假设轨迹 b是惯性器件重新开启后的空间鼠标的运行轨迹, 点 A为 惯性器件重新开启后空间鼠标运动的起始点位置,在空间鼠标从点 A 开始运行时, 惯性器件首先采集所述空间鼠标在点 A处的空间坐标 数据(xl, yl, zl), 在此记为 A (xl, yl, zl ), 空间鼠标由点 A运 动到点 B时, 惯性器件采集所述空间鼠标在点 B处的空间坐标数据 (x2, y2, z2), 在此记为 B (x2, y2, z2), 在空间鼠标由点 B运动 到 C点时,惯性器件采集所述空间鼠标在点 C处的空间坐标数据( x3, y3, z3), 在此记为 C (x3, y3, z3 ), 依次类推。 为了使惯性器件在重新开启后和上次关闭惯性器件前获取空间 坐标数据的坐标系的零点坐标重合在一起,需要对所述惯性器件每次 所采集到的空间坐标数据进行补偿, 即需要对惯性器件在点 、 B、 C以及后续的各点所采集的空间坐标数据进行补偿, 在本实施例中, 利用前一次采集的空间坐标数据和惯性器件关闭前最后一次采集到 的空间坐标数据的差值对当前采集到的空间坐标数据进行补偿。 举例来说, 在空间鼠标运行的过程中, 当空间鼠标由点 A运行 到点 B的时候, 可以用前一次在点 A采集的空间坐标数据和惯性器 件关闭前在最后一次在点 L采集到的空间坐标数据的差值对当前采 集到的点 B的空间坐标数据进行补偿。 具体地, 首先计算点 A的空 间坐标数据 A (xl, yl, zl )和点 L的空间坐标数据 L ( x, y, z) 之间的差值, 所述差值为点 A和点 L之间的矢量差值, 在此将所述 差值记为 Am ,用 Am的值对当前采集到的点 B的空间坐标数据 B( x2, y2, z2)进行补偿, 将 B (x2, y2, z2 )和 A 的和值作为点 B的空 间坐标数据补偿后的值, 即作为点 B的空间坐标数据的最终输出值, 在此记为 B ( x2L, y2L, z2L )。 在所述空间鼠标继续从点 B运行到点 C的时候, 可以用前一次 在点 B采集的空间坐标数据和惯性器件关闭前在最后一次在点 L采 集到的空间坐标数据的差值对当前采集到的点 C 的空间坐标数据进 行补偿, 在对点 C的空间坐标数据 C (x3, y3, z3)进行补偿时, 用 点 B的空间坐标数据 B (x2, y2, z2)和点 L的空间坐标数据 L (x, y, z)之间的差值对其进行补偿, 将点 B的空间坐标数据 B (x2, y2, z2)和点 L的空间坐标数据 L (x, y, z)之间的矢量差值记为 ΔΜ, 将 C (x3, y3, z3)和 的和值作为点 C的空间坐标数据补偿后的 值, 即作为点 C的空间坐标数据的最终输出值, 在此记为 C (x3L, y3L, z3 依次类推,采用上述迭代的过程依次对惯性器件重新开启后运行 轨迹中的各点所采集到的空间坐标数据进行补偿, 如上所述, 由前一 次采集的空间坐标数据(例如 A (xl, yl, zl))和惯性器件关闭前 最后一次采集到的空间坐标数据 (L (X, y, z)) 的差值(例如 A ) 对当前采集到的空间坐标数据(例如 B (x2, y2, z2))进行补偿, 以获得当前空间当前坐标数据的最终输出值 (例如 B( x2L, y2L, Z2L))。 需要说明的是, 通过上述迭代过程可以看出, 对于初始点 A 的 空间坐标数据, 由于 A (xl, yl, zl)是惯性器件重新开启后第一次 采集到的空间坐标数据,其前一次采集的空间坐标数据实际是惯性器 件关闭前最后一次采集到的空间坐标数据, 如果用上述补偿的方法, 由前一次采集的空间坐标数据(对于 A点而言, 即为惯性器件关闭 前最后一次采集到的空间坐标数据 )和惯性器件关闭前最后一次采集 到的空间坐标数据的差值(所述差值在此计算结果为 0 )对在 A点采 集到的空间坐标数据进行补偿, 则相当于没有对 A点的空间坐标数 据进行补偿, A点的空间坐标数据仍是有问题的,所以在具体实施时, 对于点 A的空间坐标数据 A (xl, yl, zl)通常可以不进行输出, 即 丢弃点 A的空间坐标数据的输出值。 在上述迭代的过程中,如果由前一次采集的空间坐标数据和惯性 器件关闭前最后一次采集到的空间坐标数据的差值逐渐的缩小,当所 述差值趋近于 0的时候,即对当前所采集到的空间坐标数据的补偿值 趋近于 0的时候,说明不再需要对当前所采集到的空间坐标数据进行 补偿,即说明当前惯性器件所采集的空间坐标数据所在的坐标系和上 次关闭所述惯性器件前所采集的空间坐标数据所在的坐标系基本上 处于同一个坐标系,即惯性器件在重新开启时和上次关闭前的坐标系 的零点坐标重合在一起,此时输出的惯性器件所采集的空间坐标数据 误差已基本上消除,可以直接将惯性器件所采集的空间坐标数据作为 空间坐标数据的输出值。 基于上述说明, 本实施例提供的空间鼠标的数据处理方法如图 2 所示, 首先执行步骤 S201 ,记录所述惯性器件关闭前最后一次采集到 的空间坐标数据。 执行步骤 S202, 在所述惯性器件重新开启后, 获取当前空间坐标 的补偿值。 所述当前空间坐标的补偿值为前一次采集到的空间坐标数据和 所记录的空间坐标数据的差值。 执行步骤 S203 ,丢弃所述惯性器件重新开启后第一次获得的空间 坐标数据的输出值。 执行步骤 S204,采用所述当前空间坐标的补偿值对当前采集到的 空间坐标数据进行补偿。 将当前采集到的空间坐标数据加上在步骤 S202中得到的补偿值 作为当前空间坐标数据的输出值。 执行步骤 S205 , 当所述当前空间坐标的补偿值达到补偿阈值, 则 不再对当前采集到的空间坐标数据进行补偿。 所述补偿阈值可以根据实际系统的处理能力以及对于空间坐标 数据精确性的具体要求进行设定, 可以设定为一个接近于 0的一个阈 值, 在本实施例中, 所述补偿阈值设置为 0。 通过本实施例可以看出,通过对当前采集到的空间坐标数据进行 补偿, 获得当前空间坐标数据的输出值的方法, 可以使得惯性器件重 新开启后所采集到的空间坐标数据和前一次关闭所述惯性器件前所 采集的空间坐标数据处于同一个空间坐标体系中,有效解决了重新开 启惯性器件后由于零点位置的不同,所导致的输出的空间坐标数据存 在误差的问题, 使得采集到的空间坐标数据精确和可靠。 实施例二 本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 对惯性器件开启后第一次 计算得到的空间鼠标的位移变化量进行滤除。 在基于实施例一获得空间坐标数据的输出值后,可以由当前空间 坐标数据的输出值和前一次空间坐标数据的输出值获得空间鼠标的 位移变化量。 在实际应用中, 用户经常会根据各种实际使用需求, 短时间或者 长时间关闭空间鼠标的惯性器件。但在重新打开惯性器件的时候, 初 始点位置的位移变化量就会有问题。这是因为所述位移变化量是由当 前采集到的空间坐标数据和所记录的前一次采集的空间坐标数据的 差值, 而在短时间或者长时间关闭空间鼠标的惯性器件时, 空间鼠标 系统在惯性器件关闭的这段时间是无法检测到惯性器件的运动过程 的,系统所记录的最后的空间坐标数据是在所述惯性器件关闭前最后 一次采集到的空间坐标数据, 在惯性器件重新开启时, 对于初始点位 置而言,其前一次采集的空间坐标数据为所述惯性器件关闭前最后一 次采集到的空间坐标数据,由此计算出的初始点位置的空间鼠标的位 移变化量可能是有问题的,因为惯性器件在关闭和重新开启时通常都 不会是处于同一位置或相近位置的。 在本实施例中, 在惯性器件开启后, 丢弃所述惯性器件开启后第 一次计算得到的空间鼠标的位移变化量(即上述初始点位置的位移变 化量), 而由于在此之后计算得到的空间鼠标的位移变化量不存在如 计算初始点位置时的问题,所以可以直接输出所述空间鼠标的位移变 化量。 图 3是本实施例提供的空间鼠标的数据处理方法的流程示意图, 如图 3所示, 首先执行步骤 S301 , 获得当前空间坐标数据的输出值。 步骤 S301可以参考实施例一步骤 S201至步骤 S205。在其他实施例 中,也可以采用现有技术中的多种方法获得当前空间坐标数据的输出 值,而不采用如实施例一步骤 S201至步骤 S205所提供的对空间坐标数 据进行补偿的方法获得当前空间坐标数据的输出值。 步骤 S302 ,由当前空间坐标数据的输出值和前一次空间坐标数据 的输出值计算空间鼠标的位移变化量。 步骤 S303 , 判断数据丢弃标志位是否置位。 在本实施例中, 可以预先设置一个数据丢弃标志位, 用于标示计 算得到的空间鼠标的位移变化量是否被丢弃,此数据丢弃标志位在空 间鼠标初始化时或者惯性器件关闭时复位。在惯性器件第一次开启或 重新开启后的第一次计算得到的空间鼠标的位移变化量是需要丢弃 的,在丢弃所述惯性器件第一次开启或重新开启后第一次计算得到的 空间鼠标的位移变化量后, 对所述数据丢弃标志位置位。 在此步骤中, 判断数据丢弃标志位是否置位, 如果是, 则执行步 骤 S305 , 否则执行步骤 S304。 步骤 S304,丢弃所述空间鼠标的位移变化量,对数据丢弃标志位 置位。 也就是说, 对于惯性器件第一次开启或重新开启后的第一次计 算得到的空间鼠标的位移变化量直接丢弃,不需要进行后续的数据处 理。 在数据丢弃标志位没有被置位的时候, 即复位的情况下, 标志着 当前得到的这包数据就是惯性器件第一次开启或者是重新开启后,第 一次计算得到的空间鼠标的位移变化量, 而所述第一次计算得到的空 间鼠标的位移变化量如上所述是有问题的,此时丢弃所述当前空间鼠 标的位移变化量, 并对数据丢弃标志位置位。 在丢弃第一次计算得到的空间鼠标的位移变化量后,继续获取之 后的空间坐标数据的输出值, 并计算所述空间鼠标的位移变化量, 即 返回执行步骤 S301。 需要说明的是, 在空间鼠标初始化(第一次开启空间鼠标) 时, 不存在前一次空间坐标数据的输出值, 此时, 可以预先设置前一次空 间坐标数据的输出值为 0, 计算初始点位置的位移变化量时, 可以用 当前空间坐标数据的输出值和 0的差值, 即用当前空间坐标数据的输 出值作为第一次计算得到的空间鼠标的位移变化量, 在此步骤中, 丢 弃所述第一次计算得到的空间鼠标的位移变化量,并对数据丢弃标志 位置位。 步骤 S305 , 输出所述空间鼠标的位移变化量。 在数据丢弃标志位被置位的时候, 标志着惯性器件开启后, 第一 次计算得到的空间鼠标的位移变化量已被丢弃,此时得到的空间鼠标 的位移变化量为正确的, 可以直接输出所述空间鼠标的位移变化量, 以进行后续的数据处理。 在惯性器件每次采集空间坐标数据后都可以执行本实施例的步 骤 S301至 S305。本实施例的空间鼠标的数据处理方法, 不仅有效解决 重新开启惯性器件后由于零点位置的不同,所导致的输出的空间坐标 数据存在误差的问题; 而且, 在本实施例中, 在开启了惯性器件后, 通过在得到空间鼠标的位移变化量时先滤除初始点位置的位移变化 量,可以有效避免因开启惯性器件后第一次计算得到的空间鼠标的位 移变化量存在误差而导致后续数据处理不准确的问题。 实施例三 本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 根据空间鼠标的不同的运 动状态, 对空间鼠标的位移变化量进行爹正。 在基于实施例一获得空间坐标数据的输出值后,可以由当前空间 坐标数据的输出值和前一次空间坐标数据的输出值获得空间鼠标的 位移变化量, 在现有技术中, 为解决各种因素对空间鼠标的数据处理 准确性的影响, 已有多种对于空间鼠标在运动过程中的位移变化量 dx、 dy进行补偿的方法, 但却没有涉及到根据空间鼠标的运动状态 来爹正位移变化量 dx、 dy。 其中, dx为位移变化量在 X方向上的分 量, dy为所述位移变化量在 y方向上的分量。 通常, X方向对应屏幕 的水平方向, y方向对应展幕的竖直方向, z方向垂直 X方向和 y方 向。 在空间鼠标的实际使用中, 当空间鼠标运动的时候, 可以通过 z 方向上的数据对空间鼠标的旋转角度等进行补偿,进而得到空间鼠标 在运动过程中的位移变化量 dx和 dy。 正常情况下, z方向上的数据 是会受到重力加速度影响的, 会以重力加速度作为参考点的, 但当空 间鼠标处于垂直状态下运动的时候,此时 z方向上重力加速度的值接 近于所述重力加速度的参考点的零点,即此时相当于没有重力加速度 做参考, 则测得的 z方向上的数据是有误差, 测得的值会比较大, 而 用一个比较大的值对空间鼠标的旋转角度等进行补偿时,得到的空间 鼠标在运动过程中的位移变化量 dx和 dy也是偏大的,空间鼠标运动 时越垂直, 则得到的位移变化量 dx和 dy值也就越偏大。 同理, 对于空间鼠标处于水平状态下的运动, 以及处于侧立状态 下的运动, 也会由于重力加速度的原因, 而导致输出的空间鼠标的位 移变化量在 X方向的分量 dx以及在 y方向上的分量 dy的值可能会有 误差。 在本实施例中,基于所述空间鼠标的运动状态, 修正所述空间鼠 标的位移变化量。 所述空间鼠标的运动状态可以根据重力加速度传感器的数据进 行判断, 所述运动状态可以为水平状态下的运动、垂直状态下的运动 以及侧立状态下的运动等。 图 4是本实施例提供的空间鼠标的数据处理方法的流程示意图, 主要示出了对于空间鼠标处于不同运动状态时,修正所述空间鼠标的 位移变化量的具体流程。 如图 4所示, 首先执行步骤 S401 , 获得当前空间坐标数据的输 出值。 步骤 S401可以参考实施例一步骤 S201至步骤 S205。 步骤 S402,由当前空间坐标数据的输出值和前一次空间坐标数据 的输出值计算空间鼠标的位移变化量。 步骤 S403 , 判断空间鼠标的运动状态。  The data processing method of the space mouse and the control method of the mouse pointer The present application claims to be submitted to the Chinese Patent Office on July 16, 2013, the application number is 201310298200.5, and the invention name is "the data processing method of the space mouse and the control method of the mouse pointer". Priority of the patent application, the entire contents of which is incorporated herein by reference. TECHNICAL FIELD The present invention relates to the field of space mouse technologies, and in particular, to a data processing method for a space mouse and a method for controlling a mouse pointer. BACKGROUND OF THE INVENTION At present, the positioning of computer mouse pointers is mostly realized by optical sensors or laser sensors, which are based on physical optical principles, so that the sensors need to be implemented by a platform such as a desktop. However, in many occasions, such as computer multimedia teaching, users want to manipulate the mouse pointer in the air or manipulate the mouse pointer in the air to realize multimedia TV playback, web browsing and other applications, which can not be achieved by using only traditional sensors, so the space mouse It came into being. The space mouse is an input device that operates the mouse pointer (screen cursor) like a traditional mouse, but does not need to be placed on any plane. In the air, it can directly control the mouse pointer by sensing the attitude of the air movement. In order to realize the perception of the attitude of the air movement, the inertial device is generally set in the space mouse, and the attitude of the motion carrier is tracked by the inertial device measurement technology. The basic principle of the inertial tracking system is to measure the angular velocity and linear acceleration of the object motion using inertial devices such as gyro sensors and acceleration sensors based on the known initial position and attitude of the target, and then obtain the position of the object by integration. attitude. However, in the actual use process, when the space mouse is turned off, the motion process of the space mouse can no longer be detected, and when the space mouse is turned on again, its coordinate zero point cannot be compared with the coordinate zero point before the space mouse is closed. Coincidence, this is because of the space mouse The initial point, that is, the coordinate zero point is assumed by the system of the space mouse, the system re-determines the coordinate zero point each time the space mouse is turned on, and the re-determined coordinate zero point is 4 艮 difficult and the last time the space is closed before the mouse The coordinate zeros coincide, and the initial point of the space mouse will be problematic. The spatial coordinates of the space mouse obtained based on this will have errors, and then the position and posture of the space mouse will be determined. If there is an error, there will be an error in the mouse positioning. A related art is disclosed in U.S. Patent Application Serial No. US-A-2009 295 729 A1, which is incorporated herein by reference. SUMMARY OF THE INVENTION The problem solved by the present invention is the problem that there is an error in the spatial coordinate data output by the space mouse. In order to solve the above problems, the present invention provides a data processing method for a space mouse, the space mouse comprising an inertial device adapted to acquire spatial coordinate data, the method comprising: recording a space collected last time before the inertial device is turned off Coordinate data; after the inertial device is re-opened, acquiring a compensation value of the current spatial coordinate, where the compensation value of the current spatial coordinate is a difference between the previously acquired spatial coordinate data and the recorded spatial coordinate data; The compensation value of the current spatial coordinate compensates the currently acquired spatial coordinate data to obtain an output value of the current spatial coordinate data. Optionally, when the compensation value of the current spatial coordinate reaches the compensation threshold, the currently collected spatial coordinate data is no longer compensated. Optionally, the compensation threshold is 0. Optionally, the output value of the spatial coordinate data obtained for the first time after the inertial device is turned back on is discarded. Optionally, the amount of change in the displacement of the space mouse is obtained based on an output value of the spatial coordinate data. Optionally, the obtaining the space mouse based on the output value of the spatial coordinate data The displacement variation includes: calculating the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. Optionally, the obtaining the displacement change amount of the space mouse based on the output value of the spatial coordinate data comprises: receiving the coordinate output close command after receiving the coordinate output close command or receiving the coordinate output close command after receiving the coordinate output close command The coordinate output open command calculates the displacement change amount of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data; if the coordinate output close command is received, the calculation of the displacement of the space mouse is stopped The amount of change; if the coordinate output open command is not received within the preset time range after receiving the coordinate output close command, the inertial device is turned off. Optionally, the spatial coordinate data collected by the inertial device is recorded within a preset time range after receiving the coordinate output close command. Optionally, the preset time range is greater than or equal to 5s. Optionally, the obtaining, by the output value of the spatial coordinate data, the displacement variation of the space mouse further comprises: discarding a displacement variation of the space mouse calculated by the inertia device after being restarted for the first time. Optionally, the obtaining the displacement change amount of the space mouse based on the output value of the spatial coordinate data further includes: after discarding the displacement variation of the space mouse calculated for the first time after the inertial device is re-opened, The data discard flag is set; the data discard flag is reset when the space mouse is initialized and when the inertial device is turned off. Optionally, the amount of change in the displacement of the space mouse is corrected based on the motion state of the space mouse. Optionally, the motion state of the space mouse is obtained by data of a gravity acceleration sensor, and the motion state includes motion in a horizontal state, motion in a vertical state, and motion in a side vertical state. Optionally, the correcting the displacement change of the space mouse based on the motion state of the space mouse comprises: if the space mouse moves in a horizontal state, maintaining the a displacement variation of the space mouse; if the space mouse moves in a vertical state, reducing a component of the displacement variation of the space mouse in the X direction and the y direction; if the space mouse moves in a side state, Then, the component of the displacement variation of the space mouse in the y direction is enlarged. Optionally, if the space mouse moves in a vertical state, the components that reduce the displacement variation of the space mouse in the X direction and the y direction include: The output value of the space coordinate data of the space mouse in the z direction is more Large, the smaller the amount of displacement of the space mouse in the X direction and the y direction is smaller, the smaller the output value of the spatial coordinate data of the space mouse in the z direction is, and the displacement variation of the space mouse is in the X direction. The greater the reduction in the component in the y direction. Optionally, if the space mouse moves in a vertical state, reducing a component of the displacement variation of the space mouse in the X direction and the y direction is implemented by: the displacement variation of the space mouse is The component dx in the X direction is reduced to (f(z)/a) xdx, and the component dy of the displacement variation of the space mouse in the y direction is reduced to (f(z)/a) xdy, where f(z ) is the output value of the spatial coordinate data of the space mouse in the z direction, a is the attenuation coefficient, la 5. Optionally, if the space mouse moves in a vertical state, reducing the component of the displacement variation of the space mouse in the X direction and the y direction further includes: if the reduced displacement of the space mouse is reduced The components in the X direction and the y direction are larger than the component threshold, and the components in the X direction and the y direction of the displacement variation of the space mouse are set as the component threshold. Optionally, the component threshold is 100. Optionally, if the space mouse moves in a side-up state, the component that magnifies the displacement variation of the space mouse in the y direction comprises: the larger the output value of the space coordinate data of the space mouse in the z direction, The smaller the degree of magnification of the displacement variation of the space mouse in the y direction, the larger the output value of the spatial coordinate data of the space mouse in the z direction, and the degree of component magnification of the displacement variation of the space mouse in the y direction. The bigger.  Optionally, if the space mouse moves in a side state, the component of the displacement change of the space mouse in the y direction is realized by: the displacement variation of the space mouse is in the y direction The upper component dy is magnified as ( b / f(z) ) x dy , where f(z) is the output value of the spatial coordinate data of the space mouse in the z direction, b is the amplification factor, K b < 5 „ The technical solution of the present invention further provides a method for controlling a mouse pointer, comprising: acquiring a displacement variation of the space mouse by using a data processing method of a space mouse as described above; The displacement change amount controls the movement of the mouse pointer. Compared with the prior art, the technical solution of the present invention has the following advantages: after the inertial device is re-opened, the space coordinate data acquired before and the recorded inertial device are closed for the last time. The difference value of the collected spatial coordinate data is used as a compensation value of the current spatial coordinate, and the currently collected spatial coordinate data is compensated. Obtaining the output value of the current spatial coordinate data, after the inertial device is re-opened, after the above compensation process, the output value of the spatial coordinate and the spatial coordinate value acquired before the inertial device is turned off are in the same space coordinate system. The problem that the spatial coordinate data caused by the initial point position is different after the re-opening of the inertial device has an error, so that the spatial coordinate data of the output is accurate and reliable. In an alternative, after the inertial device is turned on, Discarding the displacement variation of the space mouse obtained in the first calculation can effectively avoid the problem that the subsequent data processing is inaccurate due to the error of the displacement variation of the space mouse obtained in the first calculation. In the alternative, in the receiving After the coordinate output close command is executed, the space coordinate data collected by the inertial device is continuously recorded within a preset time range, and the calculation of the displacement variation of the space mouse is stopped, and the coordinate output open command is received again within the preset time range. When you can, according to the record Spatial coordinates of the data acquisition device quickly, accurately obtain an output value of the displacement of the spatial variation of the mouse. In an alternative embodiment, according to the motion state of the space of the mouse, the mouse father positive space The displacement change amount can accurately obtain the displacement variation of the space mouse. 1 is a schematic diagram of a motion trajectory of a space mouse according to a first embodiment of the present invention; FIG. 2 is a schematic flowchart of a data processing method of a space mouse according to a first embodiment of the present invention; 4 is a schematic flow chart of a data processing method of a space mouse according to a third embodiment of the present invention; FIG. 5 is a schematic flowchart of a data processing method of a space mouse according to a fourth embodiment of the present invention; FIG. 7 is a flow chart of a data processing method for a space mouse according to Embodiment 6 of the present invention; FIG. 8 is a flow chart of a data processing method for a space mouse according to Embodiment 7 of the present invention; FIG. 9 is a flow chart showing a data processing method of a space mouse according to Embodiment 8 of the present invention. DETAILED DESCRIPTION OF THE INVENTION When the space mouse is in normal use, the power switch of the space mouse and the terminal must be turned on first. After the wireless communication link between the space mouse and the terminal is established, the space mouse enters the working state. Specifically, after the space mouse enters the working state, the space coordinate data is first collected by the inertial device, wherein the inertial device may be a gyro sensor or a gravity acceleration sensor. The spatial coordinate data of the space mouse may be obtained by measuring parameter information such as the angular velocity measured by the gyro sensor, or the spatial coordinate data of the space mouse may be obtained by using parameter information such as linear acceleration measured by the gravity acceleration sensor, or The spatial coordinate data of the space mouse is obtained by combining the parameter information measured by the gyro sensor and the gravity acceleration sensor, and the method for obtaining the spatial coordinate data of the space mouse can be performed by using various methods known to those skilled in the art. , will not repeat them here. After the terminal receives the spatial coordinate data of the space mouse, the displacement variation of the space mouse can be obtained according to the spatial coordinate data twice before and after, and then converted into mouse pointer data by conversion calculation, such as a mouse on the display screen. The amount of change in the plane coordinate or plane coordinate of the pointer completes the control of the mouse pointer by the space mouse. If the memory of the space mouse is allowed, the conversion process of the space coordinate data to the mouse pointer data can be performed inside the space mouse, and then the mouse pointer data is directly sent to the terminal, and then the terminal completes the movement of the mouse pointer on the display screen. control. In the process of obtaining spatial coordinate data based on the inertial device, obtaining the displacement variation of the space mouse, and finally obtaining the mouse pointer data, an error may occur in any stage. In the prior art, there is a displacement variation on the space mouse. The related techniques for calibration, but there is no complete and effective method to make the data obtained in each stage mentioned above accurate and effective. In the above process, there is an error in obtaining spatial coordinate data based on the inertial device. This is because, each time the inertial device is turned on (the turning on the inertial device means that the inertial device is in an operating state, and the space coordinate data of the space mouse can be collected by the inertial device), the system needs to re-determine the initial point of the space mouse. That is, the coordinate zero point needs to be re-determined, and the coordinate zero point is assumed by the space mouse system, and the re-determined coordinate zero point is 4 艮 coincides with the coordinate zero point before the inertial device was last turned off. For any point in space, its spatial coordinate data (ie, absolute coordinate data) should be based on the same coordinate system and should be unique and should not be different due to turning off or turning on the inertial device. This is not handled in the prior art, so the initial point of the spatial coordinates determined by turning on the inertial device each time will result in an initial with different spatial coordinates. The space coordinate data of the inertial device obtained on the basis of the point will have errors, which will cause errors in the data of each stage of the space mouse, which makes the space mouse positioning inaccurate. Moreover, in the process of moving the space mouse, due to the influence of the earth's gravitational acceleration, there will be errors in the process of outputting data, which will also lead to the problem of inaccurate mouse positioning. In order to solve the above problems, the technical solution of the present invention provides a data processing method for a space mouse, the space mouse includes an inertial device adapted to acquire spatial coordinate data, and the method includes: recording the last acquisition before the inertial device is turned off The spatial coordinate data; after the inertial device is re-opened, acquiring a compensation value of the current spatial coordinate, where the compensation value of the current spatial coordinate is a difference between the previously acquired spatial coordinate data and the recorded spatial coordinate data; The currently acquired spatial coordinate data is compensated by using the compensation value of the current spatial coordinate to obtain an output value of the current spatial coordinate data. The above described objects, features and advantages of the present invention will become more apparent from the aspects of the appended claims. In the first embodiment, after the space mouse is re-opened, the currently collected spatial coordinate data is compensated, and the inertial device contained in the space mouse is closed by compensating the currently collected spatial coordinate data. After the state is turned on again, the currently acquired spatial coordinate data is in the same coordinate system as the spatial coordinate data acquired before the inertial device was last turned off, that is, the spatial coordinate system of the inertial device before being turned on again and before the last shutdown. The zero coordinate (the coordinate origin of the spatial coordinate system) is coincident, so that the obtained spatial coordinate data is determined based on the same coordinate system, and the spatial coordinate data output by the mouse in the same position space is unique, and will not It varies depending on turning off or turning on the inertial device. In the present embodiment, an iterative algorithm is used to make the inertial device coincide with the zero point coordinates (the coordinate origin of the coordinate system) of the coordinate system of the spatial coordinate data after the re-opening and before the last time the inertial device is turned off.  As shown in Figure 1, during the operation of the space mouse, the spatial coordinate data of the space mouse is acquired by the inertial device, and the positions of the points (such as point L, Λ A, Λ Β, point C) shown in the figure are each time. The spatial coordinate data of the acquired space mouse. It is assumed that the trajectory a is the trajectory of the space mouse before the inertial device is turned off, wherein the point L is the position where the space mouse is located in the space before the inertial device is turned off, and the space coordinate data acquired by the inertial device at the point L is (X, y). , z), here the space coordinate data of the point L is denoted as L(x, y, z), assuming that the track b is the running track of the space mouse after the inertial device is re-opened, and the point A is the space mouse after the inertial device is turned back on. The starting point position of the motion, when the space mouse starts running from point A, the inertial device first collects the spatial coordinate data (xl, yl, zl) of the space mouse at point A, which is denoted as A (xl, yl, Zl), when the space mouse moves from point A to point B, the inertial device collects the spatial coordinate data (x2, y2, z2) of the space mouse at point B, which is denoted as B (x2, y2, z2), When the space mouse moves from point B to point C, the inertial device collects the spatial coordinate data (x3, y3, z3) of the space mouse at point C, which is denoted as C (x3, y3, z3), and so on. . In order to make the zero point coordinates of the coordinate system of the space coordinate data acquired by the inertial device after the re-opening and the last time the inertia device is turned off, it is necessary to compensate the spatial coordinate data collected by the inertial device each time, that is, The inertial device compensates for the spatial coordinate data acquired at points, B, C, and subsequent points. In this embodiment, the spatial coordinate data acquired before and the spatial coordinate data collected last time before the inertial device is closed are used. The difference compensates for the currently acquired spatial coordinate data. For example, during the operation of the space mouse, when the space mouse runs from point A to point B, it can be collected at the point L at the last time before the space coordinate data acquired at point A and the inertial device are turned off. The difference of the spatial coordinate data compensates for the spatial coordinate data of the currently acquired point B. Specifically, the difference between the spatial coordinate data A (xl, yl, zl) of the point A and the spatial coordinate data L (x, y, z) of the point L, which is the point A and the point L, is first calculated. The vector difference between the two, here the difference is recorded as Am, the value of Am is used to compensate the spatial coordinate data B (x2, y2, z2) of the currently acquired point B, B (x2, y2) , z2 ) and the sum of A as the empty point B The value compensated by the coordinate data, that is, the final output value of the spatial coordinate data as point B, is denoted here as B (x2)L, y2L, z2L ). When the space mouse continues to run from point B to point C, the difference between the spatial coordinate data acquired at point B and the spatial coordinate data collected at the last point L before the inertia device is turned off may be used. The spatial coordinate data of the acquired point C is compensated. When the spatial coordinate data C (x3, y3, z3) of the point C is compensated, the spatial coordinate data B (x2, y2, z2) of the point B and the point L are used. The difference between the spatial coordinate data L (x, y, z) is compensated, and the spatial coordinate data B (x2, y2, z2) of point B and the spatial coordinate data L (x, y of point L) of point B are compensated. The vector difference between z) is denoted by ΔΜ, and the sum of C (x3, y3, z3) is used as the value compensated by the spatial coordinate data of point C, that is, the final output value of the spatial coordinate data as point C, Recorded here as C (x3L, y3L, z3, and so on, using the above iterative process to compensate the spatial coordinate data collected by each point in the running track after the inertial device is re-opened, as described above, the spatial coordinate data collected by the previous time (for example, A (xl , yl, zl)) and the difference between the last acquired spatial coordinate data (L (X, y, z)) before the inertial device is turned off (for example, A ) for the currently acquired spatial coordinate data (for example, B (x2, Y2, z2)) compensate to get the final output value of the current coordinate data of the current space (for example, B( x2L, y2L, Z2L)). It should be noted that, through the above iterative process, it can be seen that for the spatial coordinate data of the initial point A, since A (xl, yl, zl) is the spatial coordinate data collected for the first time after the inertial device is re-opened, the previous time The acquired spatial coordinate data is actually the last acquired spatial coordinate data before the inertial device is turned off. If the above compensation method is used, the spatial coordinate data collected by the previous time (for point A, the last time before the inertial device is turned off) The difference between the acquired spatial coordinate data and the spatial coordinate data collected last time before the inertial device is turned off (the difference is 0 in this calculation result), the space coordinate data collected at point A is compensated, Without compensating the spatial coordinate data of point A, the spatial coordinate data of point A is still problematic, so in the specific implementation, the space coordinate data A (xl, yl, zl) for point A can usually not be output. , which is The output value of the spatial coordinate data of point A is discarded. In the above iterative process, if the difference between the spatial coordinate data acquired before and the spatial coordinate data collected last time before the inertia device is turned off is gradually reduced, when the difference approaches 0, that is, When the compensation value of the currently collected spatial coordinate data approaches 0, it means that it is no longer necessary to compensate the currently acquired spatial coordinate data, that is, the coordinate system where the spatial coordinate data collected by the current inertial device is located and The coordinate system in which the spatial coordinate data acquired before the inertial device was last turned off is basically in the same coordinate system, that is, the zero point coordinates of the coordinate system of the inertial device when re-opening and before the last shutdown are coincident. The spatial coordinate data error acquired by the output inertial device has been substantially eliminated, and the spatial coordinate data acquired by the inertial device can be directly used as the output value of the spatial coordinate data. Based on the above description, the data processing method of the space mouse provided in this embodiment is as shown in FIG. 2. First, step S201 is executed to record the spatial coordinate data collected last time before the inertial device is turned off. Step S202 is performed to obtain a compensation value of the current spatial coordinate after the inertial device is turned back on. The compensation value of the current spatial coordinate is the difference between the previously acquired spatial coordinate data and the recorded spatial coordinate data. Step S203 is executed to discard the output value of the spatial coordinate data obtained for the first time after the inertial device is turned back on. Step S204 is performed to compensate the currently collected spatial coordinate data by using the compensation value of the current spatial coordinate. The currently acquired spatial coordinate data is added to the compensation value obtained in step S202 as the output value of the current spatial coordinate data. Step S205 is performed, when the compensation value of the current spatial coordinate reaches the compensation threshold, the currently collected spatial coordinate data is no longer compensated.  The compensation threshold may be set according to the processing capability of the actual system and the specific requirements for the accuracy of the spatial coordinate data, and may be set to a threshold close to 0. In this embodiment, the compensation threshold is set to 0. . It can be seen by the embodiment that the method for obtaining the output value of the current spatial coordinate data by compensating the currently acquired spatial coordinate data can make the spatial coordinate data acquired by the inertial device re-opening and the previous shutdown. The spatial coordinate data collected before the inertial device is in the same space coordinate system, which effectively solves the problem that the spatial coordinate data of the output has errors due to the difference of the zero position after re-opening the inertial device, so that the collected space The coordinate data is accurate and reliable. Embodiment 2 This embodiment is a displacement change of a space mouse calculated for the first time after the inertia device is turned on in the process of obtaining the offset value of the spatial coordinate data after the compensation is obtained based on the first embodiment. The amount is filtered off. After the output value of the spatial coordinate data is obtained based on the first embodiment, the displacement variation of the space mouse can be obtained from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. In practical applications, the user often turns off the inertial device of the space mouse for a short time or a long time according to various practical use requirements. However, when the inertial device is reopened, there is a problem with the amount of displacement change at the initial point position. This is because the displacement variation is the difference between the currently acquired spatial coordinate data and the recorded previously acquired spatial coordinate data, and the spatial mouse system is used when the inertial device of the space mouse is turned off for a short time or a long time. During the period when the inertial device is turned off, the motion of the inertial device cannot be detected. The last spatial coordinate data recorded by the system is the spatial coordinate data collected last time before the inertial device is turned off, and the inertial device is turned back on. When the initial point position is used, the spatial coordinate data acquired by the previous time is the spatial coordinate data collected last time before the inertial device is turned off, and the displacement variation of the space mouse calculated by the initial point position may be Problematic because inertial devices are usually turned off and on again It won't be in the same position or in a similar position. In this embodiment, after the inertial device is turned on, the displacement variation of the space mouse calculated by the inertia device for the first time (ie, the displacement change amount of the initial point position) is discarded, and since it is calculated after this The displacement variation of the space mouse does not exist as the problem of calculating the initial point position, so the displacement variation of the space mouse can be directly output. FIG. 3 is a schematic flowchart of the data processing method of the space mouse according to the embodiment. As shown in FIG. 3, step S301 is first performed to obtain an output value of the current spatial coordinate data. Step S301 can refer to step S201 to step S205 of the first embodiment. In other embodiments, the output values of the current spatial coordinate data may also be obtained by using various methods in the prior art, without using the method for compensating the spatial coordinate data provided in steps S201 to S205 of the first embodiment. The output value of the current spatial coordinate data. Step S302: Calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. Step S303, determining whether the data discard flag is set. In this embodiment, a data discard flag may be preset to indicate whether the calculated displacement of the spatial mouse is discarded. This data discard flag is reset when the space mouse is initialized or when the inertial device is turned off. The amount of change in the displacement of the space mouse obtained after the first opening or reopening of the inertial device is required to be discarded, and the space calculated for the first time after the inertial device is first turned on or reopened is discarded. After the amount of change in the displacement of the mouse, the flag bit is discarded for the data. In this step, it is judged whether the data discard flag is set, and if so, step S305 is performed, otherwise step S304 is performed. Step S304, discarding the displacement change amount of the space mouse, and setting the data discard flag bit. That is to say, the displacement variation of the space mouse obtained by the first calculation after the inertial device is first turned on or re-opened is directly discarded, and no subsequent data is needed. Reason. When the data discard flag is not set, that is, in the case of reset, it indicates that the currently obtained packet data is the displacement of the space mouse that is calculated for the first time after the inertial device is first turned on or re-turned on. The amount of change in the displacement of the spatial mouse obtained by the first calculation is problematic as described above, at which time the displacement variation of the current space mouse is discarded, and the data discard flag position is discarded. After discarding the displacement change amount of the space mouse calculated for the first time, the output value of the spatial coordinate data after the acquisition is continued, and the displacement change amount of the space mouse is calculated, that is, the process returns to step S301. It should be noted that when the space mouse is initialized (the first time the space mouse is turned on), there is no output value of the previous spatial coordinate data. In this case, the output value of the previous spatial coordinate data can be set to 0 in advance, and the initial point is calculated. When the displacement of the position is changed, the difference between the output value of the current spatial coordinate data and 0, that is, the output value of the current spatial coordinate data is used as the displacement variation of the space mouse calculated for the first time, in this step, The amount of displacement change of the spatial mouse obtained by the first calculation is discarded, and the data discard flag position is set. Step S305, outputting a displacement variation of the space mouse. When the data discard flag is set, it indicates that the displacement of the space mouse that was calculated for the first time has been discarded after the inertial device is turned on. The displacement of the space mouse obtained at this time is correct, and can be directly The displacement variation of the space mouse is output for subsequent data processing. Steps S301 to S305 of the present embodiment can be performed each time the inertial device acquires the spatial coordinate data. The data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertia device is restarted; moreover, in this embodiment, the inertia is turned on. After the device, by first filtering out the displacement change of the initial point position when the displacement variation of the space mouse is obtained, the space mouse position calculated by the first calculation after the inertia device is turned on can be effectively avoided. There is an error in the amount of shift change, which leads to inaccurate subsequent data processing. Embodiment 3 This embodiment is an output value of the spatial coordinate data obtained after compensation according to the first embodiment, and the displacement variation of the space mouse according to different motion states of the space mouse during the process of obtaining the displacement variation of the space mouse Carry out the correction. After obtaining the output value of the spatial coordinate data based on the first embodiment, the displacement variation of the space mouse can be obtained from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. In the prior art, in order to solve various The influence of factors on the accuracy of data processing of space mouse has a variety of methods for compensating the displacement changes dx and dy of the space mouse during motion, but it does not involve the displacement of the spatial mouse according to the motion state of the space mouse. The amount of change dx, dy. Where dx is the component of the displacement change amount in the X direction, and dy is the component of the displacement change amount in the y direction. Usually, the X direction corresponds to the horizontal direction of the screen, the y direction corresponds to the vertical direction of the screen, and the z direction is perpendicular to the X direction and the y direction. In the actual use of the space mouse, when the space mouse moves, the rotation angle of the space mouse can be compensated by the data in the z direction, and the displacement changes dx and dy of the space mouse during the motion are obtained. Under normal circumstances, the data in the z direction is affected by the gravitational acceleration, and the gravitational acceleration is used as the reference point. However, when the space mouse is in the vertical state, the value of the gravitational acceleration in the z direction is close to The zero point of the reference point of gravity acceleration, that is, the equivalent of no gravity acceleration for reference, the measured data in the z direction is error, the measured value will be larger, and a larger value is used for the space. When the rotation angle of the mouse is compensated, the displacement changes dx and dy of the space mouse during the motion are also large, and the more vertical the space mouse moves, the more the displacement changes dx and dy are. Big. Similarly, for the motion of the space mouse in the horizontal state and the motion in the side state, the displacement of the space mouse in the output direction is the component dx in the X direction and in the y direction due to the acceleration of gravity. The value of the component dy on it may be error. In this embodiment, the displacement variation of the space mouse is corrected based on the motion state of the space mouse. The motion state of the space mouse may be judged based on data of the gravity acceleration sensor, and the motion state may be motion in a horizontal state, motion in a vertical state, and motion in a side state. 4 is a schematic flow chart of a data processing method of a space mouse according to the embodiment, which mainly shows a specific process for correcting the displacement variation of the space mouse when the space mouse is in different motion states. As shown in Fig. 4, step S401 is first executed to obtain the output value of the current spatial coordinate data. Step S401 can refer to step S201 to step S205 of the first embodiment. Step S402, calculating the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. Step S403, determining a motion state of the space mouse.
根据重力加速度传感器的数据判断当前空间鼠标的运动状态。例 如,在所述空间鼠标在运动的过程中可以通过重力加速度传感器测量 得到的直线加速度等参数信息而得到基于重力加速度传感器的空间 坐标数据,根据前后至少两次得到的基于重力加速度传感器的空间坐 标数据来判断当前空间鼠标的运动状态。  The motion state of the current space mouse is judged according to the data of the gravity acceleration sensor. For example, in the process of the space mouse, the spatial acceleration data based on the gravity acceleration sensor can be obtained by the parameter information such as the linear acceleration measured by the gravity acceleration sensor, and the spatial coordinate based on the gravity acceleration sensor obtained at least twice before and after. The data is used to determine the motion state of the current space mouse.
具体地, 如果空间鼠标输出的位移变化量在 z方向上的分量没有 变化时, 仅在 y方向上的分量有变化时, 判断当前空间鼠标处于水平 状态下运动, 此时执行步骤 S404,确定当前空间鼠标为水平状态下运 动。  Specifically, if there is no change in the component of the displacement of the spatial mouse output in the z direction, and only when the component in the y direction changes, it is determined that the current space mouse is in the horizontal state, and then step S404 is performed to determine the current The space mouse moves in a horizontal state.
如果空间鼠标输出的位移变化量仅在 z方向上的分量有变化时, 而在 X方向上和 y方向的分量均没有变化时,判断当前空间鼠标处于垂 直状态下运动, 此时执行步骤 S405 ,确定当前空间鼠标为垂直状态下 运动。 If the displacement of the spatial mouse output changes only when the component in the z direction changes, and the components in the X direction and the y direction do not change, it is determined that the current space mouse is in the vertical state, and step S405 is performed. Determine the current space mouse is in the vertical state Exercise.
如果空间鼠标输出的位移变化量仅在 x方向上的分量有变化量 时, 而在 y方向上和 z方向的分量均没有变化时, 判断当前空间鼠标处 于侧立状态下运动, 此时执行步骤 S406,确定当前空间鼠标为侧立状 态下运动。  If the amount of displacement of the spatial mouse output changes only when the component in the x direction has a change, and the components in the y direction and the z direction do not change, it is determined that the current space mouse is in the side state, and the step is performed. S406. Determine that the current space mouse is in a side state.
然后根据空间鼠标的不同的运动状态,对空间鼠标的位移变化量 进行爹正。 具体地, 若所述空间鼠标在水平状态下运动, 则可以不进 行任何爹正; 若所述空间鼠标在垂直状态下运动, 当空间鼠标的空间 坐标数据在 z方向的输出值越大,所述空间鼠标的位移变化量在 X方向 和 y方向上的分量缩小程度越小, 当空间鼠标的空间坐标数据在 z方向 的输出值越小 (即空间鼠标越垂直的时候), 所述空间鼠标的位移变 化量在 X方向和 y方向上的分量缩小程度越大;若所述空间鼠标在侧立 状态下运动, 当空间鼠标的空间坐标数据在 z方向的输出值越大, 所 述空间鼠标的位移变化量在 y方向上的分量放大程度越小, 当空间鼠 标的空间坐标数据在 z方向的输出值越大, 所述空间鼠标的位移变化 量在 y方向上的分量放大程度越大。  Then, according to the different motion states of the space mouse, the displacement variation of the space mouse is corrected. Specifically, if the space mouse moves in a horizontal state, no correction may be performed; if the space mouse moves in a vertical state, when the spatial coordinate data of the space mouse has a larger output value in the z direction, The smaller the degree of reduction of the displacement of the spatial mouse in the X direction and the y direction, the smaller the output value of the spatial coordinate data of the space mouse in the z direction (ie, the more vertical the space mouse), the space mouse The amount of displacement change is larger in the X direction and the y direction; if the space mouse moves in the side state, when the spatial mouse data of the space mouse has a larger output value in the z direction, the space mouse The smaller the degree of magnification of the displacement change amount in the y direction is, the larger the output value of the spatial mouse of the space mouse is in the y direction.
在由步骤 S404确定当前空间鼠标为水平状态下运动时,执行步骤 When it is determined in step S404 that the current space mouse is in a horizontal state, the steps are performed.
5407 , 保持所述空间鼠标的位移变化量。 5407, maintaining the displacement variation of the space mouse.
由于水平状态下运动时,重力加速度对于空间鼠标运动的影响基 本可以忽略不计,所以对于由步骤 S402所获得的空间鼠标位移变化量 可以不进行任何修正, 直接输出即可。  Since the influence of the gravitational acceleration on the spatial mouse motion is substantially negligible due to the movement in the horizontal state, the spatial mouse displacement variation obtained by the step S402 can be directly corrected without any correction.
在由步骤 S405确定当前空间鼠标为垂直状态下运动时,执行步骤 When it is determined in step S405 that the current space mouse is in a vertical state, the steps are performed.
5408 , 缩小所述空间鼠标的位移变化量在 X方向和 y方向上的分量。 5408. Reduce the components of the displacement variation of the space mouse in the X direction and the y direction.
当空间鼠标为垂直状态下运动时, 由于受重力加速度的影响, 得 到的 dx和 dy是偏大的, 此时应该适当的对 dx和 dy进行衰减, 即缩小所 述空间鼠标的位移变化量在 X方向和 y方向上的分量。  When the space mouse moves in the vertical state, due to the influence of gravity acceleration, the obtained dx and dy are too large. At this time, the dx and dy should be appropriately attenuated, that is, the displacement variation of the space mouse is reduced. The components in the X and y directions.
本实施例中, 所述缩小所述空间鼠标的位移变化量在 X方向和 y 方向上的分量通过下述方式实现:所述空间鼠标的位移变化量在 X方 向上的分量 dx缩小为(f(z)/a ) xdx, 所述空间鼠标的位移变化量在 y 方向上的分量 dy缩小为 (f(z)/a ) xdy, 其中, f(z)是基于重力加速 度传感器的空间坐标数据在 z方向的数据, a为衰减系数, l a 5。 进一步, 还可以预先设置分量阈值, 用于控制 dx以及 dy缩小的 程度。 举例来说, 可以预先设置分别对应于 dx和 dy的分量阈值(单 位为长度单位), 若缩小后的所述空间鼠标的位移变化量在 X方向上 的分量大于对应于 dx的分量阈值, 则将所述空间鼠标的位移变化量 在 X方向上的分量强制设置为该对应于 dx的分量阈值; 若缩小后的 所述空间鼠标的位移变化量在 y方向上的分量大于对应于 dy的分量 阈值,则将所述空间鼠标的位移变化量在 y方向上的分量强制设置为 该对应于 dy的分量阈值。 所述对应于 dx的分量阈值和对应于 dy的 分量阈值为经验值,可以根据实际应用设置为同样的数值,例如 100, 也可以设置为不同的数值, 在此不做限定。 在由步骤 S406确定当前空间鼠标为侧立状态下运动时, 执行步 骤 S409, 放大所述空间鼠标的位移变化量在 y方向上的分量。 当空间鼠标处于侧立状态下运动的时候,此时重力加速度对 y方 向上的运动会影响最大, 相对于 z方向上的数据, 此时相当于以较大 的重力加速度做参考, 测得的 z方向上的数据值相对来说会比较小, 用一个比较小的值对空间鼠标的旋转角度等进行补偿时,得到的空间 鼠标在运动过程中的位移变化量 dy也是偏小的, 此时应该适当的对 dy进行放大, 即放大所述空间鼠标的位移变化量在 y方向上的分量。 本实施例中,所述放大所述空间鼠标的位移变化量在 y方向上的 分量通过下述方式实现:所述空间鼠标的位移变化量在 y方向上的分 量 dy放大为 (b/ f(z) ) xdy, 其中, f(z)是基于重力加速度传感器的 空间坐标数据在 z方向的数据, b为放大系数, l b 5。 执行步骤 S410, 输出所述空间鼠标的位移变化量。 将上述根据空间鼠标的不同运动状态,修正后的空间鼠标的位移 变化量作为最终值进行输出。 在惯性器件每次采集空间坐标数据后都可以执行本实施例的步 骤 S401至 S410。 本实施例的空间鼠标的数据处理方法, 不仅有效解 决重新开启惯性器件后由于零点位置的不同,所导致的输出的空间坐 标数据存在误差的问题。 而且, 在本实施例中, 考虑到在输出空间鼠 标的位移变化量的过程中, 由于重力加速度的原因, 使输出的空间鼠 标的位移变化量会因为运动状态的不同(水平、垂直以及侧立状态下 的运动)而产生不同的误差, 因此根据所述空间鼠标的运动状态, 对 输出的空间鼠标的位移变化量进行相应的修正,从而可以使输出的空 间鼠标的位移变化量更为准确。 实施例四 本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 先对惯性器件开启后第一 次计算得到的空间鼠标的位移变化量进行滤除,然后根据空间鼠标的 不同的运动状态, 对空间鼠标的位移变化量进行^ ίι爹正。 如图 5所示, 首先执行步骤 S501 , 获取当前空间坐标数据的输 出值, 可以参考实施例一步骤 S201至步骤 S205。 然后执行步骤 S502, 由当前空间坐标数据的输出值和前一次空 间坐标数据的输出值计算空间鼠标的位移变化量。 在得到所述空间鼠标的位移变化量后,首先对所述空间鼠标的位 移变化量的初始点位置的数据进行滤除。 具体地, 执行步骤 S503和 步骤 S504, 可以参考实施例二的步骤 S303和 S304。 接着, 根据空间鼠标不同的运动状态, 对空间鼠标的位移变化量 进行修正。 具体地, 执行步骤 S505至步骤 S511 , 具体可以参考实施 例三步骤 S403至步骤 S409。 执行步骤 S512, 输出所述空间鼠标的位移变化量。 将上述根据空间鼠标的不同运动状态,修正后的空间鼠标的位移 变化量作为最终值进行输出。 需要说明的是, 在步骤 S503 的判断结果为是之后且执行步骤 S505之前,或者在步骤 S509、S510或 S511执行之后且执行步骤 S512 之前,还可以根据实际应用情况, 进一步采用一些现有的对位移变化 量 dx、 dy进行爹正或补偿的方法, 以消除其他因素对空间鼠标的位 移变化量的影响, 可以使得最终输出空间鼠标的位移变化量更为精 确。 本实施例的空间鼠标的数据处理方法,不仅有效解决重新开启惯 性器件后由于零点位置的不同,所导致的输出的空间坐标数据存在误 差的问题。 而且, 本实施例的空间鼠标的数据处理方法也可以有效避 免因开启惯性器件后第一次计算得到的空间鼠标的位移变化量存在 误差的问题和由于重力加速度的原因使输出的空间鼠标的位移变化 量因为运动状态的不同而产生误差的问题。 实施例五 本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 针对空间鼠标在短时间关 闭坐标输出但不关闭惯性器件的情况下进行的数据处理。 在空间鼠标的使用过程中,可以通过对空间鼠标上特定的按键操 作发出用于关闭坐标输出功能的坐标输出关闭命令,以控制空间鼠标 暂停向接收终端(如控制屏幕鼠标指针移动的计算机等处理设备)发 送坐标数据(如空间鼠标的位移量或空间坐标数据的输出值), 但此 时并不关闭惯性器件,即惯性器件仍然不间断地采集所述空间鼠标的 空间坐标数据。 通常, 考虑到系统功耗的问题, 在接收到坐标输出关 闭命令后,如果在预设时间范围内,没有再次收到坐标输出开启命令, 系统可以自动关闭空间鼠标的惯性器件。 而如果在短时间(如上述的预设时间范围)关闭坐标输出的情况 下,也按照实施例一所述的通过迭代的方法对采集到的空间坐标数据 进行补偿或者仍然计算空间鼠标的位移变换量, 则可能会有以下问 题: 由于系统进行补偿和计算是需要一定的系统消耗的, 而在坐标输 出关闭的短时间内并不需要输出坐标数据,短时间内的补偿计算反而 会造成不必要的系统消耗。 考虑到上述问题, 在这段短时间内, 也可 以不进行空间坐标数据的补偿和空间鼠标的位移变化量的计算以降 低对系统的消耗。 因此, 针对空间鼠标在短时间关闭坐标输出但不关 闭惯性器件的情况,本实施例的空间鼠标的数据处理方法在收到坐标 输出关闭命令时, 继续采集空间坐标数据并对其进行记录, 但并不计 算所述空间鼠标的位移变化量,如果在预设的时间范围内再次接收到 坐标输出开启命令,则可以直接由当前采集的空间坐标数据以及记录 的前一次空间坐标数据计算所述空间鼠标的位移变化量, 可以快速、 准确获得所述空间鼠标的位移变化量。 所述预设时间范围应该是一个合理的时间范围, 如果设置的太 短,则可能会频繁关闭和开启惯性器件,由此造成不必要的系统消耗; 如果设置的太长, 系统在不需要输出坐标数据的情况下, 一直采集和 记录空间坐标数据也会产生系统消耗。 当然, 如果不考虑功耗问题, 预设时间范围也可以设置的长些。 本实施例中, 所述预设时间范围设 置为 5s„ 如图 6所示的本实施例的空间鼠标的数据处理方法,首先执行步 骤 S601 , 获得当前空间坐标数据的输出值。 可以参考实施例一步骤 S201至步骤 S205。 执行步骤 S602和步骤 S603 , 由当前空间坐标数据的输出值和前 一次空间坐标数据的输出值计算空间鼠标的位移变化量,然后输出所 述空间鼠标的位移变化量。 执行步骤 S604 , 判断是否收到坐标输出关闭命令。 系统实时判断是否收到坐标输出关闭命令, 如果是, 则执行步骤 S605; 如果否, 则继续由空间坐标数据计算和输出所述空间鼠标的位 移变化量, 即返回执行步骤 S601。 步骤 S605 , 记录所述惯性器件采集的空间坐标数据。 由于此时已收到坐标输出关闭命令,则不需要再计算所述空间鼠 标的位移变化量, 而记录所述惯性器件采集的空间坐标数据, 是为了 在预设时间范围内再次收到坐标输出开启命令的时候,可以直接由最 后一次记录的空间坐标数据计算所述空间鼠标的位移变化量。 执行步骤 S606, 判断是否收到坐标输出开启命令, 如果是, 则恢 复计算并输出空间鼠标的位移变化量,即返回执行步骤 S601;如果否, 则执行步骤 S607, 判断坐标输出关闭命令所持续的时间是否超过 5s。 如果步骤 S607的判断结果为是,也就是 5s内都没有收到坐标输出 开启命令,则执行步骤 S608,关闭空间鼠标的惯性器件;如果步骤 S607 的判断结果为否, 则执行步骤 S609, 采集当前空间坐标数据, 然后执 行步骤 S605 , 记录惯性器件采集的空间坐标数据。 需要说明的是, 如果在超过 5s后, 再次收到坐标输出开启命令, 则先开启惯性器件, 然后从步骤 S601开始执行。 本实施例的空间鼠标的数据处理方法,在接收到坐标输出关闭命 令后, 在预设时间范围内停止空间坐标数据的补偿、 空间鼠标的位移 变化量的计算和输出, 可以降低系统功耗; 并且, 在预设时间范围内 继续记录所述惯性器件采集的空间坐标数据,使得在预设时间范围内 再次收到坐标输出开启命令的时候,可以根据记录的惯性器件采集的 空间坐标数据快速、 准确计算得到空间鼠标的位移变化量。 实施例六 本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 根据空间鼠标的不同的运 动状态, 对空间鼠标的位移变化量进行修正, 并针对空间鼠标在短时 间关闭坐标输出但不关闭惯性器件的情况下进行的数据处理。 如图 7所示, 首先执行步骤 S701 , 获得当前空间坐标数据的输 出值。 可以参考实施例一步骤 S201至步骤 S205。 执行步骤 S702, 由当前空间坐标数据的输出值和前一次空间坐 标数据的输出值计算空间鼠标的位移变化量。 执行步骤 S703和步骤 S704, 根据空间鼠标不同的运动状态, 对 空间鼠标的位移变化量进行修正。 具体可以参考实施例三步骤 S403 至步骤 S409。 执行步骤 S705, 输出所述空间鼠标的位移变化量。 执行步骤 S706至步骤 S711 ,针对空间鼠标在短时间关闭坐标输 出但不关闭惯性器件的情况下进行数据处理,具体可以参考实施例五 步骤 S604至步骤 S609。 本实施例的空间鼠标的数据处理方法,不仅有效解决重新开启惯 性器件后由于零点位置的不同,所导致的输出的空间坐标数据存在误 差的问题。 而且, 本实施例的空间鼠标的数据处理方法也可以有效避 免由于重力加速度的原因使输出的空间鼠标的位移变化量因为运动 状态的不同而产生误差的问题。而且针对空间鼠标在短时间关闭坐标 输出但不关闭惯性器件的情况进行数据处理, 可以有效降低系统功 耗, 可以快速、 准确得到空间鼠标的位移变化量。 实施例七 本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 先对惯性器件开启后第一 次计算得到的空间鼠标的位移变化量进行滤除,然后针对空间鼠标在 短时间关闭坐标输出但不关闭惯性器件的情况下进行的数据处理。 In this embodiment, the component for reducing the displacement variation of the space mouse in the X direction and the y direction is implemented by: the displacement variation of the space mouse is on the X side. The upward component dx is reduced to (f(z)/a) xdx, and the component dy of the spatial mouse displacement variation in the y direction is reduced to (f(z)/a) xdy, where f(z) is The data of the spatial coordinate data based on the gravity acceleration sensor in the z direction, a is the attenuation coefficient, la 5. Further, a component threshold may also be set in advance for controlling the degree of dx and dy reduction. For example, a component threshold corresponding to dx and dy (in units of length) may be preset, and if the component of the spatial variation of the displacement of the reduced space in the X direction is greater than a component threshold corresponding to dx, And a component of the displacement variation of the space mouse in the X direction is forcibly set to the component threshold corresponding to dx; if the reduced displacement of the space mouse, the component of the displacement in the y direction is greater than a component corresponding to dy The threshold value forcibly sets a component of the displacement variation of the space mouse in the y direction to the component threshold corresponding to dy. The component threshold corresponding to dx and the component threshold corresponding to dy are empirical values, and may be set to the same value according to the actual application, for example, 100, or may be set to different values, which is not limited herein. When it is determined in step S406 that the current space mouse is moving in the side state, step S409 is performed to enlarge the component of the displacement variation of the space mouse in the y direction. When the space mouse is in the side-up state, the gravity acceleration will have the greatest influence on the motion in the y direction. Compared with the data in the z direction, this is equivalent to making a reference with a larger gravity acceleration. The data value in the direction is relatively small. When a small value is used to compensate the rotation angle of the space mouse, the displacement dy of the space mouse during the motion is also small. The dy is appropriately amplified, that is, the component of the displacement variation of the space mouse in the y direction is enlarged. In this embodiment, the component for amplifying the displacement variation of the space mouse in the y direction is realized by: the component dy of the displacement variation of the space mouse in the y direction is enlarged to (b/f ( z) ) xdy, where f(z) is the data in the z direction based on the spatial coordinate data of the gravitational acceleration sensor, and b is the amplification factor, lb 5. Step S410 is executed to output a displacement change amount of the space mouse. The above-mentioned displacement of the space mouse according to the different motion states of the space mouse The amount of change is output as the final value. Steps S401 to S410 of the present embodiment can be performed each time the inertial device acquires the spatial coordinate data. The data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened. Moreover, in the present embodiment, in consideration of the displacement variation of the mouse in the output space, due to the gravity acceleration, the displacement variation of the output space mouse is different due to the motion state (horizontal, vertical, and lateral). The motion in the state generates different errors. Therefore, according to the motion state of the space mouse, the displacement variation of the output space mouse is correspondingly corrected, so that the displacement variation of the output space mouse can be more accurate. Embodiment 4 This embodiment is a displacement of a space mouse which is calculated for the first time after the inertial device is turned on in the process of obtaining the displacement value of the spatial coordinate data after the compensation is obtained based on the first embodiment. The amount of change is filtered out, and then the amount of displacement of the space mouse is corrected according to the different motion states of the space mouse. As shown in FIG. 5, step S501 is performed first, and the output value of the current spatial coordinate data is obtained. For example, refer to step S201 to step S205 of the first embodiment. Then, step S502 is executed to calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. After the displacement variation of the space mouse is obtained, data of the initial point position of the displacement variation of the space mouse is first filtered out. Specifically, step S503 and step S504 are performed, and steps S303 and S304 of the second embodiment can be referred to. Then, according to the different motion states of the space mouse, the displacement variation of the space mouse is corrected. Specifically, step S505 to step S511 are performed. For details, refer to the third step S403 to step S409. Step S512 is executed to output the displacement change amount of the space mouse. According to the different motion states of the space mouse, the corrected displacement amount of the space mouse is output as the final value. It should be noted that, after the determination result in step S503 is YES and before step S505 is performed, or after step S509, S510 or S511 is performed and before step S512 is performed, some existing pairs may be further adopted according to actual application situations. The displacement change amount dx, dy is corrected or compensated to eliminate the influence of other factors on the displacement variation of the space mouse, which can make the displacement variation of the mouse in the final output space more accurate. The data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened. Moreover, the data processing method of the space mouse of the embodiment can also effectively avoid the problem that the displacement variation of the space mouse obtained by the first calculation after the inertia device is turned on and the displacement of the output space mouse due to the gravity acceleration. The amount of change causes an error due to the difference in motion state. Embodiment 5 This embodiment is an output value of the spatial coordinate data obtained after compensation according to the first embodiment, and in the process of obtaining the displacement variation of the space mouse, the space mouse is turned off for a short time but the inertial device is not turned off. Data processing performed below. During the use of the space mouse, a coordinate output close command for turning off the coordinate output function can be issued by a specific key operation on the space mouse to control the space mouse to pause to the receiving terminal (such as a computer that controls the movement of the mouse pointer on the screen). The device transmits coordinate data (such as the displacement of the space mouse or the output value of the spatial coordinate data), but does not turn off the inertial device at this time, that is, the inertial device still collects the spatial coordinate data of the space mouse without interruption. Generally, considering the problem of system power consumption, after receiving the coordinate output close command, if the coordinate output open command is not received again within the preset time range, the system can automatically turn off the inertial device of the space mouse. And if the coordinate output is turned off in a short time (such as the preset time range described above) If the collected spatial coordinate data is compensated by the iterative method or the displacement of the spatial mouse is still calculated according to the first embodiment, the following problems may occur: Since the system performs compensation and calculation, it requires a certain amount. The system consumes, and the coordinate data does not need to be output in a short time when the coordinate output is turned off. The compensation calculation in a short time may cause unnecessary system consumption. In view of the above problem, in this short period of time, the compensation of the spatial coordinate data and the calculation of the displacement variation of the space mouse may not be performed to reduce the consumption of the system. Therefore, for the case where the space mouse closes the coordinate output in a short time but does not close the inertial device, the data processing method of the space mouse of the embodiment continues to collect the space coordinate data and record it when receiving the coordinate output close command, but The displacement variation of the space mouse is not calculated. If the coordinate output enable command is received again within the preset time range, the space may be directly calculated from the currently acquired spatial coordinate data and the recorded previous spatial coordinate data. The displacement variation of the mouse can quickly and accurately obtain the displacement variation of the space mouse. The preset time range should be a reasonable time range. If the setting is too short, the inertial device may be turned off and on frequently, thereby causing unnecessary system consumption; if the setting is too long, the system does not need to output. In the case of coordinate data, the acquisition and recording of spatial coordinate data also results in system consumption. Of course, if you do not consider the power consumption problem, the preset time range can also be set longer. In this embodiment, the preset time range is set to 5s. The data processing method of the space mouse of the embodiment shown in FIG. 6 first performs step S601 to obtain an output value of the current spatial coordinate data. Step S201 to step S205. Step S602 and step S603 are performed to calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data, and then output the displacement variation of the space mouse. Step S604 is executed to determine whether a coordinate output close command is received. The system determines in real time whether a coordinate output close command is received, and if yes, performs the step S605; if no, continue to calculate and output the displacement change amount of the space mouse from the spatial coordinate data, that is, return to step S601. Step S605, recording spatial coordinate data collected by the inertial device. Since the coordinate output close command has been received at this time, it is not necessary to calculate the displacement variation of the space mouse, and the spatial coordinate data collected by the inertial device is recorded to receive the coordinate output again within the preset time range. When the command is turned on, the displacement variation of the space mouse can be directly calculated from the spatial coordinate data recorded last time. Step S606 is performed to determine whether a coordinate output enable command is received. If yes, the calculation and outputting the displacement change amount of the space mouse is resumed, that is, the process returns to step S601; if not, step S607 is executed to determine that the coordinate output close command is continued. Whether the time exceeds 5s. If the result of the determination in step S607 is YES, that is, the coordinate output enable command is not received within 5 seconds, step S608 is executed to close the inertial device of the space mouse; if the result of the determination in step S607 is no, step S609 is performed to collect the current The space coordinate data is then executed in step S605 to record the spatial coordinate data acquired by the inertial device. It should be noted that if the coordinate output ON command is received again after more than 5 s, the inertial device is turned on first, and then the execution is started from step S601. The data processing method of the space mouse of the embodiment can stop the compensation of the spatial coordinate data and the calculation and output of the displacement variation of the space mouse within the preset time range after receiving the coordinate output close command, thereby reducing the system power consumption; And continuously recording the spatial coordinate data collected by the inertial device within a preset time range, so that when the coordinate output open command is received again within the preset time range, the spatial coordinate data collected by the recorded inertial device can be quickly, Accurately calculate the displacement variation of the space mouse. Embodiment 6 This embodiment is an output value of the spatial coordinate data obtained after compensation according to the first embodiment, and the displacement variation of the space mouse according to different motion states of the space mouse in the process of obtaining the displacement variation of the space mouse Make corrections and target the space mouse for a short time Data processing with the coordinate output turned off without turning off the inertial device. As shown in FIG. 7, step S701 is first executed to obtain an output value of the current spatial coordinate data. Reference may be made to the first step S201 to the step S205. Step S702 is executed to calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. Step S703 and step S704 are performed to correct the displacement variation of the space mouse according to different motion states of the space mouse. For details, refer to Embodiment 3, Step S403 to Step S409. Step S705 is executed to output a displacement change amount of the space mouse. Steps S706 to S711 are performed to perform data processing for the space mouse to close the coordinate output in a short time without turning off the inertial device. For details, refer to Embodiment 5, Step S604 to Step S609. The data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened. Moreover, the data processing method of the space mouse of the present embodiment can also effectively avoid the problem that the displacement variation of the output space mouse is caused by the difference in the motion state due to the gravity acceleration. Moreover, for the space mouse to close the coordinate output in a short time without turning off the inertial device for data processing, the system power consumption can be effectively reduced, and the displacement variation of the space mouse can be obtained quickly and accurately. Embodiment 7 This embodiment is a displacement of a space mouse which is calculated for the first time after the inertial device is turned on in the process of obtaining the displacement value of the spatial coordinate data after the compensation is obtained based on the first embodiment. The amount of change is filtered out, and then the data processing is performed with the space mouse turning off the coordinate output for a short time without turning off the inertial device.
如图 8所示, 首先执行步骤 S801 , 获得当前空间坐标数据的输 出值, 可以参考实施例一步骤 S201至步骤 S205。 步骤 S802, 由当前空间坐标数据的输出值和前一次空间坐标数 据的输出值计算空间鼠标的位移变化量。 As shown in FIG. 8, step S801 is first performed to obtain an output value of the current spatial coordinate data. For example, step S201 to step S205 of Embodiment 1 may be referred to. Step S802, calculating a displacement variation amount of the space mouse from an output value of the current spatial coordinate data and an output value of the previous spatial coordinate data.
在得到所述空间鼠标的位移变化量后,首先对所述空间鼠标的位 移变化量的初始点位置的数据进行滤除。具体地,执行步骤 S803和步 骤 S804, 可以参考实施例二的步骤 S303和 S304。  After obtaining the displacement variation of the space mouse, first, the data of the initial point position of the displacement variation of the space mouse is filtered out. Specifically, step S803 and step S804 are performed, and steps S303 and S304 of the second embodiment can be referred to.
在对空间鼠标的位移变化量的初始点位置的数据滤除之后,执行 步骤 S805 , 输出所述空间鼠标的位移变化量。  After the data of the initial point position of the displacement variation of the space mouse is filtered out, step S805 is performed to output the displacement variation amount of the space mouse.
执行步骤 S806至步骤 S811 ,针对空间鼠标在短时间关闭坐标输 出但不关闭惯性器件的情况下进行数据处理,具体可以参考实施例五 步骤 S604至步骤 S609。 本实施例的空间鼠标的数据处理方法,不仅有效解决重新开启惯 性器件后由于零点位置的不同,所导致的输出的空间坐标数据存在误 差的问题。 而且, 本实施例的空间鼠标的数据处理方法也可以有效避 免因开启惯性器件后第一次计算得到的空间鼠标的位移变化量存在 误差的问题,而且针对空间鼠标在短时间关闭坐标输出但不关闭惯性 器件的情况进行数据处理, 可以有效降低系统功耗, 并可以快速、 准 确得到空间鼠标的位移变化量。  Steps S806 to S811 are performed, and data processing is performed for the space mouse to close the coordinate output in a short time but the inertia device is not turned off. For details, refer to Embodiment 5, Step S604 to Step S609. The data processing method of the space mouse of the present embodiment not only effectively solves the problem that the spatial coordinate data of the output is misaligned due to the difference in the position of the zero point after the inertial device is turned on again. Moreover, the data processing method of the space mouse of the embodiment can also effectively avoid the problem that the displacement variation of the space mouse obtained by the first calculation after the inertia device is turned on, and the coordinate output of the space mouse is closed for a short time but not When the inertia device is turned off for data processing, the system power consumption can be effectively reduced, and the displacement variation of the space mouse can be obtained quickly and accurately.
实施例八  Example eight
本实施例是在基于实施例一获得补偿后的空间坐标数据的输出 值, 获得空间鼠标的位移变化量的过程中, 先对惯性器件开启后第一 次计算得到的空间鼠标的位移变化量进行滤除,然后根据空间鼠标的 不同的运动状态, 对空间鼠标的位移变化量进行修正, 并针对空间鼠 标在短时间关闭坐标输出但不关闭惯性器件的情况下进行的数据处 理。  In this embodiment, in the process of obtaining the compensated spatial coordinate data output value according to the first embodiment, in the process of obtaining the displacement variation of the space mouse, the displacement variation of the space mouse calculated for the first time after the inertial device is turned on is performed. Filter out, and then modify the displacement variation of the space mouse according to the different motion states of the space mouse, and perform data processing for the space mouse to close the coordinate output in a short time without turning off the inertial device.
如图 9所示, 首先执行步骤 S901 , 获得当前空间坐标数据的输出 值。 可以参考实施例一步骤 S201至步骤 S205。  As shown in FIG. 9, step S901 is first executed to obtain an output value of the current spatial coordinate data. Reference may be made to the first step S201 to the step S205.
步骤 S902 ,由当前空间坐标数据的输出值和前一次空间坐标数据 的输出值计算空间鼠标的位移变化量。 执行步骤 S903和步骤 S904,对所述空间鼠标的位移变化量的初始 点位置的数据进行滤除, 可以参考实施例二的步骤 S303和 S304。 接着, 根据空间鼠标不同的运动状态, 对空间鼠标的位移变化量 进行修正。 具体地, 执行步骤 S905和步骤 S906, 具体可以参考实施例 三步骤 S403至步骤 S409。 执行步骤 S907, 输出所述空间鼠标的位移变化量。 执行步骤 S908至步骤 S913 ,针对空间鼠标在短时间关闭坐标输 出但不关闭惯性器件的情况下进行数据处理,具体可以参考实施例五 步骤 S604至步骤 S609。 本实施例的空间鼠标的数据处理方法,不仅有效解决重新开启惯 性器件后由于零点位置的不同,所导致的输出的空间坐标数据存在误 差的问题。 而且, 本实施例的空间鼠标的数据处理方法也可以有效避 免因开启惯性器件后第一次计算得到的空间鼠标的位移变化量存在 误差的问题和由于重力加速度的原因使输出的空间鼠标的位移变化 量因为运动状态的不同而产生误差的问题。而且针对空间鼠标在短时 间关闭坐标输出但不关闭惯性器件的情况进行数据处理,可以有效降 低系统功耗, 并可以快速、 准确得到空间鼠标的位移变化量。 通过本实施例所提供的方法,可以使得空间鼠标的各个阶段所得 到的数据都准确、 有效。 本发明技术方案还提供了一种鼠标指针的控制方法,所述方法采 用上述空间鼠标的数据处理方法获取所述空间鼠标的位移变化量,根 据所述空间鼠标的位移变化量控制鼠标指针的移动。 虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员, 在不脱离本发明的精神和范围内, 均可作各种更动与修改, 因此本发 明的保护范围应当以权利要求所限定的范围为准。 Step S902: Calculate the displacement variation of the space mouse from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data. Step S903 and step S904 are performed to filter out the data of the initial point position of the displacement variation of the space mouse. Reference may be made to steps S303 and S304 of the second embodiment. Then, according to the different motion states of the space mouse, the displacement variation of the space mouse is corrected. Specifically, step S905 and step S906 are performed. For details, refer to the third step S403 to step S409. Step S907 is executed to output a displacement change amount of the space mouse. Steps S908 to S913 are performed to perform data processing for the space mouse to close the coordinate output in a short time without turning off the inertial device. For details, refer to Embodiment 5, Step S604 to Step S609. The data processing method of the space mouse of the embodiment not only effectively solves the problem that the spatial coordinate data of the output has an error due to the difference in the position of the zero point after the inertial device is re-opened. Moreover, the data processing method of the space mouse of the embodiment can also effectively avoid the problem that the displacement variation of the space mouse obtained by the first calculation after the inertia device is turned on and the displacement of the output space mouse due to the gravity acceleration. The amount of change causes an error due to the difference in motion state. Moreover, for the space mouse to close the coordinate output in a short time but do not close the inertial device for data processing, the system power consumption can be effectively reduced, and the displacement variation of the space mouse can be obtained quickly and accurately. Through the method provided in this embodiment, the data obtained in each stage of the space mouse can be made accurate and effective. The technical solution of the present invention further provides a method for controlling a mouse pointer, wherein the method uses the data processing method of the space mouse to acquire the displacement variation of the space mouse, and controls the movement of the mouse pointer according to the displacement variation of the space mouse. . Although the present invention has been disclosed above, the present invention is not limited thereto. Any changes and modifications may be made by those skilled in the art without departing from the spirit and scope of the invention, and the scope of the invention should be determined by the scope defined by the appended claims.

Claims

权 利 要 求 Rights request
1. 一种空间鼠标的数据处理方法, 所述空间鼠标包括适于采集空间 坐标数据的惯性器件, 其特征在于, 包括: 记录所述惯性器件关闭前最后一次采集到的空间坐标数据; 在所述惯性器件重新开启后, 获取当前空间坐标的补偿值, 所述 当前空间坐标的补偿值为前一次采集到的空间坐标数据和所记录的 空间坐标数据的差值; 采用所述当前空间坐标的补偿值对当前采集到的空间坐标数据 进行补偿, 以获得当前空间坐标数据的输出值。 1. A data processing method for a space mouse, wherein the space mouse includes an inertial device suitable for collecting spatial coordinate data, characterized by: recording the last spatial coordinate data collected before the inertial device is turned off; After the inertial device is reopened, the compensation value of the current spatial coordinate is obtained. The compensation value of the current spatial coordinate is the difference between the previously collected spatial coordinate data and the recorded spatial coordinate data; using the current spatial coordinate The compensation value compensates the currently collected spatial coordinate data to obtain the output value of the current spatial coordinate data.
2. 如权利要求 1所述的空间鼠标的数据处理方法, 其特征在于, 还 包括: 当所述当前空间坐标的补偿值达到补偿阈值, 则不再对当前采 集到的空间坐标数据进行补偿。 2. The data processing method of a space mouse according to claim 1, further comprising: when the compensation value of the current spatial coordinate reaches a compensation threshold, no compensation is performed on the currently collected spatial coordinate data.
3. 如权利要求 2所述的空间鼠标的数据处理方法, 其特征在于, 所 述补偿阈值为 0。 3. The data processing method of the space mouse according to claim 2, characterized in that the compensation threshold is 0.
4. 如权利要求 1所述的空间鼠标的数据处理方法, 其特征在于, 还 包括:丢弃所述惯性器件重新开启后第一次获得的空间坐标数据的输 出值。 4. The data processing method of a space mouse according to claim 1, further comprising: discarding the output value of the spatial coordinate data obtained for the first time after the inertial device is reopened.
5. 如权利要求 1所述的空间鼠标的数据处理方法, 其特征在于, 还 包括:基于所述空间坐标数据的输出值获得所述空间鼠标的位移变化 量。 5. The data processing method of the space mouse according to claim 1, further comprising: obtaining the displacement change amount of the space mouse based on the output value of the space coordinate data.
6. 如权利要求 5所述的空间鼠标的数据处理方法, 其特征在于, 所 述基于所述空间坐标数据的输出值获得所述空间鼠标的位移变化量 包括: 由当前空间坐标数据的输出值和前一次空间坐标数据的输出值 计算所述空间鼠标的位移变化量。 6. The data processing method of a space mouse according to claim 5, characterized in that, obtaining the displacement variation of the space mouse based on the output value of the space coordinate data includes: using the output value of the current space coordinate data. Calculate the displacement change of the spatial mouse with the output value of the previous spatial coordinate data.
7. 如权利要求 5所述的空间鼠标的数据处理方法, 其特征在于, 所 述基于所述空间坐标数据的输出值获得所述空间鼠标的位移变化量 包括: 若未接收到坐标输出关闭命令或在接收到坐标输出关闭命令后 预设时间范围内接收到坐标输出开启命令,则由当前空间坐标数据的 输出值和前一次空间坐标数据的输出值计算所述空间鼠标的位移变 化量; 若接收到坐标输出关闭命令,则停止计算所述空间鼠标的位移变 化量; 若在接收到坐标输出关闭命令后预设时间范围内未接收到坐标 输出开启命令, 则关闭所述惯性器件。 7. The data processing method of a space mouse according to claim 5, characterized in that, obtaining the displacement change amount of the space mouse based on the output value of the space coordinate data includes: if a coordinate output close command is not received. Or if a coordinate output turn-on command is received within a preset time range after receiving the coordinate output turn-off command, the displacement change amount of the spatial mouse is calculated from the output value of the current spatial coordinate data and the output value of the previous spatial coordinate data; if When the coordinate output close command is received, the calculation of the displacement change of the space mouse is stopped; if the coordinate output open command is not received within the preset time range after the coordinate output close command is received, the inertial device is turned off.
8. 如权利要求 7所述的空间鼠标的数据处理方法, 其特征在于, 还 包括:在接收到坐标输出关闭命令后预设时间范围内记录所述惯性器 件采集的空间坐标数据。 8. The data processing method of a space mouse according to claim 7, further comprising: recording the spatial coordinate data collected by the inertial device within a preset time range after receiving the coordinate output close command.
9. 如权利要求 7所述的空间鼠标的数据处理方法, 其特征在于, 所 述预设时间范围大于或等于 5s。 9. The data processing method of a space mouse according to claim 7, wherein the preset time range is greater than or equal to 5 seconds.
10.如权利要求 6或 7所述的空间鼠标的数据处理方法,其特征在于, 所述基于所述空间坐标数据的输出值获得所述空间鼠标的位移变化 量还包括:丢弃所述惯性器件重新开启后第一次计算得到的空间鼠标 的位移变化量。 10. The data processing method of a space mouse according to claim 6 or 7, wherein said obtaining the displacement variation of the space mouse based on the output value of the space coordinate data further includes: discarding the inertial device. The displacement change of the space mouse calculated for the first time after restarting.
11.如权利要求 10所述的空间鼠标的数据处理方法, 其特征在于, 所 述基于所述空间坐标数据的输出值获得所述空间鼠标的位移变化量 还包括:在丢弃所述惯性器件重新开启后第一次计算得到的空间鼠标 的位移变化量后, 对数据丢弃标志位置位; 所述数据丢弃标志位在空 间鼠标初始化时和惯性器件关闭时复位。 11. The data processing method of a space mouse according to claim 10, characterized in that, obtaining the displacement variation of the space mouse based on the output value of the space coordinate data further includes: discarding the inertial device and re- After the displacement change of the space mouse is calculated for the first time after being turned on, the data discard flag is set; the data discard flag is reset when the space mouse is initialized and when the inertial device is turned off.
12.如权利要求 5所述的空间鼠标的数据处理方法, 其特征在于, 还 包括: 基于所述空间鼠标的运动状态, 修正所述空间鼠标的位移变化 量。 12. The data processing method of the space mouse according to claim 5, characterized in that: The method includes: based on the motion state of the space mouse, correcting the displacement variation of the space mouse.
13.如权利要求 12所述的空间鼠标的数据处理方法, 其特征在于, 所 述空间鼠标的运动状态由重力加速度传感器的数据获得,所述运动状 态包括水平状态下的运动、 垂直状态下的运动和侧立状态下的运动。 13. The data processing method of the space mouse according to claim 12, characterized in that the movement state of the space mouse is obtained from the data of the gravity acceleration sensor, and the movement state includes movement in a horizontal state and movement in a vertical state. Movement and movement while standing sideways.
14.如权利要求 12所述的空间鼠标的数据处理方法, 其特征在于, 所 述基于所述空间鼠标的运动状态, 爹正所述空间鼠标的位移变化量包 括: 若所述空间鼠标在水平状态下运动,则保持所述空间鼠标的位移 变化量; 若所述空间鼠标在垂直状态下运动,则缩小所述空间鼠标的位移 变化量在 X方向和 y方向上的分量; 若所述空间鼠标在侧立状态下运动,则放大所述空间鼠标的位移 变化量在 y方向上的分量。 14. The data processing method of the space mouse according to claim 12, characterized in that, based on the motion state of the space mouse, the displacement variation of the space mouse includes: if the space mouse is horizontal If the space mouse moves in the vertical state, the displacement change amount of the space mouse is maintained; if the space mouse moves in the vertical state, the components of the displacement change amount of the space mouse in the X direction and the y direction are reduced; if the space mouse moves in the vertical state, the displacement change amount of the space mouse is reduced. When the mouse moves in the side-standing state, the component of the displacement variation of the spatial mouse in the y direction is amplified.
15.如权利要求 14所述的空间鼠标的数据处理方法, 其特征在于, 所 述若所述空间鼠标在垂直状态下运动,缩小所述空间鼠标的位移变化 量在 X方向和 y方向上的分量包括: 空间鼠标的空间坐标数据在 z方 向的输出值越大,所述空间鼠标的位移变化量在 X方向和 y方向上的 分量缩小程度越小, 空间鼠标的空间坐标数据在 z 方向的输出值越 小,所述空间鼠标的位移变化量在 X方向和 y方向上的分量缩小程度 越大。 15. The data processing method of the space mouse according to claim 14, characterized in that if the space mouse moves in a vertical state, the displacement variation of the space mouse in the X direction and the y direction is reduced. The components include: The greater the output value of the space coordinate data of the space mouse in the z direction, the smaller the reduction degree of the displacement variation of the space mouse in the X direction and the y direction. The spatial coordinate data of the space mouse in the z direction. The smaller the output value, the greater the reduction in the components of the displacement variation of the spatial mouse in the X direction and the y direction.
16.如权利要求 14或 15所述的空间鼠标的数据处理方法, 其特征在 于, 所述若所述空间鼠标在垂直状态下运动, 缩小所述空间鼠标的位 移变化量在 X方向和 y方向上的分量通过下述方式实现: 所述空间鼠标的位移变化量在 X方向上的分量 dx缩小为( f(z)/a ) xdx,所述空间鼠标的位移变化量在 y方向上的分量 dy缩小为( f(z)/a ) xdy, 其中, f(z)是空间鼠标的空间坐标数据在 z 方向的输出值, a 为衰减系数, l a 5。 16. The data processing method of the space mouse according to claim 14 or 15, characterized in that if the space mouse moves in a vertical state, the displacement change amount of the space mouse is reduced in the X direction and the y direction. The component on is realized in the following way: The component dx of the displacement variation of the space mouse in the X direction is reduced to (f(z)/a) xdx, and the component of the displacement variation of the space mouse in the y direction dy shrinks to (f(z)/a) xdy, where f(z) is the output value of the spatial coordinate data of the space mouse in the z direction, a is the attenuation coefficient, la 5.
17.如权利要求 14所述的空间鼠标的数据处理方法, 其特征在于, 所 述若所述空间鼠标在垂直状态下运动,缩小所述空间鼠标的位移变化 量在 X方向和 y方向上的分量还包括:若缩小后的所述空间鼠标的位 移变化量在 X方向和 y方向上的分量大于分量阈值,则将所述空间鼠 标的位移变化量在 X方向和 y方向上的分量设置为所述分量阈值。 17. The data processing method of the space mouse according to claim 14, characterized in that if the space mouse moves in a vertical state, the displacement variation of the space mouse in the X direction and the y direction is reduced. The components also include: if the reduced components of the displacement change amount of the space mouse in the X direction and the y direction are greater than the component threshold, then setting the components of the displacement change amount of the space mouse in the X direction and the y direction as The component threshold.
18.如权利要求 17所述的空间鼠标的数据处理方法, 其特征在于, 所 述分量阈值为 100。 18. The data processing method of the space mouse according to claim 17, characterized in that the component threshold is 100.
19.如权利要求 14所述的空间鼠标的数据处理方法, 其特征在于, 所 述若所述空间鼠标在侧立状态下运动,放大所述空间鼠标的位移变化 量在 y方向上的分量包括: 空间鼠标的空间坐标数据在 z方向的输出 值越大, 所述空间鼠标的位移变化量在 y 方向上的分量放大程度越 小, 空间鼠标的空间坐标数据在 z方向的输出值越大, 所述空间鼠标 的位移变化量在 y方向上的分量放大程度越大。 19. The data processing method of a space mouse according to claim 14, wherein if the space mouse moves in a side-standing state, amplifying the component of the displacement variation of the space mouse in the y direction includes: : The greater the output value of the space coordinate data of the space mouse in the z direction, the smaller the amplification degree of the component of the displacement variation of the space mouse in the y direction, and the greater the output value of the space coordinate data of the space mouse in the z direction. The greater the amplification of the component of the displacement variation of the space mouse in the y direction.
20.如权利要求 14或 19所述的空间鼠标的数据处理方法, 其特征在 于, 所述若所述空间鼠标在侧立状态下运动, 放大所述空间鼠标的位 移变化量在 y方向上的分量通过下述方式实现: 所述空间鼠标的位移变化量在 y方向上的分量 dy放大为( b/ f(z) ) xdy, 其中, f(z)是空间鼠标的空间坐标数据在 z 方向的输出值, b 为放大系数, l b 5。 20. The data processing method of the space mouse according to claim 14 or 19, characterized in that if the space mouse moves in a side-standing state, the displacement variation of the space mouse in the y direction is amplified. The component is realized in the following way: The component dy of the displacement variation of the space mouse in the y direction is amplified to ( b/ f(z) ) xdy, where f(z) is the spatial coordinate data of the space mouse in the z direction. The output value, b is the amplification coefficient, l b 5.
21.—种鼠标指针的控制方法, 其特征在于, 包括: 采用权利要求 1至 20任一项所述的空间鼠标的数据处理方法获 取所述空间鼠标的位移变化量; 根据所述空间鼠标的位移变化量控制鼠标指针的移动。 21. A method of controlling a mouse pointer, characterized in that it includes: using the data processing method of the space mouse according to any one of claims 1 to 20 to obtain the displacement variation of the space mouse; The displacement delta controls the movement of the mouse pointer.
PCT/CN2013/080985 2013-07-16 2013-09-03 Data processing method for space mouse and control method for mouse pointer WO2015007001A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310298200.5A CN103389807B (en) 2013-07-16 2013-07-16 The data processing method of space mouse and the control method of mouse pointer
CN201310298200.5 2013-07-16

Publications (1)

Publication Number Publication Date
WO2015007001A1 true WO2015007001A1 (en) 2015-01-22

Family

ID=49534098

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/080985 WO2015007001A1 (en) 2013-07-16 2013-09-03 Data processing method for space mouse and control method for mouse pointer

Country Status (2)

Country Link
CN (1) CN103389807B (en)
WO (1) WO2015007001A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10746477B2 (en) 2016-10-07 2020-08-18 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for degassing and charging phase-change thermal devices

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI630514B (en) * 2017-09-08 2018-07-21 致伸科技股份有限公司 Input device
CN109491522A (en) * 2017-09-11 2019-03-19 致伸科技股份有限公司 Input unit
CN108958483A (en) * 2018-06-29 2018-12-07 深圳市未来感知科技有限公司 Rigid body localization method, device, terminal device and storage medium based on interaction pen
CN111831136B (en) * 2019-03-26 2023-07-25 深圳Tcl新技术有限公司 Bluetooth air mouse moving method, storage medium and intelligent television

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101211230A (en) * 2006-12-25 2008-07-02 财团法人工业技术研究院 3D3D micro-inertia sensing method and system
CN102262460A (en) * 2011-08-29 2011-11-30 江苏惠通集团有限责任公司 Air mouse and method and device for controlling movement of mouse pointer
CN102750020A (en) * 2012-07-18 2012-10-24 深圳数字电视国家工程实验室股份有限公司 Method for acquiring air mouse displacement, air mouse and air mouse control system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100437446C (en) * 2002-10-07 2008-11-26 米厄里戈有限公司 Cursor for electronic devices
TW200951762A (en) * 2008-06-03 2009-12-16 Asustek Comp Inc Input device and operation method of computer
CN102109913B (en) * 2009-12-29 2012-11-28 金领导科技(深圳)有限公司 Controller pointer positioning method based on composite MEMS sensor and controller

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101211230A (en) * 2006-12-25 2008-07-02 财团法人工业技术研究院 3D3D micro-inertia sensing method and system
CN102262460A (en) * 2011-08-29 2011-11-30 江苏惠通集团有限责任公司 Air mouse and method and device for controlling movement of mouse pointer
CN102750020A (en) * 2012-07-18 2012-10-24 深圳数字电视国家工程实验室股份有限公司 Method for acquiring air mouse displacement, air mouse and air mouse control system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10746477B2 (en) 2016-10-07 2020-08-18 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for degassing and charging phase-change thermal devices

Also Published As

Publication number Publication date
CN103389807A (en) 2013-11-13
CN103389807B (en) 2016-07-06

Similar Documents

Publication Publication Date Title
US9316513B2 (en) System and method for calibrating sensors for different operating environments
US9678102B2 (en) Calibrating intertial sensors using an image sensor
US9116001B2 (en) Adaptive estimation of frame time stamp latency
WO2015007001A1 (en) Data processing method for space mouse and control method for mouse pointer
US9228842B2 (en) System and method for determining a uniform external magnetic field
CN104737205B (en) Adaptive scale and/or gravity estimation
WO2015114468A2 (en) Motion tracking with reduced on-body sensors set
WO2011063616A1 (en) Method and apparatus for moving object autotracking
CN105783900B (en) A kind of calibration method and device of sensing data
CN111625764B (en) Mobile data calibration method, device, electronic equipment and storage medium
WO2021035645A1 (en) Sensing system, sensing device and control method therefor, movable platform, and storage medium
JP6099023B2 (en) Projector system
TW202110165A (en) An information processing method, electronic equipment, storage medium and program
CN112461258A (en) Parameter correction method and device
TWI726536B (en) Image capturing method and image capturing apparatus
TW201621273A (en) Mobile positioning apparatus and positioning method thereof
TWI518559B (en) Sub-frame accumulation method and apparatus for keeping reporting errors of an optical navigation sensor consistent across all frame rates
WO2023143132A1 (en) Sensor data calibration
CN108733211B (en) Tracking system, operation method thereof, controller and computer readable recording medium
CN103365433B (en) The data processing method of space mouse and the control method of mouse pointer
JP6599097B2 (en) Position / orientation detection device and position / orientation detection program
KR102030610B1 (en) System and method for estimating heading orientation, computer readable medium for performing the method
WO2023058261A1 (en) Position correction device
TW202016688A (en) Electronic device and pose calibration method thereof
JP2021148709A (en) Measurement device, method for measurement, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13889707

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13889707

Country of ref document: EP

Kind code of ref document: A1