throbber
United States Patent
`Seiple et al.
`
`[19]
`
`[54] SPORTS PERFORMANCE COMPUTER
`SYSTEM AND METHOD
`
`[76] Inventors: Ronald Seiple, 1063 Koohoo Pl.,
`Kailua, Hi. 96734; R. B. Seiple, 12319
`Calle Albara, El Cajon, Calif. 92017
`
`[21] Appl. No.: 09/111,844
`[22]
`Filed:
`Jul. 8, 1998
`
`[51] Int. Cl.7 ...................................................... .. G01S 5/02
`[52] US. Cl. ............................................. .. 702/97; 702/158
`[58] Field of Search ................................... .. 701/119, 120,
`701/121, 122, 216, 214, 213, 217; 702/142,
`149, 150, 94, 95, 96, 97, 158
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,119,101
`5,191,792
`5,420,592
`5,552,794
`
`6/1992 Barnard ................................. .. 342/357
`3/1993 Gloor
`.. 73/178 R
`5/1995 Johnson
`342/357
`9/1996 Colley et al. .
`342/357
`
`5,815,126
`5,862,511
`
`9/1998 Fan et al. . . . . . .
`. . . . . .. 345/8
`1/1999 Croyle et al. ......................... .. 701/213
`
`OTHER PUBLICATIONS
`
`Hoshen, Joseph, Jim Sennott and Max Winkler. “Keeping
`Tabs on Criminals,” IEEE Spectrum, Feb., 1995.
`
`Primary Examiner—Marc S. Hoff
`Assistant Examiner—Craig Steven Miller
`Attorney, Agent, or Firm—Leighton K. Chong
`[57]
`ABSTRACT
`
`US006032108A
`Patent Number:
`Date of Patent:
`
`[11]
`[45]
`
`6,032,108
`Feb. 29, 2000
`
`Global Positioning System (GPS) satellites to determine the
`current pace, the distance traveled and speed of a person, for
`example a runner, are disclosed. A GPS receiver for receiv
`ing signals from GPS satellites is attached to the person. A
`processor processes the signals received at a plurality of
`points from sub-sets of GPS satellites to determine the Earth
`Centered Earth Fixed (ECEF) ?x in the X, y, and Z planes
`relative to the center of the earth of each point. The proces
`sor detects When the signals are received from a different
`sub-set of satellites and corrects for the resulting ?x error.
`The processor calculates the relative distance of the segment
`betWeen the ECEF ?xes of each pair of sequentially adjacent
`points, and adds together the distances of the segments to
`determine the distance of the path traveled by the person,
`Which is de?ned by the points. Errors associated With
`determining position relative to navigational references such
`as latitude and longitude are not incurred because relative
`ECEF ?xes are used to determine the distance rather than
`latitude and longitude ?xes. Also, “Selective Availability”
`error, Which is an error introduced into GPS signals by the
`US. military that limits the accuracy of GPS ?xes relative
`to navigational references, does not degrade the accuracy of
`the distance calculations because the relative distance
`betWeen the points is used to determine the distance
`traveled, rather than the distance of the points from naviga
`tional references. The processor calculates the elapsed time
`betWeen selective points, and determines the average speed
`or pace of the person betWeen selective points and current
`speed in minutes/mile. A storage device stores data struc
`tures representing the ECEF ?xes of selective points, and
`data structures representing relative times that GPS signals
`are received at selective points. A signal-bearing medium
`tangibly embodying a program of for performing the above
`method that are executable by a digital processing device.
`
`A system, a signal bearing medium embodying a program of
`machine-readable instructions, and a method employing
`
`44 Claims, 10 Drawing Sheets
`
`G(Prooess Loopbeck point)
`
`Stan Chronograph
`and continously
`dlsptay elasped tlme
`
`Start/Slop
`Button?
`
`Yes
`
`E (see Frgure 3g)
`
`No
`
`Yes
`
`Pause
`
`Button?
`
`‘
`
`Dlsplay 'Paused' status and
`Freeze Chronograph and
`Dlstance celculattons untll
`‘ button l5 pressed again
`
`'
`
`‘
`
`lnput GPS
`ECEF fix data
`as "New‘ llx
`
`Is "New“ ?x lrorn
`same consteltatlun
`as the "Last" ?x?
`
`Pass data to
`Flller SA
`(see Fig 3f)
`
`Pass "Current" and
`
`“D|stance" funcllan
`(See F lg. 3b)
`
`l
`
`Total Distance 1
`Total dlstanoe + "Dls‘lanoe"
`
`Average Pace =
`Total Dlstance I Elapsed Tlrne
`
`Input current
`velwty from
`GPS Doppler
`Velocity Vector
`
`l
`Format and dlsptayv Total
`Dlstance. Avg Pace.
`Velovty delums
`
`Cneok dlstance, pace,
`veloctty, and time for
`Progammable Alerts
`
`Pass "New" FlX
`data to Storage
`Filter (see Fig 3e)
`
`Store "New ECEF and Doppler
`Velocrty Vector datums as "Last"
`?xes (for next loop Iteration)
`
`—>G (restart loop)
`
`UA-1009.001
`
`

`
`U.S. Patent
`
`Feb. 29, 2000
`
`Sheet 1 of 10
`
`6,032,108
`
`UA-1009.002
`
`

`
`U.S. Patent
`
`Feb. 29, 2000
`
`Sheet 2 0f 10
`
`6,032,108
`
`‘- f — — — — — — _ _ _ _ _ _ _ _ — _ _ _ — — _ - _ — _ _ — - _ — — a
`
`Antenna
`
`( MF'".
`I Circuit
`I 5”“
`:
`lI
`:
`:
`:
`l
`|
`|
`|
`l
`I
`|
`
`Salad
`n y
`Mammy
`
`gandom
`ccess
`Memory
`
`Digitized RF
`Gps <-_ GPS
`Receiver Control Radio Freq.
`Digital Signal
`Processor ¥+ Receiver
`Clock
`comm‘ Lmes
`Data-bus
`
`-
`
`—
`
`‘Crystal
`
`\
`|
`I
`:
`:
`:
`Oscillator
`Serial l/O {
`I
`l
`|
`l
`l
`|
`|
`|
`
`A
`ddress-bus
`
`Control Lines
`
`Microprocessor
`
`Power Supply
`Circuit
`(supplies all
`components)
`
`\ _ _ _ _ _ _ _ _ _ _ _ i _ _ _ _ _ _ _ _ _ _ _ _ _ __ _ __ _)
`
`+ -
`
`Battery Pack
`
`5s5a“_“_“"“\
`Panel y
`+ l (
`l I
`Custom
`:
`:
`la'ggotinuedlio
`I
`I
`Output
`\.. ________ ._ _ J :
`:
`|
`)
`
`Main Equipment Housing
`
`_ ___________ __
`Optional Circuitry
`\]
`|
`Pressure Transducer
`'
`(Barometric Altimeter)
`:
`Magneto-Resistive Sensors :
`(magnetic compass)
`I
`Anemometer
`:
`(wind meter)
`I
`
`3:132? t°
`Convener
`
`p
`
`\ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ._ _ z)
`
`UA-1009.003
`
`

