Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20060084516 A1
Publication typeApplication
Application numberUS 11/192,435
Publication dateApr 20, 2006
Filing dateJul 28, 2005
Priority dateJul 28, 2004
Publication number11192435, 192435, US 2006/0084516 A1, US 2006/084516 A1, US 20060084516 A1, US 20060084516A1, US 2006084516 A1, US 2006084516A1, US-A1-20060084516, US-A1-2006084516, US2006/0084516A1, US2006/084516A1, US20060084516 A1, US20060084516A1, US2006084516 A1, US2006084516A1
InventorsRichard Eyestone, Nathan Hood, Alessandro Gabbi, John Farrington, Eric Cassady, Brian Maloney, Raymond Deragon, John Lupher, James Satterwhite
Original AssigneeSmartswing, Inc.
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Method and system for defining and using a reference swing for a sports training system
US 20060084516 A1
Abstract
A method and system define a reference swing for a sports training system, steps of and structures for forming a humanoid for using a plurality of formulae for defining the movements of a sports implement throughout a swinging motion, while using said plurality of formulae for defining the movements of the golf club throughout a plurality of known positions during the swinging motion. The method and system link said humanoid to said plurality of formulae using a plurality of planes perpendicular to the target line, said target line defined as a line passing through the golf ball to the target. A lower plane relates to the shaft of the sports implement; with a first point and a second point of said lower plane associated at the hosel of the sports implement, and an entry point of the shaft into the head on the sports implement and the swinger's hands. A middle plane relates to the plane that passes through two points, the center of the sports implement sweet spot and the right elbow of the swinger. A third plane relates to the plane that passed through the toe of the sports implement and the swinger's shoulder. The reference starting said reference swing starts with the swinger at address and the sports implement shaft on the lower plane. The disclosed subject matter also provides for associating the reference motion with a swinger in real time.
Images(18)
Previous page
Next page
Claims(1)
1. A method for defining a reference swing for a sports training system, comprising the steps of
forming a humanoid for using a plurality of formulae for defining the movements of a sports implement throughout a swinging motion;
using said plurality of formulae for defining the movements of the golf club throughout a plurality of known positions during the swinging motion;
linking said humanoid to said plurality of formulae using a plurality of planes perpendicular to the target line, said target line defined as a line passing through the golf ball to the target, wherein:
a lower plane relates to the shaft of the sports implement; with a first point and a second point of said lower plane associated at the hosel of the sports implement, and an entry point of the shaft into the head on the sports implement and the swinger's hands;
a middle plane relates to the plane that passes through two points, the center of the sports implement sweet spot and the right elbow of the swinger; and
a third plane relates to the plane that passed through the toe of the sports implement and the swinger's shoulder; and
starting said reference swing starts with the swinger at address and the sports implement shaft on the lower plane.
Description
CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This patent application claims the benefit of U.S. Provisional Patent Application Ser. No. 60/640,676 filed on Dec. 31, 2004, as well as U.S. Provisional Patent Application Ser. No. 60/591,637 filed on Jul. 28, 2004.

This disclosure pertains generally to a sport training system and, more particularly, to an intelligent sports club, bat or racket that takes quantitative measurements of a swing for real-time feedback and subsequent analysis and display, even more particularly, the present invention relates to the formulation of a “reference” swing for use in such a training system.

BACKGROUND

Various inventions are described to assist golfers' efforts to improve their swing. One category of devices involves systems of restraints on the golfer's body or on the club to force the golfer into a more perfect swing. Restraint based systems operate on the premise that by forcing a golfer into a given stance or swing pattern, the golfer will inculcate the lesson as a form of muscle memory that can then be employed while golfing with a standard club. However, a golfer's natural tendency is to resist the restraint system and thereby learn a stance or swing pattern predicated on the presence of the restraint system. In the absence of the restraint system, the user's new stance or swing pattern is incorrect.

Other devices attempt to mechanically react to the swing with hinged clubs or moving weights. Mechanically reactive systems provide hinged or weighted systems that react to various qualities of a swing. For example, a hinged golf club is specified that stays rigid during the course of a good swing, but will collapse under the conditions of a poor club swing. These devices do not allow the golfer to train with a physically intact, standard golf club. Also, some of these devices do not allow for actually striking a golf ball during the swing. Once again, the golfer is learning swing habits divorced from requirements of swinging a standard golf club in a standard manner.

Another category of devices is electronic in nature and entirely external to the golf club, typically involving some type of swing motion capture. These systems typically employ arrays of sensors and cameras configured around the golfer. Visualization and analysis of individual frames, as well as slow motion animation of the golf swing are difficult with conventional video analysis because of the required high frame rates. Further, high frame rates require large amounts of data storage and processing power. In some instances, the users must also affix indicators or sensors on their person and/or their club. The inconvenience and complexity of these externally configured systems prevent this technology category from gaining widespread appeal in the golfing community. In addition, because of the nature of these systems, golfers are not able to play a round of golf while using these systems.

A class of electronic devices exists that requires users to mount the devices on the outside of the shaft of the club. The weight of these devices changes the club's swing characteristics and renders swing lessons less meaningful. The externally mounted devices significantly change the look of the club and may loosen or move on the shaft.

Another class of electronic devices exists that require users to mount devices on their person. For example, in U.S. Pat. No. 6,048,324, issued to Socci et al., the specification discloses headgear for detecting head motion and providing an indication of head movement. An object of this invention is to provide players with a device to teach proper ball striking in a variety of sports including golf by tracking head motion. Devices designed to exclusively monitor a subset of the golfer's motions do not adequately capture the various motions required for a human to hit a golf ball. Therefore, these devices cannot precisely predict the path of the golf club during a swing.

Lastly, in U.S. Pat. No. 6,648,769, issued to Lee et al., a device is disclosed to capture and analyze data related to a golf club swing. This device is comprised of electronic components in the distal end of the club shaft with additional circuitry in the head of the club. The presence of components in the modified golf club head degrades the users' experience by providing a different tone at ball strike. Furthermore, by locating critical components in the club head, the region of the club which experiences the highest rates of acceleration, the device is more susceptible to mechanical degradation and failure. The club requires a wired link to download swing data to a computing device. This wired link is cumbersome for users. Finally, the club provides feedback to the user regarding their swing only after data is downloaded to a computing device. This lack of real-time feedback, during the course of the swing, provides a less meaningful learning experience to the user.

In such a system, there is the need for a reference swing in that may be employed in numerous ways, such as in an instrumented golf club, a means of communicating to a standard computing platform, a standard computational platform, such as a PC, and the required control and display software.

BRIEF DESCRIPTION OF THE FIGURES

For a more complete understanding of the present disclosure, and the advantages thereof, reference is now made to the following brief descriptions taken in conjunction with the accompanying drawings, in which like reference numerals indicate like features.

FIG. 1 shows an instrumented golf club (IGC), which is a component of the claimed subject matter;

FIG. 2 shows additional components of the claimed subject matter, i.e. a radio frequency (RF) link box, a universal serial bus cable and a computing device executing a software program;

FIG. 3 shows a battery recharger designed to be used with the IGC of FIG. 1;

FIG. 4 shows two views of a club grip incorporated into the IGC, i.e., an outer view and an expanded inner view;

FIG. 5 shows an exploded view of the top portion of the IGC grip;

FIG. 6 shows three views of an Inertial Measurement Unit (IMU) incorporating the claimed subject matter;

FIG. 7 shows a three-dimensional frame of reference corresponding to the IGC with respect to a three-dimensional frame of reference corresponding to the world;

FIG. 8 shows an exploded view of the RF link box introduced in FIG. 2;

FIG. 9 shows an exemplary swing path data model used to store information collected by the IGC;

FIG. 10 shows an exemplary analysis application 88 graphical user interface (GUI) that provides a user access to the functionality and configuration of the IGC;

FIG. 11 shows an alternative embodiment of the RF link box of FIGS. 1 and 8;

FIG. 12 is a flowchart of a Data Collection process associated with the IGC and the System of Golf Swing Analysis and Training (SGSAT);

FIG. 13 is a flowchart of the Process Link Box step of the Data Collection process of FIG. 12 in more detail;

FIG. 14 is a flowchart of the Process Swing step of the Data Collection process of FIG. 12 in more detail; and

FIG. 15 is a flowchart of a Data Display process associated with the IGC and the SGSAT.

DETAILED DESCRIPTION OF THE FIGURES

Although described with particular reference to a golf club and more specifically to a driver, the claimed subject matter can be implemented in many types of devices. With reference to other golf clubs the claimed subject matter is applicable to all types of golf clubs, including irons, fairway woods, wedges, and putters. Another type of sports device that may benefit from the claimed subject matter is a racket. All racket sports include tennis, racquetball, squash and badminton. With minor software modifications to the disclosed embodiment, the advantages of real-time swing feedback, swing data storage, transmission, and advanced analysis can be extended to the players of racket sports. Further, additional embodiments may include bats such as those used in baseball, softball, t-ball, cricket, polo, etc. With minor software modifications to the disclosed embodiment, the advantages of real-time swing feedback, swing data storage, transmission, and advanced analysis could be extended to the players of bat sports.

An additional embodiment may be adapted for use with a video game controller or computer game controller. Real time data transmission from an instrumented game controller allows for real-life swing data to be directly fed into any sports video or computer game. In addition, the portions of the disclosed invention can be implemented in software, hardware, or a combination of software and hardware. The hardware portion can be implemented using specialized logic; the software portion can be stored in a memory and executed by a suitable instruction execution system such as a microprocessor, tablet personal computer (PC), or desktop PC.

