IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0953756
(2007-12-10)
|
등록번호 |
US-7778792
(2010-09-06)
|
발명자
/ 주소 |
- Huang, Andrew Shane
- Maxwell, Duane Stewart
- Steele, Kenneth Earl
- Tomlin, Stephen Lawrence
- Adler, Steven Michael
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
115 인용 특허 :
2 |
초록
▼
Systems and methods for location, motion, and contact detection and tracking in a portable networked device are disclosed. A portable device may include a motion detection unit including an accelerometer for detecting accelerations in one or more axes. Signals associated with the detected motion are
Systems and methods for location, motion, and contact detection and tracking in a portable networked device are disclosed. A portable device may include a motion detection unit including an accelerometer for detecting accelerations in one or more axes. Signals associated with the detected motion are processed to generate estimates of device acceleration, velocity, and relative and absolute locations. Additional processing may be performed to detect user gestures or other user input relevant to portable device control. Particular motion or vibrational characteristics may be also be detected and used by other processes in the portable device.
대표청구항
▼
What is claimed is: 1. A motion module for incorporation in a portable device, comprising: a processor module, including a processor and a processor readable memory disposed to store data and instructions for execution by said processor; a motion sensing module in electrical communication with the
What is claimed is: 1. A motion module for incorporation in a portable device, comprising: a processor module, including a processor and a processor readable memory disposed to store data and instructions for execution by said processor; a motion sensing module in electrical communication with the processor module, said motion sensing module including: an accelerometer disposed to provide an analog acceleration signal associated with one or more axes of motion of said portable electronic device; an analog to digital (A/D) converter disposed to receive said analog acceleration signal and generate a plurality of digital acceleration values; and a signal processing module disposed to generate, from said plurality of digital acceleration values, a plurality of relative velocity values and a plurality of relative position values, and store, in said memory, said plurality of relative velocity values and said plurality of relative position values; wherein the signal processing module includes: a first integrator module disposed to generate, based at least in part on said plurality of digital acceleration values, said plurality of relative velocity values; and a second integrator module disposed to generate, based at least in part on said plurality of relative velocity values, said plurality of relative position values; and wherein the signal processing module further includes a Kalman filter module disposed to: receive, at a Kalman filter input, said plurality of digital acceleration values, said plurality of relative velocity values, and said plurality of relative position values; apply a Kalman filtering process to said plurality of relative acceleration values, said plurality of relative velocity values, and said plurality of relative position values so as to provide a plurality of interpolated position values; and store said plurality of interpolated position values in said memory; and wherein the signal processing module further includes a vector quantization module disposed to: receive position calibration data, including a set of predefined positions; receive said plurality of interpolated position values; generate, based at least in part on said position calibration data and said interpolated position values, a first implied position value, where said first implied position value is based on one of said predefined positions; and store said first implied position value in said memory. 2. The module of claim 1 wherein said analog acceleration signal includes signal components associated with each of three orthogonal axes (X, Y, and Z) of motion. 3. The module of claim 1 wherein said motion sensing module further comprises a prefiltering module in electrical communication with said accelerometer and said analog to digital converter, said prefilter module disposed to provide a lowpass filtered analog acceleration signal to the input of said analog to digital converter. 4. The module of claim 1 wherein said signal processing module includes a heuristic trend analysis module disposed to receive said plurality of digital acceleration values and provide, to said first and second integrator modules, a noise offset suppression signal. 5. The module of claim 1 wherein said signal processing module further includes a gesture recognition module disposed to: receive a set of gesture data, said gesture data including data sets associated with a plurality of predefined gestures; receive said plurality of interpolated position values; compare said gesture data and said plurality of interpolated position values; generate, responsive to said comparing, gesture match data, said gesture match data including match information associated with one or more of said plurality of predefined gestures; and store said gesture match data in said memory. 6. The module of claim 5, wherein said gesture recognition module is disposed to generate said gesture match data at least in part based on a trellis algorithm. 7. The module of claim 1 wherein said signal processing module further includes a signature match module disposed to: receive a matching signal data set; receive said plurality of digital acceleration values; provide said matching signal data set and said digital acceleration values to a matched filter; and store the output of said matched filter in said memory. 8. The module of claim 7 wherein said signature match module is further disposed to provide, based on the output of said matched filter, a match indication signal if said plurality of digital acceleration values matches said matching signal data set. 9. A portable electronic device comprising: a frame structure; a core electronics unit including a processor and memory disposed to store data and instructions for one or more computer programs configured to be executed by the processor; a motion sensing module in electrical communication with the core electronics unit, said motion sensing module including: an accelerometer disposed to provide an analog acceleration signal associated with one or more axes of motion of said portable electronic device; an analog to digital (A/D) converter disposed to receive said analog acceleration signal and generate a plurality of digital acceleration values; a communications module configured to provide one or more network connections; a signal processing module including machine readable instructions, stored in said memory and configured to be implemented, at least in part, on said processor, to generate, from said plurality of digital acceleration values, a plurality of relative velocity and relative position values, and store, in said memory, said plurality of digital acceleration values, said plurality of relative velocity values, and said plurality of relative position values; and a housing attached to the frame structure, the housing at least partially defining a compartment containing the core electronics unit and the motion sensing unit wherein the signal processing module further includes: a first integrator module configured to generate, based at least in part on said plurality of digital acceleration values, said plurality of relative velocity values; and a second integrator module disposed to generate, based at least in part on said plurality of relative velocity values, said plurality of relative position values; and wherein the signal processing module further includes a Kalman filter module configured to: receive said plurality of digital acceleration values, said plurality of relative velocity values, and said plurality of relative position values; apply a Kalman filtering process to said plurality of relative acceleration values, said plurality of relative velocity values, and said plurality of relative position values, so as to provide a plurality of interpolated position values; and store said plurality of interpolated position values in said memory; and wherein the signal processing module further includes a vector quantization module configured to: receive position calibration data including a set of predefined positions, receive said plurality of interpolated position values; generate, based at least in part on said position calibration data and said interpolated position values, a first implied position value, said first implied position value based on one of said predefined positions; and store said first implied position value in said memory. 10. The device of claim 9 wherein said analog acceleration signal includes signal components associated with each of three orthogonal axes (X, Y, and Z) of motion. 11. The device of claim 9 wherein said motion sensing module further comprises a prefiltering module in electrical communication with said accelerometer and said analog to digital converter, said prefilter module disposed to provide a lowpass filtered analog acceleration signal to the input of said analog to digital converter. 12. The device of claim 9 wherein said signal processing module further includes a gesture recognition module disposed to: receive a set of gesture data, said gesture data including data sets associated with a plurality of predefined gestures; receive said plurality of interpolated position values; compare said gesture data and said plurality of interpolated position values; generate, responsive to said comparing, gesture match data, said gesture match data including match information associated with one or more of said plurality of predefined gestures; and store said gesture match data in said memory. 13. The device of claim 12, wherein said gesture recognition module is disposed to determine generate said gesture match data at least in part based on a trellis algorithm. 14. The device of claim 9 wherein said signal processing module further includes a signature match module disposed to: receive a matching signal data set; receive said plurality of digital acceleration values; provide said matching signal data set and said plurality of digital acceleration values to a matched filter; generate a matched filter output; and store said matched filter output in said memory. 15. The device of claim 14 wherein said signature match module is further disposed to provide, based on said matched filter output, a match indication signal if said plurality of digital acceleration values matches said matching signal data set. 16. A method of operating a portable device comprising the steps of: generating, at an accelerometer, an analog acceleration signal associated with one or more axes of motion of said portable device; providing, to an A/D converter, said analog acceleration signal; providing, from said A/D converter, a plurality of digital acceleration values based on said analog acceleration signal; generating, based at least in part on said plurality of digital acceleration values, a plurality of relative velocity values and a plurality of relative position values; storing, in a processor readable memory, said plurality of digital acceleration values, said plurality of relative velocity values, and said plurality of relative position values; receiving, at a Kalman filter, said plurality of digital acceleration values, said plurality of relative velocity values, and said plurality of relative position values; providing, from said Kalman filter, a plurality of interpolated position values; storing, in said memory, said plurality of interpolated position values, receiving position calibration data, including a set of predefined positions; receiving said plurality of interpolated position values; generating, based at least in part on said position calibration data and said plurality of interpolated position values, a first implied position value, said first implied position value based on one of said predefined positions; and storing said first implied position value in said memory; wherein said plurality of digital acceleration values are integrated in a first integrator module to provide said plurality of relative velocity values, and said plurality of relative velocity values are integrated in a second integrator module to provide said plurality of relative position values. 17. The method of claim 16 wherein said analog acceleration signal includes signal components associated with three orthogonal axes (X, Y, and Z) of motion, and said plurality of digital acceleration values includes a plurality of digital acceleration values associated with each of said X, Y, and Z axes of motion. 18. The method of claim 16 further including the step of lowpass filtering said analog acceleration signal to provide a lowpass filtered analog acceleration signal, and providing said lowpass filtered analog acceleration signal to said A/D converter. 19. The method of claim 16 further including the steps of receiving, at a heuristic trend analysis module, said plurality of digital acceleration values, and providing, from said heuristic trend analysis module, an offset suppression signal. 20. The method of claim 16 further including the steps of: receiving a set of gesture data, said gesture data including one or more data sets associated with each of a plurality of predefined gestures; receiving said plurality of interpolated position values; comparing said gesture data and said plurality of interpolated position values; generating, responsive to said comparing, gesture match data, said gesture match data including matching information associated with one or more of said plurality of predefined gestures; and storing said gesture match data in said memory. 21. The method of claim 20, wherein said gesture match data is generated at least in part based on a trellis algorithm. 22. The method of claim 16 further including the steps of: receiving a matching signal data set; receiving said plurality of digital acceleration values; providing said matching signal data set and said plurality of digital acceleration values to a matched filter; generating, at said matched filter, a matched filter output data set; and storing said matched filter output data set in said memory. 23. The method of claim 22 including the step of providing, based on the output of said matched filter data set, a match indication signal if said plurality of digital acceleration values match said matching signal data set. 24. A method of motion processing to determine positioning of a portable electronic device, comprising the steps of: receiving training input at said portable device identifying a plurality of mapped locations within a mapped area; and based at least in part on said mapped locations, identifying a current position within said plurality of mapped locations; wherein said identifying a current position comprises the steps of: determining a start location; detecting an onset of motion; responsive to said detecting, receiving one or more acceleration component signals associated with said motion, and integrating said component signals to determine one or more running positions; detecting when said motion has substantially stopped; responsive to said detecting, determining an estimated location based on said one or more running positions; and based at least in part on the start location and the stop location, mapping the estimated location of the device to one of said plurality of mapped locations, and storing said mapped location as said current position.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.