`
`U.S. Patent
`
`Feb. 29,2000
`
`Sheet 3 0f 10
`
`6,032,108
`
`A (Start Program at Power On)
`
`B
`
`.
`
`lnltialize GPS
`
`.
`
`.
`
`Ready Mode
`amc
`Initialize CPU
`a) ‘Set initial values ____> b) Get Ephemeris # a) Display "Ready"
`b)Display "Standby"
`C) start rocessin
`status
`Message
`?xes
`g
`
`C (see Figure 3c)
`
`D (see Figure 3d)
`
`Sleeg Mode
`a)Sl0w CPU Clock
`b)GPS chips in
`
`Standby
`c)Turn Display off
`
`elapsed?
`
`Y
`es
`
`Bft't‘g'm
`
`'
`
`Figure 3a
`
`UA-1009.004
`
`

`
`U.S. Patent
`
`Feb. 29, 2000
`
`Sheet 4 0f 10
`
`6,032,108
`
`Input GPS Fix
`Datums 1 and 2 from
`calling Function.
`
`Distance =
`
`ital-X2) 2 + (Y1~Y2)2 + (21 ~22?)
`
`/
`
`Return the calculated
`Distance value to
`calling function.
`
`Figure 3b
`
`UA-1009.005
`
`

`
`U.S. Patent
`
`Feb. 29,2000
`
`Sheet 5 0f 10
`
`6,032,108
`
`G(Process Loopback point)
`
`Start Chronograph
`and continously
`display elasped time.
`
`Start/Stop
`Button,’
`
`Yes
`
`E (see Figure 39)
`
`Pause
`Button?
`
`Display 'Paused' status and
`Freeze Chronograph and
`Distance calculations until
`"pause" button is pressed again.
`
`Input GPS
`ECEF fix data
`as "NBW' ?x .
`
`Is "New" fix from
`same constellation
`as the "Last" ?x?
`
`Pass data to
`Filter SA
`(see Fig 3f)
`
`Pass "Current" and
`"Last" GPS fixes to
`"Distance“ function.
`(See Fig. 3b)
`
`Total Distance =
`Total distance + "Distance"
`
`Average Pace =
`Total Distance / Elapsed Time
`
`input current
`velocity from
`GPS Doppler
`Velocity Vector.
`
`Format and display: Total
`Distance, Avg. Pace,
`Velcity datums.
`
`Check distance, pace,
`velocity, and time for
`Progammable Alerts.
`
`Pass "New" Fix
`data to Storage
`E_i_l_g_e_r. (see Fig. 3e)
`
`ll
`
`Store "New‘ ECEF and Doppler
`Velocity Vector datums as "Last"
`fixes (for next loop iteration)
`
`————>G (restart loop)
`
`Figure 3c
`
`UA-1009.006
`
`