Several exemplary objects and advantages of the claimed subject matter, described for the sake of simplicity only with respect to a golf club, are as follows:

    • Provide a system for capturing, recording, and analyzing data pertaining to a golf club swing that resides entirely within the distal end (grip end) of the instrumented golf club;
    • Provide a system for capturing, recording and analyzing data pertaining to a golf club swing without noticeably modifying the instrumented club's swing characteristics as compared to the characteristics of a standard, non-instrumented golf club;
    • Provide a system for capturing, recording and analyzing data pertaining to a golf club swing without modifying the appearance or character of the head of the instrumented golf club or the shaft of the instrumented golf club as compared to a standard, non-instrumented golf club;
    • Provide a system for capturing, recording and analyzing data pertaining to a golf club swing such that the instrumented golf club can be used to strike a standard golf ball in both playing and practice conditions thereby avoiding swing idiosyncrasies which may occur when golfers swing in the absence of a golf ball;
    • Provide a system for users to improve their golf swing without imposing outside physical restraints or tethers on a golfer and thereby avoiding the creation of artificial swing habits that compensate for the outside restraints;
    • Provide a system which generates audible real-time feedback during the course of a swing thereby allowing a user to immediately recognize and address poor swing habits;
    • Provide a system which does not require the placement or utilization of devices affixed to the exterior of a golf club for capturing, recording, and analyzing data pertaining to a golf club swing;
    • Provide a system which requires minimal amounts of memory storage and processing power to allow visualization and analysis of individual frames as well as slow motion animation of the golf swing;
    • Provide a system which does not require the placement or utilization of devices affixed to the golfer's body while capturing, recording, and analyzing data pertaining to a golf club swing;
    • Provide a system which does not require the placement or utilization of devices positioned around the golfer while capturing, recording, and analyzing data pertaining to a golf club swing;
    • Provide a system for capturing, recording and analyzing data pertaining to a golf club swing which allows for subsequent wireless transfer of single or multiple swing data sets to an application resident on a computing device for further swing analysis;
    • Provide a system for capturing, recording and analyzing data pertaining to a golf club swing which includes highly accurate club linear acceleration data along 3 orthogonal axes and highly accurate club angular rate data around said axes and algorithms sufficient to convert said data into highly accurate club positioning data;
    • Provide an athlete, or other user, a method of visualizing a correct motion required for some athletic movement;
    • Enable an athlete to compare their current motion vs. a more correct motion;
    • Provide an athlete the ability to improve their practice environment;
    • Provide a system that is capable of being used to provide sufficient data on any athlete's motion that they may gain critical insights into what the golf club is doing in their motion vs. the reference motion;
    • Provide a system that is capable of being used to provide sufficient data on any athlete's motion that they may gain critical insights into what the athlete's body is doing in their motion vs. the model motion;
    • Capture data associated with any critical points in the motion (i.e. at impact with the ball).
    • Provide a user with a practice environment in which a wide variety of conditions associated with any athletic movement can be successfully simulated in order to help the athlete apply their skills.
    • Provide the athlete with the ability to acquire and view a graphical depiction of their athletic motion in three-dimensional space in a PC-based software application for the purposes of obtaining feedback and suggestions from the software on how to improve their motion and provide a comparison to a known, good reference motion to enable the athlete to visualize what he/she must to do improve their own motion; and
    • Provide the athlete the ability to improve the speed of learning by creating a more comprehensive learning environment.
      Additional exemplary objects and advantages are as follows:
    • Provide a system which allows for extensive, subsequent swing analysis on a computing device;
    • Provide a system packaged in a sufficiently generic way that multiple, disparate clubs may be instrumented and therefore enabled for swing data analysis;
    • Provide a system with an active but dozing mode that increases battery life and reduces the incidence of non-swing motion recording; and
    • Provide a system that allows for the transmission of swing data from the golfer to a second, remote party for second-party analysis.

Other aspects, objectives and advantages of the claimed subject matter will become more apparent from the remainder of the detailed description when taken in conjunction with the accompanying FIGUREs.

FIG. 1 shows an instrumented golf club (IGC) 18, which is one component of a System of Golf Swing Analysis and Training (SGSAT) of the claimed subject matter. Other components of SGSAT include a radio frequency (RF) link box 38 (see FIG. 2) coupled to a computing device 48 (see FIG. 2) and a battery recharger 22 (FIG. 3).

IGC 18 includes a head 34 and a shaft 34, both of which are similar to shafts and heads on a typical golf club. Although illustrated as a driver, head 34 can be any type of golf club, including but not limited to, an iron, a wedge, a wood and a putter. As mentioned above, the claimed subject matter is not limited to golf clubs but can be applied to many types of bats, rackets and game controllers.

Attached to the top of shaft 34 is a grip 30, into which the claimed subject matter is incorporated. Grip 30 includes a Power On/Mute/Power Off button 20, a battery recharge connector 28, a battery recharge connector cover 22, a grip faceplate 24 and a Flag Swing button 26.

Power On/Mute/Power Off button 20 is pushed once to power on the IGC 18. Once the IGC 18 is powered on, button 20 is pushed to toggle on and off an audio feedback signal that indicates to a user when a particular swing has broken a plane representing a correct swing. To power off the IGC 18, button 20 is pushed in and held for four or more seconds.

Battery recharge connector 28 is a socket into which battery recharger 22 is inserted to charge a battery pack 68 (see FIG. 6) within IGC 18. Battery recharge connector cover 22 is a plastic cover that has two protruding posts, one of which plugs into connector's 28 socket and keeps moisture and dirt from entering socket 28 when battery recharger 22 is not connected to IGC 18. When IGC 18 requires recharge, cover 22 is lifted and rotated around the second protruding post to expose connector 28 and battery recharger 22 is inserted into connector 28. Grip faceplate 24 is a finishing piece for an Inertial Measurement Unit (IMU) 53 (see FIGS. 4 and 6) that fits within grip 30. Finally, a flag swing button 26 is pushed when a user desires to mark the data corresponding to a particular swing of IGC 18 for future investigation using an analysis application 88 (see FIG. 10) on a computing device 48 (see FIG. 2). A saved swing can also become a benchmark, or reference swing, against which subsequent swings can be compared, including setting a reference for the breaking planes sounds.

FIG. 2 shows additional components of SGSAT of the claimed subject matter, i.e. Radio Frequency (RF) Link Box 38, a universal serial bus (USB) cable 46 and a computing device 48 that hosts two software applications, one for processing swing data (see FIG. 14) and one for interfacing with IGC 18 (see FIG. 13). USB cable 46 communicatively couples computing system 48 and RF Link Box 38 via a USB connector 44. USB cable 46 is used as an example only. One with skill in the computing arts would recognize there are many ways, both wired and wireless, to connect computing system 48 and RF Link Box 38.

A Power/USB connection light emitting diode (LED) 42 provides indication of whether or not RF link box 38 is connected to power and computing system 48. A club detection data transfer LED 40 provides indication of whether or not RF link box 38 is in communication with IGC 18 by lighting up and provides indication of whether data is being transferred between IGC 18 and RF link box 38 by blinking. RF link box 38 is described in more detail below in conjunction with FIG. 8.

FIG. 3 shows a battery recharger 22 designed to be used with the IGC 18 of FIG. 1. Recharger 22 plugs into IGC 18 at battery recharge connector 28 (FIG. 1) and functions to recharge battery pack 68 (see FIG. 6). Recharger 22 includes a plug for connecting recharger 22 to a standard AC power outlet and a transformer to convert AC current into DC current. Recharger 22 is similar to rechargers typically provided in conjunction with cordless appliances, wireless telephones, and many other common household devices.

FIG. 4 shows club grip 30 and an expanded view of a top portion of IMU 53, which fits within IGC 18. Battery recharge connector cover 22, grip faceplate 24, power on/mute/power off button 20 and flag swing button 26 were introduced above in conjunction with FIG. 1. As explained above, a protruding post on battery recharge connector cover 22 fits into grip faceplate 24 to protect battery recharge connector 28. In addition, grip faceplate 24 has a cover anchor hole 23, into which a second post on cover 22 is inserted. When inserted into hole 23, friction and compression between the second protruding post and faceplate 24 secure cover 22 against faceplate 24.

Below grip faceplate 24 is an antenna board 50 that is employed in wireless communication between IGC 18 and RF link box 38 (FIG. 2). Antenna board 50 is coupled to a main circuit board 52, which is explained in more detail below in conjunction with FIG. 6. Illustrated parts 20, 22, 24, 26, 50 and 52 connect together and are coupled to, and part of, IMU 53, which fits into grip 30. A tab 51 extends from main board 52 and serves to secure IMU 53 in a fixed position relative to grip 30. A second, opposing tab (not shown) protrudes from the other side of main board 52 and also serves to secure IMU 53 in position relative to grip 30.

FIG. 5 shows a detailed view of the top portion of IGC grip 30. Two slots 55 provide space into which tab 51 (FIG. 4) and the second opposing tab can be positioned to secure IMU 53 within grip 30.

FIG. 6 shows three views of IMU 53 (FIG. 4), i.e. an outer view 101, an inner, exploded view 103 and an inner, assembled view, or assembly, 105. Outer view 101 shows a tube 54 into which assembly 105 fits. Also shown is a screw 56 which secures assembly 105 to tube 54.

