3D pointing devices and methods
First Claim
Patent Images
1. A method implemented in a device having a processor and a plurality of sensors, comprising a three-axis accelerometer and at least one rotational sensor, the method comprising:
- detecting movement of the device using at least one of the plurality of sensors;
obtaining three-axis angular velocity values and three-axis acceleration values at the processor from the plurality of sensors in connection with the detected movement, wherein the three-axis angular velocity values correspond to rotational movement of the device detected by the at least one rotational sensor, and wherein the three-axis acceleration values comprise at least an acceleration of the device due to gravity detected by the three-axis accelerometer;
determining, by the processor, a current orientation in which the device is currently being held by a user using the three-axis acceleration values, the three-axis angular velocity values, a function for rotating a prior orientation in accordance with the three-axis angular velocity values and filtering to attenuate a tremor introduced into the device in connection with the device being held; and
outputting, by the processor, the current orientation.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods according to the present invention address these needs and others by providing a handheld device, e.g., a 3D pointing device, which uses at least one sensor to detect motion of the handheld device. The detected motion can then be mapped into a desired output, e.g., cursor movement.
328 Citations
20 Claims
-
1. A method implemented in a device having a processor and a plurality of sensors, comprising a three-axis accelerometer and at least one rotational sensor, the method comprising:
-
detecting movement of the device using at least one of the plurality of sensors; obtaining three-axis angular velocity values and three-axis acceleration values at the processor from the plurality of sensors in connection with the detected movement, wherein the three-axis angular velocity values correspond to rotational movement of the device detected by the at least one rotational sensor, and wherein the three-axis acceleration values comprise at least an acceleration of the device due to gravity detected by the three-axis accelerometer; determining, by the processor, a current orientation in which the device is currently being held by a user using the three-axis acceleration values, the three-axis angular velocity values, a function for rotating a prior orientation in accordance with the three-axis angular velocity values and filtering to attenuate a tremor introduced into the device in connection with the device being held; and outputting, by the processor, the current orientation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 19)
-
-
10. A device comprising circuitry, including a processor and a plurality of sensors, wherein the plurality of sensors comprises a three-axis accelerometer and at least one rotational sensor, wherein:
-
the plurality of sensors is configured to detect movement of the device; the processor is configured to; obtain three-axis angular velocity values and three-axis acceleration values from the plurality of sensors in connection with the detected movement, wherein the three-axis angular velocity values correspond to rotational movement of the device detected by the at least one rotational sensor, and wherein the three-axis acceleration values comprise at least an acceleration of the device due to gravity detected by the three-axis accelerometer; determine a current orientation in which the device is currently being held by a user using the three-axis acceleration values, the three-axis angular velocity values, a function for rotating a prior orientation in accordance with the three-axis angular velocity values and filtering to attenuate a tremor introduced into the device in connection with the device being held; and output the current orientation. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 20)
-
Specification