`
`U.S. Patent
`
`Feb. 29,2000
`
`Sheet 6 0f 10
`
`6,032,108
`
`Mode Button held
`3 seconds?
`
`Shut off
`Primary Power
`
`Display
`"Alert Setup"
`
`User Input selects
`Alert Type: Distance,
`Pace, Velocity, or
`Interval.
`
`l
`
`User Input sets Alert
`ete Val
`.
`Param r
`USS
`
`1
`
`B (see figure 3a)
`
`Yes
`
`B (see ?gure 3a)
`
`usggtlggtggjriztseiyfotfm
`'
`Metric/Standard, Timezone,
`System Reset, Power
`
`Conservation.
`
`B (see ?gure 3a)
`
`Figure 3d
`
`UA-1009.007
`
`

`
`U.S. Patent
`
`Feb. 29, 2000
`
`Sheet 7 0f 10
`
`6,032,108
`
`Input "New"
`ECEF fix.
`
`Is this the
`first ?x?
`
`Set N =0.
`Store "New" fix as
`"F ix[N]", and "Last Saved".
`increment N,
`
`N°
`
`Is this the
`
`Store "New"
`fix as
`"Test F ix"
`
`"A“ = Distance of
`"Last Saved" and
`"Test"
`
`i
`
`"B" = Distance of
`"Test" and "New"
`
`l
`
`"C" = Distance of
`"Last Saved" and
`"New"
`
`is
`(A + B - 0) <=
`((A +B)(X%)
`
`Yes
`
`Store "Test Fix" as Fix[N].
`Store ‘Test Fix" es "Last Saved".
`Increment N.
`
`Y
`
`Store"New“ as "Test Fix"
`(discards old "Test Fix")
`
`Return to Run
`Mode (see
`Figure 3b)
`
`Figure 3e
`
`UA-1009.008
`
`