Exploded view 103 includes antenna board 50 and a full view of main board 52, both of which were introduced above in conjunction with FIG. 4. Antenna board 50 is coupled both mechanically and electrically to main board 52. Also coupled mechanically and electrically to main board 52 are a club transceiver chip 78, a sounder 76, an accelgyro board 60 and a z-gyro board 62. Also included within tube 54 are a battery pack 68, two tube inserts 58, a battery standoff 64, and battery pack wires 66.

Club transceiver chip 78, which in this example is a 2.4 GHz transceiver, is responsible for wireless communication between IGC 18 (FIG. 1) and RF link box 38 (FIG. 2). Transceiver chip 78 employs a quarter wave monopole antenna (not shown) located on antenna board 50. Sounder 76 provides an audio feedback signal to a user of IGC 18 when a particular swing falls outside of acceptable parameters.

Screw 56 extends through one wall of tube 54, through one tube insert 58, through main board 52, through second tube insert 58 and through the opposite wall of tube 54. Screw 56 serves as a main point of structural integrity within IMU 53. In other words, screw 56 and tube inserts 58 prevent the various components of assembly 105 from vibrating within tube 54.

IMU 53 employs three solid-state gyroscopes (not shown), such as Analog Devices' ADXRS300, to measure angular rates around axes CX, CY, and CZ (see FIG. 7). A gyroscope located on accel/gyro board 60 measures the angular rate of rotation around CX, a gyroscope located on main board 52 measures the angular rate of rotation around CY, and a gyroscope located on the Z-gyro board 62 measures the angular rate of rotation around CZ. These gyroscopes are configured with a bandwidth of 1500 degrees per second in order to record a typical golf swing, although other bandwidths are possible depending upon the particular application. Additional signal conditioning and analog to digital conversion circuitry (not shown) supports the three gyroscope sensors.

IMU 53 employs two dual-axis accelerometers (not shown), such as Analog Devices ADXL210e, to measure linear acceleration along axes CX, CY, and CZ. An accelerometer on main board 52 measures linear acceleration along CX and CZ axes. An accelerometer on accel/gyro board 60 measures linear acceleration along CY axis and duplicated data along the CZ axis. Although one embodiment uses only one channel of the CZ data, another embodiment may compare both channels of CZ data for such benefits as increased accuracy and/or signal noise reduction.

It should be noted that accelerometers can measure both linear acceleration and forces due to gravity. The ability to measure the effects of gravity allows for the resolution of a gravity vector that in effect tells IGC 18 which direction is down with respect to the surrounding world (see FIG. 7).

Also included on main board 52 is a temperature sensor (not shown) for providing temperature compensation of data from the gyroscopes and accelerometers because the performance characteristics of the gyroscopes and accelerometers can be affected by temperature. A microprocessor (not shown), on main board 52, is employed as a central processing unit for IGC 18. The microprocessor controls the other components of board 52, collects sensor data, monitors system temperature, corrects sensor data for temperature related distortion, processes the corrected sensor data into position, velocity, and acceleration vectors, stores the corrected sensor data in flash memory (not shown) for later download, and performs real-time collision detection of IGC 18 with respect to the swing planes, explained below in conjunction with FIG. 7.

Swing data is stored on 8 MB of serial flash memory (not shown) on main board 52. One embodiment of the claimed subject matter employs approximately 72 kB of memory per recorded swing therefore allowing over 100 swings to be stored on the flash memory before the flash memory is consumed. Another embodiment of the claimed subject matter may use higher quantities of memory that would allow for data captured for a higher number of swings. In addition, other embodiments may sample fewer data points per swing, thereby allowing for data to be captured from a higher number of swings. Furthermore, other embodiments may employ data compression algorithms to allow for more data to be captured from a higher number of swings.

Finally, battery standoff 64 provides separation between main board 52 and battery pack 68, which provides power for the components of IMU 53. Battery pack 68 is electrically coupled to z-gyro board 62, and therefore the other components of IMU 53, via battery pack wires 66. In this example, battery pack 68 consists of five (5) rechargeable metal hydride cells, although there are many possible configurations. The power supply sub-system, which includes battery pack 68 and a voltage regulator (not shown) on main board 52, generates voltage levels as required for device components, e.g. 1.8 V, 3.3 V and 5.0 V supplies.

FIG. 7 shows IGC 18 within two three-dimensional, orthogonal frames of reference, a frame 107 plotted with reference to a typical position for IGC 18 (FIG. 1) and a frame 109 plotted with reference to gravity corresponding to the world. Frame 107 corresponds to a coordinate system in which the positive club X-axis is identified as ‘CX’, the positive club Y-axis is identified as ‘CY’ and the positive club Z-axis is identified as ‘CZ’. Frame 109 corresponds to a coordinate system in which the positive world X-axis is identified as ‘GX’, the positive world Y-axis is identified as ‘GY’ and the positive world Z-axis is identified as ‘GZ’.

During processing of data collected by ICG 18 both frames 107 and 109 are applicable. Frame 107 corresponds to a frame of reference for measurements taken by accelgyro board 60 and Z-gyro board 62 (FIG. 6). Frame 109 corresponds to a frame of reference of a user of IGC 18 and a display (not shown) for providing feedback to the user. Those with skill in the mathematical arts can easily convert measurements back and forth between frames 107 and 109.

The claimed subject matter builds on the concept of a golfer keeping their swing within a region bounded by a “lower swing plane” and an “upper swing plane” (not shown). The lower swing plane passes roughly from the heel of golf club head 36 (FIG. 1) through the golfer's right hand while the golfer is addressing a golf ball. The upper swing plane passes roughly from the toe of the golf club head 36 through the golfer's right shoulder while the golfer is addressing the golf ball. Most golfers swinging above the lower swing plane and below the upper swing plane will produce a better swing than those swinging outside of these planes.

One task of the claimed subject matter is to accurately track the movement of IGC 18 through space over the duration of a swing of IGC 18, and to produce an audible alert if IGC 18 violates the lower or the upper swing plane. To accomplish this task, the IGC 18 uses inertial measurement unit 53 (FIGS. 4 and 6) with data sampling fast enough to capture the dynamics of a golf club swing.

IMU 53 can also be termed a six degrees of freedom inertial measurement unit since it measures linear acceleration along axes Cx, Cy, and Cz (the first 3 degrees of freedom) and it measures angular rate (rotation speed) around axes Cx, Cy, and Cz (an additional 3 degrees of freedom). Using algorithms known to those well versed in the art of IMUs, the data from these six degrees of freedom yield the orientation and position of IMU 18 as a function of time relative to its initial position. Employing additional algorithms common to this field, the orientation and position of all elements of IGC 18 can be calculated given the orientation and position of the inertial measurement unit 53. Finally with some basic knowledge of a golfer's physical dimensions and common stance, IGC 18 determines whether or not a swing has remained within the region defined by the upper and lower swing planes.

FIG. 8 shows an exploded view of RF link box 38 first introduced in FIG. 2. A link board 70 is a printed circuit board with the primary function of facilitating communication between IGC 18 (FIGS. 1 and 7) and a software application executed on computing device 48 (FIG. 2). Board 70 incorporates a link board transceiver chip 80, which is antenna and transceiver circuitry sufficient to enable RF communication between RF link box 38 and transceiver chip 78 (FIG. 6) on main board 52 (FIG. 6) IGC 18. In this example transceiver chip 80 is a 2.4 GHz transceiver that sends and receives signals on a quarter wave monopole antenna (not shown) on link board 70.

The USB circuitry enables communication with computing device 48 via USB connector 44 and USB cable 46 (FIG. 2). Computing device 48 hosts a software application dedicated to interfacing with IGC 18. Link board 70 is enclosed in a link box cap 72 and a link box base 74. Also illustrated are power/USB connection LED 42 and club detection data transfer LED 40, first introduced in FIG. 2.

FIG. 9 shows an exemplary Swing Path data model 82 used to store information collected by IGC 18 (FIGS. 1 and 7) and processed by computing system 48 (FIG. 2). Swing path data 82 includes a swing info header 84, which stores data related to a particular swing of IGC 18, and multiple swing data elements 86. Each swing data element 86 stores measurement information from sensors on main board 52 (FIG. 6) accelgyro board 60 (FIG. 6) and Z-gyro board 62 (FIG. 6) for a particular moment in time of a particular swing corresponding to swing data header 84. If SGSAT employs a sampling rate of 2 k Hertz, then there are 2,000 instances of swing data element 86 generated for each second that a particular swing takes, e.g. if a swing takes 2 seconds, there are 4,000 instances of swing data element 86 generated for that particular swing.

Swing info header 84 includes a swing info identifier (ID), which uniquely identifies a particular swing, a club ID, which identifies a particular club used for the swing, a swing start timestamp, which stores a start time for the swing, a swing duration data element, which stores data on how long the swing took from beginning to end, a swing flagged data element, which indicates whether or not the user has indicated that the corresponding swing is of special interest for later use and analysis, and a temperature data element, which stores the ambient temperature from a temperature sensor on main board 52 (FIG. 6) for use in analyzing output from the accelerometers and gyroscopes (FIG. 6). The user sets the Swing Flagged data element by pushing flag swing button 26 (FIG. 4), typically following a particularly good swing.

Each swing data element 86 includes a swing info ID, which enables a particular swing data element 86 to be associated with a particular swing info header 84, a sequence number, which indicates an ordering of multiple swing data elements 84 associated with a particular swing info header 86, and various data elements corresponding to measurements taken from main board 52, accelgyro board 60 and Z-gyro board 62.

