WO2013029301A1 - 姿态感知设备及其定位方法、鼠标指针的控制方法 - Google Patents
姿态感知设备及其定位方法、鼠标指针的控制方法 Download PDFInfo
- Publication number
- WO2013029301A1 WO2013029301A1 PCT/CN2011/081622 CN2011081622W WO2013029301A1 WO 2013029301 A1 WO2013029301 A1 WO 2013029301A1 CN 2011081622 W CN2011081622 W CN 2011081622W WO 2013029301 A1 WO2013029301 A1 WO 2013029301A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- sensitive axis
- sensing device
- tilt angle
- index value
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
Definitions
- Attitude sensing device and positioning method thereof and mouse pointer control method
- the present invention relates to the field of positioning technologies, and in particular, to an attitude sensing device, a positioning method thereof, and a method for controlling a mouse pointer. Background technique
- the air mouse is an input device that operates the screen cursor (mouse pointer) 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 relying on the perception of the air movement posture.
- the inertial device is generally set in the attitude sensing device (for example, an air mouse), and the inertial device measurement technology is used to track the posture of the motion carrier.
- the use of inertial device measurement technology to track the motion carrier attitude has a very broad prospect.
- the basic principle of the inertial tracking system is to measure the angular velocity and linear acceleration of the motion of the object by 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 basic principle of the gyroscope is the directional instrument manufactured by using the high angular rotation of the object and the strong angular momentum to make the rotating shaft stably point to one direction.
- a corresponding declination angle is generated, and according to the relationship between the declination angle and the motion, the motion trajectory and position of the current moving object are obtained, thereby realizing the positioning function.
- Accelerometer technology is a combination of inertia and force detection, currently in automotive electronics and There are many applications in the consumer electronics field.
- the acceleration sensor collects the acceleration signal of the moving object in real time, and obtains the trajectory of the motion to realize the positioning by the second-order integral.
- the self-attitude of the current device can be obtained by analyzing the gravity acceleration of the sensor device itself.
- the gyro sensor technology and the acceleration sensor technology it is difficult to fully reflect the attitude and motion state of the moving object. Therefore, the gyro sensor technology and the acceleration sensor technology are usually combined to realize the accuracy and stability of the spatial positioning. Sex.
- the gyro sensor measures the angular velocity of the sensitive axis and then uses the integral operation to obtain the tilt angle to determine the coordinate change, or the acceleration sensor calculates the acceleration component of each sensitive axis and then calculates the inverse trigonometric function.
- the tilt angle is determined to determine the coordinate change, and complex operations (integral operations, inverse trigonometric functions, etc.) are required, and most of these operations involve floating-point operations, which are for the processing control chip in the attitude sensing device, for example, micro Controller (MCU, Micro Control Unit), if an MCU with relatively weak processing power is selected, due to its limited processing capability, it requires more resources to perform complex and large-scale operations, resulting in slower processing speed and Higher power consumption, if you choose a more powerful MCU, it will increase the cost.
- MCU Micro Controller
- a related art is also referred to the International Patent Application Publication No. WO2005108119 (A2), which discloses a free space locating device with tilt compensation and improved usability.
- the problem to be solved by the present invention is that when the attitude sensing device in the prior art uses its inertial device to measure the angular velocity or/and the acceleration component to obtain the tilt angle to determine the coordinate change, a large amount of calculation requires a lot of resources due to complexity, resulting in The processing speed is slower and has higher power consumption.
- the technical solution of the present invention provides a positioning method of an attitude sensing device, where the posture sensing device includes at least one inertial device, and the positioning method of the attitude sensing device includes: establishing an index value and a parameter of the sensitive axis Corresponding relationship, the index value corresponding to the measured value of the sensitive axis of the inertial device, the parameter of the sensitive axis including the tilt angle of the sensitive axis of the inertial device and its trigonometric function value and/or based on a tilt angle of the sensitive axis determines a coordinate value of a sensitive axis of the inertial device; Obtaining measurements of respective sensitive axes of the inertial device;
- the correspondence relationship is queried based on the index value corresponding to the acquired measurement value, and the spatial coordinates of the posture sensing device are determined.
- the parameter of the sensitive axis includes a coordinate value of the sensitive axis of the inertial device determined based on a tilt angle of the sensitive axis; and the corresponding relationship is determined based on an index value corresponding to the acquired measured value, and determining
- the spatial coordinates of the gesture sensing device include:
- the spatial coordinates of the gesture-aware device are determined based on the coordinate values of the sensed sensitive axes of the inertial device.
- the parameter of the sensitive axis includes a tilt angle of the sensitive axis of the inertial device and a trigonometric function value thereof; and the corresponding relationship is queried based on an index value corresponding to the acquired measured value, and the gesture sensing device is determined.
- the spatial coordinates include: querying the correspondence relationship based on an index value corresponding to the acquired measurement value, obtaining a tilt angle of the sensitive axis corresponding to the index value and a trigonometric function value thereof;
- the spatial coordinates of the attitude sensing device are determined based on the tilt angle of the sensed inertial axis of the inertial device and its trigonometric function value.
- the method for locating the gesture-aware device further includes: performing interpolation operations on spatial coordinates of at least two consecutively determined pose-aware devices, and locating the gesture-aware device with all spatial coordinates obtained after the interpolation operation.
- performing the interpolation operation includes: if the acceleration of the spatial coordinate change in the first predetermined time is less than a preset threshold, performing a linear interpolation operation, otherwise performing a parabolic interpolation operation.
- the configuration of the parameters of the sensitive axis in the correspondence relationship is determined by gradually decreasing the segmentation accuracy according to the slope corresponding to the tilt angle.
- the trigonometric function value of the tilt angle corresponding to the index value is expanded by a predetermined multiple and taken
- the determining the spatial coordinates of the gesture sensing device comprises determining with a stable sensitive axis
- the spatial coordinates of the gesture-aware device; determining whether the sensitive axis is stable comprises: if the number of different index values in the buffer area is less than or equal to the first threshold, and the difference between the index values is less than or equal to the second threshold, Then determining that the sensitive axis is stable; the buffer area stores an index value acquired every second predetermined time.
- the inertial device is a gravity acceleration sensor, which includes at least two mutually perpendicular sensitive axes, one of which is perpendicular to the ground plane.
- the gravity acceleration sensor is a capacitive gravity acceleration sensor
- the measured value is a capacitance value of a sensitive axis of the capacitive gravity acceleration sensor.
- the positioning method of the gesture-aware device further comprises determining a spatial attitude of the gesture-aware device based on the index value and a direction perpendicular to a sensitive axis of a ground plane.
- the inertial device is a gyro sensor
- the measured value is a voltage value of a sensitive axis of the gyro sensor.
- the technical solution of the present invention further provides a method for controlling a mouse pointer, including: determining a change in spatial coordinates of an air mouse by using the positioning method of the attitude sensing device, and dividing the variation of the spatial coordinate by a sensitivity The coefficient is output to control the movement of the mouse pointer.
- the technical solution of the present invention further provides an attitude sensing device, where the gesture sensing device includes at least one inertial device, and further includes: a correspondence generating unit configured to establish an index value and a parameter of the sensitive axis Corresponding relationship, the index value corresponding to the measured value of each sensitive axis of the inertial device, the parameter of the sensitive axis including the tilt angle of the sensitive axis of the inertial device and its trigonometric function value and/or based on Determining the coordinate value of the sensitive axis of the inertial device determined by the tilt angle of the sensitive axis;
- An acquiring unit configured to acquire a measured value of each sensitive axis of the inertial device; and a positioning unit, configured to query the corresponding relationship based on an index value corresponding to the acquired measured value, and determine a spatial coordinate of the posture sensing device.
- the technical solution has at least the following advantages: by establishing an index value and a parameter of the sensitive axis (the tilt angle and its trigonometric function value and/or the inertial device determined based on the tilt angle of the sensitive axis) Correspondence between the coordinate values of the sensitive axes, when After obtaining the measured value of the sensitive axis of the inertial device, the corresponding relationship is queried based on the index value corresponding to the measured value, and the tilt angle corresponding to the index value and its trigonometric function value can be quickly obtained and/or based on The inclination angle of the sensitive axis determines the coordinate value of the sensitive axis of the inertial device, thereby quickly determining the spatial coordinate to timely position the attitude sensing device, thereby avoiding complicated and large amount of calculation (integral operation, inverse trigonometric function operation, etc.) Therefore, the processing speed can be increased and the power consumption can be reduced.
- FIG. 1 is a schematic flow chart of a positioning method of an attitude sensing device according to an embodiment of the present invention
- FIG. 2 is a schematic diagram of determining a spatial coordinate according to a tilt angle of a sensitive axis
- FIG. 3 is a tilt angle index table according to Embodiment 1 of the present invention
- FIG. 4 is a schematic diagram of spatial attitude recognition after the gravity acceleration sensor is turned on according to the first embodiment of the present invention
- Figure 5 is a schematic diagram of a linear interpolation operation
- FIG. 6 is a schematic diagram of a parabolic interpolation operation
- FIG. 7 is a schematic structural diagram of an attitude sensing device according to Embodiment 1 of the present invention
- FIG. 8 is a schematic structural diagram of an attitude sensing device according to Embodiment 2 of the present invention.
- an attitude sensing device uses its inertial device to measure an angular velocity or/and an acceleration component to obtain a tilt angle to determine a coordinate change.
- a large amount of calculation requires a lot of resources due to complexity, resulting in a slow processing speed and work. High consumption.
- the technical solution establishes the index value and the parameter of the sensitive axis (the tilt angle and its trigonometric function value and/or the sensitivity of the inertial device determined based on the tilt angle of the sensitive axis) Corresponding relationship between the coordinate values of the axes, after acquiring the measured value of the sensitive axis of the inertial device, querying the corresponding relationship based on the index value corresponding to the measured value, and quickly obtaining the corresponding value of the index value.
- the tilt angle and its trigonometric function value and/or the coordinate value of the sensitive axis of the inertial device determined based on the tilt angle of the sensitive axis thereby quickly determining the spatial coordinates for timely positioning of the attitude sensing device, since the complexity is avoided
- the calculation can therefore increase the processing speed and reduce the power consumption.
- FIG. 1 is a schematic flowchart diagram of a positioning method of an attitude sensing device according to an embodiment of the present invention.
- the gesture sensing device of the embodiment of the present invention includes at least one inertial device. As shown in FIG.
- the positioning method of the gesture sensing device includes: Step S101: Establish a correspondence between an index value and a parameter of a sensitive axis.
- the index value corresponds to a measured value of each sensitive axis of the inertial device, the parameter of the sensitive axis including a tilt angle of the sensitive axis of the inertial device and its trigonometric function value and/or tilt based on the sensitive axis
- the coordinate value of the sensitive axis of the inertial device determined by the angle;
- Step S102 Acquire a measurement value of each sensitive axis of the inertial device.
- Step S103 Query the corresponding relationship according to an index value corresponding to the acquired measurement value, and determine a spatial coordinate of the posture sensing device.
- the attitude sensing device is specifically an air mouse
- the inertial device is an acceleration sensor.
- the acceleration sensor is a capacitive gravity acceleration sensor, which includes at least two mutually perpendicular sensitive axes. One of the sensitive axes is perpendicular to the ground plane.
- a three-axis gravity acceleration sensor is generally selected, and the sensitive axis perpendicular to the ground plane is recorded as the z-axis, and the other two sensitive axes are perpendicular to each other and perpendicular to the z-axis, respectively recorded as the X-axis and the y-axis.
- the plane formed by the X-axis and the y-axis is parallel to the ground plane. Since the current air mouse meets the requirements only on the screen actually It is a two-dimensional coordinate system, so any two axes of the three axes can be used to achieve the required requirements (determine the coordinates in the two-dimensional coordinate system), for example, the X-axis and the Z-axis are selected (the planes formed by the X-axis and the Z-axis are parallel to Screen), although the three-dimensional dynamic is realized in space, and only two-dimensional coordinates are required on the screen, the y-axis is not used in this embodiment.
- the processing of the three-dimensional dynamic effect of the screen (for example, the control of the mouse in the 3D game) can be realized.
- the y-axis can also be used as the calibration of the other two-axis data.
- the gravity acceleration sensor uses gravity as an input vector to determine the direction of the object in space, and the tilt angle is the angle between gravity and its sensitive axis. When gravity is perpendicular to its sensitive axis, it is most sensitive to tilting. Its sensitivity is highest in the azimuth. When the sensitive axis is parallel to gravity, each tilt of 1 degree causes a change in output acceleration.
- a x g n *cosP
- the tilt angle can also be calculated by other inverse trigonometric functions. If there are multiple sensitive axes, the spatial coordinates can be determined according to the inclination angle formed by each sensitive axis and gravity and the acceleration component of each sensitive axis. 2 is a schematic diagram of determining spatial coordinates based on the tilt angle of the sensitive axis. As shown in Fig.
- the original coordinate axis data is X, Y, ⁇
- the change is XI, Yl, Zl
- the inclination angle of the ⁇ axis is ⁇
- the spatial coordinates of the change can also be determined by the tilt angle X of the X-axis.
- the tilt angle is calculated according to the measured acceleration value, and an inverse trigonometric function operation is required, and the computer is very resource-intensive when performing the inverse trigonometric function operation, and the MCU with relatively weak processing capability is
- the limited processing power results in slower processing speeds, which in turn leads to slower determination of spatial coordinates and higher power consumption.
- MCUs with more processing power are selected, the cost will increase.
- the above problem can be solved by establishing a correspondence between the index value and the tilt angle of the sensitive axis of the inertial device (the gravity acceleration sensor in this embodiment) and the value of the trigonometric function, that is, the step S101
- the parameters of the sensitive axis include the tilt angle of the sensitive axis of the inertial device and its trigonometric function value.
- a correspondence relationship between the index value and the tilt angle of the sensitive axis of the gravity acceleration sensor and the value of the trigonometric function thereof is established, and the index value corresponds to the measured value of each sensitive axis of the inertial device.
- the capacitive gravity acceleration sensor converts the measured acceleration into the capacitance change of the capacitor, the measured capacitance value is different from the value reflected in the register, so the capacitance actually measured according to the sensitive axis at different accelerations can be used.
- the range of values or capacitance values sets the value in its corresponding register and establishes a correspondence with the tilt angle at this time and its trigonometric function value. For example, when the value in the register is 1, the corresponding tilt angle is 2.69. Degree, the sine value of 2.69 degrees is about 0.046932, and the cosine value of 2.69 degrees is about 0.99898, and the correspondence is stored in a read-only memory (ROM, Read-Only Memory) in the form of a table.
- ROM Read-Only Memory
- step S101 is specifically a value in the above register, and the cartridge is referred to as a register value.
- step S102 is performed to acquire the measured values of the respective sensitive axes of the inertial device, wherein the measured value Specifically, it is the measured capacitance value, and then the MCU can read the register value corresponding to the measured capacitance value from the register.
- the tilt angle index table is queried based on the register value, and the tilt angle corresponding to the register value and the trigonometric function value thereof can be directly obtained by the corresponding relationship, and based on the slanted query
- the angle and its trigonometric function determine the coordinate value of the sensitive axis of the gravity acceleration sensor, thereby determining the spatial coordinate of the attitude sensing device to achieve positioning thereof, that is, performing step S103, based on the index value corresponding to the acquired measurement value Querying the corresponding relationship (inclination angle index table), determining spatial coordinates of the posture sensing device.
- the deflection of the sensitive axis is required ( The deflection produces a tilt angle. It is divided into four different quadrants. The range of the tilt angle in each quadrant ranges from 0 to 90 degrees. Different angle values correspond to different trigonometric values. The most important one is the segmentation accuracy.
- the tilt angle in the correspondence relationship (tilt angle index table) is configured.
- the segmentation accuracy needs to be configured in consideration of the application requirements, such as 0.5 degrees or 0.1 degrees, and the higher segmentation accuracy can ensure the accuracy of the subsequently determined spatial coordinates.
- the higher the segmentation accuracy the more the number of tilt angles in the tilt angle index table, the larger the amount of data storage, and the higher requirements for the MCU, such as when the segmentation accuracy of the tilt angle is accurate to 0.1 degrees.
- the arrangement of the tilt angle and the trigonometric function value in the tilt angle index table is determined by gradually decreasing the segmentation accuracy in descending order of the slope corresponding to the tilt angle (the configuration of determining the tilt angle determines the Configuration of trigonometric values).
- 3 is a schematic diagram showing the division precision of the inclination angle in the inclination angle index table according to the first embodiment of the present invention. As shown in FIG. 3, the sine value corresponding to the inclination angle of 0 to 90 degrees is an example, and the slope of the point A is larger than the point B, so that the sine value corresponding to the point A is changed under the same division accuracy. It is greater than the change in the corresponding sine value near point B.
- this embodiment The arrangement of the tilt angle and the trigonometric function value in the tilt angle index table is determined according to the slope corresponding to the tilt angle decreasing step by step, that is, the tilt angle is from 0 degrees to 90 degrees, corresponding to The slope gradually becomes smaller, and the difference between the tilt angles stored in the tilt angle index table is larger and larger (the larger the difference between the angles, the lower the segmentation accuracy), for example, the tilt angle is from 0 to 90.
- the segmentation accuracy is 2.69 degrees ( 2.69 degrees - 0 degrees), 2.69 degrees ( 5.38 degrees - 2.69 degrees), 2.7 degrees ( 8.08 degrees - 5.38 degrees), 2.73 degrees ( 10.81 degrees - 8.08 degrees), it can be seen that the segmentation accuracy is gradually reduced, and later selected 57.54 degrees, 62.95 degrees, 69.64 degrees, 79.86 degrees, the segmentation accuracy is 5.41 degrees, 6.69 degrees, 10.22 Degree, it can be seen that the segmentation accuracy is getting lower and lower.
- the manner of determining the inclination angle and the value of the trigonometric function in the inclination angle index table by the gradient of the slope corresponding to the inclination angle is determined by the step of decreasing the inclination.
- the configuration of the tilt angle and its trigonometric function value in the tilt angle index table can be determined according to the actual situation, as shown in the following table, Table 1 is determined after multiple measurements according to actual conditions. An example of a tilt angle index table.
- Table 1 Trigonometric function values
- Table 1 the angle values of the 23 tilt angles selected from 0 degrees to 90 degrees are listed, and the angle values of each tilt angle correspond to an index value, which is 0-22 in turn.
- the two endpoints of 0 degrees and 90 degrees are generally required for any one of the tilt angle index tables, and the tilt angle between 0 degrees and 90 degrees can be as large as the slope corresponding to the tilt angle described above.
- the small order gradually reduces the basic principle of segmentation accuracy and is determined by the actual situation. It should be noted that, usually, the operations involved in the inverse trigonometric function involve floating-point operations, while the complex and large-scale floating-point operations are difficult to achieve fast processing for MCUs with relatively weak processing power, but if the processing power is more Strong MCUs will increase costs.
- the method is to expand the trigonometric function value of the tilt angle corresponding to the index value by a predetermined multiple and round it up to be stored in the tilt angle index table.
- the trigonometric value of the tilt angle corresponding to the index value includes a sine value (sin) and a cosine value (cos), wherein the sine value has two columns, and the left column is an index value.
- the sine value of the corresponding tilt angle is expanded by 10000 times and then rounded up.
- the right column is rounded up by enlarging the sine value of the tilt angle corresponding to the index value by 100 times; similarly, the cosine value also has two columns, and the left column is indexed.
- the cosine of the tilt angle corresponding to the value is expanded by 10000 times and then rounded.
- the right column is rounded up by enlarging the cosine of the tilt angle corresponding to the index value by 100 times.
- the predetermined predetermined multiple of the expansion may be set according to actual needs. If a higher calculation precision is required, the predetermined multiple of the expansion of the trigonometric function value should be set large, and if the calculation accuracy is relatively low, the The predetermined multiple that expands the value of the trigonometric function is set relatively small. Of course, the larger the predetermined multiple of the expansion of the trigonometric function value, the greater the amount of computation that the MCU needs to perform.
- the floating point operation is avoided, so that the relatively low-end microcontroller can be used (for example, Using 8-bit MCUs to achieve calculations reduces costs.
- the trigonometric function value of the tilt angle corresponding to the index value may be used to participate in the floating point operation.
- the above-mentioned query process for the tilt angle index table can be implemented by a binary search method, and the binary search method is commonly used in the prior art, and details are not described herein again.
- the positioning method of the attitude sensing device further includes determining a value of the spatial coordinate of the posture sensing device by determining a value of a trigonometric function obtained by the stable sensitive axis by determining whether the sensitive axis is stable. Since the stability of each sensitive axis of the attitude sensing device may not be the same in a specific implementation, the corresponding tilt angles are also different, thereby generating values of different spatial coordinates, which is required to be stable. The value of the trigonometric function corresponding to the tilt angle obtained by the sensitive axis determines the value of the spatial coordinate.
- the following manner may be adopted: if the number of different index values in the buffer area is less than or equal to the first threshold, and the difference (absolute value) between the index values is less than or equal to the second threshold, then Determining that the sensitive axis is stable; the buffer area stores an index value acquired every second predetermined time.
- the index value in the register also changes, and the index value read in the second predetermined time is stored in a buffer area, and the cache can be analyzed. The data in the zone determines if the sensitive axis is stable.
- the first threshold may take 3, and the second threshold may take 2, that is, when the number of different index values of a sensitive axis in the buffer area is less than or equal to 3, and between the index values The difference is less than or equal to 2, and it can be determined that the sensitive axis is stable.
- the index values of the X-axis in the buffer area are: 22, 22, 22, 21, 21, 20, 20, 20, 19, 19, 18, 18, 17, 17, and the z-axis is in the buffer area.
- the index values in the range include: 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3.
- the difference between the index values in this embodiment refers to the absolute value of the difference between the index values.
- the data (index value) in the buffer area can also be used to determine the pause, such as when the positive, negative or maximum index value and the minimum index value are less than a certain number, the automatic detection is that the sensing device is in a pause state.
- the pause state is also a kind of steady state.
- the sensitive axis is unstable, it will return to the previous index value, but as long as the pause is reached, the gravity acceleration sensor will be considered stable, and the acceleration change will be detected immediately and converted into space coordinates.
- the mouse Once stable, the mouse is detected. It will move diagonally above. Because as long as stability is detected (if there is a pause), the gravity acceleration sensor will output the correct value. In real life, when holding the air mouse for control, it is impossible to always be in an unstable (such as obliquely upward) motion state. If there is a pause or the detection of the data in the buffer area determines that the sensitive axis is stable, the output will be correct. The index value does not return the index value that was previously stable.
- the deflection of the sensitive axis (the deflection produces the tilt angle) into four different quadrants (representing the quadrant where the tilt angle generated by the deflection), and the tilt angle in each quadrant.
- the range is from 0 to 90 degrees.
- Different angle values correspond to different trigonometric values. When they have the same angle value but are in different quadrants, the obtained trigonometric function values have positive and negative points, and the corresponding index values are also positive. Negative points.
- the spatial attitude of the attitude sensing device may also be determined based on the index value and the direction perpendicular to the sensitive axis (z axis) of the ground plane.
- the spatial attitude refers specifically to whether the attitude sensing device is holding, reversing, deflecting, and which direction is biased. Specifically, according to the index value is greater than zero, equal to zero or less than zero, and the value indicating the direction of the z-axis is less than zero (direction up) or greater than zero (direction is downward, and the direction of gravity is positive Direction) Determines the spatial pose of the gesture-aware device.
- the value indicating the z-axis direction can be obtained by averaging the value (index value) of the data in the buffer area and determining it.
- the buffer area stores an index value obtained every second predetermined time. By analyzing the index value in the buffer area, it can be determined whether the sensitive axis is stable. For example, in this embodiment, the data (index value) in the buffer area is set to 14, if the 14 data are all positive or negative, and the value of the data in the buffer area does not exceed 3 different, and the difference is not greater than At 2 o'clock, it is judged that the current sensitive axis is stable.
- the value of the data in the buffer area may be averaged, and if the mean value is a positive number, the output is 1; if the mean value is a negative number, the output is -1, and the output 1 or -1 is the z-axis direction. Value.
- the value of the data in the buffer area is all positive and it is judged that the sensitive axis is stable, it is sure to output 1, if it is all negative and it is judged that the sensitive axis is stable, it is definitely output -1.
- Fig. 4 is a schematic diagram showing the spatial attitude recognition after the gravity acceleration sensor is turned on according to the first embodiment of the present invention.
- the spatial attitude of the attitude sensing device can be identified according to the index value and the value indicating the direction of the z-axis, specifically: if the index value is equal to zero (no deflection) and indicates z If the value of the axis direction is less than zero, it is recognized as being taken; if the index value is equal to zero (no deflection) and the value indicating the direction of the z-axis is greater than zero, it is recognized as a reverse; if the index value is less than zero (with deflection) and represents the z-axis If the value of the direction is less than zero, it is recognized as the first limit.
- the calculation of the space coordinate is (take the X-axis tilt angle ⁇ as an example):
- the space coordinate is calculated as (take the X-axis tilt angle ⁇ as an example):
- the space coordinate is calculated as (the X-axis tilt angle ⁇ is taken as an example):
- index value is greater than zero (with deflection) and the value indicating the z-axis direction is less than zero, it is recognized as the fourth quadrant, and the spatial coordinate is calculated as (take the X-axis tilt angle ⁇ as an example):
- the corresponding tilt angle and its trigonometric function value can be obtained based on the index value, and the coordinate value of the sensitive axis of the gravity acceleration sensor can be calculated by substituting the trigonometric function value into the above formula. Thereby, the value of the spatial coordinates (two-dimensional coordinates in this embodiment) is determined. It should be noted that only the tilt angle corresponding to the index value greater than or equal to zero and its trigonometric function value are listed in Table 1, and the corresponding tilt angle and its trigonometric function value are not listed when the index value is less than zero, but may be listed. Refer to Table 1 for implementation.
- the corresponding tilt angle is 2.69 degrees
- the corresponding tilt angle can still be 2.69 degrees.
- the combination of positive and negative values of the index value indicates that the value in the z-axis direction can be used to identify the quadrant of the tilt angle generated after the deflection of the sensitive axis, and the trigonometric value obtained by the tilt angle in different quadrants has Positive and negative points.
- the air mouse in order to control the movement of the mouse pointer to be smoother, the air mouse needs to output more spatial coordinates.
- the positioning the sensing device by the spatial coordinate further includes: The spatial coordinates of two consecutively determined gesture-aware devices are interpolated, and the attitude-aware devices are located with all spatial coordinates obtained after the interpolation operation.
- the acceleration of the spatial coordinate change in the first predetermined time that is, the acceleration component of the X-axis and the z-axis can be directly measured by the gravity acceleration sensor
- the linearity is performed.
- Interpolation operation otherwise parabolic interpolation is performed.
- Linear interpolation is the single form of algebraic interpolation.
- Figure 5 is a schematic diagram of a linear interpolation operation.
- interpolation points In the application of single-chip microcomputer, the commonly used functions are often solidified in the program memory in the form of a table. For example, for any given interpolation point X, the function values y Q and yi of the corresponding values of xo and Xl , then an interpolation operation can be performed to find the value of the interpolation point (X, y).
- the inertial device is a gravity acceleration sensor.
- the inertial device may also be a gyro sensor.
- the difference from the above embodiment is that, due to the prior art, the gyro sensor
- the change of the voltage is measured by the sensitive axis (also called the detection axis or the detection arm). According to the corresponding relationship between the measured voltage value and the angular velocity, the angular velocity is integrated to obtain the tilt angle.
- inverse trigonometric function operation improve processing speed, can also establish the index value, the inclination angle of the sensitive axis of the gyro sensor and its trigonometric function value (inclination angle index table), through the measured value of the sensitive axis (
- the index value (register value) corresponding to the voltage value is used to query the corresponding relationship (tilt angle index table), obtain a tilt angle corresponding to the index value, and a trigonometric function value, and determine the value based on the trigonometric function value.
- the coordinate value of the sensitive axis of the gravity acceleration sensor thereby determining the attitude sensing device To achieve inter-coordinate positioning on it.
- the embodiment of the present invention further provides a method for controlling a mouse pointer, including: determining, by using the positioning method of the gesture-aware device, a change in spatial coordinates of an air mouse, and changing the spatial coordinate Divided by the sensitivity factor and output to control the movement of the mouse pointer. Since the positioning method of the above-described attitude sensing device improves the speed of determining the spatial coordinates, it is possible to output more spatial coordinates in the same time than the prior art, and the sensitivity to the space mouse pointer control can be improved.
- FIG. 7 is a schematic structural diagram of an attitude sensing device according to Embodiment 1 of the present invention.
- the gesture sensing device includes at least one inertial device, and further includes: a correspondence generating unit 201, configured to establish an index value and a correspondence between parameters of the sensitive axis, the parameters of the sensitive axis including the a tilt angle of a sensitive axis of the inertial device and a trigonometric value thereof, the index value corresponding to a measured value of each sensitive axis of the inertial device; an obtaining unit 202, configured to acquire a measurement of each sensitive axis of the inertial device
- the positioning unit 203 is configured to query the correspondence relationship based on an index value corresponding to the acquired measurement value, and determine a spatial coordinate of the posture sensing device.
- the locating unit 203 includes: a second query unit 203a, configured to query the correspondence relationship based on an index value corresponding to the acquired measurement value, obtain a tilt angle of the sensitive axis corresponding to the index value, and a trigonometric function value thereof
- the second determining unit 203b is configured to determine the spatial coordinate of the attitude sensing device based on the tilt angle of the sensed inertial axis of the inertial device and its trigonometric function value.
- the correspondence between the index value and the parameter of the sensitive axis (the tilt angle of the sensitive axis of the inertial device and the value of the trigonometric function) is stored in a read-only memory in the form of a table, and the table is The tilt angle index table 20 shown in FIG.
- the correspondence relationship generating unit 201 includes a configuration unit (not shown) for determining the tilt angle in the tilt angle index table 20 and the stepwise decreasing pitch precision in descending order of the slope corresponding to the tilt angle.
- the configuration of the trigonometric value is stored in a read-only memory in the form of a table, and the table is The tilt angle index table 20 shown in FIG.
- the correspondence relationship generating unit 201 includes a configuration unit (not shown) for determining the tilt angle in the tilt angle index table 20 and the stepwise decreasing pitch precision in descending order of the slope corresponding to the tilt angle.
- the configuration of the trigonometric value is stored in a read-only memory in the form of a table, and the table is The
- the correspondence relationship generating unit 201 further includes an expansion value rounding unit (not shown) for expanding a trigonometric function value of the tilt angle corresponding to the index value by a predetermined multiple and rounding the value to the tilt Angle index table 20.
- the posture sensing device further includes a stability determining unit (not shown) for determining whether the sensitive axis is stable, including: if the number of different index values in the buffer area is less than or equal to the first threshold, and each index value is If the difference between the two is less than or equal to the second threshold, it is determined that the sensitive axis is stable; the buffer area has an index value acquired every second predetermined time; and the positioning unit 203 obtains the stable sensitive axis.
- the trigonometric function value determines the spatial coordinates.
- the gesture sensing device may further include an interpolation unit (not shown), and the interpolation unit is connected to the second determining unit 203b for using at least two consecutively determined gesture sensing devices.
- the spatial coordinates are subjected to an interpolation operation, and the positioning unit 203 positions the attitude sensing device with all spatial coordinates obtained after the interpolation operation.
- the interpolation unit may specifically include a selection unit, a linear interpolation unit, and a parabolic interpolation unit, wherein the selection unit is configured to select the linear interpolation unit when the acceleration of the spatial coordinate change is less than a preset threshold in the first predetermined time. Interpolation operation, otherwise the parabolic interpolation unit is selected for interpolation.
- the inertial device included in the attitude sensing device is a gravity acceleration sensor, which includes at least two mutually perpendicular sensitive axes, one of which is perpendicular to the ground plane.
- the gesture-aware device further includes a spatial pose recognition unit for determining a spatial pose of the gesture-aware device based on the index value and a direction perpendicular to a sensitive axis of the ground plane.
- a spatial pose recognition unit for determining a spatial pose of the gesture-aware device based on the index value and a direction perpendicular to a sensitive axis of the ground plane.
- the parameter of the sensitive axis in step S101 includes a coordinate value of a sensitive axis of the inertial device determined based on a tilt angle of the sensitive axis.
- the index value is directly established and based on the The inclination angle of the sensitive axis determines the correspondence between the coordinate values of the sensitive axes of the inertial device.
- the correspondence between the index value and the coordinate value of the sensitive axis of the inertial device determined based on the tilt angle of the sensitive axis can also be stored in a read-only memory in the form of a table.
- the table is referred to as a coordinate correspondence table, that is, the coordinate correspondence table includes the index value and a coordinate value of a sensitive axis of the inertial device determined based on a tilt angle of the sensitive axis, and the index value and the coordinate value are Have a corresponding relationship.
- the coordinate value of the sensitive axis of the inertial device can be directly determined according to the trigonometric function value of the index value, thereby determining the space of the gesture sensing device. coordinate.
- Table 1 Example Reference may be made of a read to the index value of 1 (tilt angle of 2.69 degrees), then the resulting query table corresponding to the coordinates corresponding to the coordinate values of Xl and ⁇ , to determine the spatial coordinates of the gesture ( x ⁇ i ), read to the index value of 2 (inclination angle is 5.38 degrees), then query the coordinate correspondence table to get the corresponding coordinate values x 2 and z 2 , so that the determined spatial coordinates are ( x 2 , z 2 ) Etc., this can eliminate the transformation calculation between the trigonometric function value and the spatial coordinates, so that the spatial coordinates can be determined at a faster speed to achieve the positioning of the attitude sensing device.
- the coordinate correspondence table may be combined with the tilt angle index table in the first embodiment, that is, the tilt angle index table formed after the merge includes the index value having the corresponding relationship.
- the tilt angle and its trigonometric function value further include coordinate values of the sensitive axis of the inertial device corresponding to the index value, the tilt angle, and the trigonometric function value, so that the merged tilt can be queried as needed
- the angular index table obtains coordinate values and/or tilt angles of the corresponding sensitive axes of the inertial device.
- the present embodiment further provides an attitude sensing device based on the positioning method of the gesture-aware device.
- 8 is a schematic structural diagram of an attitude sensing device according to Embodiment 2 of the present invention.
- the gesture sensing device includes at least one inertial device, and further includes: a correspondence generating unit 301, configured to establish an index value and Corresponding relationship between parameters of the sensitive axis, the parameter of the sensitive axis comprising a coordinate value of a sensitive axis of the inertial device determined based on a tilt angle of the sensitive axis, the index value and each sensitivity of the inertial device
- the acquiring unit 302 is configured to acquire the measured values of the respective sensitive axes of the inertial device;
- the positioning unit 303 is configured to query the corresponding relationship based on the index value corresponding to the acquired measured value, and determine the The spatial coordinates of the gesture-aware device.
- the locating unit includes: a first query unit 303a, configured to query the correspondence relationship based on an index value corresponding to the acquired measurement value, and obtain a coordinate value of a sensitive axis of the inertial device corresponding to the index value;
- the determining unit 303b is configured to determine a spatial coordinate of the posture sensing device based on the coordinate value of the sensitive axis of the queried inertial device.
- the correspondence between the index value and the parameter of the sensitive axis (the coordinate value of the sensitive axis of the inertial device determined based on the tilt angle of the sensitive axis) is stored in the form of a table in a read-only manner. In the memory, the table is the coordinate correspondence table 30 shown in FIG.
- the correspondence relationship generating unit 301 includes a configuration unit (not shown) for gradually reducing the segmentation precision in descending order of the slope corresponding to the tilt angle, and determining the sensitivity axis in the coordinate correspondence table 30.
- the tilt angle determines the configuration of the coordinate values of the sensitive axes of the inertial device.
- the value-enhancing and rounding unit, the stability determining unit, the interpolating unit, and the spatial attitude recognizing unit of the first embodiment may be included.
- the posture sensing device in the first embodiment For the specific implementation of the gesture-aware device provided in this embodiment, reference may be made to the method for locating the gesture-aware device in the embodiment and the first embodiment, and details are not described herein again.
- the attitude sensing device and the positioning method thereof and the mouse pointer control method provided by the embodiments of the present invention have at least the following beneficial effects:
- a tilt angle index table when the measured value of the sensitive axis of the inertial device is obtained, After the index value, relying on the correspondence between the index value in the tilt angle index table and the parameter of the sensitive axis (the tilt angle and the trigonometric function value), the corresponding index value corresponding to the acquired index value can be quickly obtained.
- the tilt angle and its trigonometric function value and then quickly determine the spatial coordinates to locate the attitude sensing device in time. Since complicated and large amounts of calculations (integral operations, inverse trigonometric functions, etc.) are avoided, the processing speed can be increased and the power consumption can be reduced.
- the index value of the coordinate correspondence table and the parameter of the sensitive axis (based on the sensitive axis Corresponding relationship between the coordinate values of the sensitive axes of the inertial device determined by the tilt angle, and quickly obtaining the inertial device determined based on the tilt angle of the sensitive axis corresponding to the acquired index value
- the coordinate values of the sensitive axes which in turn determine the spatial coordinates at a faster rate.
- the floating point operation is avoided, so that the calculation can be realized by the relatively low-end microcontroller, which is reduced. cost. Since the speed at which the spatial coordinates are determined is improved, more spatial coordinates can be output in the same time than in the prior art, and the sensitivity to the space mouse pointer control can be improved.
- the present invention has been disclosed in the preferred embodiments as described above, but it is not intended to limit the invention, and the present invention may be utilized by the method and technical contents disclosed above without departing from the spirit and scope of the invention. The technical solutions make possible changes and modifications, and therefore, the scope of protection of the technical solutions of the present invention is not deviated from the present invention.
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)
- User Interface Of Digital Computer (AREA)
Abstract
一种姿态感知设备及其定位方法、鼠标指针的控制方法,所述姿态感知设备包括至少一种惯性器件,所述姿态感知设备的定位方法包括:建立索引值与敏感轴的参数之间的对应关系,所述索引值与所述惯性器件的敏感轴的测量值所对应,所述敏感轴的参数包括所述惯性器件的敏感轴的倾斜角及其三角函数值和/或基于所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值;获取所述惯性器件的各个敏感轴的测量值;基于与所获取的测量值对应的索引值查询所述对应关系,确定所述姿态感知设备的空间坐标。本发明技术方案能快速定位姿态感知设备,并且使功耗降低。
Description
姿态感知设备及其定位方法、 鼠标指针的控制方法 本申请要求于 2011 年 8 月 29 日提交中国国家知识产权局、 申请号为 201110252742.X, 发明名称为"姿态感知设备及其定位方法、 鼠标指针的控制 方法"的中国专利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域
本发明涉及定位技术领域,特别涉及一种姿态感知设备及其定位方法、 鼠 标指针的控制方法。 背景技术
目前,计算机鼠标指针的定位大多数都依靠光学传感器或激光传感器来实 现,这些传感器都基于物理光学原理,使得传感器需要依靠桌面等平台来实现。 但是在很多场合, 例如在计算机多媒体教学中, 用户想在空中操控鼠标指针或 是通过在空中操控鼠标指针来实现多媒体电视播放、 网页浏览等应用,仅使用 传统的传感器就无法实现,于是空中鼠标应运而生。空中鼠标是一种输入设备, 像传统鼠标一样操作屏幕光标(鼠标指针), 但却不需要放在任何平面上, 在 空中晃动就能直接依靠空中运动姿态的感知实现对鼠标指针的控制。要实现空 中运动姿态的感知, 一般在姿态感知设备(例如空中鼠标) 中设置惯性器件, 利用惯性器件测量技术实现对运动载体姿态的跟踪。 利用惯性器件测量技术进行运动载体姿态的跟踪具有非常广阔的前景。惯 性跟踪系统的基本原理是在目标初始位置和姿态已知的基础上, 依据惯性原 理, 利用陀螺仪传感器、加速度传感器等惯性器件测量物体运动的角速度和直 线加速度, 然后通过积分获得物体的位置和姿态。 其中, 陀螺仪基本原理是运 用物体高速旋转时, 强大的角动量使旋转轴一直稳定指向一个方向的性质, 所 制造出来的定向仪器。 当运动方向与转轴指向不一致时, 会产生相应的偏角, 再根据偏角与运动的关系,得到目前运动物体的运动轨迹和位置,从而实现定 位的功能。 而加速度传感器技术是惯性与力的检测综合体, 目前在汽车电子和
消费电子领域有较多的应用。 加速度传感器通过实时采集运动物体加速度信 号, 通过二阶积分的方式得到运动的轨迹实现定位。 另外, 在器件处于相对稳 定的状态下, 可以通过分析传感器件自身重力加速度,得到目前器件的自身姿 态。 然而, 由于陀螺仪传感器技术以及加速度传感器技术都存在运动物体姿态 与运动状态很难完全体现的不足, 因此,通常将陀螺仪传感器技术以及加速度 传感器技术结合, 从而能实现空间定位的准确性和稳定性。 但是,现有技术中, 无论是陀螺仪传感器通过测量其敏感轴的角速度进而 利用积分运算得出倾斜角以确定坐标变化,还是加速度传感器通过测量各敏感 轴的加速度分量进而通过反三角函数运算得出倾斜角以确定坐标变化,都需要 进行复杂的运算(积分运算、 反三角函数运算等), 而且这些运算中大多涉及 浮点运算,这对于姿态感知设备中的处理控制芯片来说,例如微控制器( MCU, Micro Control Unit ) , 如果选用处理能力相对较弱的 MCU, 由于其有限的处理 能力, 在进行复杂而大量的运算时需要耗费较多的资源, 导致处理速度较慢, 而且具有较高的功耗, 如果选用处理能力更强的 MCU, 又会使成本上升。 相关技术还可参考公开号为 WO2005108119(A2) 的国际专利申请, 该专 利申请公开了一种带有倾斜补偿和提高可用性的自由空间定位设备。 发明内容 本发明要解决的问题是现有技术中姿态感知设备利用其惯性器件测量角 速度或 /和加速度分量获得倾斜角以确定坐标变化时, 因复杂而大量的计算需 要耗费较多的资源, 导致处理速度较慢, 而且具有较高的功耗。 为解决上述问题, 本发明的技术方案提供一种姿态感知设备的定位方法, 所述姿态感知设备包括至少一种惯性器件, 所述姿态感知设备的定位方法包 括: 建立索引值与敏感轴的参数之间的对应关系,所述索引值与所述惯性器件 的敏感轴的测量值所对应 ,所述敏感轴的参数包括所述惯性器件的敏感轴的倾 斜角及其三角函数值和 /或基于所述敏感轴的倾斜角确定的所述惯性器件的敏 感轴的坐标值;
获取所述惯性器件的各个敏感轴的测量值;
基于与所获取的测量值对应的索引值查询所述对应关系,确定所述姿态感 知设备的空间坐标。 可选的,所述敏感轴的参数包括基于所述敏感轴的倾斜角确定的所述惯性 器件的敏感轴的坐标值;基于与所获取的测量值对应的索引值查询所述对应关 系, 确定所述姿态感知设备的空间坐标包括:
基于与所获取的测量值对应的索引值查询所述对应关系,获得与所述索引 值对应的惯性器件的敏感轴的坐标值;
基于查询到的惯性器件的敏感轴的坐标值确定所述姿态感知设备的空间 坐标。
可选的 ,所述敏感轴的参数包括所述惯性器件的敏感轴的倾斜角及其三角 函数值;基于与所获取的测量值对应的索引值查询所述对应关系,确定所述姿 态感知设备的空间坐标包括: 基于与所获取的测量值对应的索引值查询所述对应关系,获得与所述索引 值对应的敏感轴的倾斜角及其三角函数值;
基于查询到的惯性器件的敏感轴的倾斜角及其三角函数值,确定所述姿态 感知设备的空间坐标。
可选的, 所述姿态感知设备的定位方法还包括: 对至少两个连续确定的姿 态感知设备的空间坐标进行插值运算,以插值运算后获得的所有空间坐标定位 所述姿态感知设备。
可选的, 进行插值运算包括: 若第一预定时间内所述空间坐标变化的加速 度小于预设阈值, 则进行线性插值运算, 否则进行抛物线插值运算。 可选的,按倾斜角所对应的斜率由大至小的顺序逐步降低分割精度确定所 述对应关系中敏感轴的参数的配置。 可选的, 将与所述索引值对应的倾斜角的三角函数值扩大预定倍数并取
可选的 ,所述确定所述姿态感知设备的空间坐标包括以稳定的敏感轴确定
所述姿态感知设备的空间坐标; 判断敏感轴是否稳定包括: 若緩存区内不同的 索引值的数量小于或等于第一阈值,且各索引值之间的差值均小于或等于第二 阈值, 则确定该敏感轴稳定; 所述緩存区存有每隔第二预定时间所获取的索引 值。
可选的, 所述惯性器件为重力加速度传感器, 其至少包括两个相互垂直的 敏感轴, 其中一个敏感轴垂直于地平面。
可选的, 所述重力加速度传感器为电容式重力加速度传感器, 所述测量值 为所述电容式重力加速度传感器的敏感轴的电容值。
可选的,所述姿态感知设备的定位方法还包括基于所述索引值和垂直于地 平面的敏感轴的方向确定所述姿态感知设备的空间姿态。
可选的, 所述惯性器件为陀螺仪传感器, 所述测量值为所述陀螺仪传感器 的敏感轴的电压值。
为解决上述问题, 本发明的技术方案还提供一种鼠标指针的控制方法, 包 括: 以上述姿态感知设备的定位方法确定空中鼠标的空间坐标的变化, 将所述 空间坐标的变化量除以灵敏度系数后输出以控制鼠标指针的移动。 为解决上述问题, 本发明的技术方案还提供一种姿态感知设备, 所述姿态 感知设备包括至少一种惯性器件, 还包括: 对应关系生成单元, 用于建立索引值与敏感轴的参数之间的对应关系, 所 述索引值与所述惯性器件的各个敏感轴的测量值所对应,所述敏感轴的参数包 括所述惯性器件的敏感轴的倾斜角及其三角函数值和 /或基于所述敏感轴的倾 斜角确定的所述惯性器件的敏感轴的坐标值;
获取单元, 用于获取所述惯性器件的各个敏感轴的测量值; 定位单元, 用于基于与获取的测量值对应的索引值查询所述对应关系, 确 定所述姿态感知设备的空间坐标。 与现有技术相比, 本技术方案至少具有以下优点: 通过建立索引值与敏感轴的参数(倾斜角及其三角函数值和 /或基于所述 敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值)之间的对应关系, 当
获取到惯性器件的敏感轴的测量值后,基于与所述测量值对应的索引值查询所 述对应关系, 能够快速得到与所述索引值所对应的倾斜角及其三角函数值和 / 或基于所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值,进而快速 确定空间坐标以便及时定位姿态感知设备, 由于避免了复杂而大量的计算(积 分运算、 反三角函数运算等), 因此能够提高处理速度, 而且使功耗降低。 通过将与索引值对应的倾斜角的三角函数值扩大预定倍数并取整,避免了 浮点运算, 从而能够以相对低端的微控制器实现计算, 降低了成本。 由于提高了确定空间坐标的速度, 因此相对于现有技术, 在同样的时间内 能够输出更多的空间坐标, 能够提高对空间鼠标指针控制的灵敏度。 附图说明 图 1是本发明实施方式提供的姿态感知设备的定位方法的流程示意图; 图 2是根据敏感轴的倾斜角确定空间坐标的示意图; 图 3是本发明实施例一的倾斜角索引表中倾斜角的分割精度示意图; 图 4 是本发明实施例一的重力加速度传感器开启后的空间姿态识别示意 图;
图 5是线性插值运算的示意图;
图 6是抛物线插值运算的示意图; 图 7是本发明实施例一提供的姿态感知设备的结构示意图; 图 8是本发明实施例二提供的姿态感知设备的结构示意图。
具体实施方式 现有技术中姿态感知设备利用其惯性器件测量角速度或 /和加速度分量获 得倾斜角以确定坐标变化时, 因复杂而大量的计算需要耗费较多的资源,导致 处理速度较慢、 功耗较高。 本技术方案通过建立索引值与敏感轴的参数(倾斜 角及其三角函数值和 /或基于所述敏感轴的倾斜角确定的所述惯性器件的敏感
轴的坐标值)之间的对应关系, 当获取到惯性器件的敏感轴的测量值后, 基于 与所述测量值对应的索引值查询所述对应关系,能够快速得到与所述索引值所 对应的倾斜角及其三角函数值和 /或基于所述敏感轴的倾斜角确定的所述惯性 器件的敏感轴的坐标值, 进而快速确定空间坐标以便及时定位姿态感知设备, 由于避免了复杂而大量的计算, 因此能够提高处理速度, 而且使功耗降低。 为使本发明的上述目的、特征和优点能够更为明显易懂, 下面结合附图对 本发明的具体实施方式做详细的说明。在以下描述中阐述了具体细节以便于充 分理解本发明。但是本发明能够以多种不同于在此描述的其它方式来实施, 本 领域技术人员可以在不违背本发明内涵的情况下做类似推广。因此本发明不受 下面公开的具体实施方式的限制。 图 1是本发明实施方式提供的姿态感知设备的定位方法的流程示意图。本 发明实施方式所述姿态感知设备包括至少一种惯性器件, 如图 1所示, 所述姿 态感知设备的定位方法包括: 步骤 S101 , 建立索引值与敏感轴的参数之间的对应关系, 所述索引值与 所述惯性器件的各个敏感轴的测量值所对应,所述敏感轴的参数包括所述惯性 器件的敏感轴的倾斜角及其三角函数值和 /或基于所述敏感轴的倾斜角确定的 所述惯性器件的敏感轴的坐标值;
步骤 S102, 获取所述惯性器件的各个敏感轴的测量值; 步骤 S103 , 基于与所获取的测量值对应的索引值查询所述对应关系, 确 定所述姿态感知设备的空间坐标。
下面以两个具体实施例对上述姿态感知设备的定位方法作详细说明。 实施例一 本实施例中, 所述姿态感知设备具体为空中鼠标, 所述惯性器件为加速度 传感器, 进一步地, 该加速度传感器为电容式重力加速度传感器, 其至少包括 两个相互垂直的敏感轴, 其中一个敏感轴垂直于地平面。 具体实施时, 一般选 用的是三轴重力加速度传感器, 将垂直于地平面的敏感轴记为 z轴, 其余两个 敏感轴相互垂直且分别垂直于 z轴, 分别记为 X轴、 y轴, X轴和 y轴构成的 平面平行于地平面。由于目前空中鼠标达到的要求仅为在屏幕上实现的实际上
是二维的坐标体系, 因此采用三轴中任意两轴即可达到所需要求(确定二维坐 标体系内的坐标 ),例如选取 X轴和 Z轴( X轴和 Z轴构成的平面平行于屏幕 ), 虽然在空间上实现的是三维动态, 而在屏幕上只要求实现二维坐标即可,故本 实施例中暂未使用 y轴。 当然, 在其他实施例中, 如果加入 y轴则可以实现屏 幕三维动态效果的处理(例如 3D游戏中对鼠标的控制), 此外, 还可以使用 y 轴作为其他两轴数据的校准。 本领域技术人员知晓,重力加速度传感器以重力作为输入矢量来决定物体 在空间的方向, 而倾斜角就是重力与其敏感轴的夹角, 当重力与其敏感轴垂直 时, 它对倾斜最敏感, 在该方位上其对倾角的灵敏度最高。 当敏感轴与重力平 行时,每倾斜 1度都引起输出加速度的变化。 下面筒单介绍下重力加速度传感 器对倾斜角测量的原理。 由于重力的方向是不变的, 始终垂直地平面向下, 当 加速度传感器的某个敏感轴与重力形成倾斜角时,可以基于测量到的该敏感轴 的加速度, 通过三角函数, 可以得出加速度和倾斜角之间的关系, 例如在单个 敏感轴(X轴) 的情况下:
Ax=gn*cosP 上述表达式中, X敏感轴的加速度的值; 8 为以重力作为参考的加 速度; β 为倾斜角度。 所以, β 的值可以通过反余弦函数方程求得, 即 P=arccos(Ax/ gn)。 当然, 也可以通过其他反三角函数计算出倾斜角。 如果存在 多个敏感轴时,则可以根据各敏感轴与重力形成倾斜角以及各敏感轴的加速度 分量确定空间坐标。 图 2是根据敏感轴的倾斜角确定空间坐标的示意图。如图 2所示, 设原来坐标轴数据分别为 X、 Y、 Ζ, 变化后为 XI、 Yl、 Zl , ζ轴的 倾斜角为 α, X轴的倾斜角为 Θ, 明显地, θ=90°-α, 贝 :
Υ1=Υ
Zl=Z*cosa+X*sina
Xl=-Z*sina+X*cosa 通过矩阵关系表示为:
因此, 只需要计算出 z 轴的倾斜角为 a, 便可以确定变化后的空间坐标 ( X1,Y1,Z1 )。 特别地, 在 X轴和 ζ轴构成的二维坐标系中, 仅需要得到坐标 ( Χ1, Ζ1 )。 当然, 通过 X轴的倾斜角 Θ同样可以确定变化后的空间坐标。 然而, 现有技术中, 根据测量得到的加速度值计算出倾斜角, 需要反三角 函数运算, 而计算机在进行反三角函数运算时是非常耗费资源的,对于处理能 力相对较弱的 MCU, 因其有限的处理能力, 导致处理速度较慢, 进而导致确 定空间坐标的速度也会较慢,且功耗较高,但如果选用处理能力更强的 MCU, 又会使成本上升。 本实施例中,通过建立索引值与所述惯性器件(本实施例中为重力加速度 传感器) 的敏感轴的倾斜角及其三角函数值之间的对应关系能够解决上述问 题, 即步骤 S101中所述敏感轴的参数包括所述惯性器件的敏感轴的倾斜角及 其三角函数值。具体地, 建立索引值与重力加速度传感器的敏感轴的倾斜角及 其三角函数值之间的对应关系,所述索引值与所述惯性器件的各个敏感轴的测 量值所对应。由于电容式重力加速度传感器会把测量的加速度转换为电容器的 电容量变化, 测得的电容值的不同, 反映到寄存器中的值也不同, 因此可根据 敏感轴在不同的加速度下实际测量的电容值或者电容值的范围设置其所对应 的寄存器中的值, 并与此时的倾斜角及其三角函数值之间建立对应关系, 例如 当寄存器中的值为 1 时, 对应的倾斜角为 2.69 度, 2.69 度的正弦值约为 0.046932, 2.69度的余弦值约为 0.998898, 将所述对应关系以表的形式存储于 只读存储器(ROM, Read-Only Memory ) 中, 在本实施例将该表称为倾斜角 索引表。 需要说明的是, 步骤 S101中的所述索引值具体即为上述寄存器中的 值, 筒称为寄存器值。 在开启重力加速度传感器后,电容式重力加速度传感器会测得基于各敏感 轴的加速度分量所转化的电容值, 即执行步骤 S102 , 获取惯性器件的各个敏 感轴的测量值, 其中, 所述测量值具体即为测得的电容值, 然后, MCU能够 从寄存器中读取与测得的电容值所对应的寄存器值。
读取到寄存器值之后,基于所述寄存器值查询所述倾斜角索引表, 能够凭 借所述对应关系直接得到该寄存器值所对应的倾斜角及其三角函数值,并基于 查询到的所述倾斜角及其三角函数值确定所述重力加速度传感器的敏感轴的 坐标值, 从而确定姿态感知设备的空间坐标以实现对其的定位, 即执行步骤 S103 , 基于与所获取的测量值对应的索引值查询所述对应关系 (倾斜角索引 表), 确定所述姿态感知设备的空间坐标。 需要说明的是, 建立索引值、所述惯性器件的敏感轴的倾斜角及其三角函 数值之间的对应关系(本实施例中即建立倾斜角索引表)时, 需要将敏感轴的 偏转(偏转产生倾斜角)分为四个不同的象限, 每个象限中倾斜角的范围均从 0度至 90度, 不同的角度值对应不同的三角函数值, 其中最为关键的是以怎 样的分割精度配置所述对应关系 (倾斜角索引表)中的倾斜角。 一方面, 分割 精度需要考虑应用的需求进行配置, 比如说 0.5度或者 0.1度, 较高的分割精 度能保证后续所确定的空间坐标的准确性。但分割精度越高,倾斜角索引表中 倾斜角的数量也越多, 数据的存储量也越大, 同时也给 MCU提出了更高的要 求, 比如当倾斜角的分割精度精确到 0.1度时,就需要 MCU的 4K的 ROM存 储空间。 因此, 另一方面, 对于配置倾斜角索引表中的倾斜角还需要考虑到 MCU的存储空间与运行速度。 本实施例中是按倾斜角所对应的斜率由大至小的顺序逐步降低分割精度 确定所述倾斜角索引表中倾斜角及其三角函数值的配置(确定了倾斜角的配置 即确定了其三角函数值的配置)。 图 3是本发明实施例一的倾斜角索引表中倾 斜角的分割精度示意图。 如图 3所示, 以 0度至 90度的倾斜角对应的正弦值 为例, A点的斜率是大于 B点的, 因此在相同分割精度的条件下, A点附近对 应的正弦值的变化要大于 B点附近对应的正弦值的变化。 由此,可以考虑将 A 点附近对应的倾斜角的分割精度设置得相对高一些, 而将 B 点附近对应的倾 斜角的分割精度设置得相对低一些, 例如, 在 0至 45度的倾斜角范围内多选 取几个角度以及三角函数值存入所述倾斜角索引表(分割精度相对较高), 而 在 45至 90度则少选取几个角度以及三角函数值存入所述倾斜角索引表(分割 精度相对较低), 如此便能在一定程度上既保证后续所确定的空间坐标的准确 性, 又减小了对 MCU的存储空间与运行速度的要求。 仍参阅图 3 , 本实施例
中,按照倾斜角所对应的斜率由大至小的顺序逐步降低分割精度确定所述倾斜 角索引表中倾斜角及其三角函数值的配置, 即倾斜角从 0度至 90度, 所对应 的斜率逐步变小, 而存入倾斜角索引表中的倾斜角之间的差值越来越大(角度 间差值越大, 分割精度越低), 举例来说, 倾斜角从 0度至 90度, 最开始选择 0度、 2.69度、 5.38度、 8.08度、 10.81度, 分割精度分别为 2.69度( 2.69度 -0度)、 2.69度 ( 5.38度 -2.69度)、 2.7度 ( 8.08度 -5.38度)、 2.73度 ( 10.81 度 -8.08度), 可以看出分割精度在逐步降低, 而到后来选择 57.54度、 62.95 度、 69.64度、 79.86度, 分割精度分别为 5.41度、 6.69度、 10.22度, 可以看 出分割精度越来越低。 需要说明的是, 上述按倾斜角所对应的斜率由大至小的 顺序逐步降低分割精度确定所述倾斜角索引表中倾斜角及其三角函数值的配 置的方式只是一种选取倾斜角的基本原则, 具体实施时, 在这一基本原则下, 可根据实际情况确定倾斜角索引表中倾斜角及其三角函数值的配置,如下表所 示, 表 1是根据实际情况多次测量后所确定的倾斜角索引表的示例。 表 1 三角函数值
索引值 倾斜角 (度)
正弦值 ( sin ) 余弦值 ( cos )
0 0 0 0 10000 100
1 2.69 469 5 9989 100
2 5.38 938 9 9956 99
3 8.08 1406 14 9901 99
4 10.81 1876 19 9823 98
5 13.55 2343 23 9722 97
6 16.33 2812 28 9597 96
7 19.16 3282 33 9446 94
8 22.02 3749 37 9271 93
9 24.95 4218 42 9067 91
10 27.95 4687 47 8834 88
11 31.04 5156 52 8568 86
12 34.23 5625 56 8268 83
13 37.54 6093 61 7929 79
14 41.01 6562 66 7546 75
15 44.68 7031 70 7110 71
16 48.59 7500 75 6614 66
17 52.83 7968 80 6042 60
18 57.54 8438 84 5367 54
19 62.95 8906 89 4548 45
20 69.64 9375 94 3479 35
21 79.86 9844 98 1761 18
22 90 10000 100 0 0
表 1中, 列出了从 0度至 90度所选取的 23个倾斜角的角度值,每一个倾 斜角的角度值对应有一个索引值, 依次为 0~22。 0度和 90度这两个端点一般 是任何一张倾斜角索引表所必选的, 而处于 0度〜 90度之间的倾斜角, 则可以 根据上述按倾斜角所对应的斜率由大至小的顺序逐步降低分割精度的基本原 则并结合实际情况所确定。 需要说明的是,通常由于反三角函数值参与的运算中涉及浮点运算, 而复 杂而大量的浮点运算对于处理能力相对较弱的 MCU 来说难以实现快速的处 理, 但如果选用处理能力更强的 MCU, 又会增加成本。 因此在本实施例中, 采取的方法是将与索引值对应的倾斜角的三角函数值扩大预定倍数并取整后 存于所述倾斜角索引表。如表 1所示, 索引值所对应的倾斜角的三角函数值包 括正弦值(sin )和余弦值(cos ), 其中, 正弦值有两列, 左边一列是将索引值
所对应的倾斜角的正弦值扩大 10000倍后取整,右边一列是将索引值所对应的 倾斜角的正弦值扩大 100倍后取整; 类似地, 余弦值也有两列, 左边一列是将 索引值所对应的倾斜角的余弦值扩大 10000倍后取整,右边一列是将索引值所 对应的倾斜角的余弦值扩大 100倍后取整。所述扩大的预定倍数可以根据实际 需求进行设定,如果需要更高的计算精度, 则应将三角函数值扩大的预定倍数 设定地较大,如果对计算精度的要求相对较低, 则可以将三角函数值扩大的预 定倍数设定地相对较小些。 当然, 对三角函数值扩大的预定倍数设定地越大, 则意味着 MCU需要进行的计算量也会越大。 总之, 通过将与索引值对应的倾 斜角的三角函数值扩大预定倍数并取整后存于所述倾斜角索引表,避免了浮点 运算, 从而能够以相对低端的微控制器 (例如可以采用 8位的 MCU ) 实现计 算, 降低了成本。 在其他实施例中, 如果对精度的要求高, 并且有处理能力较 强的 MCU支持,则可以用与索引值对应的倾斜角的三角函数值参与浮点运算。 上述对倾斜角索引表的查询过程, 可以通过二分法查找实现,二分法查找 为现有技术中常用手段, 在此不再赘述。 此外, 本实施例中, 所述姿态感知设备的定位方法还包括通过判断敏感轴 的是否稳定,以稳定的敏感轴所获得的三角函数值确定姿态感知设备的空间坐 标的值。 由于在具体实施时, 所述姿态感知设备的各敏感轴的稳定性可能并不 相同, 相应得出的倾斜角也不同, 由此会产生各自不同的空间坐标的值, 此时 就需要基于稳定的敏感轴所得到的倾斜角所对应的三角函数值确定出空间坐 标的值。 例如: 可以同时采用 X轴和 z轴互做补偿, 哪个轴稳定就采用稳定的 敏感轴获得的索引值。 一般地, 水平移动时, z轴稳定; 垂直移动时, X轴稳 定; 斜向移动, 则 X , z轴都不稳定, 此时返回之前处于稳定时的索引值。 具 体判断敏感轴是否稳定可采取以下方式:若緩存区内不同的索引值的数量小于 或等于第一阈值, 且各索引值之间的差值(绝对值) 均小于或等于第二阈值, 则确定该敏感轴稳定; 所述緩存区存有每隔第二预定时间所获取的索引值。具 体实施时,随着各敏感轴加速度的变化,位于寄存器中的索引值也会有所变化, 将第二预定时间内所读取到的索引值存入一緩存区中,可以通过分析该緩存区 中的数据判断敏感轴是否稳定。 所述第一阈值可取 3 , 第二阈值可取 2, 即: 当某个敏感轴在緩存区内不同的索引值的数量小于或等于 3 , 且各索引值之间
的差值均小于或等于 2, 可确定该敏感轴稳定。 举例来说, 假设 X轴在緩存区 内的索引值包括: 22,22,22,21 ,21 ,20,20,20, 19,19,18,18,17,17, 而 z轴在緩存区 内的索引值包括: 2,2,2,2,2,2,3,3,3,3,3,3,3,3。 通过对緩存区内的索引值的分析 可知: X轴在緩存区内不同的索引值的数量有 6个, 且最小索引值与最大索引 值之间差值为 4, 已经不满足各索引值之间的差值均小于或等于 2 , 则确定 X 轴处于不稳定状态; 而 z轴在緩存区内不同的索引值的数量仅为 2个, 且最小 索引值与最大索引值之间差值为 1 , 即能满足各索引值之间的差值均小于或等 于 2, 则确定 z轴处于稳定状态。 需要说明的是, 本实施例中所述索引值之间 的差值指的是索引值之间差的绝对值。 另外, 緩存区中的数据(索引值)还可以用来判断停顿, 如全正、 全负或 者最大索引值与最小索引值之差小于某个数时就自动检测为所述感知设备处 于停顿状态,停顿状态也属于稳定状态的一种。 当敏感轴都不稳定时会返回之 前的索引值, 但只要稍有停顿, 重力加速度传感器就会认为是稳定了, 就会立 即检测到加速度变化并转换成空间坐标。 以空中鼠标的控制为例, 比如刚开始 是水平拿的, 突然向斜上方运动, 如果没有检测到稳定(稍有停顿或其他稳定 的情况), 则鼠标会水平移动, 一旦检测到稳定, 鼠标就会沿斜上方运动。 因 为只要检测到稳定(如有停顿), 重力加速度传感就会输出正确的值。 在现实 生活中, 当手持空中鼠标进行控制时,不可能一直处于不稳定的(比如斜向上) 的运动状态,如果稍有停顿或者对緩存区中的数据检测确定敏感轴稳定, 就会 输出正确的索引值而不会返回之前处于稳定状态的索引值。 如前所述,建立倾斜角索引表时,需要将敏感轴的偏转(偏转产生倾斜角 ) 分为四个不同的象限(表示偏转产生的倾斜角所在的象限), 每个象限中倾斜 角的范围均从 0度至 90度, 不同的角度值对应不同的三角函数值, 具有相同 的角度值但处于不同的象限时, 所得到的三角函数值有正负之分,对应的索引 值也有正负之分。 因此, 本实施例中, 开启重力加速度传感器后, 还可基于所 述索引值和垂直于地平面的敏感轴(z轴)的方向确定所述姿态感知设备的空 间姿态。 所述空间姿态具体指姿态感知设备是正拿、反拿、 是否有偏转以及向 哪个方向偏。 具体地, 可根据索引值是大于零、 等于零或小于零, 以及表示 z 轴方向的值是小于零(方向向上)或是大于零(方向向下, 以重力的方向为正
方向 )确定姿态感知设备的空间姿态。 所述表示 z轴方向的值可以通过对緩存 区中数据的值(索引值)求均值并经过判定后得到。 如前所述, 重力加速度传 感器在运行过程中, 所述緩存区存有每隔第二预定时间所获取的索引值,通过 对緩存区中的所述索引值的分析, 可以判断出敏感轴是否稳定。 例如: 本实施 例中设定緩存区中的数据(索引值)为 14个, 这 14个数据中如果全正或者全 负并且緩存区中数据的值不超过 3个不同的,且差距不大于 2时, 判断目前敏 感轴是稳定的。 进一步地, 可以对緩存区中的数据的值进行求均值运算, 如果 均值为正数就输出 1 , 如果均值为负数就输出 -1 , 而输出的 1或 -1即为所述表 示 z轴方向的值。特别地, 如果緩存区中的数据的值全为正值并且判断出敏感 轴稳定的话是肯定输出 1的,如果全为负值并且判断出敏感轴稳定的话肯定是 输出 -1的。
图 4 是本发明实施例一的重力加速度传感器开启后的空间姿态识别示意 图。 如图 4所示, 当重力加速度传感器开启后, 即可根据索引值和表示 z轴的 方向的值对姿态感知设备的空间姿态进行识别, 具体地: 若索引值等于零(无偏转)且表示 z轴方向的值小于零, 则识别为正拿; 若索引值等于零(无偏转)且表示 z轴方向的值大于零, 则识别为反拿; 若索引值小于零(有偏转)且表示 z轴方向的值小于零, 则识别为第一 限, 此时空间坐标的计算为 (以 X轴的倾斜角 γ为例):
Xl=X*cosy+Z*siny
Zl=-X*siny+Z*cosy
若索引值小于零(有偏转)且表示 z轴方向的值大于零, 则识别为第二; 限, 此时空间坐标的计算为 (以 X轴的倾斜角 γ为例):
Xl=-X*cosy+Z*siny
Zl=-X*siny-Z*cosy
若索引值大于零(有偏转)且表示 z轴方向的值大于零, 则识别为第三; 限, 此时空间坐标的计算为 (以 X轴的倾斜角 γ为例):
X 1 =-X*cosy-Z*siny
Zl=X*siny-Z*cosy
若索引值大于零(有偏转)且表示 z轴方向的值小于零, 则识别为第四象 限, 此时空间坐标的计算为 (以 X轴的倾斜角 γ为例):
Xl=X*cosy-Z*siny
Zl=X*siny+Z*cosy 结合表 1 , 基于索引值可获得其对应的倾斜角及其三角函数值, 将三角函 数值代入上述公式便可计算出重力加速度传感器的敏感轴的坐标值,从而确定 空间坐标的值(本实施例中为二维坐标)。 需要说明的是, 表 1中仅列出索引 值大于或等于零时对应的倾斜角及其三角函数值,而对索引值小于零时对应的 倾斜角及其三角函数值并未列出, 但可参照表 1实施。 例如: 索引值为 1时, 对应倾斜角为 2.69度, 而当索引值为 -1时, 对应倾斜角仍可为 2.69度。 如前 所述,索引值的正负结合表示 z轴方向的值便可用于对敏感轴偏转后产生的倾 斜角所处象限进行识别,所述倾斜角在不同的象限所得出的三角函数值有正负 之分。 具体实施时, 为了能控制鼠标指针的运动更为平滑, 空中鼠标需要输出更 多的空间坐标, 因此, 本实施例中, 所述以所述空间坐标定位所述姿态感知设 备还包括: 对至少两个连续确定的姿态感知设备的空间坐标进行插值运算, 以 插值运算后获得的所有空间坐标定位所述姿态感知设备。 具体地, 可通过确定 第一预定时间内空间坐标变化的加速度(即为 X轴和 z轴的加速度分量, 可以 通过重力加速度传感器直接测得), 若所述加速度小于预设阈值, 则进行线性 插值运算, 否则进行抛物线插值运算。 线性插值是代数插值的最筒单形式。 图 5是线性插值运算的示意图。假设 变量 y和自变量 X关系如图 5曲线 y=f(x)所示。 已知 y在点 x0和 ^的对应值 y0和 yi , 现在需要用一线性插值函数 g(x)=ax+b, 近似代替 f(x)。 根据插值条 件, 应满足: ax0+b=y0 axi+b=yi
解该方程组, 便可确定线性插值函数 g(x)的参数 &和13。 由图 5可知, : 性插值的几何意义是用通过点 A(xo,yo)和点 B^^i^ 直线近似地代替曲. y=f(x), 可以很容易求的该直线表达式:
- x ■ X
) + ^(-
(两点式) 插值节点 Xo和 之间的间距越小, 那么在这一区间 g(x)与 f(x)之间的误 差就越小。 若插值点 X在 x。和 Xl之间, 称为内插, 否则称为外插, 一般只考 虑内插情况。 若所述加速度大于或等于预设阈值,采用上述的线性插值算法进行运算便 不合适了, 在插值运算上应体现为非线性插值运算, 本实施例中可以采用抛物 线插值算法。抛物线插值又称为二次插值, 它是以一元二次多项式去拟合某一 段曲线, 精度自然要比线性插值高。 图 6是抛物线插值运算的示意图, 如图 6 所示, 已知一条曲线 y=f(x)上的三点 A(xo,yo), B(Xl,yi), C(x2,y2); 过此三点可 以作一条抛物线, 即一条二次曲线 g(x), 且是唯一的。 可设: g(x)=ax2+bx+c 已知: g(Xi)=f(Xi) 其中: i=0,l,2 由此可以得到方程组: axo ++bx。+c=yo
当然解此方程组方法有很. , 比如常用的待定系数法, 包含抛物线插值的 拉格朗日形式、牛顿形式等等, 一般可以考虑在线性插值的基础上进行逐次线 性插值, 也比较容易用计算机程序实现
已知三点 (xo,y0)、 (xi,yi)、 (x2,y2)及插值点的 x, y值'
用直线点斜式公式:
第一步 ·· 过点 (x。,y。)、 (x^yO作直线 L01, 即
Loi = y0 + yi _y° (χ-χ0)
:二步: 过点 (x0,y0)、 (x2,y2)作直线 LQ2, 即
, y2 -y0 _
L 、
',02 — yo "l \X~ Xo) 三步: 将 (Xl, L01)、 (x2, L。2)也理解为 "点 ", 过这两点作 "直; , 记为
L012, 即
」02 '01
Lm2(xi) = yi,(i = W) 所以, L。12就是所要求的二次插值多项式 g(x)
通过仔细研究 L012, 可以看出, 。是一阶差商(速度), 而方括号内的 分式是二阶差商 (加速度)。 上述通过两个线性插值的结果得到 g(x), 所以可 以称作逐次线性插值。 由于可以直接调用线性插值算法程序来完成, 因此计算
起来非常方便, 当然本发明实施例中只考虑内插的情况。 在应用插值算法时, 应该考虑下面的两个具体的问题:
1、 关于插值点的选取: 在单片机应用中, 往往把常用的函数以表格的形 式固化在程序存储器中。 例如, 对于任一给定的插值点 X , xo和 Xl的对应值的 函数值 yQ和 yi , 然后就可以进行插值运算, 求得插值点 (X, y ) 的值。
2、 关于精度与复杂度: 为了提高插值精度, 大多数情况下可考虑采用浮 点运算, 此时可以考虑将参与插值运算的数据和表格事先转换成规格化浮点。 但此种情况会使程序显得复杂, 影响单片机的运算速度。 上述实施例中, 所述惯性器件为重力加速度传感器, 在其他实施例中, 所 述惯性器件也可以为陀螺仪传感器, 与上述实施例有所区别的是, 由于现有技 术中,陀螺仪传感器是通过敏感轴(又称为检测轴或检测臂)测量电压的变化, 根据测得的电压值与角速度的对应关系, 对角速度进行积分运算后获得倾斜 角, 因此,为了避免复杂而大量的积分运算、反三角函数运算,提高处理速度, 同样可以建立索引值、陀螺仪传感器的敏感轴的倾斜角及其三角函数值之间的 对应关系 (倾斜角索引表), 通过敏感轴的测量值(一般为电压值)所对应的 索引值(寄存器值)查询所述对应关系 (倾斜角索引表), 获得与所述索引值 对应的倾斜角及其三角函数值,基于所述三角函数值确定所述重力加速度传感 器的敏感轴的坐标值, 进而确定姿态感知设备的空间坐标以实现对其的定位。 基于上述姿态感知设备的定位方法,本发明实施方式还提供一种鼠标指针 的控制方法, 包括: 以上述姿态感知设备的定位方法确定空中鼠标的空间坐标 的变化,将所述空间坐标的变化量除以灵敏度系数后输出以控制鼠标指针的移 动。 由于上述姿态感知设备的定位方法提高了确定空间坐标的速度, 因此相对 于现有技术,在同样的时间内能够输出更多的空间坐标, 能够提高对空间鼠标 指针控制的灵敏度。
基于上述姿态感知设备的定位方法, 本实施例还提供了一种姿态感知设 备。 图 7是本发明实施例一提供的姿态感知设备的结构示意图, 如图 7所示, 所述姿态感知设备包括至少一种惯性器件, 还包括: 对应关系生成单元 201 , 用于建立索引值与敏感轴的参数之间的对应关系,所述敏感轴的参数包括所述
惯性器件的敏感轴的倾斜角及其三角函数值,所述索引值与所述惯性器件的各 个敏感轴的测量值所对应; 获取单元 202, 用于获取所述惯性器件的各个敏感 轴的测量值; 定位单元 203 , 用于基于与获取的测量值对应的索引值查询所述 对应关系, 确定所述姿态感知设备的空间坐标。 所述定位单元 203包括: 第二查询单元 203a, 用于基于与所获取的测量值对应的索引值查询所述对应 关系, 获得与所述索引值对应的敏感轴的倾斜角及其三角函数值; 第二确定单 元 203b, 用于基于查询到的惯性器件的敏感轴的倾斜角及其三角函数值, 确 定所述姿态感知设备的空间坐标。 具体实施例中, 所述索引值与敏感轴的参数 (惯性器件的敏感轴的倾斜角 及其三角函数值 )之间建立的对应关系以表的形式存于只读存储器中, 该表即 为图 7所示的倾斜角索引表 20。所述对应关系生成单元 201包括配置单元(图 中未示出), 用于按倾斜角所对应的斜率由大至小的顺序逐步降低分割精度确 定所述倾斜角索引表 20中倾斜角及其三角函数值的配置。 所述对应关系生成 单元 201还包括扩值取整单元(图中未示出), 用于将与所述索引值对应的倾 斜角的三角函数值扩大预定倍数并取整后存于所述倾斜角索引表 20。 所述姿 态感知设备还包括稳定判断单元(图中未示出), 用于判断敏感轴是否稳定, 包括: 若緩存区内不同的索引值的数量小于或等于第一阈值,且各索引值之间 的差值均小于或等于第二阈值, 则确定该敏感轴稳定; 所述緩存区存有每隔第 二预定时间所获取的索引值;所述定位单元 203以稳定的敏感轴所获得的三角 函数值确定所述空间坐标。
此外, 具体实施时, 所述姿态感知设备还可包括插值单元(图中未示出), 所述插值单元与所述第二确定单元 203b连接, 用于对至少两个连续确定的姿 态感知设备的空间坐标进行插值运算,所述定位单元 203以插值运算后获得的 所有空间坐标定位所述姿态感知设备。 所述插值单元具体可包括选择单元、线 性插值单元以及抛物线插值单元,所述选择单元用于当第一预定时间内所述空 间坐标变化的加速度小于预设阈值, 则选择所述线性插值单元进行插值运算, 否则选择所述抛物线插值单元进行插值运算。 本实施例中, 所述姿态感知设备包括的所述惯性器件为重力加速度传感 器, 其至少包括两个相互垂直的敏感轴, 其中一个敏感轴垂直于地平面。 所述
姿态感知设备还包括空间姿态识别单元,用于基于所述索引值和垂直于地平面 的敏感轴的方向确定所述姿态感知设备的空间姿态。 关于本实施中所述姿态感知设备的具体实施可参考上述姿态感知设备的 定位方法, 在此不再赘述。 实施例二 结合图 1 , 本实施例中, 步骤 S101 中所述敏感轴的参数包括基于所述敏 感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值。与实施例一有所区别的 是, 为了能够使步骤 S103中确定所述姿态感知设备的空间坐标以实现对其定 位的速度更快,本实施例中考虑直接建立所述索引值和基于所述敏感轴的倾斜 角确定的所述惯性器件的敏感轴的坐标值之间的对应关系。 当然, 所述索引值 和基于所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值之间的对 应关系同样可以表的形式存储于只读存储器中,在本实施例,将该表称为坐标 对应表,即所述坐标对应表包括所述索引值和基于所述敏感轴的倾斜角确定的 所述惯性器件的敏感轴的坐标值, 所述索引值与坐标值之间具有对应关系。在 实际实施时, MCU读取到寄存器中的索引值后, 能够直接根据所述索引值查 的三角函数值所确定的所述惯性器件的敏感轴的坐标值), 从而确定姿态感知 设备的空间坐标。 例如: 可以参考实施例一中的表 1 , 读取到索引值为 1 (倾 斜角为 2.69度), 则查询坐标对应表得到对应的坐标值为 Xl和 Ζι ,从而确定的 姿态空间坐标为 (x^i ), 读取到索引值为 2 (倾斜角为 5.38度), 则查询坐标 对应表得到对应的坐标值为 x2和 z2, 从而确定的空间坐标为( x2,z2 )等, 这样 可以免去三角函数值与空间坐标之间的变换计算,从而能够以更快的速度确定 空间坐标以实现对姿态感知设备的定位。 当然, 在其他实施例中, 也可以将所 述坐标对应表与实施例一中所述倾斜角索引表进行合并,即合并后形成的倾斜 角索引表中除了包括具有对应关系的所述索引值、倾斜角及其三角函数值,还 包括与所述索引值、倾斜角及其三角函数值具有对应关系的所述惯性器件的敏 感轴的坐标值,如此可根据需要, 通过查询合并后的倾斜角索引表得到对应的 所述惯性器件的敏感轴的坐标值和 /或倾斜角。 关于本实施例的所述姿态感知设备的定位方法的具体实施可参考实施例
一中所述姿态感知设备的定位方法的相关描述, 在此不再赘述。 基于上述姿态感知设备的定位方法, 本实施例还提供了一种姿态感知设 备。 图 8是本发明实施例二提供的姿态感知设备的结构示意图, 如图 8所示, 所述姿态感知设备包括至少一种惯性器件, 还包括: 对应关系生成单元 301 , 用于建立索引值与敏感轴的参数之间的对应关系,所述敏感轴的参数包括基于 所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值,所述索引值与所 述惯性器件的各个敏感轴的测量值所对应; 获取单元 302 , 用于获取所述惯性 器件的各个敏感轴的测量值; 定位单元 303 , 用于基于与获取的测量值对应的 索引值查询所述对应关系,确定所述姿态感知设备的空间坐标。 所述定位单元 包括: 第一查询单元 303a, 用于基于与所获取的测量值对应的索引值查询所 述对应关系, 获得与所述索引值对应的惯性器件的敏感轴的坐标值; 第一确定 单元 303b , 用于基于查询到的惯性器件的敏感轴的坐标值确定所述姿态感知 设备的空间坐标。 具体实施例中, 所述索引值与敏感轴的参数 (基于所述敏感轴的倾斜角确 定的所述惯性器件的敏感轴的坐标值)之间建立的对应关系以表的形式存于只 读存储器中, 该表即为图 8所示的坐标对应表 30。所述对应关系生成单元 301 包括配置单元(图中未示出), 用于按倾斜角所对应的斜率由大至小的顺序逐 步降低分割精度确定所述坐标对应表 30中基于所述敏感轴的倾斜角确定的所 述惯性器件的敏感轴的坐标值的配置。 此外, 本实施例中同样可包括实施例一所述的扩值取整单元、稳定判断单 元、插值单元、空间姿态识别单元,具体可参考实施例一中所述姿态感知设备。 关于本实施例提供的姿态感知设备的具体实施可参考本实施例以及实施例一 中所述姿态感知设备的定位方法, 在此不再赘述。 综上, 本发明实施方式提供的姿态感知设备及其定位方法、 鼠标指针的控 制方法, 至少具有如下有益效果: 通过建立倾斜角索引表,当获取到惯性器件的敏感轴的测量值所对应的索 引值后,依靠所述倾斜角索引表中索引值与敏感轴的参数(倾斜角及其三角函 数值 )之间所具有的对应关系, 能够快速得到与所述获取到的索引值所对应的 倾斜角及其三角函数值, 进而快速确定空间坐标以便及时定位姿态感知设备,
由于避免了复杂而大量的计算(积分运算、 反三角函数运算等), 因此能够提 高处理速度, 而且使功耗降低。
进一步地, 通过建立坐标对应表, 能够在获取到惯性器件的敏感轴的测量 值所对应的索引值后,依靠所述坐标对应表中的索引值与敏感轴的参数(基于 所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值)之间所具有的对 应关系,快速得到与所获取到的索引值所对应的基于所述敏感轴的倾斜角确定 的所述惯性器件的敏感轴的坐标值, 进而以更快的速度确定空间坐标。 通过将与索引值对应的倾斜角的三角函数值扩大预定倍数并取整后存于 所述倾斜角索引表,避免了浮点运算,从而能够以相对低端的微控制器实现计 算, 降低了成本。 由于提高了确定空间坐标的速度, 因此相对于现有技术, 在同样的时间内 能够输出更多的空间坐标, 能够提高对空间鼠标指针控制的灵敏度。 本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何 本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法 和技术内容对本发明技术方案做出可能的变动和修改, 因此, 凡是未脱离本发 改、 等同变化及修饰, 均属于本发明技术方案的保护范围。
Claims
1.一种姿态感知设备的定位方法,所述姿态感知设备包括至少一种惯性器 件, 其特征在于, 包括:
建立索引值与敏感轴的参数之间的对应关系,所述索引值与所述惯性器件 的敏感轴的测量值所对应 ,所述敏感轴的参数包括所述惯性器件的敏感轴的倾 斜角及其三角函数值和 /或基于所述敏感轴的倾斜角确定的所述惯性器件的敏 感轴的坐标值;
获取所述惯性器件的各个敏感轴的测量值;
基于与所获取的测量值对应的索引值查询所述对应关系,确定所述姿态感 知设备的空间坐标。
2.根据权利要求 1所述的姿态感知设备的定位方法, 其特征在于, 所述敏 感轴的参数包括基于所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐 标值;基于与所获取的测量值对应的索引值查询所述对应关系, 确定所述姿态 感知设备的空间坐标包括:
基于与所获取的测量值对应的索引值查询所述对应关系,获得与所述索引 值对应的惯性器件的敏感轴的坐标值;
基于查询到的惯性器件的敏感轴的坐标值确定所述姿态感知设备的空间 坐标。
3.根据权利要求 1所述的姿态感知设备的定位方法, 其特征在于, 所述敏 感轴的参数包括所述惯性器件的敏感轴的倾斜角及其三角函数值;基于与所获 取的测量值对应的索引值查询所述对应关系,确定所述姿态感知设备的空间坐 标包括:
基于与所获取的测量值对应的索引值查询所述对应关系,获得与所述索引 值对应的敏感轴的倾斜角及其三角函数值;
基于查询到的惯性器件的敏感轴的倾斜角及其三角函数值,确定所述姿态 感知设备的空间坐标。
4.根据权利要求 1所述的姿态感知设备的定位方法,其特征在于,还包括: 对至少两个连续确定的姿态感知设备的空间坐标进行插值运算,以插值运算后 获得的所有空间坐标定位所述姿态感知设备。
5.根据权利要求 4所述的姿态感知设备的定位方法, 其特征在于, 进行插 值运算包括: 若第一预定时间内所述空间坐标变化的加速度小于预设阈值, 则 进行线性插值运算, 否则进行抛物线插值运算。
6.根据权利要求 1至 5任一项所述的姿态感知设备的定位方法,其特征在 于,按倾斜角所对应的斜率由大至小的顺序逐步降低分割精度确定所述对应关 系中敏感轴的参数的配置。
7.根据权利要求 1至 5任一项所述的姿态感知设备的定位方法,其特征在 于, 将与所述索引值对应的倾斜角的三角函数值扩大预定倍数并取整。
8.根据权利要求 1至 5任一项所述的姿态感知设备的定位方法,其特征在 于,所述确定所述姿态感知设备的空间坐标包括以稳定的敏感轴确定所述姿态 感知设备的空间坐标; 判断敏感轴是否稳定包括: 若緩存区内不同的索引值的 数量小于或等于第一阈值,且各索引值之间的差值均小于或等于第二阈值, 则 确定该敏感轴稳定; 所述緩存区存有每隔第二预定时间所获取的索引值。
9.根据权利要求 1所述的姿态感知设备的定位方法, 其特征在于, 所述惯 性器件为重力加速度传感器, 其至少包括两个相互垂直的敏感轴, 其中一个敏 感轴垂直于地平面。
10. 根据权利要求 9所述的姿态感知设备的定位方法, 其特征在于, 所 述重力加速度传感器为电容式重力加速度传感器,所述测量值为所述电容式重 力加速度传感器的敏感轴的电容值。
11. 根据权利要求 9所述的姿态感知设备的定位方法, 其特征在于, 还 包括基于所述索引值和垂直于地平面的敏感轴的方向确定所述姿态感知设备 的空间姿态。
12. 根据权利要求 1所述的姿态感知设备的定位方法, 其特征在于, 所 述惯性器件为陀螺仪传感器,所述测量值为所述陀螺仪传感器的敏感轴的电压 值。
13. 一种鼠标指针的控制方法, 其特征在于, 包括: 以权利要求 1至 12 任一项所述的姿态感知设备的定位方法确定空中鼠标的空间坐标的变化,将所 述空间坐标的变化量除以灵敏度系数后输出以控制鼠标指针的移动。
14. 一种姿态感知设备, 所述姿态感知设备包括至少一种惯性器件, 其 特征在于, 包括: 对应关系生成单元, 用于建立索引值与敏感轴的参数之间的对应关系, 所 述索引值与所述惯性器件的各个敏感轴的测量值所对应,所述敏感轴的参数包 括所述惯性器件的敏感轴的倾斜角及其三角函数值和 /或基于所述敏感轴的倾 斜角确定的所述惯性器件的敏感轴的坐标值;
获取单元, 用于获取所述惯性器件的各个敏感轴的测量值;
定位单元, 用于基于与获取的测量值对应的索引值查询所述对应关系, 确 定所述姿态感知设备的空间坐标。
15. 根据权利要求 14所述的姿态感知设备, 其特征在于, 所述敏感轴的 参数包括基于所述敏感轴的倾斜角确定的所述惯性器件的敏感轴的坐标值;所 述定位单元包括:
第一查询单元,用于基于与所获取的测量值对应的索引值查询所述对应关 系, 获得与所述索引值对应的惯性器件的敏感轴的坐标值;
第一确定单元,用于基于查询到的惯性器件的敏感轴的坐标值确定所述姿 态感知设备的空间坐标。
16. 根据权利要求 14所述的姿态感知设备, 其特征在于, 所述敏感轴的 参数包括所述惯性器件的敏感轴的倾斜角及其三角函数值; 所述定位单元包 括:
第二查询单元,用于基于与所获取的测量值对应的索引值查询所述对应关 系, 获得与所述索引值对应的敏感轴的倾斜角及其三角函数值;
第二确定单元,用于基于查询到的惯性器件的敏感轴的倾斜角及其三角函 数值, 确定所述姿态感知设备的空间坐标。
17. 根据权利要求 14所述的姿态感知设备, 其特征在于,还包括插值单 元, 用于对至少两个连续确定的姿态感知设备的空间坐标进行插值运算。
18. 根据权利要求 17所述的姿态感知设备, 其特征在于, 所述插值单元 包括选择单元、线性插值单元以及抛物线插值单元, 所述选择单元用于当第一 预定时间内所述空间坐标变化的加速度小于预设阈值,则选择所述线性插值单 元进行插值运算, 否则选择所述抛物线插值单元进行插值运算。
19. 根据权利要求 14至 18任一项所述的姿态感知设备, 其特征在于, 所述对应关系生成单元包括配置单元,用于按倾斜角所对应的斜率由大至小的 顺序逐步降低分割精度确定所述对应关系中敏感轴的参数的配置。
20. 根据权利要求 14至 18任一项所述的姿态感知设备, 其特征在于, 所述对应关系生成单元包括扩值取整单元,用于将与所述索引值对应的倾斜角 的三角函数值扩大预定倍数并取整。
21. 根据权利要求 14至 18任一项所述的姿态感知设备, 其特征在于, 还包括稳定判断单元, 用于判断敏感轴是否稳定, 包括: 若緩存区内不同的索 引值的数量小于或等于第一阈值,且各索引值之间的差值均小于或等于第二阈 值,则确定该敏感轴稳定;所述緩存区存有每隔第二预定时间所获取的索引值; 所述定位单元以稳定的敏感轴确定所述姿态感知设备的空间坐标。
22. 根据权利要求 14所述的姿态感知设备, 其特征在于, 所述惯性器件 为重力加速度传感器, 其至少包括两个相互垂直的敏感轴, 其中一个敏感轴垂 直于地平面。
23. 根据权利要求 22所述的姿态感知设备, 其特征在于, 所述重力加速 度传感器为电容式重力加速度传感器,所述测量值为所述电容式重力加速度传 感器的敏感轴的电容值。
24. 根据权利要求 22所述的姿态感知设备, 其特征在于,还包括空间姿 态识别单元,用于基于所述索引值和垂直于地平面的敏感轴的方向确定所述姿 态感知设备的空间姿态。
25. 根据权利要求 14所述的姿态感知设备, 其特征在于, 所述惯性器件 为陀螺仪传感器, 所述测量值为所述陀螺仪传感器的敏感轴的电压值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110252742.X | 2011-08-29 | ||
CN201110252742XA CN102289305B (zh) | 2011-08-29 | 2011-08-29 | 姿态感知设备及其定位方法、鼠标指针的控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013029301A1 true WO2013029301A1 (zh) | 2013-03-07 |
Family
ID=45335778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2011/081622 WO2013029301A1 (zh) | 2011-08-29 | 2011-11-01 | 姿态感知设备及其定位方法、鼠标指针的控制方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102289305B (zh) |
WO (1) | WO2013029301A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229353B (zh) * | 2017-05-09 | 2020-05-22 | 歌尔科技有限公司 | 空鼠的位移获取方法和装置 |
CN108007463B (zh) * | 2017-11-29 | 2020-11-27 | 天津聚飞创新科技有限公司 | 无人机姿态获取方法、装置及无人机 |
CN110633018B (zh) * | 2019-07-30 | 2021-04-09 | 华为技术有限公司 | 控制大屏设备显示的方法、移动终端及第一系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101178628A (zh) * | 2006-12-08 | 2008-05-14 | 杭州电子科技大学 | 无线感知鼠标控制方法 |
CN101206536A (zh) * | 2006-12-22 | 2008-06-25 | 财团法人工业技术研究院 | 惯性感测六轴向输入装置及其使用方法 |
CN101598971A (zh) * | 2008-06-03 | 2009-12-09 | 华硕电脑股份有限公司 | 计算机系统的输入装置及其操作方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9722766D0 (en) * | 1997-10-28 | 1997-12-24 | British Telecomm | Portable computers |
ES2384572T3 (es) * | 2004-04-30 | 2012-07-09 | Hillcrest Laboratories, Inc. | Dispositivos apuntadores en el espacio libre con compensación de inclinación y usabilidad mejorada |
CN101882015B (zh) * | 2010-06-17 | 2016-06-08 | 金领导科技(深圳)有限公司 | 基于复合mems传感器的控制器及其手势控制按键方法 |
-
2011
- 2011-08-29 CN CN201110252742XA patent/CN102289305B/zh active Active
- 2011-11-01 WO PCT/CN2011/081622 patent/WO2013029301A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101178628A (zh) * | 2006-12-08 | 2008-05-14 | 杭州电子科技大学 | 无线感知鼠标控制方法 |
CN101206536A (zh) * | 2006-12-22 | 2008-06-25 | 财团法人工业技术研究院 | 惯性感测六轴向输入装置及其使用方法 |
CN101598971A (zh) * | 2008-06-03 | 2009-12-09 | 华硕电脑股份有限公司 | 计算机系统的输入装置及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102289305A (zh) | 2011-12-21 |
CN102289305B (zh) | 2013-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2013029302A1 (zh) | 空中鼠标及控制鼠标指针移动的方法与装置 | |
KR101185589B1 (ko) | 움직임 감지를 통한 사용자 명령 입력 방법 및 디바이스 | |
CN106933390B (zh) | 惯性技术和超声波相结合的触控笔位姿检测方法及系统 | |
JP2015506520A (ja) | ポータブルデバイス及びその制御方法 | |
JP2004286732A5 (zh) | ||
US20090299686A1 (en) | Pointing device and method for determining rotational angle of pointing device | |
CN106574838B (zh) | 行人导航装置及方法 | |
JP5678357B2 (ja) | 回転情報演算方法、回転情報演算プログラム、磁気型ジャイロスコープおよび移動体 | |
WO2013029301A1 (zh) | 姿态感知设备及其定位方法、鼠标指针的控制方法 | |
WO2013029303A1 (zh) | 姿态感知设备及其定位、鼠标指针的控制方法和装置 | |
US11620846B2 (en) | Data processing method for multi-sensor fusion, positioning apparatus and virtual reality device | |
CN112197676B (zh) | 物体表面信息的获取方法、装置、计算机设备和存储介质 | |
TWI700614B (zh) | 追蹤系統的操作方法、控制器、追蹤系統及非揮發性電腦可讀取記錄媒體 | |
CN107678568B (zh) | 一种通过移动终端模拟激光笔的方法及装置 | |
CN108762528B (zh) | 适用于空中飞鼠的姿态解算方法 | |
KR100940095B1 (ko) | 포인터 이동 값 계산 장치, 포인터 이동 값 보정 방법 및자세 각도 변화량 보정 방법, 이를 사용하는 3차원 포인팅디바이스 | |
TW201310298A (zh) | 具軌跡偵測功能之觸控系統及方法 | |
WO2013023399A1 (zh) | 二维/三维角速度检测装置、方法、姿态感知设备 | |
EP2972682A1 (en) | Computing a magnetic heading | |
KR20150046819A (ko) | 단말의 위치 정보를 획득하는 방법 및 그에 따른 단말, 그에 따른 시스템 | |
CN106951262A (zh) | 一种显示处理方法及装置 | |
Gao et al. | Research on Transmitter of the Somatosensory Hand Gesture Recognition System | |
US20080065351A1 (en) | Thickness measurement based navigation apparatus and methods | |
Zhou et al. | Design of MEMS wireless air-mouse system based on MEMS technology | |
Wang et al. | A track-based gesture recognition algorithm for Kinect |
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: 11871609 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: 11871609 Country of ref document: EP Kind code of ref document: A1 |