`
`U.S. Patent
`
`Feb. 29,2000
`
`Sheet 8 0f 10
`
`6,032,108
`
`Input both "New" and "Last"
`stored values of GPS Doppler
`Velocity Vector data, and the
`"Last" ECEFposition.
`
`1
`
`l,
`
`Calculate time interval between Velocity Vector reports
`Time Interval = (Time of "NeW‘) - (Time of "Last“)
`
`Calculate the "Average Velocity Vector" of the 2 Velocity
`Vectors. (can be statistical mean, or least squares)
`
`(if-3mm
`
`LJLJLJLJ
`
`‘Distance Vector" = (Time lnterval)(Average Velocity Vector)
`
`1
`
`1
`
`Dead Reckoned Fix = (Last ECEF) + ( Distance Vector)
`
`1
`
`Pass "Dead Reckoned Fix" and "Last" ECEF
`GPS fix to "Distance" function.
`(See Fig. 3b)
`
`Return "Distance" value to Run
`Mgdg function.
`(see Figure 30
`
`Figure 3f
`
`UA-1009.009
`
`

`
`U.S. Patent
`
`Feb. 29, 2000
`
`Sheet 9 0f 10
`
`6,032,108
`
`Stop Chronograph and
`Distance Functions
`
`Display Final
`elapsed Time,
`Distance and Pace
`
`Store "Test Fix" as Fix[N]
`(see Figure 3e for details)
`
`B (Main Program see Figure 3a)
`
`Figure 39
`
`UA-1009.010
`
`

`
`U.S. Patent
`
`Feb. 29,2000
`
`Sheet 10 0f 10
`
`6,032,108
`
`lnput both "New" and "Last"
`stored values of GPS Doppler
`Velocity Vector
`
`Calculate time interval between Velocity Vector reports:
`Time interval = (Time of "New“) - (Time of “Last")
`
`1
`
`Calculate the "Average Velocity Vector" of the 2 Velocity
`Vectors. (can be statistical mean, or least squares)
`
`1
`
`"Distance" = (Time lnterval)(Average Velocity Vector)
`
`Return the calculated
`"Distance" value to the calling
`function.
`
`Figure 4
`
`UA-1009.011
`
`

`
`6,032,108
`
`1
`SPORTS PERFORMANCE COMPUTER
`SYSTEM AND METHOD
`
`BACKGROUND OF THE INVENTION
`
`2
`and is updated hourly. Almanac data consists of general
`information regarding all satellites in the constellation and
`ionospheric data for the determination of RF propagation
`delays. Almanacs are approximate orbital data parameters
`for all satellites. The typical ten-parameter almanacs
`describe the satellite orbits over extended periods of time of
`up to several months and a set for all satellites is sent to each
`satellite over a period of 12.5 minutes minimally. Signal
`acquisition time on receiver start-up can be signi?cantly
`aided by the availability of current almanacs. The approxi
`mate orbital data is used to preset the receiver With the
`approximate position and carrier Doppler frequency, (i.e. the
`frequency shift carried by the rate of change in range to a
`moving satellite), of each satellite in the constellation.
`Ephemeris data consists of detailed orbital information for
`the speci?c observed satellite. It can take up to 15 minutes
`to initialiZe a GPS system if the ephemeris data is doWn. The
`ephemeris data When doWn means that no ephemeris data is
`in system memory and/or the ephemeris data is obsolete.
`With the exception of the P-coded GPS receivers used by
`the US. military, GPS receivers suffer from an error referred
`to as “Selective Availability.” This error is purposefully
`introduced by the US. military into the signals transmitted
`by the GPS satellites, in order to prevent unfriendly forces
`form using the full potential of the system. The nature of the
`error is such that it Will report a consistent deviation,
`typically about 100 meters, While the GPS receiver is
`processing signals from the same sub-set of satellites. For
`example, the error Will consistently be 100 meters south
`southeast. This type of error is signi?cantly detrimental to
`navigational systems that attempt to determine location With
`reference to a global mapping system, such as the latitude,
`longitude, and altitude global mapping system of World
`Geodetic Survey 1984 (WGS-84). Due to this error, non
`US. military GPS systems and commercial systems Which
`do not augment the GPS With “Differential” processing have
`not proven useful for applications in Which 100 meters is a
`signi?cant error, such as When attempting to record a run
`ner’s position versus time.
`As a result of selective availability error, a related error is
`introduced into GPS systems When there is a change in the
`sub-set of satellites used to obtain a ?x. This can occur When
`one or more satellites become obscured by terrain,
`vegetation, buildings, the user’s body, or if one or more
`satellites sets over the horiZon. This additional error mani
`fests itself as a jump in the indicated position of the receiver.
`In addition to the errors in determining position discussed
`above, typical handheld GPS receivers also suffer from
`limited memory storage capacity. Hand-held GPS receivers
`typically alloW for the storage of approximately 500 Way
`points. This memory is quickly used up if the system stores
`each successive ?x along an athlete’s path of travel.
`KnoWn GPS systems also have the shortcoming of being
`too large and heavy to be unobtrusively attached to the Wrist,
`Waist, or other convenient area of an athlete’s body during
`a Workout. The siZe of these units is partially the result of the
`relatively large space required for batteries, Which is neces
`sitated by the amount of poWer consumption.
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`1. Field of the Invention
`The present invention relates to a system and method for
`determining the distance, speed and pace traveled by a
`person. More particularly, the invention concerns a system
`that is attached to the person, that processes and ?lters
`signals received from satellites to obtain kinematic measure
`ments traveled by the person.
`2. Description of the Related Art
`For years runners have been attempting to precisely
`determine distance covered during their Workout, their pace
`or current speed during their Workouts. Although pedom
`eters have been Widely used for measuring distance, they
`have not proven to be sufficiently accurate. Also, pedometers
`are not able to directly indicate pace or speed. During races,
`rather than using pedometers, distance information is typi
`cally provided With distance markers placed along the
`course. While distance markers provide the runner With
`valuable distance information, they fail to directly indicate
`the runner’s pace or speed. Average speed has typically been
`determined by measuring the elapsed time When the runner
`reaches a particular distance marker, and then manually
`dividing the distance by the elapsed time to calculate the
`average speed. Even the limited usefulness of distance
`markers is not available to runners on informal running
`courses, Where distance markers are generally not available.
`Runners conducting interval Work are forced to run on a
`measured track. When speed changes are required, current
`runners must calculate it mentally using time and distance.
`In addition to runners, other athletes such as Walkers,
`bicyclists, skiers, hikers, in-line skaters, sWimmers, and
`triatheletes also frequently desire to determine the distance
`covered during their Workouts, and their speed or variations
`of pace during their Workouts. Additionally, distance and
`speed information is useful to health care professionals
`monitoring the exercise of their patients.
`Navigation systems that calculate distance and speed
`information are Widely knoWn. For example, navigation
`systems that determine the latitude and longitude of ships
`and aircraft also commonly calculate the distance traveled
`and speed.
`Global Positioning System (GPS) satellites have been
`Widely used for navigational purposes to determine the
`latitude, longitude, and altitude of ships, aircraft and motor
`vehicles. Additionally, hand-held GPS receivers have been
`employed for mapping the latitude, longitude, and altitude of
`geographic locations on the earth.
`GPS systems determine position by receiving signals
`from a sub-set of the 24 US. GPS satellites that are in
`operation. The signals transmitted by each satellite include
`a time code, Which is synchroniZed With the time codes
`transmitted by the other satellites. The GPS system calcu
`lates an earth-centered-earth-?xed (ECEF) ?x of a location
`Where the signals are received, based on the time differences
`betWeen the signals received from the satellites, and based
`upon the knoWn locations of the satellites. ECEF is a 3-axis
`coordinate system With the origin located at the center of the
`earth. The satellites are not in geosynchronous orbits. The
`locations of the satellites are knoWn because, prior to use the
`GPS system receives almanac and ephemeris data from the
`satellites. Almanac data is good for several Weeks and is
`updated Weekly. Ephemeris data is good for about 4 hours
`
`SUMMARY OF THE INVENTION
`
`Broadly, the present invention concerns a system, a signal
`bearing medium embodying a program of machine-readable
`instructions, and a method, using Global Positioning System
`(GPS) satellites to determine kinematic measurements cov
`ered by a runner such as distance, speed or pace. Unlike GPS
`navigation systems that determine position relative to navi
`
`65
`
`UA-1009.012
`
`

`
`6,032,108
`
`3
`gational references such as latitude and longitude, the
`present invention does not determine the position of the
`person relative to navigational references. Rather, the
`present invention measures the distance traveled by calcu
`lating the relative distance traveled by calculating the rela
`tive distance betWeen each successive pair of ECEF ?xes.
`The total distance traveled is the sum of the absolute values
`thereof. Also, the selective availability error in the signals
`received from the GPS satellites is effectively canceled out
`because the present invention determines the relative dis
`tance betWeen the points, not the absolute distance of the
`ECEF points from navigational references. The present
`invention also determines When there has been a change in
`the sub-set of satellites used to obtain a ?X, and corrects for
`the resulting error. By providing solutions to these problems,
`the invention affords its users With a number of distinct
`advantages.
`The present invention can be used as a system that
`includes a GPS receiver con?gured to attach to a person’s
`body for receiving signals from GPS satellites, Wherein a
`processor is communicatively coupled to the GPS receiver.
`The processor processes the signals received at a plurality of
`points from sub-sets of GPS satellites to determine the
`ECEF ?X in the X, y, and Z planes relative to the center of the
`earth of each point Where the GPS signals are received. The
`processor also detects When the signals received at a point
`are received from a different sub-set of satellites than the
`sub-set of satellites that the signals received at the preceding
`point Were received from. The processor corrects for an error
`in the ECEF ?X of each point at Which the signals are ?rst
`received from the different sub-set of satellites. Additionally,
`the processor calculates the relative distance of the segments
`betWeen the ECEF ?Xes of each pair of sequentially adjacent
`points Where the signals from the sub-sets of GPS satellites
`are received. The processor then adds together the distances
`of the segments to determine the distance of the path de?ned
`by the points. The processor also calculates the elapsed time
`betWeen selective points at Which GPS signals are received,
`and calculates the average speed of the person betWeen
`selective points.
`The system also includes a storage communicatively
`coupled to the processor for storing data structures repre
`senting the times that GPS signals are received at selective
`points relative to the times that GPS signals are received at
`other selective points. The storage also includes storage for
`data structures representing the ECEF ?Xes of selective
`points. Alternatively, the distance measurement can be deter
`mined using the carrier Doppler frequency from satellite
`signals to determine a Doppler velocity vector betWeen
`selective points.
`The present invention can also be made as an article of
`manufacture comprising a signal-bearing medium tangibly
`embodying a program of machine-readable instructions
`executable by a digital processing device for performing a
`method of determining kinematic measurements such as
`distance traveled, pace or speed of a person. The method
`includes processing data structures representing signals
`received at a plurality of points from sub-sets of GPS
`satellites to determine the ECEF ?X of each point in the X,
`y, and Z planes relative to the center of the earth. The method
`also includes determining When the data structures repre
`senting the signals received at a point are received from a
`different sub-set of satellites than the sub-set of satellites that
`the signals received at the preceding point Were received
`from. The method corrects for an error in the ECEF ?X of
`each point at Which the signals are ?rst received from the
`different sub-set of satellites. The method also includes
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`4
`calculating the relative distance of the segments betWeen the
`ECEF ?Xes of each pair of sequentially adjacent points, and
`then adding together the distances of the segments to deter
`mine the distance of the path de?ned by the points.
`The method also includes calculating the elapsed time
`betWeen selective points at Which GPS signals are received
`and calculating the average speed of the person betWeen
`selective points at Which GPS signals are received. The
`method also includes storing data structures representing the
`ECEF ?Xes of the points that are not intermediate points
`along a line, and storing data structures representing the
`relative times that the ECEF ?Xes of the points that are not
`intermediate points along a line are received.
`The present invention is a method for determining the
`distance traveled by a person. This method is generally the
`same method as the method of the program embodied on the
`signal-bearing medium, but also includes the act of attaching
`a GPS receiver to a person for receiving signals from GPS
`satellites, and receiving With the GPS receiver at a plurality
`of points signals from sub-sets of GPS satellites.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The nature, objects, and advantages of the invention Will
`become more apparent to those skilled in the art after
`considering the folloWing detailed description in connection
`With the accompanying draWings, in Which like reference
`numerals designate like parts throughout, Wherein:
`FIGS. 1a 1b & 1c are perspective vieWs of an sports
`performance computer (SPC) in accordance With the inven
`tion.
`FIG. 2 is a block diagram of the hardWare components
`and interconnections of a SPC in accordance With the
`invention.
`FIGS. 3a, 3b, 3c, 3d, 36, 3f and 33g are ?oWcharts
`illustrating the steps performed by the main program and
`subroutines used to operate the SPC.
`FIG. 4 is a ?oWchart illustrating an alternative subroutine
`for determining distance using satellite Doppler frequency
`signals to determine velocity vectors.
`
`DETAILED DESCRIPTION
`
`The present invention concerns a system, a signal bearing
`medium embodying a program of machine-readable
`instructions, and a method, using Global Positioning System
`(GPS) satellites to determine the current speed of an athlete,
`distance traveled from the start and the actual pace in
`minutes per mile With accuracy to a tenth-of-a-mile. The
`system of the present invention is referred to as the Sports
`Performance Computer (SPC). The SPC produces a real
`time display of the user’s actual performance. Unlike GPS
`navigation systems that determine position relative to navi
`gational references such as latitude and longitude, the
`present invention does not determine the absolute position of
`the person relative to navigational references. Rather, the
`present invention determines in meters the Earth-Centered
`Earth-FiXed (ECEF) ?X of the location of the person at a
`plurality of points in the X, y, and Z planes relative to the
`center of the earth, Which has X, y, and Z coordinates 0, 0, 0.
`The ECEF ?X could equivalently be determined using polar
`coordinates. Using the ECEF ?X eliminates errors associated
`With translating ECEF ?Xes into latitude and longitude
`positions, and errors related to determining the absolute
`position of the points relative to navigational references. The
`invention accurately determines distance speed and pace
`even if the position of the origin in the ECEF system is
`
`UA-1009.013
`
`

