US8696420B2 - System and method for counting swimming laps - Google Patents

System and method for counting swimming laps Download PDF

Info

Publication number
US8696420B2
US8696420B2 US12/837,920 US83792010A US8696420B2 US 8696420 B2 US8696420 B2 US 8696420B2 US 83792010 A US83792010 A US 83792010A US 8696420 B2 US8696420 B2 US 8696420B2
Authority
US
United States
Prior art keywords
lap
sensor
swimmer
accelerometer
watch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
US12/837,920
Other versions
US20120245714A1 (en
Inventor
Neal Mueller
Kyle Doerksen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US12/837,920 priority Critical patent/US8696420B2/en
Publication of US20120245714A1 publication Critical patent/US20120245714A1/en
Application granted granted Critical
Publication of US8696420B2 publication Critical patent/US8696420B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • A63B2071/0658Position or arrangement of display
    • A63B2071/0661Position or arrangement of display arranged on the user
    • A63B2071/0663Position or arrangement of display arranged on the user worn on the wrist, e.g. wrist bands
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • A63B2071/0658Position or arrangement of display
    • A63B2071/0661Position or arrangement of display arranged on the user
    • A63B2071/0666Position or arrangement of display arranged on the user worn on the head or face, e.g. combined with goggles or glasses
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/17Counting, e.g. counting periodical movements, revolutions or cycles, or including further data processing to determine distances or speed
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/40Acceleration
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/80Special sensors, transducers or devices therefor
    • A63B2220/89Field sensors, e.g. radar systems
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/50Wireless data transmission, e.g. by radio transmitters or telemetry
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2244/00Sports without balls
    • A63B2244/20Swimming
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0062Monitoring athletic performances, e.g. for determining the work of a user on an exercise apparatus, the completed jogging or cycling distance

Definitions

  • the present invention was not developed with the use of any Federal Funds, but was developed independently by the inventors.
  • the invention can be worn by the swimmer and comprises a sensor module with a digital compass and accelerometer, preferably worn under a swim cap or attached to goggles, and a human interaction device, preferably integrated into or worn as wrist watch, for displaying laps, and preferably time elapsed and/or lap time.
  • the sensor module and the human interaction device (hereafter referred to as “watch”) are in communication with each other, preferably via wireless communication.
  • a microprocessor with software is included in either the sensor module, watch or both.
  • the microprocessor/software interprets data from a digital compass and digital accelerometer within the sensor to determine when the swimmer has changed directions and thereby count the number of laps.
  • the watch can then display the number of laps.
  • the swimmer controls the start and end of counting as well as any other necessary or necessary controls through the watch, although it could also be done through the sensor module.
  • FIG. 1 shows a human interaction device 2 in the preferred embodiment of a watch.
  • FIG. 2 shows a sensor module 4 in the preferred embodiment worn attached to goggle straps behind the head.
  • FIG. 3 shows a block diagram of one embodiment of the invention showing both the sensor module 4 and the watch 2 .
  • FIG. 4 shows a graph raw data derived from the digital compass.
  • FIG. 5 shows the data of FIG. 4 corrected using additional data from an accelerometer.
  • FIG. 6 shows the data of FIG. 5 roll adjusted with absolute value.
  • FIG. 7 shows the data of FIG. 6 median filtered in final form for counting laps.
  • FIG. 8 shows an alternative to the algorithm of FIG. 7 detecting laps from the data in FIG. 6 using standard deviation techniques.
  • FIG. 9 shows a flow chart of the hardware/software method used in the present invention.
  • the purpose of the present invention is to count laps for swimmers.
  • the compass-based sensor module 4 counts laps for swimmers by tracking the swim direction. Each length the swimmer swims is identified by recognizing an approximately 180 degree change in direction of the swimmer. In one embodiment of the invention, the lap counter increments once for every two lengths.
  • the system has two components, a watch 2 , and a sensor module 4 .
  • the sensor module 4 preferably sits inside the cap or attached to the goggle strap 6 of the swimmer and transmits a radio signal to the watch 2 .
  • the sensor module 4 sends lap increments to the watch 2 .
  • the radio signal is approximately 2.4 GHz, but this frequency may be changed.
  • the watch 2 is comprised of ( FIG. 3 ):
  • the sensor module 4 is comprised of ( FIG. 3 ):
  • the core sensor components include an accelerometer (2 or 3 axis, MEMS), a gyroscope, a tilt-compensation algorithm, a signal processing algorithm, a 2.4 GHZ ISM band radio, and a battery (rechargeable or non-rechargeable).
  • Sensor location on swimmer A location on the goggle strap or under the swim-cap is preferable. An alternate location would be on the swimmer's ankle, back or waist. These locations are chosen because in no swimming stroke do these parts of the body change direction approximately 180 degrees relative to the direction of the swimmer's motion, which is our method for detecting laps.
  • a sensor mounted on a swimmer's wrist during the freestyle stroke would change direction radically during each stroke, and variations in different swimmer's strokes would make it difficult to determine a lap count accurately.
  • the method described herein include and may be applied to a wrist based sensor module, the only drawback being additional complexity in the data filtering methodology and the corresponding additional computational power required.
  • the advantage to a wrist based sensor module 4 is that the sensor module 4 and the human interaction device 2 can be integrated into a single device, preferably a watch.
  • FIG. 9 is a flow chart of the method for implementing the present invention:
  • Step 1 Raw data from the digital compass 40 and the accelerometer 42 is read 91 into the microcontroller 48 .
  • the raw compass data from the magnetometer 40 is erratic in its raw form ( FIG. 4 ). This noise is caused primarily by the tilt and roll/pitch of the swimmer in the water. As with any compass, this compass is accurate only when the compass is held level with respect to the ground, or it is with this invention, when it is compensated for tilt and roll/pitch.
  • the graphs plot the data that is collected and processed by the core components of the sensor (listed above).
  • the data in these graphs is real and was collected by the sensors as an actual swimmer swam in a multi-lane lap-swimmer pool.
  • the graphs are time-series line-plot graphs.
  • the x-axis is time.
  • the y-axis is a sensor readout that represents the cardinal direction of the swimmer.
  • the data from the sensor is processed live as the swimmer swims. Algorithmic computations adjust the data so it can be used to count laps accurately.
  • Step 2 Next the raw compass data is filtered using data from the accelerometer is to adjust for the tilt of the swimmer's head during the swim (i.e. lifting chin up and down).
  • the inventors have found that a useful way to accomplish this is by use of the gravity vector from multi-axis accelerometer 42 to compensate magnetometer vector (from the compass 40 ) for the fact that magnetometer sensor 40 is not oriented parallel to the ground.
  • the structure of the data is taking shape in FIG. 5 .
  • the wide bands of data represent the swimmer traveling in one direction and the narrow bands of data represent the swimmer traveling in the opposite direction.
  • Step 3 The next step is to adjust for the roll/pitch (i.e. side-to-side) of the swimmer's head during the swim 93 . Even with the tilt-compensation algorithm described in step 2 , values at extreme head turn angles should not be trusted. If the roll/pitch angle exceeds a specified value, the algorithm uses the last compass value that had an acceptable amount of roll/pitch. The inventors have found that it is desirable to identify periods of reliable heading data (i.e. opportunistic sampling) by ignoring times when the roll/pitch exceeds a threshold of 30-degrees (in the preferred embodiment), or the roll/pitch rate exceeds 100-degrees per second (in the preferred embodiment). The degree thresholds (30 degrees and 100 degrees per second) will vary by implementation.
  • Step 4 With FIG. 7 we have an algorithmically robust way to count laps with live data.
  • the data from FIG. 6 has been median filtered 95 using a sliding window median filter of approximately 3 seconds in length.
  • the vertical lines are algorithmically detected points in time when the swimmer is changing direction. Every vertical line indicates a length the swimmer has completed, and each set of two vertical lines indicates a lap of the pool from one end to the other, and back. Because the sliding window is short and the above algorithm is not computationally intensive it can be implemented in real-time on a low-cost microprocessor with limited RAM and processing performance.
  • FIG. 8 shows an alternative method to identify laps.
  • the algorithm includes interim error-checking steps to prevent certain activities, such as resting, from being misinterpreted by the algorithm 96 .
  • Rest check This prevents a rest from being misidentified as a lap. If the head is vertical, as opposed to facing up or down or to the side, the algorithm enters a rest state. If the user begins swimming again within a few seconds, the algorithm continues counting laps as normal. If not, the watch beeps and the user can press a button on the watch to continue swimming. This user confirmation step increases the accuracy and user-friendliness of the watch by not inadvertently stopping lap counting.
  • Partial lap This prevents severely partial laps from being misidentified as a lap. If the lap time is 16 seconds (much faster than the world record lap time) or less it will not be counted as a lap.
  • the inventors have used the following standard commercially available parts: Microcontroller 48 DEV-08614; Compass 40 SEN-07915 magnetometer; Triple Access Accelerometer 42 SEN-00252; and Radio/Antenna 46 NRF24AP2. These are provided by way of example and are not meant to limit the invention in any way. These parts are constantly improving and becoming smaller and lower power and all such improvements are meant to be within the scope of this invention. Similarly some or all of these parts may be implemented in integrated units and such improvements are within the scope of the invention.
  • the algorithm does not require the user to identify whether the pool is oriented North-South or East-West, etc. Instead it looks for periods of time when the heading data suggests the swimmer is swimming in a particular direction, and then periods of time when the heading is approximately 180 degrees opposite.
  • the processing of the algorithm described above occurs in the sensor.
  • the processing of the algorithm can be moved to the watch if that is determined to be preferable. In either case the source data comes from the sensor and is displayed in the watch.
  • the invention may be implemented in a single module as well.
  • the single module could be worn on the waist so easily accessed, or also integrated into a watch, given sufficient algorithms and processing power to filter out noise generated by arm movement.
  • additional sensors to detect biometric data such as heart and breathing rates are integrated with the system and displayed and stored using the human interface.
  • the system stores data for multiple swim sessions and is capable of downloading this information to a general purpose computer using industry standard interfaces such as blue tooth or wifi or USB port. Interfaces to other specialized computer devices such as telephones or MP3 players may also be desirable.
  • the sensors could be used to provide information other than lap count and speed.
  • the raw data may be analyzed to lap time, count strokes, calories burned, speed, and swimming efficiency. Data may be instantaneous or stored and averaged. The raw or processed sensor data could all be stored and offloaded to a computer for later detailed analysis

Abstract

The invention can be worn by the swimmer and comprises a sensor module, preferably with a digital compass and accelerometer, preferably worn under a swim cap or attached to goggles, and a human interaction device, preferably integrated into or worn as wrist watch, for displaying laps. The sensor module and the human interaction device are in communication with each other, preferably via wireless communication. A microprocessor with software is included in either the sensor module, watch or both. The microprocessor/software interprets data from a digital compass and digital accelerometer within the sensor to determine when the swimmer has changed directions and thereby count the number of laps. The watch can then display the number of laps.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
The present application claims the benefit of U.S. Provisional Application No. 61/226,356 filed on Jul. 17, 2009, which is incorporated herein by reference.
STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT
The present invention was not developed with the use of any Federal Funds, but was developed independently by the inventors.
BACKGROUND OF THE INVENTION
Swimmers that practice in pools generally have a need to keep track of the number of laps that they swim in a pool. It is also desirable to keep track of the time it takes to swim each lap as well as a series of laps.
For short swims it is relatively easy for the swimmer to keep track of the number of laps she has swum herself. However, on longer training swims, where a swimmer may swim tens or hundreds of laps, it is difficult for the swimmer to keep track of his count. When training with a coach, the coach may keep track of the laps and the time elapsed (or even individual lap times), however most swimmers do not have the luxury of a full time coach, and in any event this can be tedious for the coach (or friend/family member).
An automated system is needed to automatically count laps for a swimmer. Such systems have been proposed such as in U.S. Pat. No. 6,870,466 to Rust et al. Rust teaches a system wherein a sensor is placed in the water at one end of the pool. The swimmer wears a device that can communicate with the sensor when they are in close proximity. Thus each time the swimmer approaches the end of the pool, the worn device comes into proximity with the sensor and a lap is counted.
BRIEF DESCRIPTION OF THE INVENTION
The invention can be worn by the swimmer and comprises a sensor module with a digital compass and accelerometer, preferably worn under a swim cap or attached to goggles, and a human interaction device, preferably integrated into or worn as wrist watch, for displaying laps, and preferably time elapsed and/or lap time. The sensor module and the human interaction device (hereafter referred to as “watch”) are in communication with each other, preferably via wireless communication. A microprocessor with software is included in either the sensor module, watch or both. The microprocessor/software interprets data from a digital compass and digital accelerometer within the sensor to determine when the swimmer has changed directions and thereby count the number of laps. The watch can then display the number of laps. Preferably, the swimmer controls the start and end of counting as well as any other necessary or necessary controls through the watch, although it could also be done through the sensor module.
BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 shows a human interaction device 2 in the preferred embodiment of a watch.
FIG. 2 shows a sensor module 4 in the preferred embodiment worn attached to goggle straps behind the head.
FIG. 3 shows a block diagram of one embodiment of the invention showing both the sensor module 4 and the watch 2.
FIG. 4 shows a graph raw data derived from the digital compass.
FIG. 5 shows the data of FIG. 4 corrected using additional data from an accelerometer.
FIG. 6 shows the data of FIG. 5 roll adjusted with absolute value.
FIG. 7 shows the data of FIG. 6 median filtered in final form for counting laps.
FIG. 8 shows an alternative to the algorithm of FIG. 7 detecting laps from the data in FIG. 6 using standard deviation techniques.
FIG. 9 shows a flow chart of the hardware/software method used in the present invention.
DETAILED DESCRIPTION OF THE INVENTION
The purpose of the present invention is to count laps for swimmers. The compass-based sensor module 4 counts laps for swimmers by tracking the swim direction. Each length the swimmer swims is identified by recognizing an approximately 180 degree change in direction of the swimmer. In one embodiment of the invention, the lap counter increments once for every two lengths.
At the beginning of the swim the swimmer switches a button on the sensor module 4 to the “on” position and presses start on the watch 2. The watch 2 may delay for a short period of time to allow the swimmer to begin swimming, and then runs the method described herein to count laps. In an alternative embodiment the sensor module 4 and watch 2 are in “sleep” (low power) mode and automatically turn on when the swimmer begins swimming. While in the described preferred embodiment the human interaction device 2 is integrated into a watch, it is not necessary the “watch” look like a traditional watch at all. Any human to computer interface can be used, but it should be waterproof and wearable. Obviously, the existence of waterproof digital watches makes the watch a suitable interface. Similar interfaces already exist for GPS based running systems. However, the use of the term “watch” is not meant to limit the human interaction device 2 to any particular form.
In one embodiment of the invention, the system has two components, a watch 2, and a sensor module 4. The sensor module 4 preferably sits inside the cap or attached to the goggle strap 6 of the swimmer and transmits a radio signal to the watch 2. The sensor module 4 sends lap increments to the watch 2. In one preferred embodiment the radio signal is approximately 2.4 GHz, but this frequency may be changed.
In one preferred embodiment of the invention the watch 2 is comprised of (FIG. 3):
    • Waterproof housing (not shown)
    • Radio device 26
    • Battery (rechargeable or non-rechargeable) 24
    • Microcontroller (MCU) 28
    • Display 20
    • User Interface Controls 22
In one preferred embodiment of the invention the sensor module 4 is comprised of (FIG. 3):
    • Slim waterproof sensor housing (not shown)
    • On/off button (not shown)
    • Digital compass (2 or 3 axis magnetometer) 40
    • Accelerometer and/or gyros 42
    • Compass tilt-compensation algorithm (not shown)
    • Signal processing algorithm (not shown)
    • Operating software stack (not shown)
    • Microcontroller (MCU) 48
    • radio device 46
    • Battery (chargeable or non-chargeable) 44
In another embodiment of the invention, the core sensor components include an accelerometer (2 or 3 axis, MEMS), a gyroscope, a tilt-compensation algorithm, a signal processing algorithm, a 2.4 GHZ ISM band radio, and a battery (rechargeable or non-rechargeable).
Sensor location on swimmer: A location on the goggle strap or under the swim-cap is preferable. An alternate location would be on the swimmer's ankle, back or waist. These locations are chosen because in no swimming stroke do these parts of the body change direction approximately 180 degrees relative to the direction of the swimmer's motion, which is our method for detecting laps. By contrast, a sensor mounted on a swimmer's wrist during the freestyle stroke would change direction radically during each stroke, and variations in different swimmer's strokes would make it difficult to determine a lap count accurately. However, the method described herein include and may be applied to a wrist based sensor module, the only drawback being additional complexity in the data filtering methodology and the corresponding additional computational power required. The advantage to a wrist based sensor module 4 is that the sensor module 4 and the human interaction device 2 can be integrated into a single device, preferably a watch.
FIG. 9 is a flow chart of the method for implementing the present invention:
Step 1: Raw data from the digital compass 40 and the accelerometer 42 is read 91 into the microcontroller 48. The raw compass data from the magnetometer 40 is erratic in its raw form (FIG. 4). This noise is caused primarily by the tilt and roll/pitch of the swimmer in the water. As with any compass, this compass is accurate only when the compass is held level with respect to the ground, or it is with this invention, when it is compensated for tilt and roll/pitch.
A note on the graphs: the following five graphs plot the data that is collected and processed by the core components of the sensor (listed above). The data in these graphs is real and was collected by the sensors as an actual swimmer swam in a multi-lane lap-swimmer pool. The graphs are time-series line-plot graphs. The x-axis is time. The y-axis is a sensor readout that represents the cardinal direction of the swimmer. The data from the sensor is processed live as the swimmer swims. Algorithmic computations adjust the data so it can be used to count laps accurately.
Step 2: Next the raw compass data is filtered using data from the accelerometer is to adjust for the tilt of the swimmer's head during the swim (i.e. lifting chin up and down). The inventors have found that a useful way to accomplish this is by use of the gravity vector from multi-axis accelerometer 42 to compensate magnetometer vector (from the compass 40) for the fact that magnetometer sensor 40 is not oriented parallel to the ground. We can see the structure of the data is taking shape in FIG. 5. The wide bands of data represent the swimmer traveling in one direction and the narrow bands of data represent the swimmer traveling in the opposite direction.
Step 3: The next step is to adjust for the roll/pitch (i.e. side-to-side) of the swimmer's head during the swim 93. Even with the tilt-compensation algorithm described in step 2, values at extreme head turn angles should not be trusted. If the roll/pitch angle exceeds a specified value, the algorithm uses the last compass value that had an acceptable amount of roll/pitch. The inventors have found that it is desirable to identify periods of reliable heading data (i.e. opportunistic sampling) by ignoring times when the roll/pitch exceeds a threshold of 30-degrees (in the preferred embodiment), or the roll/pitch rate exceeds 100-degrees per second (in the preferred embodiment). The degree thresholds (30 degrees and 100 degrees per second) will vary by implementation. We also take the absolute value of abs(180-corrected Heading) 94 so that heading values that are close to each other are mathematically close to each other, which is not the case with the compass heading system (0 degrees and 359 degrees are physically similar but numerically different). The results of the roll/pitch adjustment and taking the absolute value are shown in FIG. 6.
Step 4: With FIG. 7 we have an algorithmically robust way to count laps with live data. The data from FIG. 6 has been median filtered 95 using a sliding window median filter of approximately 3 seconds in length. The vertical lines are algorithmically detected points in time when the swimmer is changing direction. Every vertical line indicates a length the swimmer has completed, and each set of two vertical lines indicates a lap of the pool from one end to the other, and back. Because the sliding window is short and the above algorithm is not computationally intensive it can be implemented in real-time on a low-cost microprocessor with limited RAM and processing performance.
FIG. 8 shows an alternative method to identify laps. Once the compass heading data has been tilt compensated and filtered, the standard deviation of a sliding window of the data is computed. If the swimmer is swimming, then the heading will be very consistent since the heading is theoretically exactly the same number with each measurement. However, if they are changing direction doing a flip turn, the standard deviation of the windowed heading data will be high because it will contain their initial heading, their new heading approximately 180 degrees opposite, and a range of other values during the turn itself.
Obviously once the time for each change of direction has been detected, as shown in FIG. 7 or 8, it becomes a trivial calculation to determine the time of each lap, the number of laps swum, average lap speed, etc. If the length of the pool is known, absolute speed can also easily be calculated.
The algorithm includes interim error-checking steps to prevent certain activities, such as resting, from being misinterpreted by the algorithm 96.
Rest check: This prevents a rest from being misidentified as a lap. If the head is vertical, as opposed to facing up or down or to the side, the algorithm enters a rest state. If the user begins swimming again within a few seconds, the algorithm continues counting laps as normal. If not, the watch beeps and the user can press a button on the watch to continue swimming. This user confirmation step increases the accuracy and user-friendliness of the watch by not inadvertently stopping lap counting.
Partial lap: This prevents severely partial laps from being misidentified as a lap. If the lap time is 16 seconds (much faster than the world record lap time) or less it will not be counted as a lap.
In one embodiment of the invention the inventors have used the following standard commercially available parts: Microcontroller 48 DEV-08614; Compass 40 SEN-07915 magnetometer; Triple Access Accelerometer 42 SEN-00252; and Radio/Antenna 46 NRF24AP2. These are provided by way of example and are not meant to limit the invention in any way. These parts are constantly improving and becoming smaller and lower power and all such improvements are meant to be within the scope of this invention. Similarly some or all of these parts may be implemented in integrated units and such improvements are within the scope of the invention.
In the preferred embodiment the algorithm does not require the user to identify whether the pool is oriented North-South or East-West, etc. Instead it looks for periods of time when the heading data suggests the swimmer is swimming in a particular direction, and then periods of time when the heading is approximately 180 degrees opposite.
In the preferred embodiment the processing of the algorithm described above occurs in the sensor. The processing of the algorithm, however, can be moved to the watch if that is determined to be preferable. In either case the source data comes from the sensor and is displayed in the watch.
The preceding hardware and software example is only meant to be illustrative and is not meant to be limiting. Indeed, many types of sensors may be used. For instance, for outdoor swimming a GPS receiver may be used in an alternative embodiment. Functions may be implemented in hardware, software or firmware. Many types of algorithms may be used to further clean up the raw data from the sensor. Likewise one or more microprocessors may be used in the sensor and/or watch.
While the inventors have found it convenient to implement the human interface and sensor and separate modules the invention may be implemented in a single module as well. The single module could be worn on the waist so easily accessed, or also integrated into a watch, given sufficient algorithms and processing power to filter out noise generated by arm movement. In a preferred embodiment additional sensors to detect biometric data such as heart and breathing rates are integrated with the system and displayed and stored using the human interface. In the preferred embodiment the system stores data for multiple swim sessions and is capable of downloading this information to a general purpose computer using industry standard interfaces such as blue tooth or wifi or USB port. Interfaces to other specialized computer devices such as telephones or MP3 players may also be desirable.
In another embodiment of the invention the sensors could be used to provide information other than lap count and speed. For instance, the raw data may be analyzed to lap time, count strokes, calories burned, speed, and swimming efficiency. Data may be instantaneous or stored and averaged. The raw or processed sensor data could all be stored and offloaded to a computer for later detailed analysis

Claims (6)

We claim:
1. A lap-counting device worn by a swimmer comprising:
a sensor comprising a compass having a magnetometer that generates a heading output and an accelerometer that generates a gravity vector, the sensor being wearable by a user;
a human interface device in communication with the sensor, the human interface device comprising a display and being wearable by the user; and
a controller integrated into the sensor or human interface device, the controller being in communication with both the sensor and human interface device, the controller generating a compensated heading output by using the gravity vector from the accelerometer to adjust the heading output of the compass, the controller calculates a lap count based on the compensated heading output, wherein the lap count is communicated to the display.
2. The lap-counting device according to claim 1 wherein the accelerometer is a multi-axis accelerometer or a multi-axis gyroscope.
3. The lap-counting device according to claim 1 wherein the controller uses the gravity vector from the accelerometer to adjust for the tilt of the compass during.
4. The lap-counting device according to claim 1 wherein the controller uses the gravity vector from the accelerometer to adjust for the roll/pitch of the compass during swimming.
5. The lap-counting device according to claim 1 wherein the controller filters using a sliding window median filter.
6. The lap-counting device according to claim 1 wherein the human interface device is integrated into a wrist watch.
US12/837,920 2009-07-17 2010-07-16 System and method for counting swimming laps Active US8696420B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/837,920 US8696420B2 (en) 2009-07-17 2010-07-16 System and method for counting swimming laps

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22635609P 2009-07-17 2009-07-17
US12/837,920 US8696420B2 (en) 2009-07-17 2010-07-16 System and method for counting swimming laps

Publications (2)

Publication Number Publication Date
US20120245714A1 US20120245714A1 (en) 2012-09-27
US8696420B2 true US8696420B2 (en) 2014-04-15

Family

ID=46878005

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/837,920 Active US8696420B2 (en) 2009-07-17 2010-07-16 System and method for counting swimming laps

Country Status (1)

Country Link
US (1) US8696420B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD725510S1 (en) * 2013-11-06 2015-03-31 Sony Mobile Communications Ab Measuring instrument
US10529250B2 (en) 2014-04-29 2020-01-07 Tritonwear Inc. Wireless metric calculating and feedback apparatus, system, and method
US11511177B2 (en) 2020-07-06 2022-11-29 Z Enterprises Pool lap counter
US11543781B1 (en) * 2019-09-25 2023-01-03 Anahi Barroche Time tracking system and method of use

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2948802B1 (en) * 2009-07-29 2014-12-05 Movea SYSTEM AND METHOD FOR COUNTING ELEMENTARY DISPLACEMENT OF A PERSON
US8730049B2 (en) * 2011-03-03 2014-05-20 Aquatic Safety Concepts Llc Water sensing electrode circuit
US9536449B2 (en) 2013-05-23 2017-01-03 Medibotics Llc Smart watch and food utensil for monitoring food consumption
US9042596B2 (en) 2012-06-14 2015-05-26 Medibotics Llc Willpower watch (TM)—a wearable food consumption monitor
US9254099B2 (en) 2013-05-23 2016-02-09 Medibotics Llc Smart watch and food-imaging member for monitoring food consumption
US10314492B2 (en) 2013-05-23 2019-06-11 Medibotics Llc Wearable spectroscopic sensor to measure food consumption based on interaction between light and the human body
US9442100B2 (en) 2013-12-18 2016-09-13 Medibotics Llc Caloric intake measuring system using spectroscopic and 3D imaging analysis
US10029149B2 (en) * 2012-08-08 2018-07-24 David Shau Swimming goggles
GB2509945A (en) * 2013-01-18 2014-07-23 David William Baddeley Swimming Performance Monitoring Device
US9668041B2 (en) 2013-05-22 2017-05-30 Zonaar Corporation Activity monitoring and directing system
US9529385B2 (en) 2013-05-23 2016-12-27 Medibotics Llc Smart watch and human-to-computer interface for monitoring food consumption
ITMI20132171A1 (en) * 2013-12-20 2015-06-21 Davide Macagnano DETECTIVE DETECTOR FOR DETECTION OF PARAMETERS LINKED TO A MOTOR ACTIVITY
TW201618835A (en) * 2014-11-25 2016-06-01 沅聖科技股份有限公司 Wearable device analyzing swimming and the analyzing method of the same
JP6745980B2 (en) * 2016-08-31 2020-08-26 アップル インコーポレイテッドApple Inc. System and method for swimming analysis
US11833392B2 (en) 2018-03-02 2023-12-05 Form Athletica Inc. Methods and systems for swimming performance analysis
CN108837476B (en) * 2018-06-08 2020-09-04 歌尔科技有限公司 Method and device for detecting swimming starting point and intelligent wearable equipment
CN108854032A (en) * 2018-06-08 2018-11-23 青岛真时科技有限公司 A kind of method, apparatus and intelligent wearable device of detection swimming switch-back point
WO2023230660A1 (en) * 2022-05-31 2023-12-07 Omnibus157 Pty Ltd A system and method for measuring performance

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136621A (en) * 1990-12-11 1992-08-04 Mitchell David E Timing and lap counting device for a swimmer
US20050186542A1 (en) * 2002-01-23 2005-08-25 Aquatech Fitness Corp. System for monitoring repetitive movement
US20080018532A1 (en) * 2002-11-01 2008-01-24 Sportzco Pty Ltd Monitoring sports and swimming
US20110153042A1 (en) * 2009-01-15 2011-06-23 AvidaSports, LLC Performance metrics

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136621A (en) * 1990-12-11 1992-08-04 Mitchell David E Timing and lap counting device for a swimmer
US20050186542A1 (en) * 2002-01-23 2005-08-25 Aquatech Fitness Corp. System for monitoring repetitive movement
US20080018532A1 (en) * 2002-11-01 2008-01-24 Sportzco Pty Ltd Monitoring sports and swimming
US20110153042A1 (en) * 2009-01-15 2011-06-23 AvidaSports, LLC Performance metrics

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD725510S1 (en) * 2013-11-06 2015-03-31 Sony Mobile Communications Ab Measuring instrument
US10529250B2 (en) 2014-04-29 2020-01-07 Tritonwear Inc. Wireless metric calculating and feedback apparatus, system, and method
US11341864B2 (en) 2014-04-29 2022-05-24 Tritonwear Inc. Wireless metric calculating and feedback apparatus, system, and method
US11543781B1 (en) * 2019-09-25 2023-01-03 Anahi Barroche Time tracking system and method of use
US11511177B2 (en) 2020-07-06 2022-11-29 Z Enterprises Pool lap counter

Also Published As

Publication number Publication date
US20120245714A1 (en) 2012-09-27

Similar Documents

Publication Publication Date Title
US8696420B2 (en) System and method for counting swimming laps
AU2020273327B2 (en) Systems and methods of swimming analysis
US11896368B2 (en) Systems and methods for determining swimming metrics
US10617912B2 (en) Systems and methods of swimming calorimetry
US20190125219A1 (en) Activity monitors
KR101358859B1 (en) The apparatus and method of motion reform for standard position with nine axis motion sensor moudule
US9217634B1 (en) Swim lap counting and timing system and methods for event detection from noisy source data
US20180204474A1 (en) Swim Lap Counting and Timing System and Methods for Event Detection from Noisy Source Data
US20080018532A1 (en) Monitoring sports and swimming
CN106510719A (en) User posture monitoring method and wearable equipment
US20120259577A1 (en) Fall Detection Methods and Devices
US20070293374A1 (en) Swimming lap counter
US20210068713A1 (en) Detecting swimming activities on a wearable device
WO2019050672A1 (en) Systems and methods of ski activity detection
US20160144234A1 (en) Wearable Device Analyzing Swimming and Analyzing Method of the Same
EP3292370A1 (en) Swim lap counting and timing system and methods for event detection from noisy source data
US10987053B2 (en) Method and system for measuring and displaying data linked to a person's physical activity
AU2006222730B2 (en) Monitoring Sports and Swimming
CN110916639B (en) Method, system, wearable device and computer-readable storage medium for acquiring exercise heart rate recovery rate
US20090063088A1 (en) Wristwatch type acceleration detection module
Kim et al. Gravity Removal and Vector Rotation Algorithm for Step counting using a 3-axis MEMS accelerometer
CN217187806U (en) Fencing motion data capture device
CZ32065U1 (en) A micro-motion unit
WO2016131759A1 (en) Personal device for tracking a level of fitness
JP2018068746A (en) Electronic apparatus, display method, display system, program, and recording medium

Legal Events

Date Code Title Description
STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

FEPP Fee payment procedure

Free format text: 7.5 YR SURCHARGE - LATE PMT W/IN 6 MO, SMALL ENTITY (ORIGINAL EVENT CODE: M2555); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2552); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

Year of fee payment: 8