An X-axis accelerometer data element corresponds to a measurement of movement in the CX axis (FIG. 7) of IGC 18 taken from an accelerometer on accelgyro board 60. A Y-axis accelerometer data element corresponds to a measurement of movement in the CY axis (FIG. 7) of IGC 18 taken from the same accelerometer on accelgyro board 60 that measures the CX. A Z-axis accelerometer data element corresponds to a measurement of movement in the CZ axis (FIG. 7) of IGC 18 taken from the second accelerometer on main board 52.

An X-axis gyroscope data element corresponds to a measurement of angular rotation around the CX axis of IGC 18 taken by the gyroscope located on accel/gyro board 60. A Y-axis gyroscope data element corresponds to a measurement of angular rotation around the CY axis of IGC 18 taken by the gyroscope located on main board 52. A Z-axis gyroscope data element corresponds to a measurement of angular rotation around the CZ axis of IGC 18 taken by the gyroscope located on Z-gyro board 62.

Swing path data model 82 illustrates one particular format for storing data generated by IGC 18. Those with skill in the computing arts should appreciate that there are other ways to store the data as well as other data, and corresponding data structures, employed by IGC 18 and SGSAT. For example, computing system 48, or in an alternative embodiment IGC 18, converts linear acceleration and angular rate measurements into orientation and position information, which also require particular data structures.

FIG. 10 shows an outline for exemplary graphical user interface (GUI), or “analysis application,” 88 that provides a user an interface to IGC 18 and SGSAT. One with skill in the programming arts should easily understand how to program analysis application 88. A flowchart 113 for analysis application 88 is described below in conjunction with FIG. 13.

Analysis application 88 offers extensive golf swing related analytics using swing path data 82 (FIG. 10), which is collected from IGC 18 (FIGS. 1 and 4) by a data collection process 200, described in detail below in conjunction with FIG. 12, stored on computing device 48 (FIG. 3), and processed by a data display process 250, described in more detail below in conjunction with FIG. 13. In an alternative embodiment, analysis application 88 employs orientation and position data, derived from swing path data 82.

Specific swing path data 82 records are displayed in a swing record panel 90. Swing record panel 90 also displays previously downloaded swing path data 82 records. Records 82 displayed in swing record panel 90 can be constrained and filtered using functionality located in a swing record filter panel 92. Swing record filter panel 92 enables a user of GUI 88 to limit displayed records by time stamp and other characteristics. Swing path data 82 records are selected by the user in swing record panel 90 and then loaded by the analysis application 88 into other constituent panels of analysis application 88.

Once a swing path data 82 record has been selected by the user, the user can view an animated reconstruction of the swing in swing viewing panels 94, 96, and 98. Analysis application 88 enables visualization and analysis of individual frames of the swing, of slow motion and real-time animation of the golf swing, and of pre-set key points of the swing such as at address, the top of the swing, ball impact, etc. Animation controls are located in a swing replay control panel 102. Pre-set key points of the golf swing are accessed through a swing key point control panel 104. The animated swing can be viewed from multiple, different simultaneous perspectives in panels 94, 96, and 98, for example front, side, and top-down.

The Analysis application 88 uses Inverse Kinematics to animate a human FIGURE and give context to the golf swing visualization. A specific algorithm commonly referred to as Cyclic Coordinate Descent is used to allow the position and orientation of swing path data 82 records to drive the state of a simplified human skeleton viewable in swing viewing panels 94, 96, and 98. Another tool provided by analysis application 88 is the display of upper and lower swing planes during swing visualization.

Analysis application 88 provides the ability to compare a golfer's swing to a reference swing. This reference swing can be derived from several sources. For example, analysis application 88 can create an ideal reference swing based on a user's physical characteristics, a previously recorded swing from another golfer, such as a touring professional golfer, or the user can designate one of their best personal swings as the reference swing. The overlaying of a swing with a reference swing during replay and visualization provides additional analysis context and allows the golfer to analyze their swing for flaws and strengths.

Beyond visual analysis, analysis application 88 offers extensive primary analytics derived from a swing path data 82 record. These analytics are mainly presented in tabbed windows within the swing analytics panel 106 and within context sensitive analytics panel 100. Analytics include, but are not limited to, the following examples:

    • Shaft 34 (FIG. 1) Angle at Key Points in the Swing
    • Address Line—The position of the club shaft 34 at address, which is perpendicular to the target line
    • Club 18 (FIGS. 1 and 4) Face Position at Key Points in the Swing
    • Club Head 36 (FIG. 1)/Hands Position at Key Points in Swing
    • Club Head 36 Speed and Acceleration
    • Arc Inscribed by Hands and Club Head 36
    • Angles of Backswing planes, Transition planes, and Downswing planes
    • Angle of Attack on the Ball (the club head 36 angle prior to ball impact)
    • Estimated Ball Flight Distance
    • Time of Pause at Top of Swing
    • Club head 36 Drop at Beginning of Downswing
    • Estimated Wrist Angle/Cock Angle at Top of Swing
    • Maximum rate of Acceleration on Downswing/Rate of acceleration at impact
    • Point in downswing of highest velocity
    • Lag Distance (distance the butt of club 18 is from the address line when club 18 is parallel to the earth on a downswing.)
    • Lag Angle (angle at which club 18 is, relative to the address line, when the butt of club 18 is some preset distance from the address line on a downswing.)
    • Coil Angle (measurement of the rotation of club 18 at its furthest point from address during backswing)
    • Estimated Launch Angle of the Ball
    • Type of Spin Imparted to the Ball
    • Escape Velocity of the Ball
    • Angle of incidence (club head 36 path at impact versus target line at address)
    • Impact Point on the club 18 face.

Additional analytics that combine information from multiple, primary analytics are available in analysis application 88. Examples of composite analytics include, but are not limited to, the following:

Quality of Release

Uses acceleration at impact combined with shaft 34 lean at impact to determine the quality of the timing of the release.

Tempo

This analytic scores the smoothness and rhythm of a golf swing. Smoothness will be determined by any rapid/unexpected accelerations and decelerations during a backswing and downswing. Rhythm will be determined by looking at the time during the backswing versus the time during the downswing.

Divergence from Reference Swing (Quality of Swing) Analysis application 88 allows for the comparison of a recorded golf swing to a reference swing. This reference swing can be, but is not limited to, a reference professional swing, a previously recorded user swing, or a swing recorded from another golfer. Analysis application 88 can tell the user where a given swing moves an unacceptable distance away from the reference swing.

Analysis application 88 provides for data transmission with other installations (not shown) of analysis application 88 over the internet or other communication medium. The ability to share swing path data 82 records allows for one user to record data regarding their swing and then transmit the data to a second user for further visualization and analysis. The second user can annotate swing path data 82 records with comments and then transmit the annotated files to their originator. The ability to transmit annotated data between users allows for remote instruction and feedback.

FIG. 11 shows an alternative embodiment 39 of RF link box of FIGS. 2 and 8. Like RF link box 38, RF link box 39 includes a link board 70, a link board transceiver chip 80, USB circuitry (not shown), a USB connector 44, a USB cable 46 (not shown), a link box cap 72, a link box base 74, a power/USB connection LED 42 and club detection data transfer LED 40.

In addition, RF link box 39 includes a display screen 116 and a control panel 72. Display screen provides portable access to analysis application 88 (FIG. 10) as well as providing information on IGC 18 and SGSAT configuration. The user manipulates analysis application 88 and con FIGUREs IGC 18 and SGSAT via control panel 72.

In an alternative embodiment, computing device 48 may be incorporated into a wearable computer and a display may be incorporated into a pair of glasses so that a user can receive nearly instantaneous feedback during a game or practice. Currently, such computing devices and displays are available on the market.

FIG. 12 is a flowchart of a data collection process 200 associated with IGC 18 and SGSAT. Processing starts in a “Begin Operate IGC” step 201, which is initiated when a user presses power on/mute/power off button 20 (FIGS. 1 and 4) of IGC 18 (FIGS. 1 and 4). Prior to the initiation of process 200, IGC 18 is in an “Off” state, during which IGC 18 is in a very low power mode where all components are off and the central processing unit (CPU) clock is stopped. The CPU is configured to wake when the user presses power on/mute/power off button 20 or when battery recharger 32 (FIG. 3) is inserted into battery recharger connector 28 (FIG. 1).

From step 201, control proceeds immediately to an “Initialize SGSAT” step during which process 200 initializes the central processing unit (CPU), memory, buttons 20 and 26 and temperature sensor of IGC 18. In addition, process 200 initiates a beep from sounder 76 (FIG. 6) so that the user can check sounder's 76 functionality and checks both battery pack 68 and the availability of an RF connection with RF link box 38 (FIGS. 2 and 8). If the RF connection is available, indicating that RF link box 38 and computing device 48 are on-line, then LEDs 40 and 42 (FIGS. 2 and 8) are flashed so that the user has an indication of the condition of SGSAT. It should be noted that IGC 18 is able to operate and collect data without a RF connection available. Data transfer and processing can occur off-line at a more convenient time.

Following step 203, control proceeds to a “Wait For Input or Event” step 205 during which IGC 18 is in a “Doze” state. In this state, IGC 18 performs periodic checks for the presence of RF link box 38, to determine whether or not IGC 18 should transition to an “At Address” state and to determine if power on/mute/power off button 20 has been depressed for a period of four (4), indicating that the user wishes to return IGC 18 to the Off state. These periodic checks are illustrated by a transition of control by process 200 through a “Link Box Detected?” step 207, an “Address Detected?” step 211 and an “Off Signal Detected?” step 215. In Doze state and during the periods between At Address checks, most IMU 53 (FIGS. 4 and 6) devices are powered down in order to conserve power of battery pack 68.

In the absence of detected events, as indicated by the “No” paths of steps 207, 211 and 215, the transition through steps 207, 211 and 215 occurs every 100 ms. During step 207, IGC 18 powers up club transceiver chip 78 (FIG. 6) to check for the presence of RF link box 38. If RF link box 38 is detected, then control proceeds to a “Process Link Box” step 209, which is described in more detail below in conjunction with FIG. 13. Following step 209, control returns to step 205 and processing continues as described above. In, in step 207 RF link box 38 is not detected, then control proceeds to “Address Detected?” step 211.

During step 211, process 200 takes acceleration readings from Cz and Cx axes (FIG. 7) accelerometers (FIG. 6), resolves the angle of the gravity vector, and reads an angular rate from the Cx axis gyroscope (FIG. 6) to determine a lack of rotation. If IGC 18 determines that IGC 18 is being held in a upright manner consistent with the stance of a golfer prior to a swing and that IGC 18 is not being swung or moving around the Cx axis, IGC 18 moves from the Doze state into the At Address state and control proceeds to a “Process Swing” step 213, which is described in more detail below in conjunction with FIG. 14. Following step 213, control returns to step 205 and processing continues as described above. If, in step 211, IGC 18 does not detect that the user is addressing the ball, then control proceeds to Off Signal Detected? step 215.

During step 215, IGC 18 determines whether or not power on/mute/power off button 20 has been pressed for a sustained period of time, e.g. four (4) seconds. If not, then control returns to 205 and processing continues as described above.

If power on/mute/power off button 20 has been pressed for a sustained period of time, then control proceeds to a “Power Down” step 217, during which IGC 18 takes actions necessary to return to the Off state in which, as described above, IGC 18 is in a very low power mode where all components are off and the central processing unit (CPU) clock is stopped. Finally, control proceeds from step 217 to an “End Operate IGC” step 229 in which process 200 is complete.

It should be noted that, although process 200 is described here as a “polling” process, process 200 could also be engineered as an event or interrupt driven process. Those with skill in the computing arts should appreciate the both the advantages and disadvantages of the different approaches.

FIG. 13 is a flowchart of Process Link Box step 209 of Data Collection process 200 of FIG. 12 in more detail. As explained above, step 209 is entered when IGC 18 detects a request from the corresponding RF link box 38.

Step 209 starts in a “Begin Process Link Box” step 231 and proceeds immediately to a “Request for Data?” step 233 during which process 200 determines whether or not the signal from RF link box 38 is a data download request. If so, control proceeds to a “Download Data” step 235 during which IGS 18 enters a “RF Download” state and transmits stored swing path data 82 (FIG. 9) to the computer application on computing system 48 (FIG. 2) via RF link box 38, through the USB connector 44 (FIG. 2), through the USB cable 46 (FIG. 2), and finally to analysis application 88 (FIG. 10). In an alternative embodiment, swing path data 82 is processed by the microprocessor of IGC 18 and data corresponding to the orientation and position of IGC 18, rather than the linear acceleration and angular rate of IGC 18, are transmitted from IGC 18 to RF link box 38.

Once data 82 has been downloaded, control proceeds to an “End Process Link Box” step 249 in which step 209 is complete. In addition, IGA 18 returns to the Doze state.

If process 200 determines in step 233 that the signal from RF link box 38 is not a data download request, then control proceeds to an “Upgrade Firmware?” step 237 during which process 200 determines whether or not the signal from RF link box 38 is a request to upgrade the flash memory and/or the memory of the microcontroller located on main board 52 (FIG. 6) of IGC 18. If so, control proceeds to a “Flash Memory” step 239 during which the firmware of IGC 18 is updated. Control then returns to End Process Link Box step 249 and processing continues as described above. Step 239 corresponds to a Flash Upgrade state of IGC 18, which is entered only from an RF Download state.

Finally, if in step 237, process 200 determines that the RF signal is not a RF update request, then control proceeds to step 249 and processing continues as described above.

FIG. 14 is a flowchart of Process Swing step 213 of Data Collection process 200 of FIG. 12 in more detail. Step 213 begins in a “Begin Process Swing” step 251 and control proceeds immediately to a “Wait for Motion” step 253 during which IGC 18 periodically samples all gyroscopes and accelerometers simultaneously every 0.0005 seconds, for a sampling rate of 2 kHz. At this point, IGC 18 is still in the At Address state.

After each sample, control proceeds to a “Sufficient Rotation” step 253 during which IGC 18 calculates the rotational rate of the club around the CX axis and thereby determines whether or not IGC 18 has started swinging. If the rotation rate does not exceed the threshold, then control proceeds to a “Timeout” step 257 during which IGC 18 determines whether or not IGC 18 has been at the At Address state for longer than a predetermined amount of time. If so, control proceeds to an “End Process Swing” step 269 in which step 213 is complete. If the predetermined period of time has not been exceeded, then control returns to step 251 and IGC 18 waits for another sample.

If, in step 255, the rotation rate around the CX exceeds the set threshold rate, IGC 18 enters a “Swinging” state and control proceeds to a “Sample Sensors” step 259. During step 259, IGC 18 samples all gyroscopes and accelerometers and stores the swing generated sensor data 82 to flash memory. As explained above in conjunction with FIG. 9, swing data collected by IGC 18 is stored as swing path data 82 comprised of swing info header 84 with multiple swing data elements 86. Swing info header 84 contains information such as initial timestamp, swing duration, swing flag status, and temperature. Each sampling IGC 18 sensors is stored in a swing data element file 86. Each swing data element file 86 contains data regarding accelerations along CX, CY, and CZ axes and angular rate data around CX, CY, and CZ axes. Therefore, for a given swing, there exists a one-to-many relationship between swing info header 84 record and the multiple swing data element 86 records.

The described embodiment of the claimed subject matter employs a fixed sampling rate, i.e. 2 kHz. Therefore, given the initial timestamp and a fixed time between samples, a swing path can be chronologically recreated. IGC 18 also monitors its position with respect to the upper and lower swing planes. While in the Swinging state, if club head 36 (FIG. 1) breaks either the upper or lower swing planes, sounder 76 (FIG. 6) produces an audible tone. This audible feedback can be toggled between a sound on and a sound off, or mute, configuration by briefly depressing power on/mute/power off button 20.

After each sampling interval, control proceeds from step 259 to a “Time Exceeded?” step 261 during which process 200 determines whether more time has elapsed than necessary to complete a swing of IGC 18. If so, control proceeds to a “Write Data” step 265 during which the data samples captured during iteration through step 259 are copied to and stored in a memory. IGC 18 then returns to a Doze state and control proceeds to an “End Process Swing” step 269 in which step 213 is complete.

If, in step 261, process 200 determines that the swing has not exceeded the maximum allowable time, then control proceeds to an “Insufficient Rotation?” step 263 during which process 200 determines whether or not IGC 18 is moving sufficiently fast to still be considered in the process of a swing. IGC 18 determines the end of the swing by monitoring the moving average of rotation vector magnitude. The magnitude of the rotation vector is calculated by taking the square root of the sum of the squared values of angular rate around the CX, CY, and CZ axes. If the moving average falls below a set threshold the swing is declared complete and control proceeds to Write Data step 265 and processing continues as described above. If, in step 263, process 200 determines the swing is still active, i.e. the moving average is above the threshold, then control returns to step 259 and more data samples are collected as described above.

FIG. 15 is a flowchart of a data display process 300 associated with IGC 18 and the SGSAT. Process 300 starts in a “Begin Display Data” step 301 that is initiated when computing device 48 (FIG. 2) is turned on and analysis application 88 (FIG. 10) is launched. Power from computing device 48 is employed to power RF link box 38 (FIG. 2) via USB cable 46 (FIG. 2). Control proceeds to an “Update Data” step 303 during which a user is provided an interface (not shown) for adding, editing and/or updating a user profile. If necessary, the user profile is also reconciled, or “synced,” with data from IGC 18 (FIGS. 1 and 4).

Following updating of the user profile in step 303, if performed, control proceeds to a “Application Patch Required?” step 305 during which process 300 determines whether or not a later version of analysis application 88 is available for download. If an application patch is available, control proceeds to a “Download Application Patch” step 307 during which the corresponding patch is downloaded and applied to analysis application 88. Those with skill in the computing arts should know of different methods of notifying an application that an upgrade is available and of applying the patch to analysis application 88.

If an application patch is either unavailable in step 305 or downloaded and applied in step 307, control proceeds to a “Firmware (FW) Patch Available?” step 309 during which process 300 determines whether or not a later version of process 200 (FIGS. 12-14), or IGC 18 firmware, is available for download. If a firmware patch is available, control proceeds to a “Download FW Patch” step 311 during which the corresponding patch is downloaded and applied to the flash memory of IGC 18. Step 311 on computing device 48 corresponds to Upgrade Firmware step 237 and Flash Memory step 239 explained above in conjunction with FIG. 13. In other words, if a firmware patch is available in step 309, then events are triggered on computing device 48 that cause IGC 18 to execute steps 237 and 239.

If a firmware patch is either unavailable in step 309 or downloaded and applied in step 311, control proceeds to a “Collect IGC Data” step 313 during which analysis application 88 signals IGC 18 via RF link box 38 and collects any data collected by IGC 18. Step 313 corresponds to Request For Data? step 233 and Download Data step 235 of process 200. In other words, step 313, executed on computing device 48, causes IGC 18 to execute steps 237 and 239.

From step 313, control proceeds to a “Share Swing Data? step 315 during which process 300 determines whether or not there is a signal to export user profile and/or swing data to another application. If such a signal is present, then control proceeds to an “Export Swing Data” step 317 during which user profile and/or swing data is transmitted to another SGSAT application. As explained above in conjunction with FIG. 10, SGSAT provides for data transmission with other instantiations of SGSAT. The ability to share swing path data allows one user to record data regarding their swing and then transmit the data to a second user for further visualization and analysis. The second user can annotate swing path data with comments and then transmit the annotated files to their originator. The ability to transmit annotated data between users allows for remote instruction and feedback.

If there is either no signal to export in step 315 or data is exported in step 317, control proceeds to a “Display Data” step 319 during which process 300 via analysis application 88 provides the user with visual feedback. Two examples of visual feedback include, but are not limited to, swing analytics and swing visualization. Swing analytics includes such information as the quality of impact with a golf ball, the corresponding geometric planes of the swing, a projected distance, the consistency among multiple swings and other advanced analytics. Swing visualization includes such information as multiple views of a particular swing, replay of a swing at various speeds and the viewing of specific segments of a swing.

Finally, control proceeds to an “End Display Data” step 339 in which process 300 is complete.

In addition to the above-described features and functions of the present invention, there here provided a reference swing, which may be used in any “stick & ball” or similar game or in other comparable, athletic movements. The present embodiment includes the use of the reference swing in relation to a golf swing. However, the reference swing equally applies to other sporting activities. The reference swing includes the use of a humanoid figure, various mathematical formulae employed in numerous ways, a ‘reference’ swing, an instrumented golf club, a means of communicating to a standard computing platform, a standard computational platform, such as a PC, and the required control and display software.

The humanoid figure can be composed with varying levels of detail, such as a ‘stick-figure’, wire frame figures or complete graphical images of the human figure. The humanoid figure may be male, female or gender neutral, with its movement modeled based on the known art at the time. An example would be to use a combination of professionals in the field as models and experts in the field for input into the required body movement of the humanoid.

The ‘reference’ swing of the humanoid is constructed in one of three ways. First, the humanoid is constructed to use the most mechanically efficient use of the golf club that is currently known. This is accomplished by defining a set of formulae that define the movements of the golf club throughout the swing, or alternatively constructing a model that passes through known positions during the golf swing. The movement of the humanoid is linked to the mathematical model of the mechanically efficient movement of the golf club.

The most efficient swing is one that can be best defined by the use of three planes, all of which are perpendicular to the target line. The target line is defined as a line passing through the golf ball to the target. The lower plane is defined as being the plane is defined by the shaft of the golf club, with two points at the hosel of the club The entry point of the shaft into the head on any golf club and the golfer's hands. The middle plane is defined as the plane that passes through two points, the center of the golf club's sweet spot and the right elbow of the golfer. The third plane is defined as the plane that passed through two points, the toe of the club and the golfer's right shoulder. The most efficient swing starts with the golfer at address and the club's shaft on the lower plane.

As the swing starts the club's shaft stays on the lower plane until the club is parallel to the earth's surface, or the 90 degree position from address. At this point the golfer's swing will traverse multiple planes until it is either on, or just below, the upper plane with the golf club's shaft parallel to the upper plane and acceleration of the club is equal to zero, roughly 270 degrees from the address position. From this point the golfer ‘transitions’ to the downswing, with the golf club crossing multiple planes until it is on, with the club's shaft parallel, to the middle plane. At this point the golfer rotates his body and completes the swing with the club staying on this middle plane to completion of the follow through.

Second, the user may choose to use a ‘personal best’ motion as the reference motion. This is accomplished by electronically flagging an exceptionally good result when using the instrumented golf club and downloading the same into the display software. Third, the user may choose to use a known professional in the sport to provide the desired reference motion. This is accomplished by a download from a web site that has such reference motions stored for such use.

Data is gathered for use with the relative learning system from an instrumented golf club, as discussed in prior art and above. The movement of the golf club is sampled at rates that are fast enough to insure that the movement of the stick can be recreated at any point. An example might be to sample a 2 second movement at a rate of one sample every 500 microseconds, resulting in 4000 samples during the course of the 2 second movement. Data is transferred to the standard computing platform after one or more movements. Data transfer could be either wireless or via a standard PC interface, such as a USB interface.

Once the data is transferred to the standard computing platform the data from the movement of the learner's golf club is overlaid on the humanoid with one of the available ‘reference motions’. Scaling of the data eliminates physical differences between the humanoid figure and the learner. This is accomplished by matching the X axis of the user's data to the X axis of the motion made by the humanoid making the most mechanically efficient motion. This changes the motion in an absolute fashion, but does not change the relative information about the movement made by the learner. The display shows the humanoid figure with the reference golf club and the golf club of the user overlaid on the same display.

The display and control software will enable the user to view the movement of the humanoid in three dimensions and multiple views, such as a top view, side view and front view. Standard capabilities include looping, slow-motion and numerous pre-defined positions that are critical to fully understanding the required movement. With appropriate control software the user would be able to customize the way the humanoid is viewed to fit their particular preference with a ‘camera in space’ capability. The humanoid, with the appropriate golf club represents the model that the learner is trying to emulate.

Use of the invention entails ‘playing the data’ captured by the instrumented golf club through the model and comparing the ‘reference motion’ with the motion made by the learner. This is accomplished by utilizing preset positions defined on the model, enabled by formulae that analyze and divide the learner's data into corresponding positions and segments. Timing and tempo of the learner's motion can also be matched to the humanoids motion.

The key analysis points of the golf swing are (1) address, (2) top of swing, and (3) impact. Because the vibration occurring at impact, analysis is substantially limited after the impact point. That is, measurement occurring after impact, due to vibration, are unreliable. The primary purpose of the address analysis is to determine the orientation of the club. Using mathematical induction, the address point may be considered as the n=0th position. By analyzing the gravitational orientation at the address position, it is possible to determine the other points in the algorithmic process for the purpose of determining all other points of interest in the golf swing.

In the address point determination gravitational analysis, it is desirable to have the golf club as fixed or motionless as possible. This is because at such a point the player is addressing the golf ball in preparation for taking the golf swing. This address point can serve as the orientation for the swing analysis that the present embodiment accomplishes. The present invention seeks to align the bore which holds the IMU and so as to be parallel in its alignment with the club face in the direction in which the ball will be hit. Thus, with the ability to determine the position of the IMU and the at-address position it is possible to determine a set of vectors that change and permit the measurement of club head position as the swing progresses. Aligning the IMU with the address position using a gravity vector permits inferring that the clubface is square. Thus, these two parameters of the position of the IMU and the at-address position permit determining the orientation of the golf club.

Another consideration relating to the use of the at-address position includes the ability to determine the position of an origin to be the location of the golf ball. The present embodiment divides the golf swing into segments, including super-segments and sub-segments. Through these segments it is possible to identify an “address segment,” a “backswing segment,” a “downswing segment,” and a “follow-through segment.” Within each of these super-segments are an appropriate number of sub-segments. Thus, for example, at the address segment a set of sub-segments may include a segment beginning with an initial preparation and continuing until motion stops or, at least, goes to a minimum level of motion. A second segment begins at such a stopped motion state to player's taking the club away from the ball as the backswing begins. segment. Other sub-segments relating to the backswing, downswing, and follow-through segments could be partitioned and analyzed accordingly.

The following explanation of the address algorithm details how the present embodiment enables these novel aspects of the present invention.

The top of swing position is determined by analyzing the point at which the angular weight during the backswing segment of a swing goes to a minimum. At impact a shocking vibration determines the point at which the club head impacts or hits the ball. With the present embodiment, the measure of vibration is set to that which would occur upon the club head striking a whiffle-ball. This low threshold assures that the swing analysis will occur with at least this level of vibration and that the impact point analysis can occur. Of course, with a more precise determination of the golf ball location, using the concepts for at-address and golf ball orientation already described, it may be possible to avoid the need to use the whiffle-ball vibration threshold analysis for determining the ball impact point.

FIG. 16 depicts the address point isolation process 450 of the present embodiment. Address algorithm 450 begins at step 452 for finding the narrowest parameter set where an interval during address qualifies as “at-address.” At query 454, a test occurs of whether there is a section of at least a predetermine number (X) of consecutive points that qualify as “at-address.” If not, then process flow continues to step 456 wherein there is a determination of whether a wider parameter set exists. If the result of the query of step 456 is negative, then process flow continues to step 458 wherein the process result is that no address position is found. On the other hand, if the step 456 returns a positive result, then process flow goes to step 460 to obtain a wider parameter set, after which process flow goes to back to the query of step 454.

If the step 454 query result is positive, then process flow for address algorithm 450 goes to step 462 wherein the process chooses the latest section of a predetermined number (X) of consecutive at-address points. The next step 464 finds the “best” address points within a stationary section. Then, process flow goes to the query of step 466 to test whether there is another section of intervals with at least a predetermined number (X) consecutive “at-address” points? If so, then, at step 468, process flow includes checking for a better address point within the other section. Then, if a better address point exists, at step 470, such point is selected as the address. Finally, with either (a) the better address point determined at step 470 or (b) the existing address point as determined at step 464, process flow continues to step 472 to provide the address algorithm 450 output of a returned address position.

The present embodiment provides the ability to synchronize a reference pro swing with a user's swing as sensed the intelligent golf club. This process involves physically scaling the reference swing to the user's swing and using the analytical processes herein described for the purpose of identifying certain segments and sub-segments in the user's swing. By identifying the segments, it is possible to match the reference swing with the user's swing time. This permits the determination of position differences between the reference swing and the user's swing. These position differences define portions of the user's swing that vary most significantly from the same portions of the reference swing. In essence, by temporally matching a reference swing with a user's swing it is possible to remove from the analysis any complications or comparison challenges that may relate to timing mismatches between the two swings.

By matching similar sub-segments between the reference swing and the user's swing, the process of the present embodiment involves scaling the time segments for similar sub-segments to be the same. Thus, for example, the total time for each of the reference swing and the user's swing is normalized to be from 0 to 1. The scaling then, for example, if a first sub-segment of the reference swing occurs between 0.0 and 0.2, then the recording of the user's swing will have the same first sub-segment set to be between 0.0 and 0.2. That is, by compressing or expanding the time interval associated with corresponding sub-segments or segments of either the reference swing, the user's swing or both, it is possible to filter from the comparison the temporal element of the different swings.

The demonstration of the correspondence between the reference swing and the user's swing may be via a display that overlays the reference swing with the user's swing such as the user swing display appearing at FIG. 17.

The following terms and definitions are herein provided for the purpose of illustration and not for limitation. There may be other equivalent definitions for the terms herein provided and any used for explanatory or demonstrative purposes. Accordingly, it is only by reference to appended claims that the scope of the present invention and the various embodiments herein is and can be limited. However, because of their beneficial ability to establish the novel concepts of the present invention they are here provided.

Terms and Definitions.

Inertial measurement unit (IMU)—A term ascribed to a sensor grouping of three accelerometers and three gyroscopes aligned along mutually perpendicular axes. (Term may be more general than this, but the literature I read was consistent about it.) This is sometimes referred to as a six-degree-of-freedom measurement unit.

Frame-of-reference (FoR)—Physics term used to describe a system within a system. For example, when a golfer rides in a car, golfer is motionless in the golfer's frame of reference, while the world appears to move around the golfer. In the present embodiment, a FoR has its own coordinate system, so the IMU FoR has a set of coordinate axes fixed relative to it.

Square clubface—This situation occurs when the face of the club is lined up so that the normal vector is along the target line.

Neutral address position—At-address, a club is positioned so that the clubface is square and the shaft is leaning neither towards the target nor away from the target.

World FoR—The world frame of reference has a set of coordinate axes with the following definitions:

    • X-axis—the direction a right-handed golfer faces
    • Y-axis—the target line of the golf shot
    • Z-axis—up
    • Origin—at the center of the golf ball

Club FoR—Coordinate axes given a neutral address position for the club:

    • Z-axis—up center of club shaft
    • X-axis—“top” of club grip; should lie in world XZ plane in a neutral address position
    • Y-axis—points towards target (should be parallel to world y-axis is a neutral address position)
    • Origin—fixed distance from top of board
    • g—acceleration due to gravity, approximately 9.8 m/s2.
      Determining Key Positions

Address Position. There are two different components of address. The present embodiment needs the address position that allows the system to determine best the orientation of the club. The present embodiments need the address position to derive a representation of a best point for the true start-of-swing.

By necessity, the present embodiment needs to use raw data readings to determine initial orientation. This is because trying to use anything other than acceleration readings and angular rate readings is a sequencing problem. That is, the present embodiment preferably determines velocity with the determined orientation information. To be more specific, an iterative method would allow this, but would be very expensive and would have errors.

The firmware triggers recording of a swing in such a way that there is an 800-millisecond window during which the swing will have begun. This window is referred to in places below.

First Address Component—Gravity Vector

In order to establish the correct initial orientation, the present embodiment needs a period of low motion during address to obtain an accelerometer reading that is mostly due to the gravity vector. When the IMU is stationary, the only measurements reported by the IMU are preferably will be acceleration due to gravity (and noise/other data inaccuracies). For this reason, the present embodiment requires the golfer to bring the club to a rest at some point during the address.

Determine club is in a valid address orientation. The present embodiment determines the club is being moved into address by the individual accelerometer readings. The present embodiment knows the basic range of readings for each accelerometer that indicate the club is oriented as if to address the ball. Therefore, minima and maxima for each accelerometer are kept as properties, and are used to determine that the golfer is trying to address the ball.

Club motionless. When the sensors register their lowest levels of movement, the present embodiment have the best chance to have an accurate reading of the direction of gravity. The present embodiment determines this by checking that the magnitude of the acceleration vector is close to g, while the magnitude of the angular rate vector is close to zero. Due to calibration errors and noise, the present embodiment control these using sets of parameters that start out tight and gradually expand. The present embodiment iterates through these parameter sets to look for the best possible points first, and gradually move to the wider sets until a range of valid points is found that qualify as motionless. The minimum size for this range is controlled by parameter.

Determining Orientation—Once the present embodiment has a low-motion point at-address, the present embodiment has a vector representing acceleration due to gravity. However, the gravity vector is not sufficient for establishing a coordinate system. Specifically, a gravity vector is sufficient for determining the inclination of the IMU, but is not sufficient for establishing the coordinate axes for the IMU FoR. To understand this, picture a set of coordinate axes in the world FoR. The gravity vector will produce the angle of the IMU relative to vertical, but the present embodiment has no idea how to “twist” the orientation around the world z-axis. Therefore, the present embodiment needs more information.

The present embodiment obtains this information by assuming that the golfer squares the clubface. By assuming a square clubface, the present embodiment can determine the target line of the golf club (world FoR y-axis) and therefore extrapolate the twist of the unit about the world z-axis.

Error concerns—Four sources of error affect the ability to calculate orientation from address:

Sensor noise—this results in gravity vectors that are not precisely 9.8 m/s2 and misalignments in the direction of the gravity vector.

IMU orientation within the club shaft. The shaft keeps the IMU almost perfectly vertical, to the point where the present embodiment don't worry about it, but even a small amount of twist within the shaft can contribute significant error.

User alignment of the clubface. It is very easy to set up with the clubface off by one or two degrees from the direction the golfer is trying to swing.

Measurement errors. The face of a club head is curved, which complicates things. In addition, the present embodiment has yet to use sophisticated equipment to determine completely accurate measurements.

Determining the best interval for calculating orientation. Because of the measurement errors, the present embodiment determines the most accurate orientation when the club addresses the ball in a “hands-neutral” position, with the hands neither in front of nor behind the clubface. This is because, in this position, the face of the IMU within the club is close to parallel to the clubface and is close to vertical, so errors are minimized.

For that reason, the present embodiment wants to find the vertical position during the address window for establishing the orientation of the IMU. This implies a y-accelerometer reading that is as close to zero as possible. So, the present embodiment iterate through the points looking for stable accelerometer readings with consistently low y-accelerometer readings. The present embodiment needs to establish consistency to avoid selecting a point that happens to spike into the correct range due to noise and to avoid selecting a point that occurs during movement. The present embodiment do this by ensuring there are X number of points that meet the parameter set, where X is another parameter. To obtain the lowest possible y-accelerometer reading, the present embodiment iterate through a series of parameter sets. These sets include y-accelerometer minima and maxima that gradually widen.

Second Address Component—Because the present embodiment is looking for a certain orientation of the club, the algorithm will often pick a point too early in the address window. Picking a point too early can only result in displaying a lack of motion or part of the golfer's address routine that does not matter. This is obviously uninteresting to the golfer, and it makes the scaling of the first segment of the swing a bit awkward (an animated reference swing will be ahead of the user's swing, while two different swings displayed side-by-side can have the same problem). Therefore, it is in the interest to pick a later “motionless” point as the start-of-swing to eliminate these problems. The present embodiment does this in the following manner.

The present embodiment starts from the end of the 800-ms address window, where the present embodiment knows the swing has begun, barring a firmware problem. (Note: the only thing resembling a firmware problem here is that the present embodiment occasionally record waggles, but these are weeded out other ways.) Therefore, the present embodiment can backtrack from the end of the interval and watch two key sensors: the y-accelerometer and the x-gyroscope. Most right-handed swings experience strongly negative y-accelerometer and x-gyroscope readings during the backswing. So, the present embodiment look for these negative readings and track back until the present embodiment both of these readings tend towards zero. The present embodiment also looks for the points that qualify as at-address and try to pick an interval within a stable set of points that seem motionless. Theoretically, the first set of motionless points should contain the start-of-swing, but there are scenarios that can foil this idea.

Once the present embodiment implements start-of-swing checking, the at-address algorithm will change to find the address point and the start-of-swing. The present embodiment will establish the initial orientation at the address point, and then carry only the orientation calculations through to the start-of-swing. Since the present embodiment is establishing an early orientation in many cases, the present embodiment will have more information at the disposal. It is possible to calculate position and velocity values from the address point, and use position change to determine the best start of swing location.

Top of Swing—The top-of-swing detection aspect of the present embodiment determines the point where the club's angular rotation drops to a minimum in an area likely to show the top-of-swing. The latter part is a little more difficult to define. Essentially, a window can be established around the actual top-of-swing based upon angular rate magnitudes. Every swing that the present embodiment has seen exceeds a certain angular rate magnitude on the backswing and downswing. Therefore, the present embodiment can define a top-of-swing window around the values that are less than that magnitude. The next step is to find the minimum angular rate within that window. Although other steps may be involved, the inventive concepts herein may be established by these two steps.

