US 20050032582 A1
An orientation and position tracking system in three-dimensional space and over a period of time utilizing multiple inertial and other sensors for determining motion parameters to measure orientation and position of a moveable object. The sensors, for example vibrational and angular velocity sensors, generate signals characterizing the motion of the moveable object. The information is received by a data acquisition system and processed by a microcontroller. The data is then transmitted via wireless communication to an external data reception system (locally based or a global network). The information can then be displayed and presented to the user through a variety of means including audio, visual, and tactile.
1. An apparatus for determining orientation and position of a moveable object, comprising:
at least one sensor that determines motion parameters, wherein said at least one sensor generates orientation and position signals;
a microcontroller that processes the orientation and position signals to generate orientation and position data;
a wireless transmitter that transmits in real-time said orientation and position data;
wherein said sensors, said microcontroller and said wireless transmitter are integrated into or on said moveable object.
2. The apparatus of
3. The apparatus of
4. The apparatus of
5. The apparatus of
6. The apparatus of
7. The apparatus of
8. The apparatus of
9. The apparatus of
10. The apparatus of
11. The apparatus of
12. The apparatus of
13. The apparatus of
14. The apparatus of
15. The apparatus of
16. The apparatus of
17. The apparatus of
18. The apparatus of
19. The apparatus of
20. A system for determining orientation and position of a moveable object, comprising:
at least one sensor installed on or in a moveable object for generating orientation and position signals;
data acquisition means for processing orientation and position signals and that generates orientation and position data;
wireless data transmission means for wirelessly transmitting in real-time said orientation and position data;
data reception means for receiving said orientation and position data transmitted by said wireless data transmission means; and
processing and presenting means for processing and presenting said orientation and position data in a desired format.
21. The system of
22. The system of
23. The system of
24. The system of
25. The system of
26. The system of
27. The system of
28. A method for determining orientation and position of a moveable object, comprising:
generating orientation and position signals to measure orientation and position of the moveable object with at least one sensor for determining motion parameters;
processing said and orientation and position signals with a microcontroller to generate orientation and position data;
wirelessly transmitting said orientation and position data in real-time to a receiving device external to said moveable object;
processing and presenting said orientation and position data.
29. The method of
30. The method of
31. The method of
32. The method of
33. The method of
34. The method of
35. The method of
36. The method of
The present application claims priority to U.S. Provisional Application No. 60/435,183, filed Dec. 19, 2002, which is incorporated herein by reference.
The present invention relates to motion tracking systems and more particularly to a method and apparatus for determining position and orientation of one or more moveable object(s).
Technologies are known for determining and analyzing object motion through transmission of position and orientation information of the object to a processing system. Such technologies are utilized today in a variety of industries including navigation and entertainment. (See, for example, U.S. Pat. Nos. 6,001,014 to Ogata, et al.; U.S. Pat. No. 5,903,228 to Ohgaki, et al.; and U.S. Pat. No. 5,875,257 to Marrin, et al.; the teachings of all of which are incorporated herein by reference). In particular, wireless transmission of object motion data for analysis is continuing to be developed and utilized, and applications of such technology include the expanding industry of simulated “virtual reality” environments. (See, for example, U.S. Pat. No. 5,819,206 to Horton, et al., the teachings of which are incorporated herein by reference).
Object motion can be measured using sensors for determining motion parameters such as accelerometers and gyroscopes. Gyroscopes and accelerometers are well-known in the automotive and aerospace industries for providing motion information, establishing an inertial space reference, and allowing measurement of pitch and roll relative to a gravitational vector. Historically, the use of these sensors have been limited to large devices due to the weight and bulk of the sensors. However, technology improvements have produced smaller gyroscopes and accelerometers that can be utilized in a wide variety of applications where limited sensor space is available. (See, for example, U.S. Pat. No.: 5,898,421 to Quinn; and RE37,374 to Roston, et al.; the teachings of which are incorporated herein by reference).
Acceleration sensors, including accelerometers and strain gauges, have been utilized in sporting equipment, such as golf clubs, to provide analysis of golf swings. (See, for example, U.S. Pat. No. 5,694,340 to Kim and U.S. Pat. No. 5,233,544 to Kobayashi, the teachings of which are incorporated herein by reference). Such acceleration sensors can provide rotational information about the golf club, but the accuracy of such rotational information can be problematic.
U.S. Pat. No. 6,224,493 to Lee, et al., the teachings of which are incorporated herein by reference, discloses an instrumented golf club system with sensors to measure characteristics of a golf swing, including the use of an angular rate sensor. A distinctive feature of this instrumented golf club is the use of a data storage memory device located within the golf club that eliminates the need for radio transmission hardware. The data from a golf swing is captured internally and stored until the user is ready to download the data for further processing. Swing analysis can only be conducted after the internally stored swing information is downloaded to the external processing device.
There is therefore a need for an orientation and position tracking system installed on a moveable object, such as a golf club, which utilizes motion sensors and real-time wireless data transmission of orientation and position information for analysis and display.
An orientation and position tracking system in three-dimensional space and over time is disclosed utilizing inertial and other sensors for determining motion parameters to measure orientation and position of a moveable object. The sensors, for example vibrational and angular velocity sensors, generate signals characterizing the motion of the moveable object. The information is received by a data acquisition system and processed by a microcontroller. The data is then transmitted via wireless communication to an external data reception system (locally based or a global network). The information can then be displayed and presented to the user through a variety of means including audio, visual, and tactile.
In one aspect, the present invention provides for an intelligent golf club that provides golfers with real-time, precise and dynamically presented data, including swing analysis. A golfer takes a swing and a detailed analysis of club motion, launch conditions, club speed information, as well as contextual feedback is automatically downloaded into a computer system (including PDA, cellular phone, or over a network) for processing and display.
In another aspect, the present invention provides a method for determining orientation and position of a moveable object, comprising the steps of: generating orientation and position signals to measure orientation and position of the moveable object with at least one sensor for determining motion parameters; processing these signals with a microcontroller to generate orientation and position data; wirelessly transmitting said orientation and position data in real-time to a receiving device external to the moveable object; and analyzing and displaying orientation and position data.
The invention is described with reference to the several figures of the drawing, in which:
The present invention provides for an orientation and position tracking system in three-dimensional space installed on or in a moveable object that utilizes inertial and other sensors for determining real-time motion parameters and real-time wireless transmission of that motion information to an external computer system (including PDA, cellular phone, or over a network). In one embodiment, the present invention provides for an intelligent golf club, the iClub™ (trademarked by Fortescue Corporation), that provides golfers with real-time, precise and dynamically presented data, including swing analysis. A golfer takes a swing and a detailed analysis of club motion, launch conditions, club speed information, as well as contextual feedback is automatically downloaded into an computer system (such as a PDA, cellular phone, or network). Swing history is stored and tracked over time, allowing users to monitor their progress, make swing adjustments, maintain a practice regime, and develop desired swing characteristics.
Referring now to the figures of the drawing, the figures constitute a part of this specification and illustrate exemplary embodiments of the invention. It is to be understood that in some instances various aspects of the invention may be shown exaggerated or enlarged to facilitate an understanding of the invention.
Signals from the sensors are sent to a data acquisition system 18 that processes the information. In one embodiment, the data acquisition system 18 is installed internally on the moveable object; however, the system may also be an external component. The data is delivered to a wireless data transmission system 20 which transmits the data to a data reception system 22 on a computer (PDA, cellular phone, or network). The data is further processed and displayed to a user by means of an interface device 24, such as a PC, a PDA, cellular phone, or network. The interface device 24 comprises software to process the data. This software can be configured based on the characteristics of the moveable object. For example, a user may select the style of golf club that he or she is using that comprises information on the physical and material properties of the golf club. This information is utilized by the software to enhance the accuracy of the information displayed. For example, the type of material of the golf club allows for an accurate analysis of the flex characteristics of the golf club shaft and the length of the golf club can be utilized for an accurate determination of the club head speed.
In one embodiment, angular rate sensors 42, 44, 46 are positioned on the orthogonal board 30 and main board 40 to measure angular motion changes about three axes. In an embodiment utilizing a golf club, these motion changes comprise rotational motion within a swing plane of a golf stroke, motion perpendicular to the swing plane of the golf stroke, and rotation about a axis along the handle of the club. These motion changes can also be determined using combinations of motion parameter determining sensors such as gyroscopes or other additional sensors 48 such as accelerometers, electronic compasses and GPS units.
The data acquisition system 18 positioned on main board 40 comprises a microcontroller 50 having Analog to Digital inputs and pulse width modulating inputs. The microcontroller 50 receives data from the sensors 42, 44, 46, and delivers data to the data transmission system. The data transmission system 20 comprises a transmitter circuit 52 and an antenna 54 for wireless transmission of data to a data reception system such as a PC, PDA, cellular phone, or network. The wireless transmission can be performed at any suitable frequency(s) and using any protocol(s) for transmitting the data, as known to one of ordinary skill in the art.
In another embodiment, the microcontroller 50 of the data acquisition system 18 may receive analog signals from the angular rate sensors 42, 44, 46 containing the orientation and position information of the object 100 and then digitize the analog signals into digital data with an analog to digital converter component. The microcontroller 50 delivers the digital data to the data transmission system 20 for wireless transmission to the data reception system 22. The user interface device 24 then analyzes and displays the received digital data.
In another embodiment, the inertial sensors, data acquisition system and data transmission system are incorporated within the handle, grip, or shaft of the object for which orientation and position are desired. In a golf club, these systems can be incorporated on or in the handle or grip portions of the shaft. This modular design provides for the present invention to be incorporated into pre-existing golf clubs.
The real time, wireless motion and position sensing system operates in three-dimensional space and over time based on four modules: the sensor module, the microcontroller, the wireless module, and the support system module. The sensor module continually sends orientation and position signals to the microcontroller. The microcontroller then packages the data received from the sensor module and sends it to the wireless module. The wireless module transmits the packaged data to a device such as a PC, PDA, cellular phone, or network. The support module surrounds the other three modules, providing power to the system, as well as designer access tools. The modules will now be further described in detail.
In one embodiment, the underlying sensor nodes in the sensor module are gyroscopes (such as Murata ENC-03JA/B). Each gyroscope measures angular velocity about a single axis. In order to achieve 3-dimensional data three gyroscopes are used, each positioned so that its sensing axis is orthogonal to every other gyroscope. The gyros send their angular velocity data directly to the microcontroller. Additional sensors including accelerometers, compasses, GPS systems may provide additional information based on particular motion and position sensing needs.
The microcontroller system relies on a single Microchip Technology PIC 16F877 microcontroller, running off a 20 Mhz Panasonic-ECG EF0-BM2005E5 resonator. The main objective of the microcontroller is to receive data from the sensors, manipulate the data and send it to the wireless transmitter. The microcontroller utilizes three of its on-board analog-to-digital converters and pulse width modulated inputs to process the data. Finally, the data is packaged sent to the wireless module.
The wireless module sends data wirelessly using a radio frequency transmitter (e.g. Radiometrix TX3-914-50) and an optimal antenna. The sending system formats the data appropriately for the receiving system.
Support System Module
The support system module has two power supply functions. First, it uses a switch (E-switch EG1270) to allow power to flow from an onboard battery to the microcontroller. The microcontroller then switches on a P-channel MOSFET (Fairchild Semiconductor NDS352P), which provides power to all devices in the system. Its second power function is to allow for recharging of the onboard battery. The support module contains a set of headers (Sullins Electronics Corp. PPPN401BFCN and PRPN401AEN) for internal and external connections; one of the headers allows a recharge to access the battery directly, bypassing all other components.
Further, there are a number of designer access tools in the support system module. First, there is the programmer port which is used to initially program the microcontroller. The programmer port uses a header (same headers as above) in order to allow the external programmer access to the microcontroller.
Second, the support module provides a communication port. This port is used to reprogram the microcontroller or access data directly, bypassing the wireless transmitter.
The final tool is a visual cue to the user/designer that the system has received power and is working properly. The system provides this cue using a dual color LED (Lite-ON Inc. LTST-C155KGJRKT).
1) Initialize Variables
As soon as the software program starts, a number of variables are named and allocated in memory for the program to store and access information. These initial variables are split into three major categories (with other supporting categories): main class variables, sensor variables, and 3D model variables.
2) Receive Packet
The software program is constantly processing bytes of data as they stream into the computer system. The software program looks for packets of appropriately formatted data, and sends them to the next step in the program.
3) Error Check Packet
Before each packet is passed on to the next step in the program, the software program ensures that the packet was not corrupted during wireless transmission.
4) Convert Packet Data to Sensor Data
Sensor data is encoded across each new packet; therefore, the packet must correctly reassembled into sensor data before it can be intelligibly deciphered by the rest of the software program.
5) Update Sensor Parameters
This step corrects for variations in sensor hardware that could be caused by a number of environmental changes (e.g. temperature variance, electromagnetic interference, etc.).
6) Create Swing Model
At this point, the system enters an iterative loop in which sensor data is used to update an internal 3D model of a golf club. The software system processes both the sensor data and the 3D club model to match for a possible golf swing pattern. If a match occurs, the system creates an internal Swing Object representing that golf swing, storing both the sensor data and 3D model history inside this object. This Swing Object can then be saved directly to an available storage medium, such as a local hard drive or a remotely server accessible through available networks. Saved Swing Objects can later be reinterpreted by the system individually or as part of a series of Swing Objects.
7) Generate Single-Swing Statistics and Feedback
The software program uses the newly captured golf swing to generate swing statistics. These statistics include, but are not limited to, impact detection, launch angle, face angle (at impact and at various moments of the swing path), club head speed, initial face angle, tempo breakdown by swing stage (address-to-top, top-to-impact, impact-to-finish), impact location (toe, heel, center), power transfer index, derived distance, ball trajectory, wrist break, and swing plane alignment. Using algorithms, the 3D model and/or swing statistics are used to provide detailed feedback
8) Generate Multi-Swing Statistics and Feedback
The software program uses the single swing 3D models and statistics to generate multi-swing statistics. These statistics include, but are not limited to, tempo consistency (at address-to-top, top-to-impact and, impact-to-finish), club fitting data, long-term trends, training regimes
9) Save Swing as a File
The software program saves each new swing as a file.
The operational steps for using an iClub system according to the present invention are described below:
Take a swing. The iClub does not even need to be manually activated and is smart enough to activate based on the motion of the swing. Waggle or warm-up the golf club as normal; the iClub is intelligent and can sense a real swing versus your warm up.
After you have swung the iClub, data is wirelessly transmitted to your hand held laptop, cell phone or other electronic device. There you can view real-time swing properties and gain feedback on your swing. If you would rather wait until later to view your results, go ahead, your feedback will be waiting for you whenever you want it.
If you happen to be connected to the Internet while at the golf course, you can gain valuable real-time analysis from our on-line swing engine which, among other things, is capable of correlating your long-term swing history with your handicap. Furthermore, the iClub System will let you know which equipment upgrades will improve your swing, which training methods to implement to eliminate a reoccurring problem, and even share information with your teaching professional.
The present invention is suitable for installation in a wide variety of objects and applications. Besides golf clubs, the present invention may be applied to tennis rackets, hockey sticks, fishing rods, baseball bats, swords, rifles, and other sporting equipment. Multiple sensors can be placed on the body to provide detailed body movement. Furthermore, the present invention can be utilized in joy sticks, 3D computer mice, and other computer user interface devices. In particular, the present invention can be utilized in virtual reality equipment for which position and orientation information is relied on extensively.
As described in Example 3, the present invention can be utilized as an instructional tool. The transmitted information can be stored by the computer analysis and display system for multiple swings of an individual golfer or other sport participant. The compilation of this data can be utilized to determine problems in a golfer's swing or to “fit” a golfer to an appropriate golf club. The large statistical number of golf swings analyzed provided by the use of the present invention fosters the ability of these instructional techniques to provide accurate evaluations and a means for mass customization of golf and sporting equipment in general.
Other embodiments of the invention will be apparent to those skilled in the art from a consideration of the specification or practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims.