U.S. patent application number 15/082613 was filed with the patent office on 2016-07-21 for golf swing practice system with virtual divot generation.
The applicant listed for this patent is Mark E. Nusbaum. Invention is credited to Mark E. Nusbaum, Jan E. Rhoads.
Application Number | 20160206945 15/082613 |
Document ID | / |
Family ID | 38874203 |
Filed Date | 2016-07-21 |
United States Patent
Application |
20160206945 |
Kind Code |
A1 |
Nusbaum; Mark E. ; et
al. |
July 21, 2016 |
GOLF SWING PRACTICE SYSTEM WITH VIRTUAL DIVOT GENERATION
Abstract
A golf practice mat includes an impact sensor disposed in a
vicinity bounding the location of where a golf ball would be placed
for striking. The golf practice mat may also include, for example,
a "crosshair" target imprint that is disposed on a golf club impact
sensor portion of the practice surface and indicates the point/line
of contact that the club face should hit the ground after the ball
has been struck with the club head in a descending blow. A
microcontroller receives and analyzes the output of the impact
sensor and generates a display/output message that is coupled to a
display that is, for example, embodied on the golf practice mat to
provide user shot-related feedback. The display may indicate, for
example, the user's golf club, the estimated distance the ball will
travel depending upon the impact data analyzed, the club chosen by
the user, input backswing data and/or a three-dimensional
simulation of the resulting golf stroke.
Inventors: |
Nusbaum; Mark E.; (McLean,
VA) ; Rhoads; Jan E.; (Grapevine, TX) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Nusbaum; Mark E. |
|
|
US |
|
|
Family ID: |
38874203 |
Appl. No.: |
15/082613 |
Filed: |
March 28, 2016 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
14107370 |
Dec 16, 2013 |
9295897 |
|
|
15082613 |
|
|
|
|
13650602 |
Oct 12, 2012 |
8613678 |
|
|
14107370 |
|
|
|
|
13067392 |
May 27, 2011 |
8287398 |
|
|
13650602 |
|
|
|
|
11582546 |
Oct 18, 2006 |
7959521 |
|
|
13067392 |
|
|
|
|
60815254 |
Jun 21, 2006 |
|
|
|
60842011 |
Sep 5, 2006 |
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
A63B 2071/0647 20130101;
A63B 69/3623 20130101; A63B 2071/0694 20130101; A63B 2220/35
20130101; A63B 69/3617 20130101; A63B 69/3661 20130101; A63B
2102/32 20151001; A63B 2220/80 20130101; A63B 2220/56 20130101;
A63B 2220/805 20130101; A63B 69/36 20130101; A63B 24/0003 20130101;
A63B 71/06 20130101; A63B 69/3667 20130101; A63B 69/3614 20130101;
A63B 2225/50 20130101; A63B 2024/0012 20130101 |
International
Class: |
A63B 69/36 20060101
A63B069/36; A63B 24/00 20060101 A63B024/00; A63B 71/06 20060101
A63B071/06 |
Claims
1. A golf swing practice mat apparatus for use by a user practicing
a golf swing with a golf club having a golf club head for
generating feedback relating to the direction of a golf shot that
would have resulted from the practice swing comprising: a practice
mat surface, for use by a user practicing a golf swing having an
assumed golf ball position-related image embodied thereon to
identify an assumed golf ball position; said practice mat also
having an initial contact target image embodied thereon to provide
a target for the club head to initially contact the practice mat to
simulate striking the beginning of an area where a desirable divot
would have been made on a golf course fairway after ball contact if
an actual golf ball had been placed at said assumed golf ball
position; a golf club head practice mat impact assembly operatively
coupled to said practice mat surface to visually indicate points at
which the club head initially made contact with the practice mat
relative to said target to thereby provide feedback relating to the
direction a golf ball, disposed at said assumed golf ball position,
would have traveled if struck by the golf club head during the
practice swing.
2. A golf swing practice mat apparatus according to claim 1,
wherein said golf club practice mat impact assembly includes an
array of sensors being operable to generate golf club head
position-related data, said golf club head practice mat
position-related data being generated during a practice swing of
said golf club and being generated independent of whether the golf
club head is striking a golf ball, a storage device for storing
said golf club head position-related data; and a processor
operatively coupled to said array of sensors and said storage
device, said processor being operable using said golf club head
position-related data to determine the position of the golf club
head relative to said target, said processor being configured to
project the type of golf shot that would have resulted if a golf
ball, positioned proximate to said target, were to have been struck
during said practice swing, and an output mechanism operatively
coupled to said processor for indicating the type of golf shot that
would have resulted from a golf ball being struck by said user from
said assumed golf ball position during said practice swing.
3. A golf swing practice mat apparatus according to claim 1,
wherein said golf club head practice mat impact assembly includes a
contour changing material operatively coupled to said practice mat
surface to provide at least a temporary visual indication of
initial club head strike points and the nature of a resulting divot
had the practice swing been performed on a golf fairway.
4. A golf swing practice mat apparatus according to claim 1,
wherein said golf practice mat surface has foot position imprints
embodied thereon.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This is a continuation of allowed application Ser. No.
14/107,370, filed on Dec. 16, 2013, which is a continuation of
application Ser. No. 13/650,602, filed Oct. 12, 2012, which issued
as U.S. Pat. No. 8,613,678, which is incorporated herein by
reference in its entirety, which is a continuation of application
Ser. No. 13/067,392, filed May 27, 2011, which is incorporated
herein by reference in its entirety, and which issued on Oct. 16,
2012 as U.S. Pat. No. 8,287,398, which is a continuation of
application Ser. No. 11/582,546, filed on Oct. 18, 2006, which
application is incorporated herein by reference, which issued on
Jun. 14, 2011 as U.S. Pat. No. 7,959,521, and which claims the
benefit under 35 U.S.C. 119(e) of Provisional Application Nos.
60/815,254 and 60/842,011, filed Jun. 21, 2006 and Sep. 5, 2006,
respectively.
FIELD OF THE INVENTION
[0002] The invention generally relates to golf practice equipment
apparatus and methodology. More particularly, the invention relates
to an electronically controlled, golf swing
analyzing/training/instructional mat system which provides a wide
range of golf ball striking feedback.
BACKGROUND AND SUMMARY OF THE INVENTION
[0003] The game of golf has been a source of frustration for
multitudes of golfers who have struggled to achieve consistently
good results when playing this very difficult game.
[0004] Part of the difficulty in reducing golf scores and/or
striking the ball consistently well is that much of what is
required to be a good golfer is anti-intuitive to most players. For
example, while great emphasis is placed in many golf courses on
hitting the ball a long distance, attempts by beginner golfers to
strike the ball with great impact, typically leads to the golfer
tensing up and failing to hit the ball with the smooth, seemingly
effortless stroke that often characterizes a long ball hitter
having proper swing and ball striking techniques.
[0005] Similarly, beginner golfers attempting, for example, to hit
a high arching shot using a pitching wedge, intuitively attempt to
swing up at the ball in a misguided effort to hit it high. In
contrast, the proper ball striking technique involves hitting down
on the ball just prior to impact and letting the angle of the club
face work to loft the ball.
[0006] There is a need for golf practice equipment that provides a
wide range of user feedback to reinforce a swing that will result
in good ball contact and to help correct a habitual swing/ball
strike that will predictably result in bad ball contact. In this
fashion, particularly when coupled with professional guidance, a
golfer may develop a swing that results in optimum ball striking
that becomes second nature. Without proper instructional guidance
and positive feedback, proper ball striking cannot be readily
accomplished.
[0007] In accordance with a first exemplary, non-limiting
implementation of the present invention, a golf practice mat
includes an impact sensor disposed in a vicinity bounding the
location of where a golf ball is to be envisioned by the user. By
way of example only, a circular indication of the position where a
golf ball would be placed for striking is embodied on the practice
mat.
[0008] The golf practice mat also includes, in an exemplary
implementation, a "crosshair" target imprint that is disposed on a
golf club impact sensor portion of the practice surface. The target
imprint indicates the point/line of contact that the club face
should hit the ground after the ball has been struck with the club
head in a descending blow. The "crosshair" location reflects the
prevailing view that, when a golf ball is to be struck on a golf
course fairway, the proper ball striking technique requires hitting
down on the ball at impact.
[0009] In an exemplary embodiment, a microcontroller receives and
analyzes the output of the impact sensor and generates
display-related data/output message that is coupled to a display
that is, for example, embodied on the golf practice mat to provide
stroke/shot-related feedback. In an illustrative embodiment, the
display may, for example, provide an indication of the club chosen
by the user, the user input amount of backswing rotation, the
projected path of the ball after being struck, the estimated
distance the ball will travel based upon a projection in light of
the impact data analyzed, and/or a line of club head contact with
the mat indicative of the disposition of a divot on an actual golf
course. In an illustrative implementation, the display may include
a 3D simulation of the resulting golf stroke and ball flight.
[0010] In an illustrative implementation, an Initial Strike
Feedback Circle is embodied on the practice mat that pinpoints
exactly where the golfer's initial club head strike fell with
respect to an ideal strike point to thereby provide a divot-related
indication. The idea behind this is to stimulate the golfer to
adjust his/her stroke on the next swing to match an ideal strike
point. In an illustrative embodiment, two circles are drawn around
the center of a mat zero line, which is the ideal strike point.
These circles are populated with closely-packed LEDs that can be
individually activated to display, for example, the initial club
head strike line.
[0011] Certain of the illustrative implementations are based in
part upon a recognition that by a microcontroller analyzing the
output of an array of impact sensors that detect club head contact
at the points corresponding to where a divot would be taken on an
actual golf course much can be learned/projected about the golfer's
swing and the resulting golf shot. For example, much can be learned
about the quality of the golfer's swing just from the size of the
initial club head footprint on the impact mat/sensors and its
horizontal X-Y position and rotational angle. Then, expanding this
2D geometric model to 3D, more can be learned from the footprint's
initial vertical Y-Z downward pressure and rotational angle from
toe to heel gleaned from small deltas in the pressure gradient
across the length of the footprint in the Y-Z plane. Moreover, even
more can be learned within each footprint from any small positional
and rotational deltas that are described herein.
[0012] In an exemplary embodiment, the device stores a set of a
user's golf club impact data over time and analyzes such data for
stroke/shot-related trends, e.g., typically makes contact with the
clubface open or closed to result in a ball path to the right or
left, typically makes contact too far in front or behind the ball,
etc. In this fashion, a user may be provided with 1) a wide range
of real time and long range swing/ball striking-related feedback
and/or 2) real time projected golf shot-related feed back.
[0013] Moreover, such data may be processed in accordance with an
illustrative implementation such that it may be used by golf club
manufacturers and retail outlets for club fitting and optimum golf
club selection tailored to the swing of a given golfer. In
accordance with illustrative implementations, this data may be
processed and advantageously utilized to assist in the selection
and/or fitting of the optimum golf club, e.g., TaylorMade,
Callaway, Ping, etc., tailored to the swing of a user. Thus, the
golf apparatus described herein may be utilized for other
applications beyond golf training.
[0014] In accordance with a non-limiting exemplary implementation,
the visual display may be accompanied by or, if desired, replaced
with an audio indication of the stroke analysis.
[0015] In accordance with a non-limiting, exemplary implementation,
the golf practice mat may include an input mechanism enabling the
user to select, for example, a club and stroke to utilize, e.g., a
sand wedge to be hit with a short, medium or full backswing. Such
backswings, when analogized to the hands of a clock are often
referred to, for example, as 7:30, 9:00 and 10:30 position
backswings.
[0016] In accordance with an exemplary implementation, the optimum
distance traveled for each club desired to be included is stored in
a memory table embodied in the practice mat's associated
microcontroller-based electronics. In one illustrative embodiment,
the memory table associates for each club and each of a variety of
backswings, an optimum distance value. The table is accessed by the
microcontroller to compute stroke distance.
[0017] A user, in accordance with an exemplary implementation,
selects a manual or automatic mode of operation. In the manual mode
of operation, the user inputs the mode of operation defining the
club and the stroke utilized. In an automated mode of operation,
the microcontroller informs the user via the display and/or an
audio output such club and stroke information and sequences through
pre-programmed practice drills.
[0018] In accordance with a further exemplary embodiment, a user is
provided with instructional materials depicting the proper ball
striking stroke for various type of shots, such as a distance
wedge, short chip, etc. Such materials may be provided in a booklet
form provided in association with the golf practice mat.
[0019] In a further exemplary embodiment, such golf swing
instructional materials may be provided, for example, in a memory
card associated with a portable or any other type of computing
device. The portable computing device may in accordance with such
an exemplary embodiment display a sequence of videographic displays
that show, for example, the proper body position for the backswing,
ball strike/impact and follow through positions. Because there are
varying views with respect to the proper stroke, such memory cards
may be generated to represent the approach taught by various
well-respected golf professionals/schools (e.g., Dave Pelz, A J
Bonar, etc.) and users will preferably be provided with a choice of
instructional golf swing sequences. Alternatively, in a further
illustrative implementation, the memory card may be received in a
memory input port associated with the practice mat microcontroller
and the instructional materials may be displayed on the practice
mat display.
[0020] In yet a further exemplary embodiment, the portable
computing device may be utilized to communicate to the
microcontroller and control the practice mat display. The mode of
operation may be selected by the user from a portable computing
device via, for example, conventional wireless communication
protocols.
[0021] Further, in an illustrative embodiment, after the practice
mat microcontroller has analyzed the impact related data, results
may be wirelessly communicated to the portable or other computing
device for generation of the display of a three-dimensional
animated simulation of the results of the stroke that may include
the replication of any desired golf course hole. Such a simulated
display may be generated on a display screen of any size, including
a large TV screen display.
[0022] In accordance with further exemplary embodiments, the
practice mat may be supplemented with putting
extensions/attachments for recording and displaying putts made from
various distances in a putting mode of operation. Instructional
putting videographic sequences may also be associated with this
mode of operation.
[0023] In a further exemplary embodiment, the mat be utilized in
conjunction with a tethered whiffle golf ball or a hollow, partial
or substantially spherical rubber golf ball shell replica fixed to
the mat to aid the golfer in envisioning an actual golf placement
while practicing golf strokes.
[0024] These and other features and advantages of the illustrative
embodiments described herein will become apparent with reference to
the following drawings and accompanying specification.
BRIEF DESCRIPTION OF THE DRAWINGS
[0025] FIG. 1 is a schematic diagram of an exemplary non-limiting
illustrative golf practice mat-like structure;
[0026] FIG. 2 depicts the desired downward motion of a club head
such that it will take a divot only after the ball leaves the club
face.
[0027] FIGS. 3A-3F are sequences of an illustrative golf stroke for
hitting a lob wedge, sand wedge or pitching wedge.
[0028] FIG. 4 a block diagram of a further illustrative embodiment
of golf practice equipment in accordance with an illustrative
embodiment of the present invention.
[0029] FIGS. 5A and 5B are illustrative memory tables that are
utilized by a microcontroller during mode entry and distance
calculation.
[0030] FIG. 6A is an illustrative block diagram showing a golf
practice mat 1 modified to include a putting extension 20.
[0031] FIGS. 6B and 6C are further illustrative implementations of
a golf practice mat that reinforces a descending blow-based ball
strike.
[0032] FIG. 7 is an exemplary block diagram showing the components
of an illustrative microcontroller.
[0033] FIG. 8 is a flowchart delineating an exemplary sequence of
operations performed by microcontroller 4.
[0034] FIG. 9 is a flowchart illustrating an illustrative sequence
of operations performed by the portable computer device shown in
FIG. 4.
[0035] FIG. 10 shows a modified version of the flowchart in FIG. 8,
for microcontroller 4, where the system includes a portable
computing device.
[0036] FIG. 11A shows an illustrative ball flight right indicating
display.
[0037] FIG. 11B shows an illustrative ball flight left indicating
display.
[0038] FIG. 11C shows an illustrative ball flight straight
indicating display.
[0039] FIG. 12 is a flowchart delineating the sequence of
operations performed by microcontroller 4 as part of the analyze
contact pattern analysis shown in FIG. 10, in accordance with one
illustrative, non-limiting implementation.
[0040] FIG. 13 is an illustration of a three dimensional display of
a golf stroke based upon analysis of impact data from the practice
surface described herein.
[0041] FIG. 14A shows the 3 orthogonal axes that go through the
center of golf ball 101, all of which are oriented with respect to
an imaginary target line 103 drawn from the ball straight to the
target--the flag at the next hole.
[0042] FIG. 14B looks down on the ball 101 to explain the
relationship of the club face to the center of the ball.
[0043] FIGS. 15A-1, 15A-2 and 15A-3 illustratively depict how
deviations in vertical X-Z alignment of the club can be detected by
horizontal arrays of pressure sensors in an illustrative embodiment
of the present invention.
[0044] FIGS. 15B-1, 15B-2 and 15B-3 illustratively depict how
deviations in vertical Y-Z alignment of the club can be detected by
horizontal arrays of pressure sensors in an illustrative embodiment
of the present invention.
[0045] FIG. 16 illustratively depicts possible shot variations in
the horizontal plane.
[0046] FIG. 17 provides an exemplary overview of how this
illustrative embodiment works with respect to the floor mat sensor
array.
[0047] FIG. 18A shows the same sensor array process of FIG. 17 in
greater detail, expanded to the concept of successive `snapshots`
211 of the club footprint moving rapidly from right to left.
[0048] FIG. 18B shows the illustrative club footprint 205 tracked
across FIG. 18A in greater detail, expanded to the concept of
leading and trailing edges.
[0049] FIG. 19 shows an exemplary layout of a further illustrative
embodiment on the golf practice mat 1.
[0050] FIGS. 20A-1 and 20A-2 show the nominal dimensions of a
typical sand wedge.
[0051] FIG. 20B shows how an illustrative embodiment of that
normalizes different contours for the bottom edge to a standard 2''
length.
[0052] FIG. 21A depicts an illustrative Initial Strike Feedback
Circle 307 which pinpoints exactly where the golfer's initial
strike fell with respect to Zero Line 300.
[0053] FIG. 21B illustratively depicts the overall stroke feedback
lights 310 which display the error[s] arising from the current
shot, aligned Left or Right, as applicable.
[0054] FIG. 22 shows the focal point of an illustrative embodiment
of impact sensor 2/Sensor Array 301.
[0055] FIG. 23 provides an illustrative overview of the
hi-resolution sensor array 302.
[0056] FIG. 24 illustrates how hi-resolution sensor array 302 is
capable of measuring club face rotation with a high degree of data
integrity.
[0057] FIG. 25 is a high-level mainline program flowchart that
controls the whole process, and calls the first layer of
subroutines.
[0058] FIG. 26 is a flowchart that delineates the sequence of
operations in the CALIBRATE routine, the 1st of 4 primary-level
subroutines in an illustrative implementation.
[0059] FIG. 27 is a flowchart that delineates the sequence of
operations in subroutine Detect which, when launched, monitors the
entire sensor array in an illustrative implementation.
[0060] FIG. 28 is a flowchart that delineates the sequence of
operations in the subroutine Analyze, which among other things
assesses how many independent variables can be isolated and tracked
from the range of data available.
[0061] FIG. 29 is a flowchart that delineates the sequence of
operations in the FOOTPRINT subroutine in the illustrative
implementation.
[0062] FIG. 30 is a flowchart that delineates the sequence of
operations in the PRESSURE subroutine in this example, designed to
analyze the pressure gradient across the current footprint in
memory bank Mx and test for any excessive force, downward into the
ground, or "tilted" toward the toe or heel.
[0063] FIG. 31 is a flowchart that delineates the sequence of
operations in the ROTATE subroutine in an illustrative
implementation designed to calculate all row-to-row
transitions.
[0064] FIG. 32 is a flowchart that delineates the sequence of
operations in the SHIFT sub-subroutine in an illustrative
implementation.
[0065] FIG. 33 is a flowchart that delineates the sequence of
operations in the STRIKE PATH routine that is designed to extract
as much cumulative information as possible across all 5 snapshots
in this illustrative implementation.
[0066] FIGS. 34A and 34B are flowcharts that delineate the sequence
of operations of the DISPLAY subroutine in an illustrative
implementation.
DETAILED DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS
[0067] While the apparatus and methodology embodying the present
invention may be implemented in many different forms, there is
shown in the following drawings and will be described in detail
herein specific embodiments thereof, with the understanding that
the present disclosure is to be considered as an illustration of
some of the many ways of using the claimed invention. This
description should not be construed to limit the claimed invention
to the specific embodiments described and illustrated herein.
[0068] FIG. 1 is a schematic diagram of an exemplary, non-limiting
illustrative golf practice apparatus and instructional training aid
in accordance with one illustrative embodiment of the present
invention. Golf practice mat 1, in accordance with one illustrative
embodiment, may be constructed at least in part from any of a
number of materials such as various artificial golf turfs
including, for example, a grass-like surface having the ability to
cushion a golf club striking the surface, permitting a golfer to
hit down on a golf ball and into the turf to simulate taking a
divot after striking the ball. The illustrative embodiment is
depicted for a right-handed golfer. The practice/training device
may, of course, be modified for left-handed golfers. The
practice/training device may be of various overall dimensions,
e.g., 3 by 5 feet, or may be square (e.g., 3 by 3 feet) for ease of
use for either left or right-handed play.
[0069] By way of example only, the non-ball striking portion of mat
1 may, in accordance with a low cost implementation, be constructed
using a carpet-like material such as, for example, a sturdy outdoor
carpet. In an exemplary embodiment, the ball striking practice
portion of the mat may be constructed from an artificial turf base
such as disclosed in U.S. Pat. No. 6,155,931, (the '931 patent).
The '931 patent is directed to a golf swing practice structure
comprising a low friction flexible and resilient top sheet that is
contacted by the golf club. The top sheet has a rigidity of 40
pounds per square inch or less and has an underlying supporting pad
for supporting the top sheet and for providing space for the top
sheet to move under force of the club. The support pad is
compressible to 50% of its resting height in any area near its
center line by an applied pressure of 8 psi or less. A bottom sheet
is used underneath the support pad.
[0070] Alternatively, the mat fabric may be constructed primarily
of the artificial turf structures as described in U.S. Pat. Nos.
6,913,799; 6,139,443; or 5,885,168. Each of the above-identified
exemplary golf practice mat artificial turf structures are
incorporated herein by reference.
[0071] In an illustrative implementation, golf practice mat 1
includes an impact sensor 2, having a golf ball
representation/replica/imprint 3 and a target 5 imprinted or
otherwise fixed thereto. Although in this illustrative embodiment,
a circle the diameter of a golf ball may be used as a golf ball
representation/imprint/replica (golf ball representation) 3, it
should be understood that the golf ball may be represented in
various other ways. In one implementation, an actual whiffle golf
ball that, for example, is tethered to and placed on an indicated
golf ball imprint also may be utilized. Additionally, in an
exemplary embodiment, a hollow, partially or substantially
completely spherical golf ball-dimensioned shell fastened to the
mat may be utilized to give the golfer a three-dimensional target.
This target should be constructed using a highly elastic substance,
e.g., rubber, that will not be damaged by the full brunt of
repeated swings. In this fashion, a golfer can practice ball
striking with an object resembling a golf ball without damaging the
object by repeated striking.
[0072] The golf ball imprint 3 position may be varied in its
disposition on impact sensor 2 in various implementations. As shown
in FIG. 1, the disposition is such that the sensor/processing
system can detect when the club head strikes impact sensor 2 before
reaching the defined ball position. In this fashion, a relatively
low ball impact "fat" short distance practice shot may be detected.
Alternatively, in an exemplary embodiment, the golf ball may be
disposed on the right-hand edge of the impact sensor 2, so that
sensor 2 provides reinforcing feedback only for practice swings
where the club head impacts the impact sensor after the represented
ball would have been struck.
[0073] The target 5 is preferably disposed in relation to golf ball
imprint so as to reinforce the well known golf ball striking
methodology of hitting down on the ball and using the angle of the
club face to direct the ball to the optimum height.
[0074] The design of impact sensor 2 may be varied widely depending
upon the desired stroke analysis. For example, merely detecting
that the club head made contact with impact sensor 2 after the
swing passes golf ball imprint 3, requires a coarser detection
methodology than if it is desired to determine the angle of the
club face upon contact.
[0075] Impact sensor 2 may, by way of example, be constructed with
a contact touch pad including impact and/or pressure sensors to
permit derivation of multiple contact point information, such that
a set of club contact data points are generated. Impact sensor 2 is
mounted on golf practice mat 1 such that it is substantially
coplanar with the rest of the top fabric practice mat surface.
[0076] Impact sensor 2 may be the sensor element (and if desired
may include the interface controller and software) of the real-time
electronic tactile sensor from Sensor Products, Incorporated
commercially available as Tactilus. Tactilus is an electronic
tactile force and pressure-indicating sensor. The sensor system
allows the user to monitor precisely how force is dispersed between
any two contacting or mating surfaces in real-time while the event
occurs. In one illustrative implementation, the golf club head
contact with the impact sensor portion of the practice mat may be
monitored with Tactilus, a system that is capable of use in systems
where pressure lies between 0.001 PSI (0.0007 Kg/cm2) to 2,000 PSI
(140.61 kg/cm2).
[0077] The Tactilus sensor element is essentially a thin flexible
or rigid sheet that is densely packed with sensing points or
pixels. These sensing points can be spaced as close as 1 mm
(0.04'') apart and can collect data as rapidly as 2,000 readings
per second. The sensing points may use capacitance, resistance or
piezoresistance architectures. The Tactilus system may be used to
generate 2D, 3D and 360 degree image rendering with extensive user
control, local point and region-of-interest (ROI) analysis, force
integration and average pressure, pressure vs. time graph and
pressure histogram, sophisticated calibration control and offers an
extensive software library for application customization. An
exemplary implementation using the Tactilus sensor is described in
detail below.
[0078] Alternatively, as an alternative to the Tactilus impact
sensor that is described in detail below, impact sensor 2 may be a
tactile sensor of the various types disclosed in U.S. Pat. No.
6,515,586 (the '586 patent), which is incorporated herein by
reference. For example, in the '586 patent as shown in FIGS. 2 and
3 (see these figures for the cited sensor component reference
numerals that follow), a tactile sensory surface is comprised of
three layers consisting of a surface layer 204, a backing or
foundation layer 206, and a sensory layer 208. The sensory layer
208 may be located between the surface and backing layers, 204 and
206, respectively. The sensors 202 may be integrated directly into
the top or bottom side of the backing layer 206 at the time of
manufacturing. The surface layer 204 may be, for example, a carpet
layer where the sensors 202 are woven directly into the carpet
fibers or in an artificial turf. As described in the '586 patent,
the sensors may be embodied in any desired size surface area.
[0079] As described in the '586 patent and as shown in FIGS. 2 and
3 therein, sensory layer 208 may include plurality of sensors 202,
sensor leads 210, width resistor indicators 212, width resistor
wire pairs 214, length resistor indicators 216, a length resistor
wire pair 218, multiplexers (or row multiplexers) 220 and a data
bus 222. The sensors 202 can be arranged in any suitable pattern or
field, including, but not limited to a grid pattern, hexagonal
pattern, and so forth.
[0080] In the present impact sensor 2 application, although sensors
202 are preferably disposed in a pattern placed in rows, sensors
202 can be arranged in any suitable manner, including horizontally,
vertically or diagonally. In an exemplary embodiment, the sensors
are arranged in rows 209 to form a grid, and run across the width
of the tactile sensory surface. Each separate row of sensors 202
can be spaced the same distance apart as the distance between
individual sensors 202 in a row 209 to form a square/rectangular
grid pattern. The sensors are, for example, about one cm. in
diameter and are arranged in rows 209 with spacing between sensors
of about 0.5 cm or less within each row 209.
[0081] Within a given row 209, there are a suitable number of
sensors 202 connected to at least one row multiplexer via one or
more sensor leads. The sensor lead can comprise one continuous wire
as shown, or can include a series of wires running between each
sensor 202, such that there is a small gap within the diameter of
the sensor 202 where a wire or sensor lead 210 is not present.
[0082] Each sensor 202, when activated, sends out a particular
signal to the row multiplexer 220 for that row, depending on the
type of sensor 202, and in some cases, the degree of
activation.
[0083] The sensors 202 can be any suitable type, such as force
sensors or pressure sensors. Force sensors include, but are not
limited to, piezo polymers and ceramic strain gauges. A pressure
sensor gives the same constant force reading, which is inversely
proportional to the area of the applied force. In one embodiment,
the sensors 202 are responsive to variable pressures and can be
adjusted. In an alternative embodiment, the sensors 202 are binary
"on/off" sensors having a minimum threshold pressure needed to
activate. For example, the minimum threshold pressure may be set to
be less than about seven (7) bars (about 0.5 psi), up to about 1.5
bars (about 10 psi) to about 15 bars (about 100 psi) or more.
[0084] In a further embodiment, each sensor 202 may be comprised of
layers of material which can detect contact pressure or whose
electrical resistance or capacitance changes with an increase in
pressure applied to the sensor 202. Such materials include, but are
not limited to thin film sensors, such as piezo film. Piezo film is
available in a wide variety of thicknesses and configurations, and
is known to be flexible, lightweight and durable.
[0085] Another type of thin film sensor which can be used is a
sensor device known as a force and position-sensing resistor (FSR).
Such a device can detect both force and position, and typically
displays a resistance of the square root of the area of the applied
force. Two basic types of FSRs include an FSR-LP linear
potentiometer and an "XYZ" pad. The FSR-LP has conducting fingers
shunted by a conductive polymer, such that a greater number of
shunted fingers produces a greater dynamic range and resolution.
The XYZ pad or tablet is essentially two FSR-LPS set back-to-back.
FSR devices are known to be impervious to moisture, chemicals,
vibration and magnetism. The FSR device used can be of any suitable
size and shape. The current should be set at a level appropriate to
the golf practice mat application. In a particular embodiment, the
sensors used are FSR devices from Interlink Electronics in
Camarillo, Calif.
[0086] In accordance with a further exemplary embodiment, impact
sensor 2 may be modular in design so that it may be readily
replaced if damaged. Such a modular approach may be particularly
useful for implementations when the sensor array is constructed
with sensors that are relatively susceptible to damage. The use of
a sensor array that may be readily replaced may advantageously
increase the practicality of using sensors that are lower in cost.
As will be appreciated by those skilled in the art, such an impact
sensor 2 should be designed using, for example, multiplexers to
minimize the number of conductors at the impact sensor module
interface.
[0087] In accordance with a low cost implementation, impact sensor
2 may be implemented with a material that may change in contour to
visually indicate the point at which the club head made contact
with the practice mat 1. Alternatively, the material may be
pressure sensitive so as to change in color in response to contact
with a club head. For example, in one illustrative implementation,
the impact sensor 2 may be comprised of a visco-elastic material
beneath and, for example, adhesively attached to an artificial
turf/outdoor carpet-type top mat surface. The characteristics of
such a material is that it combines viscous and elastic behaviors;
the scientific term to describe memory foam. Visco-elastic, or
memory foam is a temperature and pressure sensitive material often
used in mattresses and pillows to relieve pressure, ease and
prevent back and neck problems. Visco-elastic foam is made of
thousands of tiny cells which mold to any shape and revert back to
their original form. In such a low cost implementation, this
material may be used to provide a visual indication/feedback of the
initial club strike point and the nature of a resulting divot had
the stroke been performed on a golf fairway. Such visco-elastic
material may be used in conjunction with any of the other
embodiments to at least a limited extent to provide further visual
feedback as to the initial club strike point. Further, any of these
embodiments may be used with a replica of a golf ball with a visual
cue (e.g., as reflected by a nail-like shaft going through the
center of the golf ball) such as is shown in FIG. 2 depicting the
downward angle at which the golf ball should desirably be struck.
Such a replica of the type used by golf instructor, A. J. Bonar,
may, for example, be disposed above the golf ball imprint on mat 1
well within the user's peripheral vision during a practice stroke
to reinforce hitting down on the ball.
[0088] Whether the club contact points are indicated by a color,
color shade, and/or contour change, the user would be provided with
visual feedback as to how close the club head came to the ideal
striking point. Such material will provide a visual indication of
where in relation to the target a divot would have been taken if
the swing were made at, for example, a golf course fairway. The
user will, for example, be able to determine whether ball contact
would have been made behind the ball.
[0089] Golf practice/training mat 1 also includes, in an exemplary
embodiment, a display 6, one or more speakers 11 and a mode/control
panel 10. Coupled to the mode/control panel 10 and impact sensor 2
is a microprocessor/microcontroller 4.
[0090] Display 6 may be any of a wide range of displays including
an LCD or an LED display. By way of example only, display 6 may be
mounted in practice mat 1 to be flush with the mat surface.
Alternatively, display 6 may be an LCD display hingedly mounted
such that it may be raised from the mat surface and angled to
promote ease of visibility. In accordance with an illustrative
embodiment, LCD display 6 may be include associated broadcast
TV/video recording/playback (e.g., DVD) electronics to permit a
user to practice while, for example, watch a golf instructional
video, golf tournament or any desired programming. In a further
embodiment, display 6 may be coupled to the golf practice mat 1
such that it is not disposed on the golf practice mat surface, but
rather may be a display which is external to the mat and coupled to
the microcontroller 4 via a wired or wireless connection.
[0091] Microprocessor/microcontroller 4 receives stroke data from
impact sensor 2, analyzes the data and, as will be explained
further below, generates a video graphics display that is coupled
to display 6 and an associated audio output that is coupled to
speakers 11. As will be explained further below, in one
implementation, microcontroller 4, after analyzing the practice
stroke data from impact sensor 2, generates a display on display 6
that identifies the club and backswing used (e.g., sand wedge (SW)
and 9:00 stroke (see FIG. 3A)) and the projected distance of the
shot. An audio indication of such a result may also be provided via
speaker (s) 11 and sound amplifier 13.
[0092] Associated with microprocessor/controller 4 is a memory 8
that, for example, stores the software executed by microcontroller
4 together with memory tables utilized to generate the user's golf
club yardage distance. Memory 8 may, for example, be a removable
memory card, e.g., a flash memory card that is insertable into a
memory receiving port (not shown) in mat 1. Memory 8 may
alternatively be permanently resident in mat 1.
[0093] Microprocessor/microcontroller 4 is also operatively coupled
to a mode/control input module 10. Mode/control input module 10
includes one or more control keys that are utilized, for example,
to define the club and stroke used during a practice session
segment. The club and stroke may be, in an exemplary embodiment,
selected in response to a menu displayed on display 6.
Alternatively, mode/control input module 10 may permit a user to
key in a desired mode of operation as will be explained further
below. Further, in accordance with yet another embodiment,
mode/control input module 10 may be wirelessly coupled to
microprocessor/microcontroller 4 to permit remote input of
operating mode information and may be part of any of a number of
commercially available portable or other computing device such as a
PC.
[0094] The electronic components of practice mat 1 are powered by
batteries/AC adapter 9 as shown in FIG. 1.
[0095] By way of example only, golf practice mat 1 may include foot
position imprints 12 that, for example, aid the user in assuming
the proper ball striking position during the session, e.g., the
ball disposed half way between the user's feet, with the front foot
disposed at a slight angle towards the target.
[0096] FIG. 2 graphically depicts the desired downward motion of a
club head such that it will take a divot only after the ball leaves
the club face. FIG. 2 depicts the teaching of golf professional A.
J. Bonar, who recommends envisioning using the club to drive a nail
down into the ground at the angle shown in order to properly
address the ball during ball striking. See A. J. Reveals The Truth
About Golf at page 43. A. J. Golf 2003. The FIG. 1 ball
replica/imprint 3 and the target 5 represent the ball position and
the point where a divot is taken in FIG. 2.
[0097] FIGS. 6B and 6C are illustrative implementations of a low
cost golf practice mat that reinforces the descending blow-based
ball strike shown in FIG. 2. As shown in FIGS. 6B and 6C practice
mat 1 includes a contour changing impact sensing area 2. In this
implementation, contour changing area 2 includes beneath and, for
example, adhesively attached to the artificial turf/outdoor carpet
top mat surface, a visco-elastic material. As set forth above, the
characteristics of such a material is that it combines viscous and
elastic behaviors; and is the scientific term to describe memory
foam. Visco-elastic foam is made of thousands of tiny cells which
mold to any shape and revert back to their original form. Such
material will provide a visual indication of where in relation to
the target a divot would have been taken if the swing were made at,
for example, a golf course fairway. The user will, for example, be
able to determine whether ball contact would have been made behind
the ball.
[0098] In such a low cost implementation, this material may be used
to provide a contour changing visual indication/feedback of the
initial club strike point 17 and the nature of a resulting divot
had the stroke been performed on a golf fairway, as is generally
represented in FIGS. 6B and 6C. As indicated above, such
visco-elastic material and the other components shown in FIG. 6C
may be used in conjunction with any of the other embodiments to at
least a limited extent to provide further visual feedback as to the
initial club strike point 17 and to reinforce a downward blow-based
ball strike. Thus, as shown in FIGS. 6B and 6C, any of these
embodiments may be used with a replica of a golf ball with a visual
cue 11 (e.g., as reflected by a arrow-like shaft going through the
center of the golf ball) such as is also shown in FIG. 2 depicting
the downward angle at which the golf ball should desirably be
struck. Such a replica of the type used by golf instructor, A. J.
Bonar, may, for example, be disposed as shown in FIGS. 6B and 6C
above the golf ball imprint on mat 1 well within the user's
peripheral vision during a practice stroke to reinforce hitting
down on the ball.
[0099] As shown in FIG. 6C to further reinforce striking down on
the ball, a downward stroke reinforcing structure 7 may be utilized
to pose a physical barrier that the golf must aim to avoid or
gently contact to thereby tend to force a downward blow of the
correct angle to be made. The reinforcing structure 7 may be of any
desired shape and is preferably made of a highly resilient material
that can withstand occasional impact by a golf club and that, in
turn, won't be damage the golf club or injure the golfer. In more
sophisticated implementations the reinforcing structure may be
adjustable in height to provide the appropriate ball addressing
angle tailored to, for example, the golfer's height. For example,
the barrier may be mounted in an inflatable tubular structure (not
shown) that may be below the practice mat surface and inflated
manually or via an attachable air pump to increase the height of
the barrier as a function of the golfer's height. If desired the
barrier may be coded with a stop inflation indication to identify a
barrier height based upon the golfer's height to provide an
indication of when the tube inflation will result in reinforcing a
downward ball strike at an angle of approximately 15 degrees. When
utilized in conjunction with the implementations having a
microcontroller and impact sensors, the reinforcing structure 7
may, if desired, include a sensor so that the microcontroller can
detect, for example, slight contact with reinforcing structure 7
and the impact sensor strike point.
[0100] As shown in FIG. 6C, in this implementation, practice mat 1
includes, for example, a practice whiffle golf ball 21 that may be
placed over the golf ball imprint 3 and used for practice. Practice
ball 21 is fastened to mat 1 via any of a wide range of fasteners
25 and is tethered via a tether 23, that may be, for example, a
resilient string/rope, that will tend to bring the ball back
towards mat 1 after contact is made. Such a practice ball 21 may be
used in conjunction with any of the embodiments described
herein.
[0101] Golf is an activity where it is important to practice
utilizing the proper swing/ball striking technique. While what
constitutes a proper technique may vary between golf schools/golf
professionals, in a preferred implementation, the golf practice mat
1 should be utilized in conjunction with swing/ball striking
instructional materials. In accordance with an exemplary
embodiment, a user is provided with instructional written materials
depicting the proper ball striking stroke for various type of
shots, such as a distance wedge, short chip, etc.
[0102] In a further exemplary embodiment, such golf swing
instructional materials may be provided, for example, on a memory
card inserted into a memory port of a portable computing device 14
shown in FIGS. 3A-3F. The portable computing device 14 may, in
accordance with such an exemplary embodiment, display a sequence of
videographic displays that show, for example, the proper body
position for the backswing, ball strike/impact and follow through
positions. Such instructional videographic materials may
alternatively be loaded into the practice/teaching system via a
memory input port (not shown) coupled to microcontroller 4.
[0103] FIGS. 3A-3F are illustrative golf stroke sequences for
hitting a lob wedge, sand wedge or pitching wedge for distances up
to, for example, one hundred yards. Such video displays may be
generated and displayed using portable computing device 14 that
may, for example, be any of a number personal computing devices
such as any of the hand-held devices manufactured by Palm, Inc.
Preferably device 14 has a wireless communications capability.
Other computing devices 14 that may be utilized as described herein
include laptop and desktop computers. As noted above, golf practice
mat 1 may in accordance with a low cost illustrative implementation
take advantage of instructional graphics contained in an
instructional brochure packaged with mat 1.
[0104] The short game stroke depicted in, for example, FIG. 3A, may
be characterized in part by the length of the backswing as, for
example, taught at Dave Pelz's golf schools. As shown in FIG. 3A,
if the arms of the golfer are analogized to the hands on a clock,
the stroke shown in FIG. 3A will be referred to herein in shorthand
conventional notation as a "9:00 o'clock (9:00)" stroke. If, for
example, the backswing went no further back than as shown in FIG.
3B, the shot will be referred to as, for example, a "7:30" stroke.
If the backswing in FIG. 3A is rotated further back to a 10:30
position, the stroke will be referred to as a 10:30 stroke.
[0105] FIG. 4 is a block diagram of a further illustrative
embodiment of golf practice equipment in accordance with an
illustrative embodiment of the present invention. Components shown
that have already been described in conjunction with FIG. 1 include
corresponding identical labels and will not be described again.
Added to the golf practice mat 1 shown in FIG. 1 is a portable
computing device 14 which, in the illustrative embodiment shown in
FIG. 4, wirelessly communicates with microcontroller 4. It should
be understood that portable computer device 14 may, for example,
communicate with microcontroller 4 in a wired mode of communication
where, for example, a USB port associated with portable computing
device 14, is coupled to a USB port (not shown) associated with
golf practice mat 1 that in turn is coupled to microcontroller
4.
[0106] Portable computing device 14, in the FIG. 4 illustrative
implementation, may be utilized (after powering up and being loaded
with appropriate graphics data and software) to display a menu of
modes for the user to select, including a manual mode of operation
or a preprogrammed mode. If, for example, the manual mode of
operation is selected, and a sand wedge is chosen with a 9:00
backswing, the swing sequence shown in FIGS. 3A-3F is displayed. In
such an illustrative implementation, a user is able to pause at any
of the shot sequence time windows shown in FIGS. 3A-3F to perfect
the swing sequence at his or her own pace. In an illustrative
embodiment, an audio description of each stage in the swing
sequence is generated via sound amplifier(s)/speaker(s) 11, 13 to
walk the user through the stroke. After the instructional video or
directly after the mode input (if the user chooses to skip the
instructional sequence), the selected input mode is communicated to
microcontroller 4. Alternatively, as indicated above, the mode
control may be entered via the golf practice mat control
keys/switches 10.
[0107] FIGS. 5A and 5B are illustrative memory tables that are
utilized by microcontroller 4 during mode entry and distance
calculation in accordance with one exemplary embodiment. The
distance values shown generally correspond to those identified at
Dave Pelz's short game golf schools. Initially, in accordance with
such an exemplary embodiment, a manual or preprogrammed play mode
is entered either directly by a user choosing from a menu or by
microcontroller 4 defaulting into a default mode. Default mode may
result in initiation of any desired stroke, such as mode S2, which,
as is shown in FIG. 5B, a 9:00 backswing stroke shown in FIG. 3A
using a sand wedge.
[0108] It should be recognized that manual modes L1-L3, S1-S3 and
P1-P3 are merely illustrative modes. Each and every golf club and
type of backswing/stroke may, if desired, be incorporated into an
illustrative embodiment of the present invention.
[0109] An illustrative embodiment of the present invention also
contemplates an automatic mode of operation where microcontroller
4, if an automatic programmed mode is selected, controls the system
to, for example, display a club and backswing, show an
instructional swing sequence and await a user to practice the
stroke using practice mat 1.
[0110] After detecting output signals from impact sensor 2,
receiving and analyzing such impact sensor data, a shot result
message is displayed utilizing, for example, the FIG. 5A memory
table. For example, if the club selected was a sand wedge and the
selected stroke was a 9:00 back swing, i.e., mode S2, if the impact
sensor data reveals that the user's club face contacted impact
sensor 2 at appropriate contact points, then the distance 70 yards
is displayed together with an indication of the club utilized and,
if desired, the stroke backswing (9:00).
[0111] In accordance with an illustrative embodiment, if the impact
sensor data reveals that the club face was open upon contact of the
club face with impact sensor 2, then a ball flight "right" display
will be shown as is graphically indicated in FIG. 11A. In
accordance with an illustrative embodiment, as shown in FIG. 11A, a
pictorial or other representation of the club head data analysis
may be displayed. Similarly, if the club face was closed based on
the impact sensor/club face data analysis, a ball flight "left"
display is generated as indicated in FIG. 11B. It should be
recognized that if the impact sensor data indicates that the club
head is very slightly closed, a straight ball flight may still
result since the club head may be perpendicular to the horizontal
axis at the precise time of ball impact. The microcontroller data
analysis preferably will take this phenomena into account. If the
club face impact sensor data shows that the club face was
substantially perpendicular to the crosshair target horizontal axis
a ball flight "straight" display may be generated, as is shown in
FIG. 11C.
[0112] FIG. 6 is an illustrative schematic/block diagram showing a
golf practice mat 1 modified to include a putting extension 20.
Components shown that have already been described in conjunction
with FIGS. 1 and 4 include corresponding identical labels and will
not be described again.
[0113] As shown in FIG. 6, a putting extension 20 is utilized to
permit a user to practice putting and is fabricated using an
artificial turf of the type simulating a golf green. Golf green
practice mats per se are well known, including those that have
distance markers and backswing and follow through alignment
indications imprinted thereon as is shown in FIG. 6 for the three
foot and 5 foot putts.
[0114] As can be seen in FIG. 6, in the exemplary implementation
identified ball placement markers are shown at 3 feet, 5 feet and 7
feet from cup 23. In the illustrative implementation,
microcontroller 4 is coupled to a conductor 18 that in turn is
coupled to a port (not shown) on the periphery of golf mat 1.
Putting extension 20 includes a connector (not shown) that couples
conductor 18 to a conductor 18' which in turn is coupled to cup
23.
[0115] In accordance with an illustrative implementation, when a
user putts a ball that rolls into cup 23, the ball is funneled to a
bottom portion of cup 23 so as to close a switch (not shown) that
generates a signal on conductors 18' and 18 to provide
microcontroller 4 with a signal indicating a made putt.
[0116] In accordance with an illustrative embodiment of the present
invention, a user may enter a putting mode, by, for example,
selecting one of various putting modes from a menu via portable
computing device 14 or by selection via control key(s) associated
with mode control input 10.
[0117] In accordance with one illustrative implementation, a
putting instructional videographic sequence may be displayed on
portable computer device 14 or display 26 to show the user an
example of correct putting form.
[0118] Various putting modes may be selected such as, for example,
putting from 3 feet, 5 feet, 7 feet or any combination thereof.
Additionally, in one mode of operation, a selection may be made of
a predetermined number of putts, such as 10 putts or 20 putts.
[0119] In an exemplary embodiment, a user will have a program
selected period of time to complete the putts. For example, 90
seconds may be allocated for the user to complete ten 5 foot putts.
In this example, at the end of the time period, the user's number
of made putts and number of putts taken may be displayed. It should
be recognized that the time period for putting may be any desired
time.
[0120] Additionally, as will be appreciated by those skilled in the
art, alternative/more sophisticated methods of keeping track of the
number of putts taken, the length of the putt taken and the putts
made may be utilized and more sophisticated putting statistics may
be displayed. For example, as will be appreciated by those skilled
in the art, a light emitter and photodetector pair disposed in the
vicinity of cup 23 and aligned perpendicularly to the longitudinal
axis of the putting extension may be utilized to detect a putting
attempt by detecting an interrupted light beam by a putt.
Additional, light emitter/photodetector pairs may be used to
detect, for example, whether the putt was a 3 foot, 5 foot or 7
foot attempt.
[0121] FIG. 6 also shows a putting extension 20' in dashed lines
that indicate an alternative physical disposition for mounting the
putting extension. In accordance with an alternative embodiment,
putting extension 20' may, if desired, utilize part of the original
golf practice mat 1 rectangular surface as the initial starting
point for putting. In accordance with this exemplary embodiment,
putting extension 20' will be constituted by golf green simulating
artificial turf. In accordance with an illustrative implementation,
putting extension 20' may be split at 21 and designed to mate
substantially seamlessly with the remainder of the putting
extension 20' (not shown) that extends to the left of the left-hand
border of golf practice mat 1 and replicates putting extension 20
shown in FIG. 6.
[0122] Further, as shown in FIG. 6, in accordance with an
illustrative embodiment of golf practice mat 1, display 26 may be,
for example, an LCD flat panel television display screen. Each of
the displays shown in FIGS. 1 and 4 also may, for example, include
a flat panel LCD display that is part of broadcast/cable TV. When
putting extension 20' is utilized in conjunction with a TV display,
putting practice may be coincide with the user watches the TV 26
showing, for example, a golf tournament or an instructional video
of any desired golf stroke.
[0123] FIG. 7 is an exemplary block diagram showing illustrative
components of microcontroller 4. Microcontroller 4 includes a CPU
core 20 for executing a set of instructions stored, for example, in
read only memory (ROM) 26. CPU 20 provides display generating
control signals for controlling display controller 22 which may,
for example, be an LCD display controller for generating the
display on display screen 6.
[0124] The program stored in ROM 26 additionally controls
communications between CPU 20 and portable (and/or any other)
computer device 14 via interface 28, which preferably takes place
in a wireless mode utilizing wireless transmitter/receiver
circuitry 30 embodied in microcontroller 4.
[0125] Additionally, CPU 20 processes data input from impact sensor
2 under the control of the software stored in ROM 26. ROM 26
additionally may store memory tables such as those shown in FIGS.
5A and 5B. Alternatively, such tables may be stored in memory 8
shown in FIGS. 1, 4 and 6. Microcontroller 4 also has access to RAM
24 to store dynamic data that will change during program
operation.
[0126] Microcontroller 4 may be a single chip microcontroller that,
for example, includes a timer module that will allow the
microcontroller to perform time period dependent tasks. In a
illustrative embodiment, microcontroller 4 also includes a wide
array of ports (e.g., USB, IEEE Firewire, etc.) to allow data to
flow between the microcontroller and other devices, such as a PC or
portable computing device 14, to permit operations in a wired or
wireless communication modes. It is also contemplated that
interface 28/wireless XMIT/RCVR 30 support Internet communications
to permit golf simulations involving a user and one or more
remotely located friends.
[0127] Microcontroller 4 may be implemented in an illustrative
embodiment by any of a wide array of commercially available
microprocessor/microcontrollers such as, for example, a Motorola
68HC11 microcontroller. The nature of the microcontroller selected
may vary depending upon the sophistication of the desired
implementation.
[0128] FIG. 8 is a flowchart delineating the sequence of operations
performed by microcontroller 4. After the FIG. 1 golf practice mat
electronics is provided with power, microcontroller 30 initiates
power on-related initialization operations (30, 32).
[0129] Additionally, in an illustrative embodiment, microcontroller
4 generates an operational mode selection menu (not shown) on
display 6 (32). Such a mode menu permits a user to select a manual
mode of operation in which any mode such as L1-L3, S1-S3 and P1-P3
may be input via, for example, mode control keys 10 or
alternatively via portable computing device 14. The mode selection
menu may, in an illustrative implementation, provide the user with
an option of selecting a further automatic mode menu to select one
of several automated program control sequences running through a
variety of different clubs and strokes. In more sophisticated
implementations, a set of golf holes may be selected for simulated
play via a menu selection.
[0130] Microcontroller 4 then checks to determine whether the user
has selected/input a mode (34). After a predetermined period of
time has passed after the mode menu display, if no mode has been
input, microcontroller 4 defaults to a manual default mode that
may, for example, result in the selection of mode S2 thereby
selecting a sand wedge with a 9:00 backswing.
[0131] If a mode input has been detected, microcontroller 4 sets
the selected mode (38). For example, if mode S2 is selected
distance calculations are based upon analysis of impact data and a
stored distance data for a sand wedge with a 9:00 backswing.
[0132] A check is then made to determine whether an output signal
has been generated by impact sensor 2 (40). If not, the routine
loops back in a wait mode to continuously check to determine if a
club head impact has been detected. In accordance with an
illustrative embodiment, one or more vibration sensors may be
utilized (not shown) to detect an impact outside the range of
impact sensor 2. In accordance with such an embodiment, if the
vibration sensor detects contact with golf practice mat outside the
confines of impact sensor 2, a display may be generated to request,
for example, that the user try again.
[0133] When the check at block 40 detects an impact,
microcontroller 4 detects the various points of impact and stores
corresponding data points in a microprocessor RAM memory that may
be resident in either memory 8 or the internal microcontroller RAM
24 shown in FIG. 7.
[0134] Thereafter, microcontroller 4 analyzes the contact pattern
(44), as will be explained further below in conjunction with the
flowchart of FIG. 12, and displays a shot-related display/message
(46). In an exemplary implementation, a message may be generated to
indicate the club and stroke used and the resulting shot distance,
e.g., sand wedge, 9:00 stroke, 70 yards distance as shown in FIG.
1. The display of the club backswing and distance provides a
reinforcing feedback mechanism for the user to associate a
particular club and backswing with a distance to promote proper
club and swing selection during an actual round of golf. In an
illustrative implementation, a three-dimensional simulation of the
resulting shot may be displayed on display 6 such as is shown in
FIG. 13.
[0135] FIG. 9 is a flowchart illustrating the sequence of
operations performed by portable (or other) computer device 14
shown in FIG. 4. As indicated in FIG. 9, after power is turned on,
portable computer device 14 initiates power-on initialization
processing (50), (52). In accordance with an exemplary
implementation, software associated with golf practice mat 1 is
executed by portable computing device 14 to determine if a memory
module/card has been inserted that includes, for example
instructional swing audio and video sequences corresponding to the
swing sequences shown in FIGS. 3A-3F (54). It is contemplated that
a variety of instructional sequence memory modules may be utilized
from a variety of golf instructors/schools. Such sequences may, if
desired, be preloaded into computing device 14.
[0136] Upon detecting that a graphics data card/memory module has
been inserted, a options menu is preferably generated on the
portable computing device's display screen for the user to select
an operational mode (56). After a user selects an operational mode,
the mode is preferably wirelessly transmitted to microcontroller 4
(58).
[0137] Portable computing device 14 then enters a wait mode and
continually checks to determine whether a ball contact analysis has
been received from microcontroller 4 (60).
[0138] The ball contact analysis in an illustrative embodiment will
indicate the yardage obtained as a result of the user stroke. In
more sophisticated implementations such as is described below, an
indication of ball flight including the projected direction of the
ball based on an analysis of club face angle data as, for example,
it changes over time also is included.
[0139] With respect to the distance data, although optimum
distances are recorded in a memory table as shown in FIG. 5A, such
distances assume contact with impact sensor 2 at, or within a
threshold distance from target 5. If contact is detected to the
right of target 5 shown in FIG. 4, a "fat" shot is detected and a
distance related to the data in the FIG. 5A table is generated that
reflects a lesser distance than is shown, depending upon the degree
to which the stroke data is offset from target 5.
[0140] After the contact analysis data has been received, portable
computing device 14 will generate a 3-D stroke simulation on a
simulated golf course hole (62) such as is shown in FIG. 13. Such
simulations may be of varying degrees of sophistication. For
example, golf holes may be simulated replicating or relating to
holes on well known courses.
[0141] The software may be designed to automatically choose the
appropriate club for the user depending upon the results of the
prior stroke. It should be understood that the three clubs
identified in FIG. 5A are merely illustrative. For example, it
should be understood that, if desired, data with respect to a full
set of golf clubs, including all irons and fairway woods may be
utilized. It is also apparent that such golf simulation could be
embodied in a video game application.
[0142] FIG. 10 is an illustrative version of the FIG. 8 flowchart
depicting microcontroller 4 processing operations, where the system
includes a portable (or other) computing device 14. Flowchart
blocks shown that have already been described in conjunction with
FIG. 8 and include corresponding identical labels will not be
described again unless further description is required due to
interaction between the microcontroller and portable device 14.
Although microcontroller 4 checks for mode input (34) as in the
flowchart of FIG. 8, the mode input processing looks to receive the
mode input from portable computing device 14 rather than
mode/control switches 10 on practice mat 1.
[0143] After microcontroller 4 analyzes the golf club contact
pattern (44), in addition to displaying a shot related message on
display 6 (46), the analysis is transmitted to portable computing
device 14 for generation of the portable computing device's 3D
stroke simulation on a simulated golf course such as is shown in
FIG. 13. In accordance with alternative implementations, the
analysis may be transmitted to a portable computing device or a
desk top PC and then transmitted to remote computing devices via,
for example, the Internet. In this way users may interact with
remotely located golfing buddies. In accordance with such an
implementation, competitive/multi-player golfing is
contemplated.
[0144] FIG. 12 is a flowchart delineating the sequence of
operations performed by microcontroller 4 as part of the contact
pattern analysis (44) shown in FIG. 10 in accordance with one
illustrative, non-limiting implementation. At the beginning of the
analyze contact pattern processing, input data from impact sensor 2
is read by microcontroller 4 (75, 77). Based on the input pad data
read, initial pad contact points are determined, where the target
5, shown in FIGS. 1, 4 and 6 is utilized as the origin of an x, y
coordinate reference frame, as shown in FIGS. 11A, B and C
(79).
[0145] Based on the initial pad contact point data, a straight line
approximation of the data representing the club head contact with
the mat is generated. Based upon the straight line representation
of the club head contact data, a determination is made as to where
the club head intersected the x-axis, indicating an offset from the
target 5 (81). In more sophisticated further illustrative
implementations, the impact data may be analyzed to determine the
extent to which the club face is closing during the period of
contact with the practice mat surface and an indication of such
may, if desired, be provided to the user.
[0146] A check is then made to determine whether the club contacted
the x-axis within a predetermined threshold distance from target 5
(83).
[0147] If the processing at block 83 indicates that the club face
contact was outside the target contact x-axis distance threshold, a
missed shot-related feedback message is generated on the user's
display 6 and/or alternatively, on the portable (or other)
computing device 14 display.
[0148] The straight line approximation indicating the points of
initial contact with impact sensor 2 is utilized to determine club
head angle at impact (87). If, for example, as shown in FIG. 11A,
the club head strikes impact sensor 2 in the angular relation shown
in FIG. 11A, it is projected that the ball will travel to the right
of the target. Alternatively, if the angular disposition of the
club face is determined to be as shown in FIG. 11B, the ball flight
is determined to be left of the target. If, however, the projected
straight line shows a club face angular relation as shown in FIG.
11C, the ball flight is predicted to go straight.
[0149] Thereafter, based upon the club/backswing mode entry and
x-axis intersection, a projected distance is generated (89). Such
distance, as indicated above, may either be the distance shown in
the FIG. 5A table or a lesser distance depending upon the point of
impact on impact sensor 2.
[0150] Thereafter, a shot-related message is displayed to the user
(91). By way of example only, the shot related message may include
the club used, the backswing stroke (9:00) and the projected
distance. Alternatively, a three-dimensional display as is shown in
FIG. 13 may be generated for display on display 6, 26.
[0151] In an alternative embodiment, golf practice mat 1 may be
utilized in conjunction with a rubberized golf tee of the type
utilized in driving ranges. In accordance with a further embodiment
of the present invention, a sensor (not shown) may be disposed in
the tee to determine whether, for example, a driver appropriately
contacted the ball by determining whether there has been contact
with the tee. In a more sophisticated embodiment, in addition to
measuring whether the tee has been contacted by the club head, the
direction of movement may be sensed by, for example, one or more
accelerometers mounted in a lower portion of the tee to provide
data for determining the likely direction of ball flight. As in the
other embodiments described above, a display of shot related
indicia is contemplated for display to the user.
[0152] FIG. 13 is an illustration of a three dimensional display of
a golf shot based upon the analysis of impact data from the
practice surface described herein. As shown in FIG. 13, in view of
the club head/impact sensor 2 contact analysis by microcontroller 4
based upon the FIG. 12 or alternative processing, a simulated shot
may be generated showing, for example, the directional ball path,
the distance traveled, the club utilized and the backswing (e.g.,
9:00). Complete holes may be played in this fashion. Simulated
putting may be performed using data obtained from a putting
extension described above in conjunction with FIG. 6. As noted
above, a sequence of different holes on a variety of simulated golf
courses may be displayed. In a multi-user mode, the shot data for
more than one user may be simulated and displayed.
[0153] Based upon the foregoing description of various illustrative
embodiments, a wide range of golf practice training apparatus
having a wide variety of features may be implemented providing a
wide range of feedback and shot-related projections. The desired
degree of accuracy of such feedback and shot-related projections
may vary greatly depending upon the desired application goals. It
should be understood that the accuracy of shot projections will
vary depending upon the amount of resolution provided by impact
sensor 2. In accordance with many illustrative implementations, a
low cost, coarse projection may function as a highly desirable,
practical golf training device. Other illustrative implementations
may desirably incorporate higher degrees of accuracy.
[0154] In the illustrative, non-limiting embodiments which follow,
the practice mats shown, for example, in FIGS. 1, 4, and 6 are
modified to incorporate the following illustrative hardware and
software targeted to exemplify a high resolution implementation of
the training apparatus described above. It should be understood
that the ball striking theories/equations presented herein are
illustrative only and provide an example of methodology that may be
utilized to provide the feedback and shot-related projections
useful in, for example, perfecting a golfer's ball striking. As
will be appreciated by those skilled in the art, the methodology
described herein should not be construed as limiting the scope of
the appended claims and may be readily adapted to using other ball
striking theories/equations to provide for alternative shot-related
projections that may be more in line with the recommendations of,
for example, a particular golf professional/golf schools.
[0155] Above ground golf stroke analysis concepts typically
observationally attempt to diagnose a golfer's stroke as he/she
swings a club through an arc that, hopefully, passes through the
center of the ball, yielding a shot that, hopefully, goes a
reasonable distance toward the target flag at the next green. Such
analyses often get bogged down attempting to correlate deviations
of the golfer's swing, from a prescribed perfect swing, with the
actual resulting deviations of the ball, veering off the perfect
path to the target.
[0156] While such above-ground analyses are often helpful at curing
particular eccentricities in the golfer's swing, there is
nonetheless a wealth of information available "below ground" that
can also help the golfer using, for example, the practice mat 1 and
impact sensor 2 described above. That is, rather than diagnosing
the visible arc of the golfer's swing from the side and the rear,
illustrative implementations determine just how close the club face
actually came to an optimum impact with the center of the ball.
[0157] Even though a golfer executes a seemingly proper swing, the
ball can still fly awry of the target line. This is because,
regardless of how perfect the golfer's swing appears to be to the
untrained observer, it is how perfect the impact of the club face
is with the center of the ball that determines where the shot will
go. Just a small `delta` right or left, up or down, face open or
face closed, can `juke` a shot well off the perfect path. The
illustrative embodiment that follows endeavors to measure these
small `deltas` in club face position and angle, and show how far
each stroke was off the perfect impact.
[0158] In the illustrative implementation, these small `deltas`
from a perfect model are measured by an array of pressure sensors
within the mat, which indicate: [0159] [1] the initial strike where
the club first contacts the mat [0160] [2] the strike path the club
takes as it slides across the mat [0161] [3] the downward pressure
exerted by the club into the mat along the path, and [0162] [4] any
angular rotation of the club face and/or the swing itself.
[0163] The following discussion provides detailed information of an
illustrative embodiment for a sand wedge stroke for a right-hand
[RH] golfer, disclosed generally in FIGS. 14-24, and supported next
by illustrative detailed program flowcharts of FIGS. 25-34. A
left-hand [LH] stroke would, of course, be accommodated by a
mirror-image of the present RH embodiment.
[0164] More specifically, FIGS. 14-16 show some of the fundamental
golf stroke concepts that underlie an illustrative implementation
of the present invention. FIGS. 17-19 give an overview of how one
illustrative embodiment works. FIGS. 20-24 show the specific
mechanisms and processes which enable this particular high
resolution, illustrative embodiment.
[0165] As for the program flowcharts, FIG. 25 is the high-level
mainline program that controls the whole process, and calls the
first layer of subroutines. FIGS. 26-28 and 34 represent the first
layer of subroutines which calibrate the given golf club to a
perfectly flat bottom edge, detect the next golf swing, analyze the
data surrounding that swing, and then display the results of that
swing back to the golfer.
[0166] FIGS. 29 and 33 represent the 2nd layer of analytical
subroutines, entitled "Footprint" and "Strike Path", which analyze
each segment of the golf strike and then its overall path along the
mat, respectively. FIGS. 30-32 represent the 3rd and 4th layers of
sub-subroutines that perform lower order tests and calculations
that are ultimately used to declare whether the current shot is a
"thumbs up" or "thumbs down" and then why and by how much.
[0167] Turning to FIG. 14a, this figure shows the 3 orthogonal axes
that go through the center of golf ball 101, all of which are
oriented with respect to an imaginary target line 103 drawn from
the ball straight to the target--the flag at the next hole.
[0168] The "X" or forward axis 105 is coaxial with target line 103,
allowing the golfer to visually align the path of the ball with the
target flag. The X axis is positive for strokes that strike ahead
of the ball--typically resulting in "thin" shots, and negative for
strokes that land behind the ball--typically resulting in "fat"
shots.
[0169] Similarly, by visualizing the "Y" or horizontal axis 107
allows the golfer to visually align with the ball, e.g., to adjust
his/her stance prior to swinging. As will be explained further
below, the Y axis is positive to identify the position of shots
that "hook" or veer left, and negative to identify the position of
shots that "slice" or veer right.
[0170] The "Z" or vertical axis 109 is typically oriented positive
to identify the position of shots that rise up, as the name "skied"
shots suggests, and negative for strokes that exert a downward
force into the ground.
[0171] FIG. 14B looks down on the ball 101 to explain the
relationship of the club face to the center of the ball. For
orientation, target line 103 is drawn through the geometric center
of the ball. Given that the golfer's wrists must rotate the club
head around the shaft, the 3 straight lines drawn through the
center here represent 3 possibilities of how the club face can
impact the ball: [0172] [1] ideally, the club face will be squared
up 111, or perpendicular to the target line 103, which normally
generates a "straight shot" to the target; or [0173] [2] the club
face is being turned too slowly into the ball, impacting it with an
open face 113 which normally generates a push or "slice" to the
right; or [0174] [3] the club face is being turned too fast into
the ball, impacting it with a closed face 115 which normally
generates a pull or "hook" to the left.
[0175] All of the abovementioned shots are graphically depicted,
along with their underlying dynamics of motion, in FIGS. 15 and 16,
described below. It should be noted that the analytic threshold
criteria used herein as to when a given stroke delta becomes an
"error" shot are illustrative and are considered "rule-of-thumb",
pending further refinement with empirical data as this device is
used. For example, the club face criterion ">5.degree. open"
upon ball impact, presently used to declare a "slice" shot error,
could be tightened to ">2.5.degree. open" if further empirical
evidence points that way.
[0176] Before analyzing why a particular sand wedge shot went bad,
it is helpful to first define what an ideal swing would be. The
criteria for an ideal swing shown below is set forth for purposes
of illustrating the methodology described herein. In this example,
we first identify what the independent controlling parameters of a
sand wedge stroke are, and secondly, what the ideal values would be
for an ideal straight shot:
TABLE-US-00001 TABLE 1 Typical Sand Wedge Club Angles Lie Angle
Club shaft has a built in horizontal lie angle @ 60.degree. up from
the ground Vertical Club shaft has a built in downward angle of
attack Angle @ 8.degree. off true vertical [see FIG. 2] Loft Angle
Club face has a built in wedge-shaped angle @ 56.degree. up from
the ground at the rear Lines across Club has standard horizontal
lines across the face, Club Face such that the 5.sup.th line is
typically 3/4'' up the face Contour of Contour of various club
bottoms curve at a radius ranging Bottom Sole from 20'' [virtually
flat] to 3'' [ends curve up sharply]
[0177] Table 1 defines the illustrative shaft angles that the sand
wedge must be held at in order to execute an ideal stroke with
respect to the ground. The next table 2 defines the illustrative
positions, angles and rotations that the shaft and club face must
swing through to execute an ideal stroke with respect to the
ball:
TABLE-US-00002 TABLE 2 Ideal Sand Wedge Golf Stroke Parameters Type
of Swing standard 9 o'clock backswing [per FIG. 3] Shaft: golfer
swings club shaft with a downward angle of attack vertical angle
leaning 8.degree. forward off true vertical [see Table 1 and FIG.
2] Swing Angle downward angle of attack @ 15.degree. into the
ground down into ball at point of impact downward through the ball
[per FIG. 2] Swing Arc downward semi-circle orbit in the plane of
the lie angle through ball @ 60.degree. up from ground toward the
golfer Shaft: golfer swings through ball at the club's built-in lie
angle horizontal @ 60.degree. so that the club bottom is perfectly
horizontal angle Motion Gliding motion across mat exerts modest
pressure down, of Swing halfway between surface skimming and a
downward spike Pressure club exerts a modest downward [normal]
strike force on the down on mat, where the toe and heel of club
exert equal pressure the mat Club Face: club face impacts the ball
flush with its horizontal axis Y Impact Angle at the center of ball
[perpendicular to its forward axis X] Club Face: club impacts the
ball at the center of the club face Horizontal [typically at the
1-1/8'' center of its 2-1/4'' width] Club Face: club face impacts
the forward axis of ball at the 5.sup.th line up Vertical
[typically 3/4'' up the face from its bottom edge] Club Rotation
club face rotates @ 2.5.degree. per inch of travel as it passes
about shaft through the ball [30.degree. per foot before and after
impact*] Strike Line bottom sole of club face makes initial contact
with the mat, creating a pressure line typically over 2'' long Zero
Line club strikes the mat at the Zero Line imprinted on the mat on
the mat @ .84'' ahead of center of ball [see calculation below**]
Club Strike Line width extended across beveled front edge of
Footprint sole, generally .160'' to .220'' [only .125'' width is
needed] Strike Path club maintains contact with the mat for at
least 1'' to 4'' across past the initial Zero Line the mat Snapshot
very fast sensors allow up to 5 snapshots or readouts of the club
footprint as it moves down the strike path across mat Club Speed
speed across mat is derived from deltas calculated between 1.sup.st
==> 2nd snapshot, typically 82-95 mph for an avg golfer *Club
face rotation rate from over 10 years of empirical data from pro
tour players by golf pro/expert/trainer/writer A.J. Bonar, as
described in his book `AJ Reveals the Truth about Golf`, pp. 55-57,
published by AJ Golf [2003] **Zero Line distance ahead of ball is
calculated from the ball's .84'' radius, the club's 56.degree. loft
angle, the 5.sup.th line 3/4'' up the club face, and the swing's
15.degree. angle of attack, to yield approx. the .84'' radius of
the ball, as follows: Height of club off ground at impact: Zc .84''
- (.75'' sin 56.degree.) = .22'' Distance of Zero Line ahead of
ball: Xz = Zc/tan 15.degree. = .821''
[0178] All of the abovementioned lines, positions, angles and
rotations are graphically depicted, along with their underlying
dynamics of motion, in FIGS. 15 and 16, described next. Similarly,
all of the abovementioned footprints, paths and snapshots are
graphically depicted, along with their underlying dynamics of
motion, in FIGS. 17 and 18, described later.
[0179] FIG. 15A illustratively depicts how deviations in vertical
X-Z alignment of the club can be detected by horizontal arrays of
pressure sensors in an illustrative embodiment of the present
invention.
[0180] At the top, club head 117 is being driven downward by the
shaft 119 through the center of the ball at the proper 15.degree.
swing angle of attack 121. The swing arc 123 first strikes the mat
ahead of the ball right at Zero Line 125, and then continues down
strike path 127 at a modest depth into the ground. This is
considered an ideal swing 129 along the X axis 105 in the vertical
plane.
[0181] In contrast, if club head 117 comes in too high, it will
strike the ground well ahead of the ball [if at all], and generally
leave a strike path of only slight depth. This will result in a
thin shot 131, as depicted in the center. Also, at an extreme, a
thin shot can become a topped shot, as will be discussed later.
[0182] At the other extreme, if club head 117 comes in too low, it
will strike the ground behind the ball, and generally leave a
strike path of more severe depth. This will result in a fat shot
133, as shown at the bottom. Also, a fat shot can become a skied
shot, as will be discussed later.
[0183] FIG. 15B depicts how deviations in vertical Y-Z alignment of
the club can be detected by horizontal arrays of pressure sensors
in an illustrative embodiment of the present invention.
[0184] At the top, club head 117 is shown passing through the ball
[obscured from view] perfectly horizontal with the ground along the
Y axis 107. As a result, shaft 119 makes a perfect 60.degree. lie
angle 135, which exerts equal pressure on the heel 137 and toe 139
across the 2'' bottom edge. Coupled with the ideal swing 129 of
FIG. 15A, this results in a straight shot 141 toward the
target.
[0185] In contrast, if shaft 119 is tilted too far back, the lie
angle drops below 60.degree. which is considered too upright for a
good shot. This `delta` from the proper vertical shaft angle is
reflected as heavy pressure at the heel 144 and light-to-zero
pressure at the toe. This Z rotation typically will result in a
pull 143 or hook 145 to the left, as depicted in the center of FIG.
15B, because the face is actually closing at ball impact and is
already aiming left.
[0186] At the other extreme, if shaft 119 is tilted too far
forward, the lie angle rises above 60.degree. which is considered
too flat for a good shot. This delta from the proper vertical shaft
angle is reflected as heavy pressure at the toe 148 and
light-to-zero pressure at the heel. This Z rotation will typically
result in a push 147 or slice 149 to the right, as depicted at the
bottom of FIG. 15B, since the face is actually opening at ball
impact and is already aiming right.
[0187] In geometric terms, these toe-to-heel pressure deltas serve
to identify and quantify either a CCW [too upright] or CW [too
flat] rotation of the club head 117 in the vertical Y-Z plane
around the forward X axis 105.
[0188] FIG. 16 depicts the possible shot variations in the
horizontal plane. For greater understanding, the 9 possibilities
shown in FIG. 16 have been arranged in a simple "Wheel of
Horizontal Trajectories" like spokes of a wheel every hour and a
half. They are logically dispersed so that all 3 `Hook` shots are
on the left, all 3 `Slice` shots are on the right and all 3
`Straight` shots are in the middle, with the highly sought-after
ideal swing 129 appearing in the center hub.
[0189] The target line 103 points straight up for all 9 cases and
the large arrows depict the general direction of the resulting
shot. The 9 shot variations shown in FIG. 16 are based on the 3
possible horizontal face angles in combination with 3 possible
swing arcs:
TABLE-US-00003 TABLE 3 Face Angles and Swing Arcs Face Angle at
ball impact Swing Arc through the ball Square 111 Centered 151 Open
113 Inside-Out 153 Closed 115 Outside-In 157
[0190] Ideal Swing
Center Hub--starting with the best case, the ideal swing 129 in the
center hub shows the ideal rotation of the club face through the
center of the ball. Namely, the face is open 113 just prior to
impact with the ball center, squared up 111 just as it impacts the
center, and closed 115 just after impact. When this ideal face
rotation is combined with a centered swing 151, the result is the
desired straight shot 141 to the target.
[0191] Changing the Face Angle Only
10:30--next, just varying one variable, the face angle, from
squared up 111 to closed 115==>yields a hook left 145. The
curved `hook` deviation is due primarily to the CCW sidespin
imparted as the ball rolls off the closed face. 4:30--similarly,
varying the face angle from squared up 111 to open 113==>yields
a slice right 149. The curved `slice` deviation is due primarily to
the CW sidespin imparted as the ball rolls off the open face toward
the toe.
[0192] Changing the Swing Arc Only
7:30--as parallel motion dynamics to the above 2 cases, just
varying another variable, the swing arc, from centered 151 to
inside-out 153==>yields another hook left 145. In this case, the
curved `hook` is due to CCW spin imparted by the club face sliding
outward within the stroke arc, just as its name suggests--i.e., the
golfer's follow-through came further out overhead. 1:30--similarly,
varying the swing arc, from centered 151 to outside-in
157==>yields another slice right 149. In this case, the curved
`slice` is due to CW spin imparted by the club face sliding inward
within the stroke arc--i.e., the golfer's follow-through went
further back over the shoulder.
[0193] Combining Opposing Sidespin Forces
12:00--as countering motion dynamics to the above cases, varying
both variables--face angle and swing arc--in opposing directions
tends to straighten out the shot. Namely, combining a closed face
115 with an outside-in swing 157==>yields a pull shot 143
straight left. The 2 opposing CW/CCW sidespins negate each other,
essentially straightening out a hook. 6:00--similarly, combining
the mirror-image variables, an open face 113 with an inside-out
swing 153==>yields a push shot 147 straight right. Once again,
the 2 opposing sidespin rotations tend to negate each other,
straightening out what would otherwise be a slice.
[0194] Combining Parallel Sidespin Forces
9:00--as reinforcing motion dynamics to the above cases, varying
both variables--face angle and swing arc--in parallel directions
tends to magnify the shot error. Namely, combining a closed face
115 with an inside-out swing 153==>yields a hook sharply left
155. The 2 parallel CCW/CCW sidespins reinforce each other,
essentially doubling the hook's severity. 3:00--similarly,
combining the mirror-image variables, an open face 113 with an
outside-in swing 157==>yields a slice sharply right 159. Once
again, the 2 parallel sidespin rotations tend to reinforce each
other, doubling the severity of what would otherwise have been an
ordinary slice.
[0195] What the Wheel of Horizontal Trajectories in FIG. 16 means
to the instant implementation is this: once the analysis routine
has identified and quantified the face angle and swing arc
variables for a given stroke, the output routine can easily
classify them as to their degree of error [e.g., simple hook, pull
shot, or severe hook], quickly calculate the initial direction of
each shot, and turn ON single or multiple error indicators as
feedback to the errant golfer.
[0196] FIG. 17 provides an overview of how this illustrative
embodiment works, relying primarily on the floor mat sensor array
depicted. This array contains successive rows of impact sensors,
that may, for example, be the above-described commercially
available Tactilus sensors. As indicated above, the Tactilus sensor
element is essentially a thin flexible or rigid sheet that is
densely packed with sensing points or pixels. These sensing points
can be spaced as close as 1 mm (0.04'') apart and can collect data
as rapidly as 2,000 readings per second. The sensing points may use
capacitance, resistance or piezoresistance architectures. These
small impact sensors are illustratively arranged as discussed in
more detail at FIG. 22 and register and readout any changes in
pressure as the given golf club initially strikes and then slides
down the mat. The sensors as described in the above-identified '586
patent may likewise be utilized herein.
[0197] As the club swings through the ball, the ball impact line
201 becomes the reference focal point. This is because the quality
of the shot is determined by how close the golfer got the center of
the club face to impact line 201, which is coaxial with the ball's
horizontal axis 107.
[0198] This proximity of the club face to the impact line 201 can
be worked backward from the strike line 203, following golf
professional A J Bonar's teachings as to proper sand wedge stroke
angles and the strike line distance ahead of the ball [see Table
2]. As a first illustrative parameter, how close the given stroke
came to the ball center on impact line 201 can be assessed by how
close the golfer's initial strike came to strike line 203.
[0199] The sensors next continue to register and readout changes in
pressure as the club slides down the mat, revealing both positional
and pressure data. As a second illustrative parameter, how close
the club's face angle came to being squared up to the ball's
forward axis 105 can be assessed by looking at changes to the
club's footprint 205 [described in the next FIG. 18] as it moves
down strike path 127. These changes in club footprint include its
length along Y axis 107, its width along X axis 105, its pressure
depth down into Z axis 109 and, importantly, any rotation angle 207
that can be gleaned from this right-to-left positional data [this
process will be explained in greater detail at FIG. 24].
[0200] Once the footprint rotation angle has been identified and
quantified, the initial face angle at the ball impact line 201 can
be calculated backward from the first strike point. In the example
listed in FIG. 17, the footprint rotation angle 207 was found to be
closing @ 2.5.degree. per inch. Since the face was known to be
squared up [angle=0.degree. ] at the imprinted mat Zero Line 125,
the face angle was essentially rotated backward to the ball impact
line 201, where it came up as an `open face` error
[angle=-2.1.degree. ] as shown on FIG. 17.
[0201] In the example shown in FIG. 17:
[0202] The swing of the RH club face:
[0203] struck the ball at the Ball Impact Line with the face
2.1.degree. Open
(based on. 84'' Ball Radius.times.2.5.degree. Ideal
Rotation=2.1.degree.)
[0204] next struck the mat right at that mat zero line (no
+/-error) with the face squared up @ 0.degree. ROTATION ANGLE.
[0205] FIG. 18A shows the same sensor array process of FIG. 17 in
greater detail, expanded to the concept of successive `snapshots`
211 of the club footprint 205 moving rapidly from right to left. In
the illustrative implementation, these very fast snapshots are
based on sensor data being sampled @ 2000 Hertz, which is
equivalent to a sample time of 0.0005 seconds.
[0206] The following chart tabulates how fast the club head is
traveling across the mat at different swing speeds, which put an
upper limit on the number of snapshots that can be taken of that
motion. For ease of reference, the chart is repeated below.
TABLE-US-00004 Below Above Average Average Average Golfer Golfer
Golfer Tour Pro SWING SPEED 80 MPH 90 MPH 100 MPH 120 MPH Strike
Path Inches per sec 1408'' 1584'' 1760'' 2112'' Snapshots secs per
inch .000710 .000631 .000568 .000474 secs per 4 inches .00284
.00253 .00227 .00189 Sampling Rate Snapshots per 1.42 1.26 1.14
.948 @ 2000 Hz + inches .0005 secs Snapshots per 4 5.68 5.06 4.54
3.78 inches
[0207] As, shown above, the range of speeds varies from 80==>120
mph, corresponding to a below average golfer at the low end and a
tour pro at the high end. Thus, the average golfer, assumed to
swing at 90 mph, falls nicely within the reach of the 2000 Hz
sampling rate. That is, moving at 1584'' per second, about 11/4
snapshots can be taken for every inch of travel--which translates
to 5 snapshots for 4 inches of travel. And, even for the worst-case
120 mph tour pro, at least 3 snapshots can be taken for the same 4
inches of travel.
[0208] The example at the bottom of FIG. 18A shows how 5 snapshots
can be taken in just 4 inches of travel. Starting at frame (-4) on
the right side, the dotted lines show the pre-strike path of club
face, although it has not yet struck the mat and, hence, is not yet
registered by the sensors. As the club reaches frame (0), it hits
the ball at impact line 201 just prior to striking the mat in frame
(1) at strike line 203--right on target. The footprint 205 is now
being registered by the sensors, which soon reveal how it has
continued to rotate open-to-closed down strike path 127. This
angular footprint rotation 207 is recorded as 5 snapshots
corresponding to frames (1)==>(5) across just 4 inches of travel
down the X axis 105.
[0209] In addition, successive lateral shifts across the horizontal
Y axis 107 in frames (1)==>(5) reveal a higher-order rotation
209 in the strike path itself. Such positive Y shifts signify that
this stroke has an outside-in swing arc. Conversely, had the Y axis
shifts been negative [creeping up instead of down, as shown here]
this stroke would have had an inside-out swing arc.
[0210] FIG. 18B shows the club footprint 205 tracked across FIG.
18A in greater detail, expanded to the concept of leading and
trailing edges. Each snapshot 211 of a given footprint has a front
or "lead" edge 213 moving at a constant speed across the sensor
array. It is closely followed by a rear or "trail" edge 215 that
gives width to the footprint. This trail edge 215 and the footprint
width is largely dependent on the sampling rate [2000 Hz here] and
the width of the sampling pulse, which can be selectively narrowed
or expanded, as desired.
[0211] Given the right balance of sampling rate and pulse width,
the trail edge 215 can effectively represent the first lead edge
213 that occurred at strike line 203. This essentially becomes the
footprint reference length, rotation angle, and pressure gradient
to which every footprint that follows can be compared. This becomes
significant, first, when calculating overall face angle rotation
[from lead edge 213] across, say, 5 snapshots; and, second, when
rotating the initial strike line 203 [from the first trail edge
215] backward to the ball impact line 201, to see how far the face
angle was off of `square`.
[0212] Moreover, there is additional valuable data available from
the pressure gradient 219 [in psi `deltas`], running the length 217
of the footprint from toe 139 to heel 137. In the example here,
increasing from low-to-zero pressure at toe 139==>high pressure
at heel 137 signifies that the stroke is too upright with a fading
lie angle <60.degree., resulting in a pull 143 or hook 145 [see
FIGS. 15B and 16]. Conversely, increasing from low-to-zero pressure
at heel 137==>high pressure at toe 139 signifies that the stroke
is too flat due to a growing lie angle >60.degree., resulting in
a push 147 or slice 149. In the present example, all of the above
calculations in FIG. 18B assume each footprint has been
`normalized` via a standardizing calibration process, to be
discussed in FIGS. 19 and 20.
[0213] Thus, in summary, in this example, by itself, each snapshot
of the club footprint reveals the following:
[0214] LEAD EDGE 213 defined by the left-most sensors "ON" during
the sample indicates the instantaneous face angle
[0215] LENGTH 217 indicates how flush the stroke is WRT the
ground;
[0216] clubs with beveled-arc soles must first be normalized
[0217] TRAIL EDGE 215 selectively defined by the pulse width of
sample indicates the instantaneous direction down the STRIKE
PATH
[0218] PRESSURE GRADIENT 219 defined by "ON" sensors highest PSI
values during sample
[0219] LO toe.fwdarw.HI heel (shown here) stroke is TOO
UPRIGHT--results in Hook (see FIG. 15B)
[0220] HI toe.fwdarw.LO heel (opposite case) stroke is TOO
FLAT--results in Slice (see FIG. 15B)
[0221] STRIKE PATH taken together, snapshots of successive
footprints reveal:
[0222] changes in LEADING EDGE--indicate rotation of face angle
(see FIG. 14B)
[0223] changes in LENGTH--indicates stroke rising off mat
prematurely (see FIG. 18A)
[0224] changes in PRESSURE GRADIENT--indicate shaft rotating away
from original lie angle (see FIG. 15B)
[0225] FIG. 19 shows an exemplary layout of the above illustrative
embodiment on the golf practice mat 1, which is a further
embodiment of FIG. 1.
[0226] In this example, the golf ball 101 and mat zero line 300
remain as imprints in the center of the mat. The sensor array 301
comprises a hi-res area 302 surrounded by a lo-res apron 303, which
will be described in more detail in FIG. 22.
[0227] The entire golf swing training process and facilitating
mechanisms can be tracked from one end of the illustrative mat 1 to
the other. Starting at the lower end, there is, in this example, a
calibration pad 304 where sand wedges with many different sole
contours can be `normalized` to a standard 2'' flat length. By this
unique mechanism, footprints made by bottom contours with up to a
3'' arc can be reconfigured to lie flat on the mat, regardless of
their X-Y positional orientation, their Y-Z pressure gradients, or
any offsetting angular rotation.
[0228] The golfer begins each new swing by simply tapping reset
switch 305, indicating that he/she has seen and reviewed the
results of last swing and stands ready to swing again. Both the
initial calibration and sequential swing processes use the
red/yellow/green status LEDs 306 to reflect the status of the CAL
or the current swing--e.g., `green` for ready to go, `yellow` for
processing results, and `red` for results on display.
[0229] The golfer stands in foot imprints 12 and swings at the zero
line 300, going through ball imprint 101. Hopefully, the stroke
lands entirely within hi-res sensor area 302 so as to create a
viable shot, albeit with a bad hook or slice. Should he/she stray
from the hi-res area, the lo-res apron 303 will pick up any failed
attempts to strike outside the hi-res zone and evaluate the nature
of the error shot for feedback to the golfer.
[0230] During the given golf swing, microcontroller 4 [not shown,
see FIG. 1] detects that a swing has been taken, stores the data in
memory, analyzes the data for any viable shots, with or without
errors, and if not, flags the nature of any non-viable shot, then
finally displays the results of the shot in a user-friendly manner
to encourage specific ways to improve on the last stroke.
[0231] All of this is done preserving as much raw and calculated
information as possible that can serve as constructive feedback to
the golfer: for example, displaying how close to a perfect swing
he/she was, or what error shot resulted and what most likely caused
it. Pertinent calculations and overall summary data are stored as
archival data in memory 8 [also not shown] for cumulative trend
analysis such as performance deltas and error repetitions.
[0232] At the upper end of FIG. 19 are several exemplary LED output
arrays built into the mat to provide immediate visual feedback to
the golfer. Fanning out from the sensor array 301 is an array of
small line-of-sight [LOS] tracer LEDs 308 to dramatize the pathway
of the current shot toward the horizon. At the very far end is an
array of large LEDs 309 to display viable strokes that veer up to
36.degree. right or left, numbered from R1==>R18 on the right
and L1==>L18 on the left [note: only the first 18 of 36 are
shown--any shot >36.degree. is considered non-viable]. As a
special case, the severity of a `hook` left or `slice` right are
indicated by turning ON the next higher 1 or 2 LEDs.
[0233] The most important LED "0" sits in the center reflecting a
perfect shot 141 straight at the target. Immediately in front of
LED "0" is another LED that signifies the last stroke achieved a
perfect lie angle @ 60.degree. which is perhaps equally as
difficult [discussed further at FIG. 21B].
[0234] Running down either side of the far end is another array of
stroke feedback LEDs 310 that reveal which fatal error[s] the
golfer made on the last stroke.
[0235] These reflect the primary error shot deviations from the
perfect stroke, especially for such errors as `thin` and `shank`
shots.
[0236] All of this is done within the natural vision of the golfer
looking toward the horizon following his/her current golf swing.
These arrays of LED displays are quite cost-effective in that they
are self-contained within the same mat as the sensor array 301 and
microcontroller 4, especially where space is limited.
[0237] In this example, there is one more illustrative output that
acts as a final confirmation of just how close the golfer's current
stroke was to an ideal stroke. The initial strike feedback circle
307 pinpoints exactly where his/her initial strike fell with
respect to mat Zero Line 300. This is a visual aid to help the
golfer judge how much he/she must adjust a stroke to match the
ideal strike point in the center of the circle, as opposed to
looking at a resulting shot and guessing what must be changed to
correct the error [to be discussed at FIG. 21A].
[0238] In summary, in this example, exemplary outputs include:
LED's indicate ball direction (based on initial launch data)
[0239] shots up to 36.degree. left or right (>36.degree. are
bogus, LED 18 flashes)
[0240] multiple LEDs indicate HOOK or SLICE (i.e., next higher 1-2
LEDs light up for emphasis, depending on severity of CW/CCW
English)
[0241] advantages of LED display outputs at end of mat:
(A) LEDs conveniently constructed/operated/portable within the same
mat as the sensor array (B) instantaneous visual feedback without
looking up, coupled with LOS tracer path LEDs for effect (C) very
reliable, very inexpensive, self-explanatory--hence, a highly
cost-effective output.
[0242] FIG. 20A shows the nominal dimensions of a typical sand
wedge, with which most manufacturers seem to comply, except for the
contour of the bottom edge, or sole, which can vary significantly
from one to the next [discussed in more detail at FIG. 20B].
[0243] An important point on the sand wedge is the center 311 of
the 5.sup.th line up the club face 313: this is the ideal impact
point 311 with the center of golf ball 101. According to golf
professional, A J Bonar, this is the point on the club face that
must match squared up with the ball's X axis centerline 105 in
order to achieve an ideal straight shot 141 toward the target.
[0244] FIG. 20A also shows how the club's heel 137 and toe 139 are
often curved upward from bottom flat length 323 which is seldom
longer than 2 inches. The side view inset shows the 56.degree. loft
angle 315 of the club face and its minimum 0.160'' thick sole 321.
This min thickness of 0.160'' guarantees that, as the club strikes
the mat with a 15.degree. downward angle of attack, the club
footprint will span at least two rows of sensors spaced 0.125''
apart. The inset also shows how the lead edge 317 and trail edge
319 of a footprint for the strike line 203 are initially
generated.
[0245] FIG. 20B shows how an illustrative embodiment of the present
invention normalizes various different contours for the bottom edge
to a standard 2'' length. The example shown here accommodates a
worst-case club with a 3'' arc. Calibration pad 304 comprises, for
example, 2 rows of 29 Tactilus sensors, each calibrated to a range
of 1==>5 psi. The front row of sensors 333 and back row 335 are
separated by 0.125'', representing the lead edge 317 and trail edge
319 of the sole, respectively.
[0246] The golfer simply inserts his/her sand wedge into the CAL
pad perfectly horizontal, with gradually increasing pressure
downward. As the deepest point 325 on the sole contour reaches the
bottom, the pressure sensor 333 beneath it registers 5 psi max and
signals the golfer to stop pushing down. As the club is pushed
down, the CAL pad continuously monitors pressure at each end 327 to
verify that the club bottom has remained horizontal.
[0247] The CAL routine next stores all 58 pressure values, with the
deepest point 325 marked as Cal Ref. The routine first determines
how far Cal Ref is off center, and shifts the entire set of 29
values left or right until Cal Ref reaches the center. The routine
then calculates how much each neighboring sensor 331 must be scaled
up to reach the same uniform pressure depth of 5 psi, out to a
maximum distance 329 of 1 inch on either side of the Cal Ref point.
This same standardization process is likewise applied to the trail
edge 319.
[0248] This normalization of the club sole essentially `zeroes out`
the pressure gradient 219 from heel 137==>toe 139 so that, for
all analytic purposes, the club footprint appears perfectly flat
when horizontal. To reduce the amount of data that must be stored,
accessed and archived, the normalized contour for each club is
simplified down to just the shift distance for Cal Ref 325 and the
scale factors for Mid points 331 and Max points 329.
[0249] FIG. 21A depicts an illustrative Initial Strike Feedback
Circle 307 which pinpoints exactly where the golfer's initial
strike fell with respect to Zero Line 300. The idea behind this is
to stimulate the golfer to adjust his/her stroke on the next swing
to match the ideal strike point 332 in the center of the
circle.
[0250] Two circles are drawn around the center of the mat zero line
203, which is the ideal strike point 332. These circles are
populated with closely-packed LEDs 1/16'' apart that can be
individually activated. The inner circle has a 1/2'' radius
representing a desired strike area 333 that yields
reasonable-to-exceptional shots. The outer circle has a 11/8''
radius [half the nominal club face width of 21/4''] representing a
viable shot area 335 where shots are marginal at best. Outside
these circles are non-viable shots, including such extremes as thin
shots 131, fat shots 133, shags 337 and shanks 339.
[0251] The idea is to display the radial distance from the ideal
strike point 332 to the center of the golfer's initial strike line
203. This small delta dramatizes exactly how close the golfer got
to executing the elusive perfect shot. Rather than being
discouraged by witnessing error shots that veer off by tens of
yards, the golfer will be encouraged when he/she realizes the
correction is literally a fraction of an inch down at the Zero
Line. This is an effective visual aid to help the golfer judge how
much he must adjust his stroke to match the ideal strike point,
e.g., in the center of the circle.
[0252] FIG. 21B depicts the overall stroke feedback lights 310
which display the error[s] arising from the current shot, aligned
Left or Right, as applicable (see FIGS. 15, 16 and 19). There are 3
levels of errors in the Left/Right categories: 3 stroke errors
each; 3 failed shots each; and 2 excess rotations each. LEDs L18
and R18 signify that the current shot went off at an angle
>35.degree. which is essentially a non-viable shot similar to a
shag 337 or a fat shot 133. After each swing, the golfer can
quickly review the LEDs to see which and how many errors applied.
Display of these errors is discussed in greater detail in FIG.
34.
[0253] The primary goal of this practice mat is to steer the golfer
ever closer to turning ON the straight shot LED "0" in the center
of the mat. A secondary goal is to reward the golfer for turning ON
the flat lie angle LED 135 on the target line out to LED "0"--even
if he/she did not succeed at a straight shot.
[0254] FIG. 22 shows an illustrative embodiment of the Sensor Array
301 that is one illustrative implementation of impact sensor 2
identified above. Other than the golf ball imprint 101, the mat
Zero Line 300 is the primary reference point for array 301. This is
the visual reference the golfer must use to gauge his swing arc,
club face rotation, and impact point.
[0255] The sensor array 301 comprises a central hi-resolution
(hi-res) strike area 302 surrounded by lo-resolution (lo-res) side
aprons 303. In this example, these arrays contain successive rows
of impact sensors, may be implemented by the Tactilus sensors
described above (or the '586 patent tactile sensor incorporated by
reference earlier). The small impact sensors 401 have a diameter of
only 0.004'' [1 cm], so they can be readily configured into the
densely populated hi-res array of 1/8'' columns by 1/16'' rows
[0.0625''], as shown in FIG. 22. This high level of sensor
concentration is necessary to achieve a maximum resolution capable
of detecting <2.5.degree. angular rotation 207 of footprint 205,
as will be discussed in FIG. 24.
[0256] The right and left side lo-res side aprons 303 are generally
reduced to a 1/4'' resolution, with a mid-res front and rear apron
403 at 3/16'' resolution, due to alternate overlapping at 1/8''
intervals. The resolution was reduced in these peripheral areas
simply because no viable golf shot can be generated that far from
the Zero Line 300. Hence, these lo- and mid-res sensors are merely
present to detect failed shots as feedback to the errant golfer.
Thus, the golfer can strike anywhere within the overall
6''.times.8'' area and get some level of constructive feedback.
[0257] The hi-res area runs reaches 2'' behind the Zero Line 300 to
pick up possible viable "fat" shots 133 behind the ball, and
likewise reaches 5'' ahead to pick up possible viable "thin" shots
131 considerably ahead of the ball 101. More importantly, the 5''
extended hi-res area ahead of the ball allows more space to
possibly get 5 snapshots of a high-speed golf swing @ 100+ mph, as
described in FIG. 18A.
[0258] The idea for employing such a long stretch of forward hi-res
sensors is to capture as many snapshots as possible of a given
stroke. Each additional snapshot inherently improves data integrity
and, equally important, permits the system to detect very small
rotation angles in the swing arc and/or the club face, e.g.,
<2.degree., that might otherwise go unnoticed. This was process
was described in FIG. 18A with respect to strike path rotation 209
and footprint rotation 207, respectively.
[0259] Although the sensor array may be of a wide variety of
specific configurations, in this example, the illustrative array is
configured as follows:
[0260] SENSOR ARRAY 6'' wide.times.8'' long
Level of Resolution
TABLE-US-00005 [0261] CENTER STRIKE AREA 4'' W .times. 5'' L @
1/16'' accuracy per 1/8'' row FRONT APRON 4'' W .times. 2'' L @
1/4'' overlapped each 1/8'' REAR APRON 4'' W .times. 1'' L @ 1/4''
overlapped each 1/8'' SIDE APRONS 1'' W .times. 8'' L @ 1/4''
accuracy
[0262] FIG. 23 provides an overview of the hi-res sensor array 302.
This chart shows the theoretical limits on rotational angles that
can be measured within the 4''.times.7'' hi-res sensor area. The
horizontal "0" line in the center is the forward X axis 105, while
the vertical Zero Line 300 is coaxial with the horizontal Y axis
107, shown in FIG. 14A.
[0263] As can be seen from the top row of angles, the 7 inches
along X provide a substantial range of measurable rotations from
-26.degree.==>+51.degree. with respect to zero reference sensors
405. The four arcs were drawn at 1''==>4'' radii to illustrate
how the worst-case rotation of a 2'' long footprint can be
tracked.
[0264] The minimum angle detectable [i.e., maximum resolution
possible 407] from the hi-res sensor array 302 is shown at the top
of FIG. 23. It is almost not discernable at an extremely small
1.8.degree. on this actual size chart [1-to-1 scale]. This is
important for being able to detect and track very small angular
changes in footprint 205, as will now be explained in greater
depth.
[0265] In summary, the high resolution sensor array in the
illustrative implementation has the following exemplary
characteristics:
[0266] Overview of Hi-Res Sensor Array 302
[0267] range of 51.degree.-27.degree. in angular RH rotation
CCW
[0268] sensors spaced @ 1/8'' intervals across Y
[0269] sensors detect 2'' club footprint anywhere from
+2''>Y>-2''
[0270] sensors can next track any amount of footprint rotation
[0271] The MAX RESOLUTION is 1.8.degree. rotation in 1/16'' for
typical 2'' flat footprint of golf club (see next FIG. 24)
[0272] FIG. 24 illustrates how hi-res sensor array 302 is capable
of measuring any club face rotation down to a minimum angle of, for
example, 1.8.degree. [max resolution 407] with a high degree of
data integrity. This chart contains a series of row-to-row
transitions 409, proceeding from right-to-left across the drawing.
Each transition 409 shows a precise angle increment that can be
measured with the present hi-res sensor configuration. That is,
FIG. 22 shows that array 302 is configured as 1/8'' columns [across
FIG. 24 here] and 1/16'' rows [up and down FIG. 24 here].
[0273] At the far right of FIG. 24 are zero reference sensors 405
from which all 9 row-to-row transitions 207 are measured. For
example, in the 1st transition for min angle 1.8.degree., the
rotation from zero reference 405 across one row 1/16'' away creates
the angle 1.8.degree. at the top of the 2-inch length 217. In the
2nd transition, the top 2 sensors turn ON, creating an angle of
1.9.degree., and so on. In the 9th transition at the far left, the
top 9 sensors turn ON, creating an angle of 3.6.degree. that spans
a 3rd row 1/8'' away. Hence, from 3.6.degree. on out, the
rotational angles can actually be measured with twice the level of
integrity.
[0274] Thus, the hi-res sensor array 302, as presently configured,
is capable of measuring the smallest incremental deltas in
position, rotation and pressure that might affect a stroke. Such
data enables "rule-of-thumb" low-level analyses and all high-level
evaluations of golf strokes that deviate from the ideal sand wedge
stroke shown in FIGS. 15-16 and tabulated in Tables 1-3.
[0275] In the example in FIG. 24, it should be understood that:
[0276] the solid vertical line represents LEAD edge of club
footprint 2'' long
[0277] for a RH swing, the footprint rotates CCW, as shown
above
[0278] angular (club face) rotation is indicated by footprint
`deltas` in 2 ways:
1) within each footprint, by deltas (transitions) between LEAD and
TRAIL edges 2) within successive snapshots, by deltas between
farthest LEAD and initial TRAIL edges.
[0279] for large rotations >3.5.degree., as exemplified in the
9.sup.th transition:
[0280] 1) the bottom of the LEAD EDGE of the footprint is anchored
in Row N
[0281] 2) the Angle of Rotation is defined by the depth of the
transition into Row NH ( 1/16'' ahead)
[0282] 3) a large rotation >3.8.degree. will span more than 2
rows starting with Row N+2 (see FIG. 23).
[0283] FIGS. 25-34 describe illustrative detailed program
flowcharts that support the illustrative embodiment disclosed
generally in FIGS. 14-24. FIG. 25 expands the flowchart of earlier
FIG. 8.
[0284] To avoid confusion, the reader should recognize that, as a
convention for all flowcharts and subroutine descriptions herein,
the letters X, Y and Z are interchangeably used for 3 independent
purposes: [0285] [1] to represent the forward X axis, horizontal Y
axis, and vertical Z axis [per FIG. 14A] [0286] [2] to represent 2
sets of sensor/memory rows, such as Lead edge X and Trail edge Y
[0287] [3] to act as internal loop counters X/Y/Z, generally
incremented as X+1, Y+1, Z+1
[0288] FIG. 25 is an illustrative high level mainline program that
controls the whole process described herein and calls the first
layer of subroutines. In its capacity as overall supervisor, the
mainline program does all the system level housekeeping chores,
interfaces directly with the golfer, and delegates the workload to
its first layer of subroutines. In this example, this includes the
primary trainer functions of calibrating the given golf club to a
flat bottom edge, detecting the next golf swing, analyzing the data
surrounding that swing, and then displaying the results of that
swing to the golfer.
[0289] The first step after startup is to reset all system level
switches and counters and set the system parameters back to their
default state (501). The system then displays a start up screen on,
for example, an external display 14 or on display 6 for the golfer
(503). It then issues, for example, a beep alert and flashes a
"Select Mode" (505) message to the user, asking the user for his
name, what club he would like, and whether to use auto or manual
input mode. The system then waits for the user to enter his name
(507), select the manual input mode (509) and select a club
(511).
[0290] Function block 513 shows some exemplary clubs the user has
to chose from, including irons 3-9, pitching wedge, lob wedge, and
sand wedge. In the present illustrative example, the user chooses a
sand wedge. Had he chosen a 3-9 iron or a pitching wedge or a lob
wedge, the mainline routine would have swapped in the appropriate
iron subroutine or wedge subroutine (515) and returned to start
(525). In this case, with the sand wedge chosen, the program next
asks whether right-hand or left-hand has been selected (517), with
right-hand being selected in this example.
[0291] The routine then checks to determine whether a backswing
rotation was selected (519). In this instance, the user has
selected a 9:00 backswing. Had he chosen the short 7:30 backswing
or a full 10:30 backswing (521), the mainline routine would have
swapped in the appropriate 7:30 or 10:30 backswing subroutine (523)
and returned to start (535). The program then displays the user's
name, the choice of sand wedge and the 9:00 backswing (527).
[0292] In this example, the program next issues a beep alert and
flashes two messages to the user "Calibrate sand wedge" (529) and
"The bottom of the club must be perfectly horizontal" (531).
[0293] The mainline routine next calls its first major subroutine
Calibrate (533), which "normalizes" any irregular bottom edge
contour to perfectly flat, as will be shown in the flowchart of
FIG. 26.
[0294] Once the preliminary step of calibrating the golfer's sand
wedge is completed, the mainline routine enters a loop that
processes each golf swing, as explained below. When the golfer is
ready to take another swing, he hits the reset switch on the mat
(535). Upon detection of the golfer's reset, the mainline routine
(537) first calls the Detect subroutine (539) which scans for the
impact of the golf club on the mat. Once this has occurred, the
mainline routine then calls the Analyze subroutine (541) which
examines the three-dimensional contact pattern from sensors 2 in
the mat 1 and determines what kind of shot would result from such a
pattern.
[0295] When the subroutine is finished, the mainline routine tests
for any system error (543) and ends the program (545) upon such an
error. If there is no system error, the mainline routine then calls
the final subroutine Display (547) that issues a shot-related
message and various forms of feedback containing the results of the
last shot taken. The mainline routine repeats this cycle for as
long as the golfer wishes to keep swinging. When he is done, and
the reset switch remains idle for a preset timeframe (535), system
will time out and end the program (536).
[0296] FIG. 26 is a flowchart that delineates the sequence of
operations in the CALIBRATE routine, the 1st of 4 primary-level
subroutines. As shown in FIG. 20B, there is a front row of 29
sensors and matching LEDs for the Lead Edge, and a parallel back
row of 29 sensors and LEDs for the Trail Edge. They are numbered
1-14 for the left side, 15 for the center, and 16-29 for the right
side, with L7/R23 acting as MID points [1/2'' from center] and
L11/R19 acting as MAX points [1'' from center].
[0297] While only the Lead Edge front row is discussed here, the
back row is also processed in parallel in the exact same manner.
For this process of `normalizing` any irregularly curved bottom
edge to a flat edge, all 29 sensors have been initially calibrated
@ 1-5 psi.
[0298] The illustrative program first issues a beep alert and
flashes a message to the golfer, "place your club inside the
Calibration Pad" [601]. It then resets all internal switches and
counters, and turns on all CAL LEDs [603]. It then enters a loop
where it polls all 29 CAL sensors [605] until a sensor goes above
the Min threshold of 1 psi [607], which indicates the club has been
inserted.
[0299] The program next issues a beep alert and flashes a message
to the golfer, "push your club down perfectly horizontal" [609] and
starts flashing all LEDs [611]. It then enters a loop where it
polls all 29 CAL sensors [613] until the first sensor X reaches the
Max threshold of 5 psi [615], indicating the club has been pushed
all the way to the bottom of the pad.
[0300] The program next issues a beep alert and flashes the
message, "stop pushing your club down" [617], turns off the
flashing LEDs, turns the LED X on, and stores all resulting sensor
readings as contour points 1-29 for both Lead and Trail edges
[619]. At this point, the program checks the end conditions of the
sensor array to see if either end of the club is tilted [621]. If
so, it issues a non-fatal error message to the golfer "the bottom
of your club is not horizontal" [623] and returns to restart
CALIBRATE [625] for another try.
[0301] If the club passes the horizontal test, the program next
enters its process loop to calibrate any sensors left or right of
sensor X that are not perfectly horizontal--that is, any sensors
that have not reached Max threshold 5 psi.
[0302] The first step in the CAL process loop is to see if sensor X
is in the middle at center point 15 [627]. If not, the program
turns off LED X, shifts all contour points by one position, turns
on the LED at new position X, and returns to test for center point
15 again [629].
[0303] Once sensor X appears at center point 15 [627], the program
next tests whether the sensors left and right of center exceed the
max curvature allowed by the system [an arc >3'' radius]. It
does this by testing 2 groups of end sensors that must be greater
than 3 psi [631, 637] and 2 groups of mid sensors that must be
greater than 4 psi [633, 635] which indicates that all points on
the curved bottom of the club lie on an arc >3'' radius. If not,
the program issues a fatal error message to the golfer, "the bottom
contour of your club is curved upward" [639] and returns to START
over [641].
[0304] Once this test is passed, the CAL program can calibrate the
Lead Edge values in the following sequence [643] prior to its
return [645]:
[1] store the original contour values for all 29 sensors [2] store
the shift distance for center point 15 [which may be zero] [3]
scale the MID points L7/R23 up to the max 5 psi reference level [4]
scale the MAX points L11/R29 up to the max 5 psi reference level
[5] store the scale values for MID/MAX [6] turn on the associated
LEDs for center/MID/MAX points [7] repeat above steps 1-6 for the
Trail Edge [usually the same values]
[0305] This calibration process serves to `normalize` the bottom
edge of any club, which is generally curved upward on both ends at
different arc curve rates, to a flat edge that lies perfectly
horizontal for parametric analysis purposes.
[0306] FIG. 27 is a flowchart that delineates the sequence of
operations in the first Mainline subroutine Detect which, when
launched, constantly monitors the entire sensor array 301 for the
exact time and place where the club first contacts the mat. It then
continues to take successive snapshots 211 of the strike path 127
as the club moves at 80 mph==>120 mph across the mat, until the
club eventually lifts up off the mat, as depicted earlier in FIG.
18A.
[0307] The subroutine first does its housekeeping chores, primarily
resetting all memory banks, e.g., M1==>M8, to zero, and then
turns on the green "ready" light [647] to inform the golfer that
the system is ready for a swing at any time. The routine then
begins to poll [649] the entire array of pressure sensors at a
sampling rate of 2000 Hz, which translates to 0.0005 seconds per
sample. Note: in this example to optimize the system's highest
level of resolution around the average golf swing, the width of the
sampling pulse within each 0.0005 seconds can be selectively varied
to keep it ON just long enough for the club footprint's Lead Edge
213 to transition across 2 successive sensor rows at 80 mph, as
depicted in FIG. 24.
[0308] The subroutine then proceeds to cycle through its eight
memory banks Mx, starting with the loop index X=1 [649].
Thereafter, for each sample X taken [modulo 8], it converts all
analog sensor values to digital, and stores them for sample
Sx==>memory bank Mx [651]. That is, for each sample Sx, memory
bank Mx stores the time the sample was taken, plus A-to-D values
from the following arrays of pressure sensors [per FIG. 22]:
[1] 40 rows.times.64 sensors from the Hi-Res Array 302 [2] 12
rows.times.9 sensors from the Mid-Res Arrays 403 [3] 16
rows.times.4 sensors from the Lo-Res Arrays 303 [653]
[0309] The subroutine then scans the preceding memory bank Mx-4
[modulo 8] for any non-zero values [655], which signifies that the
golf club has finally struck down on the mat. If the data is all
zeroes [657], the loop index X is incremented to X+1 [659] and
tested for reaching 8 loop passes [661] where it is reset, modulo
8, back to 1 for the next sample Sx [651].
[0310] If the memory scan does find non-zero values, the subroutine
sets its Strike Pointer to the first non-zero data point in memory
bank Mx-4, turns off the green light, stops the polling of sensors
[663] begun at [649] and returns to the Mainline [645]. The last
five memory banks Mx, Mx-1, . . . , Mx-4 now contain up to 5
snapshots of the current strike path.
[0311] It should be noted that in the illustrative implementation
off-loading sampled data to 8 memory banks advantageously provides
a flexible built-in engineering design feature. The effect of
stopping the cyclic polling is to instantly freeze the last 8
samples [i.e., Mx, Mx-1, . . . , Mx-6, Mx-7]. This allows a
potentially slower scanning loop [655] to run asynchronously with a
potentially faster sampling loop [651]. That is, the extended
memory storage allows the current bank being scanned to "drift"
slowly away from the current bank storing fresh samples, up to a
cumulative maximum drift time of 8 banks.times.0.0005 secs=40
microseconds. It can likewise be used to accommodate up to 40
microseconds of any fixed "lag time" needed to perform an
intervening A-to-D conversion prior to scanning for non-zero
digital data. If more time is needed, "n" banks can be added by
modifying test [661] to "index X>modulo 8+n".
[0312] FIG. 28 is a flowchart that delineates the sequence of
operations in the second Mainline subroutine Analyze, which first
assesses how many independent variables can be isolated and tracked
from the range of data available. Analyze in this illustrative
implementation then evaluates how close each variable came to the
threshold of an ideal stroke, classifying wherever possible what
type of shot error resulted as a rule-of-thumb.
[0313] The subroutine first does its housekeeping chores which, in
this case, includes resetting all global flags, counters, switches,
lights, and time stamps that are set/reset during first-layer
processing, as well as all data points and variables related to
each new swing [667].
[0314] It then retrieves the CAL data [669] defining the actual
contour of the golf club's sole and the center shift and MID/MAX
scale factors that normalize the irregular-shaped sole into a
standard perfectly flat footprint, 2'' long by 1/8'' wide [the
width of 2 rows of sensors].
[0315] Finally, it retrieves the Strike Pointer from the preceding
Detect subroutine [669] which points to the first snapshot within
memory bank Mx-5 containing the initial strike data.
[0316] The subroutine then proceeds to cycle through up to 5
snapshots. It first sets internal loop counter X=Strike Pointer
[671] and then calls the Footprint subroutine [673]. Upon
Footprint's return, it first checks for a Zero Memory flag [675]
which, if it occurs during the first snapshot, is considered a
fatal System Error that must be flagged and displayed as a Zero
Memory SysErr [689] prior to returning to Analyze [691].
[0317] If there is no zero memory flag [675], the subroutine
continues on through its primary Footprint loop, storing the most
recent Footprint data for snapshot X within current memory bank Mx.
The subroutine then checks to see if the loop has reached the 5th
and final snapshot [679] and, if not, increments loop counter X
[685] after a modulo 8 test [681] and reset [683]. By this process,
Analyze goes through Footprint up to 5 times, once for each
snapshot.
[0318] If it is the 5th snapshot [679] or the Zero Memory flag
tells Analyze there is no more data for the next snapshot [687],
Analyze then calls the Strike Path subroutine [693] which
calculates cumulative data across up to 5 current snapshots. Upon
Strike Path's return, it stores all cumulative data generated by
Strike Path [693] and returns to Analyze [691].
[0319] All variables, flags, and errors generated at this
subroutine level are listed at the bottom of FIG. 28. This includes
ERROR returns to Analyze [695] reflecting fatal Swing Errors
related to the footprint, strike position, or angular rotation
[697], forcing an early return to the Mainline [691]. If there were
no fatal swing errors, the Footprint subroutine provides all
snapshot-by-snapshot data variables and shot-related flags [698].
Finally, if no fatal swing errors were detected through 5
snapshots, the Strike Path subroutine provides all cumulative data
variables across the 5 snapshots and any shot-related flags that
can be declared from that cumulative data [699].
[0320] FIG. 29 is a flowchart that delineates the sequence of
operations in the FOOTPRINT subroutine in the illustrative
implementation. FOOTPRINT in this example is the first of two
2nd-level subroutines that is designed to extract as much
incremental information as possible from a single snapshot,
primarily by first eliminating all failed shots for which analysis
would have no meaning, and then by analyzing the footprint 205 of
all remaining viable shots within each memory bank Mx handed to it
by the calling program Analyze.
[0321] The following is a function block for the FIG. 29
flowchart:
[0322] FUNCTIONS: find LEAD/TRAIL edge
[0323] calculate current/cumulative MPH
[0324] Test fringe areas for failed shots
[0325] INPUT PARAMETERS: next memory bank Mx
[0326] NOTE: sensor rows are numbered from -3'' .fwdarw.+5'' in
1/8'' increments as -24.fwdarw.+40''.
[0327] As shown in earlier FIG. 18, much can be learned about the
quality of the golfer's swing just from the size of the initial
footprint 203 and its horizontal X-Y position and rotational angle
207 [drawn CCW about the Z axis starting from the -Y axis]. Then,
expanding this 2D geometric model to 3D, more can be learned from
the footprint's initial vertical Y-Z downward pressure and
rotational angle from toe to heel [drawn CCW about the X axis
starting from the +Y axis] gleaned from small deltas in the
pressure gradient 219 across the length 217 of the footprint in the
Y-Z plane. Moreover, even more can be learned within each footprint
from any small positional and rotational deltas that show up
between its Lead edge 213 and its Trail edge 215.
[0328] It is noted that the raw sensor data is stored within each
memory bank Mx just as it was captured from sensor array 301,
namely, as rows -24==>+40 [wherein -Y axis=row 0], which
corresponds to all sensor rows from -3==>+5 inches in 1/8''
increments Also, each of the 64 rows comprises 16 columns, numbered
1==>64 along the Y axis, which corresponds to the sensor columns
from -2==>+2 inches in 1/16'' increments.
[0329] Footprint first does its housekeeping chores by resetting
all local variables [701], including its internal row index X. It
then proceeds to define where and how large the footprint is by
finding its Lead edge and Trail edge. It does this by scanning down
memory Mx from row 40==>-24 until it detects the first non-zero
row [703], which is the desired Lead edge. If there is no data in
Mx, this scan will arrive at the last row -24 without a "hit"
[705], which forces a Zero Memory flag [707] and an early Return to
Analyze [709].
[0330] If this scan does find the Lead edge, i.e., at row X>-24,
the subroutine then continues to scan down memory Mx from the next
row X-1==>-24 until it detects the first all-zero row [711],
which is the desired Trail edge. If the scan stops at the next row
X-1 [713], then the footprint has no measurable width, which forces
a Bad Width flag [715] and an Error return to Analyze [717].
[0331] If the footprint is at least two rows wide [713] then the
subroutine can store the Lead and Trail edges just found
[2.times.32 data points] which correspond to row X/X-1 and Y/Y-1,
respectively [719]. At this point in this example, Footprint has
enough information to calculate a rule-of-thumb estimate of the
golfer's swing speed, using the formula shown at [721]. This MPH
calculation of the club head speed is essentially the sampling rate
[2000 samples/second] times the distance the club traveled in one
sample [row Y==>row X], divided by the unit rate of speed at 1
MPH [17.6'' per second].
[0332] As a final check in this example on footprint viability, the
subroutine next tests whether either the Lead or Trail edge is less
than 1'' long. This is because a length of <1'' will obscure the
location of the center point of the normal-size 2'' footprint and
preclude measuring most rotational angles. This forces a Bad Length
flag [725] and an Error return to Analyze [717].
[0333] If both edges are >1'' in length [723], Footprint
proceeds to scan all sensors in the aprons surrounding the Hi-Res
sensor array 302 in an effort to identify any failed shots out in
the "fringe areas" of the sensor array 301. It does this by
scanning the sensor values [727] from the Lo-Res side aprons 303
and Mid-Res front/rear aprons 403, per FIG. 22.
[0334] If there are any Lo-Res hits in the left apron [729] or
right apron [737], then the current golf stroke is a "shank" [731]
or a "shag" [739], respectively, which forces an Error exit back to
Analyze [735] after storing the farthest Lo-Res data point from the
Zero Line 300 [733]. If there are any Mid-Res hits ahead of the
Zero line [741] or behind the Zero line [743], then the current
stroke is a "thin" shot [747] or a "fat" shot [753],
respectively.
[0335] These latter two shots are still considered viable, so the
subroutine first stores the farthest Mid-Res data point from the
Zero line [749] and then interpolates all missing 1/8'' values [due
to the overlapped Mid-Res configuration] to yield a uniform 2''
footprint for continuing analysis by subroutine Pressure [745].
[0336] If no failed shots are discovered in the "fringe areas",
Footprint can then start the detailed analysis of the Lead and
Trail edges that it just identified and qualified. It does this by
calling its 3rd-layer subroutines, Pressure [745] and Rotate [755],
providing them in this illustrative implementation with the club's
bottom contour CAL data along with Lead and Trail edge positional
data.
[0337] Upon return from these 2 subroutines, Footprint stores the
results of all their positional and angular calculations. Namely,
it stores Rangle, Xangle, Yangle, and Rshift plus 4 shot-related
flags from Rotate [757], and it stores Pratio plus 6 shot-related
flags from Pressure [759]. Footprint then executes a normal Return
back to Analyze [761].
[0338] The net value of all these calculations is that, along with
the pressure gradient 219 from the raw sensor data, they completely
define the footprint in the current memory bank Mx as a
3-dimensional object that has a length of up to 2'', a width from
the Lead edge to the Trail edge, and a depth contour shaped like
the pressure gradient from toe to heel. It is the initial values
and changes in position, angle and depth of this 3D object across
the mat that help define the quality and direction of the golfer's
stroke, as will be described below with the analysis of the other
2nd-level subroutine, STRIKE PATH, at FIG. 33.
[0339] FIG. 30 is a flowchart that delineates the sequence of
operations in the PRESSURE subroutine in this example, the first of
two 3rd-level subroutines, designed to analyze the pressure
gradient across the current footprint in memory bank Mx and test
for any excessive force, downward into the ground, or "tilted"
toward the toe or heel.
[0340] The following is a function block for the FIG. 30
flowchart:
[0341] INPUT PARAMETERS: LEAD/TRAIL edges pressure values P
numbered HEEL1.fwdarw.TOE 16
[0342] calibration data<center shift distance scale fore ach
MID/MAX
[0343] FUNCTION: Analyze pressure across footprint
[0344] Test for excess downward force: high angle of attack
[0345] Test for excess TOE/HEEL pressure: bad lie angle
[0346] Lie angle=60.degree. .fwdarw.PTOE=PHEEL.fwdarw.straight
shot
[0347] Lie angle >60.degree..fwdarw.PTOE=PHEEL.fwdarw.PUSH
shot
[0348] Lie angle <60.degree..fwdarw.PTOE=PHEEL.fwdarw.PULL
shot
[0349] The former "downward" force is a rule-of-thumb indicator as
to how far off the stroke is from the correct vertical shaft
alignment. The latter "tilt" force from toe to heel reveals how far
the club bottom is from lying perfectly flat, which translates to
bad vertical lie angle. That is, if the golfer has swung his club
through the ball at the correct built-in, e.g., 60.degree., lie
angle, the bottom will remain perfectly flat as it strikes a path
down the mat.
[0350] The subroutine first does its housekeeping chores, e.g., by
setting its test limits to system defaults [763]. Next, assuming
the club sole is slightly curved up at both ends, it sets out to
"normalize" the curved bottom by applying the CAL data generated at
system startup:
[0351] [1] shift all data points by the center shift distance
established during the CAL;
[0352] [2] apply the scale factors for the right/left Mid and Max
points to make them flat
[0353] [3] fill in intervening points Center==>Mid==>Max by
interpolating the scale factors
[0354] This normalization process [765] serves to transform any
irregular sole contour into a perfectly straight bottom edge that
will lie perfectly flat at the preordained 60.degree. lie angle
[see FIG. 15B].
[0355] Pressure starts off by calculating Pratio [767], which is
the ratio of downward pressure at the toe, Ptoe [16th of 16 Lead
edge values], to the downward pressure at the heel, Pheel [1st of
16 Lead values] expressed as a percentage. If the pressure P
recorded by any sensor exceeds a preset default limit signifying in
this illustration that the shaft is tilted forward >20.degree.
off vertical [769], the High Angle flag is set [771], which could
mature to a "Sky" shot [775] if the Trail edge is <1'' behind
the ball [773], forcing an early Error return [779].
[0356] Assuming no high angle is indicated, Pressure next tests
whether the golfer has succeeded at keeping his club flat. That is,
if he can keep the toe pressure, Ptoe, within +/-3% of the heel
pressure, Pheel, then he is rewarded with a Lie Angle flag [783]
and an early Return to Analyze [785]. In an illustrative
implementation, this positive feedback flag ultimately tells the
output Display routine [FIG. 34] to turn on the sought-after Flat
Lie Angle LED 135 [FIG. 21B] which is a commendable achievement for
the golfer.
[0357] Thus, after shots with no apparent vertical errors are
eliminated, all that is left are shots that went astray for one
reason or another. Pressure can now assess what type of shot error
may have occurred and at what level of severity. In this example,
it does this by comparing the toe/heel pressure "delta" to
increasing thresholds of severity, preset at 3 default levels:
moderate <10% delta; heavy <20% delta; and severe >20%
delta.
[0358] If Ptoe<Pheel [781], then for shots that veer off to the
left of target:
[0359] if Ptoe+10%>Pheel [785], then this moderate delta
produces a "Pull" shot [786];
[0360] if Ptoe+20%>Pheel [787], then this heavy delta produces a
"Hook" shot [788];
[0361] otherwise, the severe delta>20% of Ptoe produces an
uncertain "Shank" shot [789].
[0362] If Ptoe>Pheel [781], then for shots that veer off to the
right of target:
[0363] if Pheel+10%>Ptoe [793], then this moderate delta
produces a "Pull" shot [797];
[0364] if Pheel+20%>Ptoe [795], then this heavy delta produces a
"Slice" shot [798];
[0365] otherwise, the severe delta>20% of Pheel produces an
uncertain "Shag" shot [794].
[0366] Owing to the uncertain nature of the Shank and Shag
misfires, which are hit by the hosel and the toe edge respectively,
no further analyses can be conducted on them so they exit as a
fatal Error [791]. The remaining 4 error shots are still considered
viable for further analyses, so they make a normal Return
[785].
[0367] FIG. 31 is a flowchart that delineates the sequence of
operations in the ROTATE subroutine in this illustrative
implementation, the second of two 3rd-level subroutines, designed
to calculate all row-to-row transitions, as discussed by the 9
examples in FIG. 24. These very small 1/16'' transitions can be
used to identify and quantify any incremental CCW angular rotation
of the club face within each snapshot, as depicted in FIG. 14B.
[0368] The following is a function block for the FIG. 31
flowchart:
[0369] FUNCTION: calculate row-to-row transitions to find angular
rotation of club face
[0370] INPUT PARAMETERS: LEAD edge (rows X, X-1) [0371] TRAIL edge
(rows Y, Y-1) [0372] NOTE: within each row, points are numbered
1.fwdarw.37 from bottom up
[0373] Later on in this illustrative implementation, these same
incremental rotations per snapshot can be integrated into a larger
cumulative rotation across all5 snapshots by the Strike Path
routine [FIG. 33]. Since this constant club face rotation is being
measured across a greater distance, the cumulative measurement will
more accurately define the overall quality of the stroke and which
type of shot errors, if any, are working together to send the ball
astray, as depicted in FIG. 16.
[0374] Rotate performs the same identical rotational analysis on
the Lead edge [rows X, X-1] and the Trail edge [rows Y, Y-1] each
time it is called by Analyze. To do this it simply sets its
internal row pointers, Z and Z-1, first to Lead edge row X and row
X-1 [801] and, when that loop is done, to Trail edge row Y and row
Y-1 [802]. In this example, it's only housekeeping chore is to
reset its internal Zequal switch [803] at the beginning of each
process loop.
[0375] Rotate's purpose is to exhaustively test all possible
row-to-row transitions, as illustrated in FIG. 24 [for top data
points only]. It should be noted here that, within each row of
data, there are 32 data points, corresponding to 2'' of pressure
sensors spaced 1/16'' apart, that are numbered 1==>32 from the
bottom up, as shown in FIG. 24.
[0376] Rotate first tests the top points, Z compared to Z-1 [804],
to find the direction of rotation:
[0377] if Z=Z-1, there is no angular rotation detectable down to
the Max resolution of 1.8.degree.;
[0378] if Z>Z-1, there is a positive Z angle increasing CCW in
an arc to the left of FIG. 23;
[0379] if Z<Z-1, there is a negative Z angle decreasing CW in an
arc to the right of FIG. 23.
[0380] If Z=Z-1 [804], Rotate next tests the bottom points, Z
compared to Z-1 [833], to confirm the direction of rotation
established [at 804]:
[0381] if Z=Z-1, there is no angular rotation indicated, so it sets
Zequal [835] and Zangle [837];
[0382] if Z>Z-1, there is a positive Z angle [809] increasing
CCW to the left side of FIG. 23;
[0383] if Z<Z-1, there is a negative Z angle [827] decreasing CW
to the right side of FIG. 23.
[0384] If Z>Z-1 [804], Rotate next tests the bottom points, Z
compared to Z-1 [805], to confirm the direction of rotation
established [at 804]:
[0385] if Z>Z-1, there is no angular rotation indicated, so it
exits out to reset Zangle [837];
[0386] if Z=Z-1, there is a positive Z angle [809] increasing CCW
to the left side of FIG. 23;
[0387] if Z<Z-1, the club is falling down upon the mat [807] so
it exits to reset Zangle [837].
[0388] If Z<Z-1 [804], Rotate next tests the bottom points, Z
compared to Z-1 [823], to confirm the direction of rotation
established [at 804]:
[0389] if Z<Z-1, there is no angular rotation indicated, so it
exits out to reset Zangle [837];
[0390] if Z=Z-1, there is a negative Z angle [827] decreasing CW to
the right side of FIG. 23;
[0391] if Z<Z-1, the club is rising up off the mat [825] so it
exits out to reset Zangle [837].
[0392] Depending on the 9 outcomes above, Rotate closes its process
loop in one of 3 ways:
[0393] For 5 of the outcomes, it resets Zangle to zero [837]
indicating there is no rotation;
[0394] For 2 of the outcomes, it calculates a positive Zangle [809]
as the arctan of 1/Zpoint;
[0395] For 2 of the outcomes, it calculates a negative Zangle [827]
as the arctan of -1/Zpoint.
[0396] Once its process loop is completed, Rotate then tests
whether the Trail edge [row Y] has been analyzed [811]. If not, it
stores the Zequal/Zangle values into Xequal and Xangle [829] and
recycles through its process loop after resetting Zequal [802].
[0397] If the Trail edge has been processed [811], it stores the
latest Zequal/Zangle values into Yequal and Yangle [813]. Armed
with this incremental end point data, Rotate can now calculate its
only output value: the average rotation from the Trail edge to the
Lead edge [which is the distance from row Y==>row X] as
Rangle=(Xangle+Yangle)/2.
[0398] Rotate then performs its last process check to see whether
the Lead edge or Trail edge indicated any angular rotation within
the footprint, which is now reflected by Xequal and Yequal being
set [819]. If both are not set, it Returns to Analyze [821]. If
both are set, Rotate must call its 4th-level SHIFT sub-subroutine
[820] to check whether there is any rotation within the strike path
itself. Rotate then executes a Return to Analyze [821].
[0399] FIG. 32 is a flowchart that delineates the sequence of
operations in the SHIFT sub-subroutine which in this example,
despite being the lowest-order module in the entire program flow,
declares the highest-order shot errors in the entire golf swing
analysis. Namely, it seeks out any Lead-to-Trail lateral position
shifts that indicate an inward or outward delta in the golfer's
swing arc. This corresponds to an inside-out or an outside-in swing
arc that may either help or hurt the resulting trajectory of the
ball depending on the angle of the club face, as shown graphically
in FIG. 16.
[0400] The following is a function block for the FIG. 32
flowchart:
[0401] FUNCTION: Test equal-length LEAD/TRAIL edges
[0402] calculate LEAD-to-TRAIL position shifts to find inward or
outward swing variations
[0403] INPUT PARAMETERS: same as calling routine
[0404] NOTE: shifts are gradual, often 1/8' per snapshot
[0405] Shift's purpose is to calculate the amount of lateral shift
made by the footprint within the current snapshot: Rshift=(Lead
edge-Trail edge) top points/(row X-row Y) [841].
[0406] It also double-checks for moderate delta on the pressure
profile: Plead<Ptrail+/-10%.
[0407] Shift then tests whether Rshift has a non-zero value, which
confirms a swing arc delta:
[0408] if Rshift>0 [843], then the golfer has an inside-out golf
swing and a flag is set [845];
[0409] if Rshift<0 [847], then the golfer has an outside-in golf
swing and a flag is set [849];
[0410] if Rshift=0 [847], then the golfer has a centered golf swing
and no flag is set;
[0411] for all 3 outcomes, Shift makes a normal Return to Rotate
[851].
[0412] FIG. 33 is a flowchart that delineates the sequence of
operations in the STRIKE PATH routine, the second of two 2nd-level
subroutines, which is designed to extract as much cumulative
information as possible across all 5 snapshots in this illustrative
implementation. By this juncture in the program flow, all failed
shots have already been eliminated, so that Strike Path can now
analyze the entire strike path 127 of the remaining viable shots
within all 5 memory banks Mx, Mx-1, . . . , Mx-4 handed to it by
the calling program Analyze. That is, Strike Path can now calculate
cumulative deltas in rotational angles, lateral shifts and pressure
gradients from 5 successive footprints across the strike path, that
inherently carry a 500% greater level of precision than the
incremental deltas of a single footprint, as depicted in FIG.
18A.
[0413] The following is a function block for the FIG. 33
flowchart:
[0414] NOTE: strike path comprises 1-5 snapshots
[0415] FUNCTION: this subroutine only looks at HI-RES area [0416]
every shot in HI-RES gets projected back to ball impact [0417]
subroutine uses cumulative deltas in angles/shifts/pressure from
successive footprints across strike path
[0418] INPUT PARAMETERS: R angle/R shift across strike path
cumulative LEAD edge deltas in position/pressure.
[0419] Strike Path first does its housekeeping chores by resetting
its local variables and setting its test limits to system defaults
for 2 or more snapshots [901]. In order to describe the system at
its full capacity here, it is assumed that there are 5 snapshots to
be analyzed.
[0420] This is established at the outset by testing for just 1
snapshot [903] and, if so, setting the test limits back to a single
snapshot [905].
[0421] Strike Path first clears the way to calculate cumulative
rotational angles by testing for excessive angular rotation by the
club face. In this example, it tests if the angle of the 5th
footprint >14.degree., or if that same angle>the angle of the
1st footprint+30%. If so, it sets the fatal error for excess Club
Rotation [909] and takes an Error exit.
[0422] In this non-limiting example, Strike Path now calculates the
cumulative rotational angle across all 5 snapshots [915] and then
rotate it backward to the center of the ball to find the club face
angle at impact:
Bangle=Rangle1-[(Rangle5-Rangle1)/(X5-Y1 inches)]*(Y1+0.84'')
[0423] where
[0424] Bangle is the golfer's club face angle at impact with the
center of the ball,
[0425] Rangle1 is the first Lead angle upon the club's initial
strike,
[0426] Rangle5 is the final Lead angle of the last available
snapshot 5,
[0427] Y1 is the distance of the first Trail angle from the mat
Zero Line 300,
[0428] X5 is the distance of the final Lead angle from the mat Zero
Line 300,
[0429] 0.84'' is the distance from the Zero Line back to the center
of the golf ball.
[0430] Stated in simple terms, the club face angle at impact
Bangle=the initial strike angle-(the rate of angular change)*(the
offset distance from the center of the ball)
[0431] For relative comparison, Strike Path calculates the angular
delta from a perfect strike:
Bdelta=Bangle-2.5.degree.*(Y1+0.84'')
[0432] where
[0433] Bdelta is degree of angular error from a perfect strike
where the club face angle=0.degree.
[0434] and Bangle, Y1, and 0.84'' are the same as above.
[0435] In this example, Strike Path now determines whether the
resulting shot went straight or veered off: i.e., if Bangle
>5.degree. [917], then the face was closing at impact, resulting
in a "hook" [919]; or if Bangle <-5.degree. [921], then the face
was opening at impact, resulting in a "slice" [923].
[0436] In any event, the illustrative subroutine next calculates
the pressure delta across the strike path [929]:
Pdelta=Pratio5-Pratio1
[0437] where
[0438] Pdelta is the pressure change from the 1st footprint,
Pratio1, to the 5th footprint, Pratio5.
[0439] It then tests whether the resulting cumulative toe-to-heel
pressure change, Pdelta, is excessive or not [931]. That is, if
Pdelta>3%, then the "Toe" gets flagged [933], or else if
Pdelta<-3%, then the "Heel" gets flagged [935].
[0440] In any event, in the illustrative implementation the
subroutine next checks for excessive swing arc rotation. It does
this by first testing whether the 5th footprint's lateral shift,
Rshift5>1/2'' [937], and second, by testing whether the delta
between Rshift5 and the lateral shift of the 1st footprint,
Rshift1, was excessive: Rshift5>Rshift1+30% [943]. If either
case was true, it sets the fatal Swing Rotation error [939] and
takes an Error exit.
[0441] In this example, Strike Path can now calculate the
cumulative lateral shift across all 5 snapshots [945] and then
shift it backward to the center of the ball to find the club face's
position at impact:
Bshift=Rshift1-[(Rshift5-Rshift1)/(X5-Y1 inches)]*(Y1+0.84'')
[0442] where
[0443] Bshift is the golfer's club face lateral position at impact
with the center of the ball,
[0444] Rshift1 is the first Lead edge shift upon the club's initial
strike,
[0445] Rshift5 is the final Lead edge shift of the last available
snapshot 5,
[0446] Y1 is the distance of the first Trail edge shift from the
mat Zero Line 300,
[0447] X5 is the distance of the final Lead edge shift from the mat
Zero Line 300,
[0448] 0.84'' is the distance from the Zero Line back to the center
of the golf ball.
[0449] Armed with the B shift at ball impact, the subroutine can
now declare positional errors:
[0450] if B shift>1.25'', the club heel was shifted toward the
ball producing a "Shank" [949];
[0451] if B shift<-1.25'', the club toe was shifted toward the
ball producing a "Shag" [953];
[0452] if either is true, the subroutine has nothing more to
analyze and takes an error exit [911].
[0453] Otherwise, Strike Path looks at how far the initial strike
was behind or ahead of the ball:
[0454] if the initial Trail edge<-1'' behind the Zero Line, then
this is a "Fat" shot [957];
[0455] if the initial Trail edge>+1'' ahead of the Zero Line,
then this is a "Thin" shot [957].
[0456] In any event, Strike Path can now finally check for the last
fatal shot errors, based on two pairs of flags set earlier by
different subroutines in the program flow:
[0457] if the "Club Rising" and "Thin Shot" flags are set, then
this is a "Topped" shot [963];
[0458] if the "Club Falling" and "Fat Shot" flags are set, then
this is a "Sky" shot [969];
[0459] if either is true, Strike Path takes an Error exit [965]; if
not, it takes normal Return [971].
[0460] FIGS. 34 A and B is an illustrative flowchart that
delineates the sequence of operations in the 4th of 4 primary
subroutines in this example, which is also the third and final
Mainline subroutine DISPLAY, providing feedback as to the results
of the current golf swing to the golfer. It should be understood
that feedback may be provided in any one or combination of the
diverse feedback types described herein. For purposes of
illustration of the wide range of feedback contemplated herein, the
exemplary feedback of the illustrative embodiment is offered in 8
different formats at 6 different levels via 4 different media:
TABLE-US-00006 TABLE 4 Formats of Output Feedback Type of Feedback
Format Level Media Shot Angle Array of L/R Shot direction LEDs
Left/Right lights Shot Errors/ Dedicated Lights Shot errors/results
LEDs Failed Shots Club Face Positional light Strike line LEDs
Position/Angle circle position Alpha-numeric ID, numbers, [all 3
above] Display [above data] symbols Shot/Swing Ratings Percentages,
Current shot Display graphs results Trend Analysis Numbers, graphs,
All shots over Display etc. time 3D ball trajectory Visual graphics
Current shot 3D results graphics Causes of shot errors
Verbal/Visual cues Current shot Portable results
[0461] It is noted that the type, format, level, and media used to
present this feedback is merely exemplary, and could be easily
presented in a variety of other, effective ways and means. It is
also noted that, between the LEDs and Display media, the shot data
feedback to the golfer is redundant by design [see LED description
at FIG. 16], but different as to the effect of flashing LED lights
on the mat, versus alpha-numeric numbers, symbols, graphs, etc.
that must be interpreted on a generic CRT or LCD display. On the
other hand, the LCD has the advantage of being able to selectively
elaborate, e.g., on a given shot error. In any event, the golfer
has the choice of which display format is easier to work with.
[0462] It should be understood that, in any given implementation,
the type of feedback and the media selected will be tailored to the
application goals including cost considerations. For example, only
LED displays may be used, if desired, in a low cost implementation.
In other implementations where cost is not a major consideration,
all the forms of feedback described herein may be provided.
[0463] In this implementation, the Display subroutine operates on
the multitude of variables/flags/errors from Analyze, which are
listed at the bottom of FIG. 28, to generate parallel shot-related
outputs for LCD display 6 and the LED arrays built into the mat, as
shown generally in FIG. 16 and in greater detail in FIG. 21B. The
flow of the flowchart shown here in FIG. 34A is a top-to-bottom
mirror image of the LED array of FIG. 21B, which "declares" the
various shot errors depicted earlier in FIGS. 15 and 16. The LEDs
of FIG. 21B and the flowchart of FIG. 34A are segmented in this
example into four distinct levels of shot viability:
TABLE-US-00007 TABLE 5 LED Levels of Shot Viability Level Viability
LED[s] Predictability from Data Available 1 Ideal Shot 0 [center]
shot data predicts a shot trajectory directly on target 2 Viable
Shots 1 ==> 17 enough data to predict at least a starting
trajectory 3 Stroke Errors 18 ==> 21 shot may be viable, but
doesn't head toward target 4 Failed Shots 22 ==> 26 not enough
data to plot a shot direction or trajectory
[0464] Among these four levels, a failed shot [4] may be partially
attributable to a shot error [3], such as "club face rotated
excessively" [level 4] may lead to a "sharp hook" [level 3].
Similarly, a viable shot [2] may be degraded by one or more stroke
errors [3], such as viable shot initially heading off "straight at
6.degree. off target" [level 2] could be aggravated by an
inside-out swing arc into a "hook at 8.degree.+ off target" [level
3]. Taken to the extreme, an ideal shot [level 1] is essentially a
viable shot [level 2] aimed straight at the target without any
stroke errors [level 3].
[0465] FIG. 34A is divided into 3 major areas: the center follows a
straight line down from an ideal lie angle @ 60.degree., through no
detected shot errors, to the desired "straight shot" to the target,
signified by LED "0". On the left side are left-oriented LEDs
L26==>L22 for failed shots [level 4 above], L21==>L18 for
stroke errors [level 3], and L17==>L1 for viable shots [level
2]. On the right side are the corresponding right-oriented LEDs
R26==>R22 failed shots, R21==>R18 stroke errors, and
R17==>R1 viable shots.
[0466] The following is a function block for the FIG. 34A
flowchart: [0467] inputs from analyze subroutine (listed at bottom
FIG. 28) [0468] outputs to display 6 and LEDs on the mat (FIG. 19)
[0469] LED array shown on FIG. 21B as center 0, 1-17 viable shots,
18-26 errors.
[0470] In FIG. 34A, Display begins by setting up the shot feedback
screen on display 6, including, in this example, the golfer's name,
date and time, type of club and swing number [1001]. It first
checks for a fatal Width error [1003] and Length error [1005] in
the size of the footprint.
[0471] If there is one, it takes the FATAL exit [1055] to the end
of the program.
[0472] If there are no footprint errors, it displays the MPH speed
[1007] and tests the lie angle [1009]. If the lie angle is a
perfect 60.degree., Display turns on the desired green "flat angle"
LED [1011]. Otherwise, if the lie angle is <60.degree., it tests
the "HEEL dug-in" error [1013] and, if so, sets LED L26 [1015]. As
a mirror image, if the lie angle is >60.degree., it tests the
"TOE dug-in" error [1017] and, if so, sets LED R26 [1019]. In any
event, all of these paths next flow toward the center to check
whether there are any Swing Errors [1021].
[0473] In this illustrative implementation, if there are Swing
Errors [1021], Display proceeds to test each "failed shot",
starting with "excessive swing arc, in or out" [1023] where, if so,
it sets R25 [1025]. It next proceeds to test for "excessive club
face rotation, open or closed" [1027] where, if so, it sets L25
[1029]. In the same way, it then proceeds to test the remaining
failed shots sequentially: "TOPPED" shot [1031] setting L24 if
true, then "SKIED" shot [1035] setting R24 if true, then "FAT" shot
[1039] setting R23 if true, then "THIN" shot [1043] setting L23 if
true, then "SHAG" [1047] setting L22 if true, and finally "SHANK"
[1051] setting R22 if true. In all above cases, the subroutine
takes the FATAL exit [1055] to the end of the program.
[0474] If there are no Swing Errors [1022], there are no more
"failed shots", so Display proceeds down the center to test the
club face [1101]. If the club face is closed, it goes left to test
for shots going left. It first tests for an "outside-in swing arc"
[1103] where, if so, it sets L21 to reflect a "PULL" shot [1105].
If not, it next tests for an "inside-out swing arc" [1107] where,
if so, it sets L20 to reflect the two CCW forces combining into a
"sharp hook left" [1109]. Otherwise, it sets L19 to reflect a
simple "HOOK" shot left [1113]. This outcome is also created by a
square club face [1101] combining with an "inside-out swing arc"
[1111] which also yields a simple "HOOK" at L19 [1113]. All the
above outcomes flow down to next test if the club face Bangle is
>35.degree. at impact [1115].
[0475] If the club face is open [1101], Display goes right to
conduct a series of mirror image tests for shots going right. It
first tests for an "inside-out swing arc" [1121] where, if so, it
sets R21 to reflect a "PUSH" shot to the left [1123]. If not, it
next tests for an "outside-in swing arc" [1125] where, if so, it
sets R20 to reflect the two CW forces combining into a "sharp slice
right" [1127]. Otherwise, it sets R19 to reflect a simple "SLICE"
shot right [1131]. This outcome is also created by a square club
face [1101] combining with an "outside-in swing arc" [1129] which
also yields a simple "SLICE" at R19 [1131]. All the above outcomes
flow down to next test if the club face Bangle is >35.degree. at
impact [1133].
[0476] At this point in the program flow, it should be noted that,
in this example, any shot with Bangle >35.degree. is considered
a non-viable stroke error. Even though the system can easily
continue to process shots with a club face angle >35.degree., it
is of little value for the golfer to know and/or watch his shot
going 50 yards far left or right out of play into the next fairway.
Therefore, only shots with club face <35.degree. are considered
viable and further processed.
[0477] Thus, on the left side of FIG. 34A, if Bangle >35.degree.
[1115], Display sets L18 to reflect a shot "far left" out of play
[1117]. If Bangle <35.degree., it proceeds to examine the
golfer's viable shots to the left by calculating [1145] the
appropriate LED Lx to light up [1147]:
[0478] Turn on LED Lx, where x=2 times Bangle for any LED between
L17<==Lx<==L1
[0479] As a final step, Display next checks whether L19 is ON
reflecting a HOOK [1149], and if so, sets LED Lx+1 [1151] to
signify a "HOOK" left. All above outcomes from L18 on down exit at
the bottom to Display process CIRCLE [1119] shown on FIG. 34B.
[0480] Similarly, as a mirror image on the right side of FIG. 34A,
if Bangle >35.degree. [1133], Display sets R18 to reflect a shot
"far right" out of play [1135]. If Bangle <35.degree., it
proceeds to examine the golfer's viable shots to the right by
calculating [1137] the appropriate LED Rx to light up [1139];
[0481] Turn on LED Rx, where x=2 times Bangle for any LED between
R1==>Rx==>R17
[0482] As a final step, Display next checks whether R19 is ON
reflecting a SLICE [1131], and if so, sets LED Lx+1 [1143] to
signify a "SLICE" left. All above outcomes from R18 on down exit at
the bottom to Display process CIRCLE [1119] shown on FIG. 34B.
[0483] Moreover, if the current shot has survived the process flow
from Lie Angle=60.degree. [1009] down the center of FIG. 34A
through tests for a square club face [1101], no arc swings
inside-out [1111] or outside-in [1129], then the shot can be
declared as the coveted "STRAIGHT SHOT" to the target [1153] for
which Display turns on LED "0" and exits to CIRCLE [1119]. This is
the ultimate output this practice trainer is intended to
promote.
[0484] FIG. 34B is divided into three major areas: at the top is
the process for "mapping" the golfer's initial Strike Line into the
Feedback Circle 307, shown generally on the mat of FIG. 19, and
more specifically in FIG. 21A; in the middle, in accordance with
one illustrative implementation, are some exemplary formulas as to
how the current golf stroke can be rated on a scale of 0==>100%
to make the "raw" data more meaningful from a practical
result-oriented perspective; at the bottom are some exemplary
post-processing feedback mechanisms to extend the raw data in three
very different, but valuable directions--namely, trend analysis, 3D
graphics, and portable device feedback.
[0485] The following is a function block for the FIG. 34B
flowchart: [0486] STRIKE LINE=TRAIL EDGE 1 comprising data points
1.fwdarw.32 accessed via LED index Z [0487] LEDs in feedback circle
307 are a mirror-image of the HI-RES sensors (X, Y, Z) 302 within
11/8'' radius of the center of zero line (1.fwdarw.36 data
points).
[0488] Display continues from FIG. 34A at the CIRCLE entry point in
FIG. 34B [1119]. In this example, it first turns on the green LEDs
for the Zero Line to provide a visual comparison for the golfer's
initial Strike Line 203 elsewhere in Feedback Circle 307 [see FIG.
21A]. It does this by running internal index Z from 1==>36 to
turn on all 36 LEDs corresponding to the Zero Line, observing the
following LED algorithm [1201] holding X=0:
[0489] Turn on Circle LED Z=ZeroLine (0, -1.125+Z, Z), where Z runs
from 1<=Z<=36
[0490] To initialize "mapping" the Strike Line into the Feedback
Circle, Display first resets the internal index Z=1 [1201] and then
proceeds to turn on all 32 LEDs corresponding to the Trail Edge 1
of the initial Strike Line. It does this by first testing the
viability of each data point Z comprising Trail Edge 1 of the
initial Strike Line, observing the following data algorithm
[1203]:
[0491] Test current point Z=TrailEdge (X, Y, Z), where Z runs from
1<=Z<=32, and its radial distance Rz from the circle origin
"0" is the square root of (Xsquared+Ysquared).
[0492] Display next tests if current data point Z lies beyond the
11/8'' radius of Feedback Circle 307 [1205] and, if so, skips to
increment index Z [1211]. But, if it is within the 11/8'' radius,
it then turns on each LED corresponding to Trail Edge 1 of the
initial Strike Line, observing the following LED algorithm
[1201]:
[0493] Flash red Circle LED (X, Y, Z)=TrailEdge (X, Y, Z), where Z
runs from 1<=Z<=32
[0494] After incrementing index Z [1211], Display next checks if it
has processed all 32 data points [1213] and, if not, returns to
test the next data point [1203]. If it has finished, Display stores
the resulting LED pattern for later display on the LCD/CRT display.
[1215].
[0495] In this example, Display next rates the current golf stroke
on a scale of 0==>100% and stores the results. The ratings
herein are intended to be illustrative. Empirical data and
additional or different criteria may be utilized to tailor ratings
to enhance the accuracy of the rating as desired. In this example,
Display rates the stroke by the degree of relative variation, or
`delta`, from an ideal reference value, such as the Zero Line and
"squared up" face upon impact with the ball [1217]:
TABLE-US-00008 TABLE 6 Parameters for Rating the Current Golf
Stroke Parameter Where measured Value of Parameter Radius from
center of Shows how close initial Strike was to Zero Line Zero Line
Bdelta At impact with Shows how close club face was to ball squared
up Pdelta Across entire Show how close club shaft was to lie strike
path angle B shift Across entire Shows how close swing arc was to
strike path centered Overall all 4 weighted single metric to
quantify stroke for equally comparison
[0496] It is noted that these rating formulas [1217] are based on
absolute values for Bdelta, Pdelta, and B shift. The resulting
Overall rating weights each of the 4 parameters equally, but
empirical data from future use of this trainer may ultimate suggest
the first parameter, radial distance of the Strike Line from the
Zero Line, exerts far more than 25% influence.
[0497] Upon completing the ratings, Display proceeds to query its
higher-level outputs, which is the reentry point for all FATAL
shots [1055]. It first tests if a trend analysis has been selected,
e.g., via Mode Control Input 10 [1219]. If so, Display performs a
trend analysis across all strokes by the same golfer and displays
the results, e.g., as bar graphs [1221]. Such analysis could
examine, for example, the ratio of viable shots to failed shots,
what failed shots are prevalent, which shot errors dominate the
golfer's viable shots, what percentage improvement the golfer is
making over time in each given category, etc. Further, as described
further below, a bar graph may be used in an "optimum club
selection" mode to demonstrate, for example, that a TaylorMade 5
iron is a better fit for a given golfer than the same club
manufactured by Callaway.
[0498] Display next queries whether a 3D display of the current
shot or a previous shot has been selected [1223]. If so, Display
provides all pertinent trajectory data to a 3D visual graphics
engine [1225]. It would also calculate a rule-of-thumb flight
distance based on previously stored shot distance data, as shown in
FIG. 5A, based on overall stroke quality--e.g., for a sand wedge,
in an illustrative implementation, the distance gradient X might
equal 70 yards times the overall rating up to 100% [1217]. The
resulting graphics would display the flight path of the ball's
trajectory toward the target, as depicted in FIG. 13, including any
"hook" or "slice" indicated by the data.
[0499] Display next queries whether export to, or import from, a
wireless portable device 14 has been selected [1227] as shown in
FIG. 4. Exporting the current shot data could be used, for example,
to update the golfer or a second remote party, such as a golf
instructor, as to the results of the current shot, including all
significant variables, flags, errors, and ratings [1229]. The
hand-held display could then, for example, retrieve verbal audio
files and/or tutorial video clips of possible causes for the
dominant shot errors identified and what the golfer should do to
correct them. The wireless device could also be used to import, for
example, specific recommendations on-the-fly from a live'
instructor as to how to make such corrections on the next
swing.
[0500] Finally, after clearing all three post-processing queries,
Display returns to the calling program [1231] to reset the entire
program, upon command, for the golfer's next swing.
[0501] The golf training apparatus described herein (particularly
the immediately preceding illustrative implementation) may be
advantageously utilized to assist in the selection and/or fitting
of the optimum golf club, e.g., TaylorMade, Callaway, Ping, etc.,
tailored to the swing of a user. For example, in accordance with an
illustrative implementation, a user may select, e.g., by clicking
on an options menu, an optimum club selection mode of operation.
The user may then take, for example, five (or ten) swings with a
TaylorMade five iron and five (or ten) swings with a Callaway five
iron. The club face contact data for each club is then processed
and stored, for example, in the manner described above. For
example, the output of FIG. 34B, block 1219 may be utilized and bar
graphs comparing the strokes with each club may be generated as per
block 1221 of FIG. 34B. A comparison of such contact data and shot
projection analysis for each club is then made to determine if one
club yielded statistically significantly better results than the
other club based upon the impact sensor data analysis described
above.
[0502] In accordance with an illustrative implementation, a
recommendation may be displayed to the user as to which club, if
any, yielded the better results and was determined to be a better
club for that user.
[0503] In accordance with an illustrative implementation, this club
selection analysis may be augmented by utilizing stored optimum
contact data measured based upon the data obtained from a golf
professional for each club. In this fashion, even without comparing
one manufacturer's club with another manufacturer's club, a
comparison of the user's contact data with the optimum data may be
used to determine if a given club is appropriate for a user by
determining that the user obtained results within a predetermined
threshold of the optimum.
[0504] While the invention has been described in connection with
what is presently considered to be the most practical and preferred
embodiments, it is to be understood that the invention is not to be
limited to the disclosed embodiments, but on the contrary, is
intended to cover various modifications and equivalent arrangements
included within the spirit and scope of the appended claims.
* * * * *