Yet further novel aspects associate with determining impact. Currently, the present embodiment searches the area beyond the top-of-swing for detectable impact vibration over a series of intervals. This process can be broken into sub-processes, and the implementation may vary from what is described to improve performance.

Determine if accelerometer is experiencing vibration. The present embodiment does not look for a spike in accelerometer data. A casual examination of typical accelerometer data during a swing reveals a relatively smooth trend during the swing. However, at impact, the vibration causes the reading to spike significantly over consecutive intervals, resulting in a strong spike at the beginning followed by a gradual dampening of the spiking as the vibration dissipates. An accelerometer is considered to experience vibration under one of two conditions:

    • There is a significant change in acceleration. This is controlled via a parameter.
    • There is a significant but smaller change in acceleration coupled with a reversal in direction. A smaller acceleration change sometimes appears outside of a vibration point, but a reversal with this type of change indicates it is caused by vibration.

Determine if a data point is experiencing vibration. One novel aspect of determining vibration relates to the value read by the accelerometer is somewhat random during vibration. Vibration causes an acceleration spike that oscillates back and forth around the true value of acceleration at the frequency of the vibration. Depending on where the accelerometer reading is taken, the offset caused by vibration can be anywhere from the maximum of the spike to the minimum of the spike. In other words, if the spike oscillates between 10 and −10 m/s2, the actual acceleration x will produce a final value of between x−10 and x+10, depending on the moment the acceleration is measured. Therefore, it is possible vibration will produce no noticeable change between certain intervals.

As such, the present embodiment needs to be a little liberal in declaring a point as vibrating: two of the three accelerometers experiencing vibration is enough to declare the point is experiencing vibration.

Determine if a section of data is experiencing vibration. For the reasons explained in the previous section, the present embodiment needs to continue to be a little loose about the requirements for impact. To find impact, the swing iterates through data points and looks for a fixed-length section where a certain number of data points are considered vibrating. If this is the case, the point before the starting interval is considered the impact point. This is because it takes approximately ⅔ of a millisecond for vibration to travel from the club head up to the IMU, so the actual impact point is likely one interval prior to start of vibration.

Parameters. Parameters for impact include:

    • Length of section to be examined for vibration
    • Number of data points within the section that must be considered vibrating to be considered impact
    • Large acceleration value to indicate vibration in an accelerometer
    • Small acceleration value to indicate vibration in an accelerometer assuming a spike

These parameters were determined via experimentation with a whiffle ball, as values that work with a whiffle ball will certainly work with any other type of ball that is struck.

All references, including publications, patent applications, and patents, cited herein are hereby incorporated by reference to the same extent as if each reference were individually and specifically indicated to be incorporated by reference and were set forth in its entirety herein.

The use of the terms “a” and “an” and “the” and similar referents in the context of describing embodiments of the invention (especially in the context of the following claims) are to be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by context. The terms “comprising,” “having,” “including,” and “containing” are to be construed as open-ended terms (i.e., meaning “including, but not limited to,”) unless otherwise noted. Recitation of ranges of values herein are merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, unless otherwise indicated herein, and each separate value is incorporated into the specification as if it were individually recited herein.

All methods described herein can be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. The use of any and all examples, or exemplary language (e.g., “such as”) provided herein, is intended merely to better illuminate embodiments of the invention and does not pose a limitation on the scope of the invention unless otherwise claimed. No language in the specification should be construed as indicating any non-claimed element as essential to the practice of the invention.

Preferred embodiments of this invention are described herein, including the best mode known to the inventors for carrying out the invention. Variations of those preferred embodiments may become apparent to those of ordinary skill in the art upon reading the foregoing description. The inventors expect skilled artisans to employ such variations as appropriate, and the inventors intend for the invention to be practiced otherwise than as specifically described herein. Accordingly, this invention includes all modifications and equivalents of the subject matter recited in the claims appended hereto as permitted by applicable law. Moreover, any combination of the above-described elements in all possible variations thereof is encompassed by the invention unless otherwise indicated herein or otherwise clearly contradicted by context.

All references, including publications, patent applications, and patents, cited herein are hereby incorporated by reference to the same extent as if each reference were individually and specifically indicated to be incorporated by reference and were set forth in its entirety herein.

The use of the terms “a” and “an” and “the” and similar referents in the context of describing embodiments of the invention (especially in the context of the following claims) are to be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by context. The terms “comprising,” “having,” “including,” and “containing” are to be construed as open-ended terms (i.e., meaning “including, but not limited to,”) unless otherwise noted. Recitation of ranges of values herein are merely intended to serve as a shorthand method of referring individually to each separate value falling within the range, unless otherwise indicated herein, and each separate value is incorporated into the specification as if it were individually recited herein. All methods described herein can be performed in any suitable order unless otherwise indicated herein or otherwise clearly contradicted by context. The use of any and all examples, or exemplary language (e.g., “such as”) provided herein, is intended merely to better illuminate embodiments of the invention and does not pose a limitation on the scope of the invention unless otherwise claimed. No language in the specification should be construed as indicating any non-claimed element as essential to the practice of the invention.

Preferred embodiments of this invention are described herein, including the best mode known to the inventors for carrying out the invention. Variations of those preferred embodiments may become apparent to those of ordinary skill in the art upon reading the foregoing description. The inventors expect skilled artisans to employ such variations as appropriate, and the inventors intend for the invention to be practiced otherwise than as specifically described herein. Accordingly, this invention includes all modifications and equivalents of the subject matter recited in the claims appended hereto as permitted by applicable law. Moreover, any combination of the above-described elements in all possible variations thereof is encompassed by the invention unless otherwise indicated herein or otherwise clearly contradicted by context.

Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7648422Oct 26, 2007Jan 19, 2010Fairway Golf Center, LlcGolf swing training device
US7766757 *Jan 30, 2008Aug 3, 2010Fairway Golf Center, LlcGolf swing device
US7771263 *Sep 9, 2004Aug 10, 2010Telford Golf Enterprises, LLCPortable swing speed analyzer
US8192293 *Jan 14, 2011Jun 5, 2012Callaway Golf CompanyMethod and system for shot tracking
US8198526Feb 12, 2010Jun 12, 2012745 LlcMethods and apparatus for input devices for instruments and/or game controllers
US8303428 *Feb 15, 2008Nov 6, 2012Wagen Thomas AShort game training device for use with golf club
US8449402Mar 22, 2008May 28, 2013Richard JaekelDevice and method for monitoring the striking accuracy and the swing movement of a golf club
US8465376 *Mar 15, 2011Jun 18, 2013Blast Motion, Inc.Wireless golf club shot count system
US8613676Jan 26, 2012Dec 24, 2013Blast Motion, Inc.Handle integrated motion capture element mount
US8814641 *Aug 15, 2006Aug 26, 2014Nintendo Co., Ltd.System and method for detecting moment of impact and/or strength of a swing based on accelerometer data
US8821306 *Apr 16, 2013Sep 2, 2014Acushnet CompanyFitting system for a golf club
US20080200275 *Feb 15, 2008Aug 21, 2008Wagen Thomas AShort game training device for use with golf club
US20090293068 *Aug 7, 2006Nov 26, 2009Mitsubishi Electric CorporationData transfer apparatus, mobile terminal apparatus, data transfer method, and data transfer program
US20110224011 *Jan 14, 2011Sep 15, 2011Callaway Golf CompanyMethod and system for shot tracking
US20120052971 *Mar 15, 2011Mar 1, 2012Michael BentleyWireless golf club shot count system
US20120052972 *Oct 11, 2010Mar 1, 2012Michael BentleyWireless golf club motion capture apparatus
US20120115626 *Jan 17, 2012May 10, 2012Golf Impact LlcGolf Swing Measurement and Analysis System
US20130344973 *Apr 16, 2013Dec 26, 2013Acushnet CompanyFitting system for a golf club
US20140066219 *Sep 6, 2012Mar 6, 2014Jin Wook KimFeedback apparatus and method for improving cocking loosening
EP2016360A2 *May 8, 2007Jan 21, 2009Nintendo Co., LimitedSystem and method for detecting moment of impact and/or strength of a swing based on accelerometer data
WO2007133527A2May 8, 2007Nov 22, 2007Nintendo Co LtdSystem and method for detecting moment of impact and/or strength of a swing based on accelerometer data
WO2009118019A1 *Mar 22, 2008Oct 1, 2009Richard JaekelDevice and method for monitoring the hitting accuracy and the drive movement on a golf club
WO2012149337A1 *Apr 27, 2012Nov 1, 2012Nike International Ltd.System for golf clubs and golf club heads
WO2012149359A1 *Apr 27, 2012Nov 1, 2012Nike International Ltd.System for golf clubs and golf club heads
WO2012149385A1 *Apr 27, 2012Nov 1, 2012Nike International Ltd.Golf clubs and golf club head
Classifications
U.S. Classification473/219, 473/257
International ClassificationA63B69/36
Cooperative ClassificationA63B2220/40, A63B2071/0625, A63B2220/62, A63B71/0622, A63B2220/64, A63B2220/72, A63B2225/50, A63B2024/0012, A63B69/3632, A63B2220/833, A63B2225/54, A63B2220/803, A63B2220/16
European ClassificationA63B69/36D2