`
`6,032,108
`
`5
`incorrect, as long as the error is consistent, because it is the
`relative distance betWeen the points, rather than the absolute
`distance of the points to a reference, that is used to determine
`the distance, pace and speed.
`HardWare Components & Interconnections:
`The principal components of the SPC are a GPS receiver
`con?gured for attachment to the person for receiving signals
`from GPS satellites, a processor communicatively coupled
`to the GPS receiver, and a memory that is also referred to as
`storage. The hardWare for the SPC is shoWn in FIG. 2 and
`includes an antenna Which is external to the hardWare
`housing shoWn in the solid outer line. The display panel can
`be either made as an integral SPC system as shoWn in FIG.
`1a or be attached to other body parts such as a person’s Wrist
`as shoWn in FIG. lb or hat visor as shoWn in FIG. 1c.
`The processor Will typically comprise tWo separate inte
`grated circuits (IC’s): a GPS digital-signal-processor (DSP)
`integrated circuit (IC) and a microprocessor IC.
`Alternatively, the processor could be a single IC. The GPS
`receiver is typically a specialiZed front end multi-channel
`radio frequency receiver IC.
`Preferably the GPS receiver IC is paired With a compan
`ion specialiZed GPS DSP-IC. The GPS receiver IC outputs
`data used to determine ECEF ?xes to the GPS-DSP. IC chip
`sets that include a GPS receiver IC and a companion
`GPS-DSP IC that are suitable for use in the SPC are
`available from a number of manufacturers, including: a
`“Sierra” chipset Which is available from Trimble, Inc. at 645
`N. Mary Ave., Sunnyvale, Calif.; a “SiRFstarTM” chip set
`Which is available from SiRF Technology, Inc., 107 San
`Zeno Way, Sunnyvale, Calif.,; or a similar chip set available
`from Garmin Inc. at 1200 E. 151 St., Olathe, Kans.
`Preferably, the Trimble “Sierra” chip set is used, With the
`GPS-DSP chip sets being customized to include ?rmware
`implementing the method of the present invention and use
`custom Large-Scale-Integration (LSI) for a compact design.
`Preferably, a Trimble Original Equipment Manufacturer
`(OEM) circuit motherboard is used With the Trimble Sierra
`chip set, although alternatively a custom circuit board can be
`used.
`The microprocessor performs the ?nal GPS ?x
`calculations, and also handles the SPC control functions.
`The microprocessor can be a Motorola 68000 series
`microprocessor, eg a Motorola 68331 microprocessor.
`Typically, the microprocessor Will be attached to a GPS
`manufactured motherboard, although a custom designed
`circuit motherboard can alternatively be used. Additionally,
`other microprocessors or microcontrollers that satisfy SPC
`processor speci?cations, could be used.
`Alternatively, any of the IC’s could be replaced With
`custom LSI-IC’s, or With discrete components. As another
`alternative, it may be possible to implement the functions
`performed by the digital circuitry With discrete and/or inte
`grated analog circuitry. As another alternative, the GPS-DSP
`and/or the microprocessor could be replaced With a complete
`computer, if the computer could be made small and light
`enough for the uses of the present invention. To conserve
`poWer, it is desirable to use IC’s With the loWest possible
`operating voltages.
`The SPC also includes a crystal oscillator circuit that
`provides clock signals to the GPS-DSP and to the micro
`processor. Standard computer read-only-memory ROM is
`used to permanently store the SPC’s softWare. Standard
`random access memory RAM is used to temporarily store
`ephemeris data, ?x, time, distance, pace and speed data, and
`other operands.
`As can be seen in FIG. 2, a number of data busses
`interconnect the components of the SPC. The ROM is in data
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`communication With the GPS-DSP and the microprocessor.
`The RAM is in data communication With the GPS-DSP and
`the microprocessor. The GPS-DSP is in data communication
`With the GPS receiver IC, the microprocessor, the ROM and
`the RAM. The microprocessor is in data communication
`With the GPS-DSP, the RAM, the ROM, and the LCD panel.
`Address busses also connect the microprocessor and the
`GPS-DSP to the ROM and the RAM. The microprocessor
`also controls the GPS-DSP and the LCD panel through
`control lines. The GPS-DSP controls the GPS receiver
`through receiver control lines.
`The SPC also includes an antenna, Which receives the
`radio frequency (RF) signals from the satellites, and inputs
`those signals to the GPS receiver IC. Antenna design and
`placement is important for adequate reception. A dipole
`antenna is preferred. Alternatively, standard patch and heli
`cal antennas have been found to operate effectively, although
`they may experience signal blockage if not Worn high on the
`person’s body. As another alternative, contra-Wound torodial
`helical antennas have the potential to provide effective
`coverage Without incurring speci?c polariZation or place
`ment requirements. A conical antenna is another possible
`alternative.
`The SPC includes a Liquid Crystal Display (LCD) panel
`that displays to the user the information produced by the
`SPC. This information can be displayed continuously, or on
`demand When the user presses a button. Instead of or in
`addition to the LCD, optionally, the visual output from the
`SPC could be displayed in a heads-up display attached to
`eyeglasses or a head-piece visor as shoWn in FIG. 1c. Also,
`the LCD may be physically separated from the other com
`ponents and use a radio-link interface; in this Way the LCD
`could be Worn as a “Watch-like” device While the GPS
`receiver antenna and microprocessor functions are Worn
`elseWhere on the body as shoWn in FIG. 1b Which shoWs the
`a portion of the SPC being Worn as a shoulder harness for the
`receiver to have uninterrupted reception from the GPS
`satellites. The SPC must be attached to the user. For
`example, the SPC can be con?gured to be Wrist mounted as
`shoWn in FIG. 1a; belt clip mounted; shoulder/armband
`mounted; as a belly PAC device With a simple display
`readout. The SPC can also be in a head mounted system
`integral to a visor or hat With a heads up display on ?ip doWn
`glasses; and/or as discussed beloW, as an audible system
`using a earphone headset.
`The antenna unit 20 and GPS hardWare 30 shoWn in FIG.
`1b includes a radio frequency link Which transmits infor
`mation to a Watch display panel 10. Alternatively, the SPC
`hardWare could be attached to a belt and the RF link
`transmits display information to either a Wrist Worn display
`10 unit or a visor mounted display 40 unit. FIG. 1c shoWs a
`head unit Which has an LCD display panel 40 attached.
`This display information includes: the total distance that
`the user has covered since a starting point in tenths of miles
`or tenths of kilometers, the total time elapsed since a starting
`time, the average speed since the starting time, and the
`current speed. Preferably, the current speed is determined by
`dividing the distance traveled betWeen a speci?ed number of
`the most recent points Where the GPS signals are received,
`by the elapsed time betWeen those points. Preferably, about
`5 points are used to determine the current speed. The
`reciprocal of the speed can be calculated to indicate the pace
`in minutes per mile or minutes per kilometer. Alternatively,
`the current speed indicated can be the Doppler speed that can
`be calculated by the GPS-DSP based on the GPS signals
`received at the most recent point. To present the information
`in terms most familiar and useful to users of the SPC,
`
`UA-1009.014
`
`

`
`6,032,108
`
`7
`preferably the speed information is indicated in terms of a
`pace, for example as a six minute mile, rather than as a rate
`of speed such as ten miles per hour.
`Optionally, in addition to the LCD, the SPC could provide
`audio output of the information d

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket