CROSS-REFERENCE TO RELATED APPLICATIONSThis application is a continuation in part of the applicant's co-pending patent application Ser. No. 11/618,858 filed on Dec. 31, 2006 and entitled “Portable Exercise Scripting and Monitoring Device” which claimed benefit and priority under 35 U.S.C. § 119(e) from applicant's then co-pending U.S. provisional patent application Ser. No. 60/811,637 filed Jun. 6, 2006; and applicant's co-pending U.S. provisional patent application Ser. No. 60/851,502 filed Oct. 14, 2006 and 60/872,817 filed Dec. 4, 2006.
This application is also related to applicant's co-pending U.S. non-provisional patent application Ser. No. 11/298,434 entitled “Device, System and Method for Outdoor Computer Gaming,” filed on Dec. 9, 2005 which took benefit and priority from applicant's then co-pending U.S. provisional patent application Ser. No. 60/648,157 filed on Jan. 28, 2005.
This application is also related to applicants' co-pending U.S. patent application Ser. No. 11/461,375 filed Jul. 31, 2006 entitled “Intelligent Pace Setting Portable Media Player” and U.S.provisional patent application 60/817,553 filed on Jun. 28, 2006. All of the aforementioned patent applications are hereby incorporated by reference in their entirety as if fully set forth herein.
RELEVANT INVENTIVE FIELDThe various exemplary embodiments disclosed herein relate generally to a portable computing device, such as a personal digital assistant, cellular telephone or portable media player and more specifically to a portable computing that is interfaced with a sensor and configured to monitor and orchestrate repetitive exercise.
BACKGROUNDIt has become a very common activity for a wide range of individuals to go to a gym and exercise using a variety of exercise equipment, including free weights and universal gym machines. Because people often use a wide variety of exercise machines, it is often difficult for a user to keep track of how many repetitions the user has performed during a current or previous exercise activity set. Furthermore, users often have a planned exercise regimen that they perform when going to the gym. For most users, the planned exercise regimen is written on paper or simply remembered. Either way, it is often an effort to keep track of their progress through a planned exercise regimen during their time in a gym. For users who use a written exercise regimen, they often write down performance statistics during or after completing their exercise.
This logging effort is time consuming and often not convenient when focused on doing exercise activities. In addition, the ability of a user to document performance is limited. The user generally is limited to documenting the number of repetitions completed of various exercise activities, but does not have a means of clearly evaluating or documenting the level of performance achieved in repetitive exercise motions. What is therefore needed is an automated system for moderating exercise across a wide range of equipment in a gym setting, assessing performance, and documenting completion.
SUMMARYThe various exemplary embodiments disclosed herein address the needs in the relevant art. The user typically counts each repetition mentally to his or herself as he or she proceeds through the exercise activity set, thereby attempting to keep track of his or her progress through the set. At the completion of the exercise activity set, the user may rest before performing the next exercise activity set, either with the same weights or with different weights, or goes on to a different exercise in the preplanned exercise regimen. Thus, by counting completed reps and keeping track of completed sets, a user progresses through a preplanned exercise regimen.
The full exercise regimen may include a wide variety of repetitive exercises, each exercise comprising a number of exercise activity sets for each muscle group. Thus, a user must keep track of his or her progress through each exercise activity set, by counting repetitions, as well as keep track of his or her progress through the overall exercise regimen. Additionally, a user may track performance metrics with respect to each exercise activity set to confirm progress toward a particular goal. Generally, performance tracking is performed mentally or manually using a paper log.
In an exemplary embodiment, an automated exercise regimen apparatus is generally encompassed as a portable computing device connected by wireless link to a wireless sensor unit, the wireless sensor unit comprising; a sensor operatively coupled to a processor, the sensor producing signals indicative of a dynamic event involving a repetitive exercise activity, the processor being programmed to process the signals produced by the sensor; and a wireless transceiver operatively coupled to the processor for transmitting the sensor signals to the separate portable computing device running rep-counting routines and an automated exercise regimen application, the separate portable computing device may be configured to monitor, count, store, orchestrate and report the number of physical repetitions performed by a user when engaged in a repetitive exercise activity set as well as to monitor progress through a pre-planned exercise regimen and prompt the user when a next exercise activity is required of the regimen.
The portable computing device for orchestrating an exercise regimen comprises a processor, a display coupled to the processor for visually outputting exercise information to a user, a user interface coupled to the processor for receiving the user's selection of one of a plurality of predefined stationary exercise regimens to be performed, a motion sensor coupled to the processor for receiving time dependent motion data from a sensor in communication with a dynamic element of an exercise apparatus, a computer readable storage medium comprising a datastore coupled to the processor having stored programmatic instructions. The programmatic instructions which when executed by the processor, causes the processor to output a prescribed exercise instruction corresponding to at least a portion of the selected exercise regimen, receive the time dependent motion signals from the sensor, determine a repetition event from the received motion data, determine a cumulative repetition count from the repetition event and record the repetition count in the datastore.
BRIEF DESCRIPTION OF DRAWINGSThe features and advantages of the various exemplary embodiments will become apparent from the following detailed description when considered in conjunction with the accompanying drawings. Where possible, the same reference numerals and characters are used to denote like features, elements, components or portions of an exemplary embodiment.
FIG.1—depicts a generalized block diagram of a portable computing device.
FIG.1A—depicts a first exemplary embodiment of an intelligent wireless sensor unit.
FIG.2—depicts an alternate exemplary embodiment of the wireless sensor unit in a housing which includes a magnetic component for affixing to a repetitively movable piece of exercise equipment.
FIG.3A—depicts a time varying profile of accelerometer data collected from a sensor unit affixed to a dumbbell during a curl exercise
FIG.3B—depicts a time varying profile of accelerometer data collected from a sensor unit affixed to a weight during a bench press exercise
FIG.4—depicts an exemplary display upon the screen of a portable computing device, the example display showing a current exercise activity set to be performed by a user as required of a stored exercise regimen, as well as current count and timing information.
FIG.5—depicts an exemplary display of the portable computing device, the display showing a graph of an exercise activity set that has just been performed by a user, the graph depicting reps vs. time, the profile representing a performance metric
FIG.6—depicts an exemplary display of the portable computing device, the display showing a graph of an exercise activity set that has just been performed by a user, the graph depicting reps vs. time, the profile representing a performance metric.
FIGS. 7A,7B—depict another alternate exemplary display of exercise performance information in which two sets of an exercise activity set are presented side-by-side, each of the exercise activity sets graphed as reps vs. time and each being provided with select exercise performance statistics.
FIG.8—depicts another exemplary display of exercise performance information, the alternate example display depicting exercise activity set graphed as a power curve, the power curve indicating the relative power output for each rep of an exercise activity set.
FIG.9A—depicts a user engaged in a repetitive exercise activity set using a free weight bench press.
FIG.9B—depicts a user beginning a repetitive exercise activity set using a universal equipment style bench press.
FIG.9C—depicts a user completing a repetitive exercise activity set using the universal equipment style bench press.
FIG.9D—depicts a user engaged in a repetitive exercise activity set involving inclined sit ups.
FIG.10—depicts a process flow chart for the various exemplary embodiments disclosed herein.
FIG.11—depicts an exemplary exercise regimen data structure.
DETAILED DESCRIPTIONA large variety of exercise activities involve a user performing stationary repetitive motions, such as weight lifting or calisthenics, in which a user performs a sequence of repetitive motions of the same or similar form to target a specific muscle groups. Such stationary exercise activities are generally differentiated by exercise activity sets and exercise types, for example, weight-lifting exercises such as bench presses, leg lifts, arm curls, and shoulder presses. The term “stationary,” as used herein defines an exercise activity set in which the user maintains a generally common physical location as opposed to a running exercise in which the user's physical location varies over time. Such exercise activities may also include callisthenic exercise types, such as push-ups, sit-ups, and chin-ups which are designed to develop muscular tone and promote physical fitness for the targeted muscle group. Each completed repetitive motion exercise activity is commonly referred to as a repetition or simply a “rep.” A single rep generally involves the raising and lowering of weights within certain spatial limits.
Similarly, a single rep of a push-up exercise activity generally involves raising and lowering the user's own body within certain spatial limits. Users generally perform a target number of repetitions of a particular exercise activity set while mentally counting each repetition. The target number of repetitions of an exercise activity is commonly referred to as a “set.” A single set of a repetitive weight lifting exercise may involve a user performing the lifting and lowering of a target weight in a repetitive manner without pausing or resting between reps for a predetermined number of times or until the user senses muscle exhaustion.
Users may also tailor their exercise regimen to achieve specific goals. For example, some users have a goal of building muscle mass, in which case a low number of repetitions per set are preformed using weights near the users' maximum capacity.
Alternately, some users may be interested in toning muscles or losing weight, in which case they generally perform a higher number of repetitions per set using lighter weights. Therefore, a preplanned exercise regimen may include a variety of exercises activities, each exercise activity having a predefined number of sets (i.e., exercise activity sets) and each set having a predefined number of repetitions at a particular weight or equipment setting to achieve each user's personal goals. To effectively track progress toward a user's goal, the user typically records each completed exercise activity set using a paper log, relying on the user to accurately record the number of sets and repetitions performed and the weights and/or exercise equipment settings used. However, the time to perform each exercise activity set is largely overlooked and typically goes unrecorded. In addition, even if a user employed a portable computing device to store the basic repetition count data for each of his or her completed sets, for example in a spreadsheet, the process using current technology would be require manual data entry and would take as much time, if not more, than writing the data in a paper log.
The various exemplary embodiments disclosed herein address these limitations by providing the user with an automated exercise regimen apparatus that orchestrates a user's progress through a predefined exercise regimen by prompting the user as to which exercise activity set is currently required by a particular exercise regimen and by automatically counting and recording the number of time dependent repetitive motions (i.e., “repetitive events”) performed by the user, thereby determining his or her progress through and completion of a current exercise activity set in the exercise regimen. In this way, a portable computing device may be programmed to automatically monitor, count, store, orchestrate and report the exercise repetitions performed by a user. Where necessary, programs, algorithms and routines may be programmed in a high level language object oriented language, for example, Java™ C++, C#, C, CORBA, PERL, AWK, Visual Basic™ or low level assembly language.
Hardware OverviewReferring toFIG. 1, a generalized block diagram of aportable computing device100C is depicted. Theportable computing device100C may take a variety of forms, including a personal digital assistant (PDA), a smart cellular telephone, or a portable media player. In an exemplary embodiment, theportable computing device100C may be configured to perform the automated exercise regimen orchestration while also playing music files to the user.
Theportable computing device100C includes acommunications infrastructure90 used to transfer data, memory addresses where data files are to be found and control signals among the various components and subsystems associated with theportable computing device100C. Aprocessor5 is provided to interpret and execute logical instructions stored in thememory10. The processor may of a general purpose complex instruction set (CISC) type or a reduced instruction set (RISC) type. Thememory10 is the primary general purpose storage area for instructions and data to be processed by theprocessor5. The term “memory” is used in its broadest sense and includes RAM, EEPROM and ROM. Atiming circuit15 is provided to coordinate activities within theportable computing device100C in near real time and to generate timing values such as repetition event interval times, exercise interval times, and rest interval times. Theprocessor5,memory10 andtiming circuit15 are directly operatively coupled to thecommunications infrastructure90.
Adisplay interface20 is provided to drive adisplay25 associated with theportable computing device100C. Thedisplay interface20 is operatively coupled to thecommunications infrastructure90 and provides signals to thedisplay25 for visually outputting both graphical displays and alphanumeric characters. Thedisplay interface20 may include a dedicated graphics processor and memory to support the displaying of graphics intensive media. Thedisplay25 may be of any type (e.g., cathode ray tube, gas plasma) but in most circumstances will usually be a solid state device such as liquid crystal display (LCD) and/or a combination of light emitting diodes (LED.)
In an exemplary embodiment, thedisplay25 may be configured as a head-mounteddisplay25. In this exemplary embodiment, thedisplay25 provides exercise regimen information, exercise repetition counting information, performance information and/or graphing information upon a semi-transparent screen such that a user may view the real physical world through the screen while simultaneously viewing rep-counting information overlaid upon and/or around the user's view of the real physical world. For example, the current rep-count may be displayed as a small overlaid graphic upon the user's direct view of the real physical world.
Asecondary memory subsystem30 is provided which maintains stored exercise data, exercise regimen programmatic instructions, device setting and other data. In some exemplary embodiments, the exercise regimen is a data file that lists a sequence of required exercise activities, each of the exercise activities including an exercise type, an exercise qualifier, and a required quantity of repetitions of the exercise.
Optional retrievable storage units such as ahard disc drive35, logicalmedia storage drive40 and an optionalremovable storage unit45. One skilled in the art will appreciate that thehard drive35 may be replaced with flash memory. Theremovable storage unit45 may be used to update programs and data with new release versions. Thesecondary memory30 may also be used for the storage of media files, such as musical media files, for embodiments that perform both exercise regimen orchestration and musical media play functionality. Thesecondary memory30 is also used to store one or more exercise regimens which are selected by the user. Thememory10 andsecondary memory30 are all forms of computer readable storage media for storing programs and data used in the various exemplary embodiments described herein. The term “datastore,” may be used generically to refer to the computer readable storage media or information stored therein.
Aninternal power source50 such as a battery and/or photocell supplies electrical energy to operate the electrical circuits included in theportable computing device100C. Acommunications interface55 is provided which allows for standardized electrical connection of peripheral devices to thecommunications infrastructure90 including, serial, parallel, USB, and Firewire™ connectivity. For example, auser interface60 and atransceiver65 are operatively coupled to thecommunications infrastructure90 via thecommunications interface55. For purposes of this specification, theterm user interface60 includes the hardware and operating software by which a user interacts with theportable computing device100C and the means by which theportable computing device100C conveys information to the user and may include certain interactions with thedisplay interface20 anddisplay25.
Thetransceiver65 facilitates the remote exchange of data and synchronizing of signals between theportable computing device100C and aremote sensor unit100P (FIG. 1A.) Thetransceiver65 may also be used to communicate with other computing devices, for example a remote server or desktop computer from which exercise regimen information may be downloaded and/or exercise performance data may be stored.
In an exemplary embodiment, thetransceiver65 is envisioned to be of a radio frequency type normally associated with computer networks for example, wireless computer networks based on BlueTooth™ or the various IEEE standards 802.11x, where x denotes the various present and evolving wireless computing standards, for example WiMax 802.16 and WRANG 802.22. Alternately, digital cellular communications formats compatible with for example GSM, 3G, CDMA, TDMA and evolving cellular communications standards. Both peer-to-peer (PPP) and client-server models are envisioned for implementation of an exemplary embodiment. In a third alternative embodiment, thetransceiver65 may include hybrids of computer communications standards. Anantenna85 is provided to transmit and receive radio frequency radiation. Theantenna85 may be configured as an internal wire loop, a fixed length external antenna (e.g., “rubber ducky”) or telescoping whip antenna.
In another exemplary embodiment, thetransceiver65 is configured as an RFID transceiver (scanner) for accessing an RFID chip encompassed in thesensor unit100P and/or affixed to or associated with a piece of exercise equipment. In this embodiment, thetransceiver65 transmits phase, pulse or frequency modulated signals, which if in sufficient proximity to thetransceiver65, energizes theRFID chip100P causing the chip to transpond with an identification code colloquially known as a “barking bar code.” The identification code is then received by thetransceiver65. In some exemplary embodiments, the RFID data that is received by theportable computing device100C when in certain proximity of a piece of exercise equipment identifies the type of piece of exercise equipment that the user is currently within proximity of and may be used to automatically select an appropriate exercise activity set or exercise regimen from thesecondary memory30.
In some exemplary embodiments, theRFID transceiver65 may also be configured to program an RFID chip, causing data to be transmitted to the chip and stored within it. Such embodiments may be used, for example, to enable aportable computing device100C to selectively program an RFID enabledwireless sensor unit100P with for example, the number of times the user has used the particular exercise equipment in which the RFID chip is associated. The variations in transponded RF signal strengths from the RFID chip could, for example, be used to determine when a motion event is occurring or has occurred.
Theuser interface60 employed on theportable computing device100C may include a pointing device (not shown) such as a mouse, thumbwheel or track ball, an optional touch screen (not shown); one or more push-button switches60A,60B one or more sliding or circular potentiometer controls (not shown), one or more voice recognition units (not shown) and one or more other type switches (not shown.) Theuser interface60 provides interrupt signals to theprocessor5 that may be used to interpret user interactions with theportable computing device100C. Various embodiments of an exemplary embodiment may incorporate portions of theuser interface60 with thedisplay interface20 anddisplay25. One skilled in the art will appreciate that the user interface devices which are not shown are well known and understood.
Anoptional sensor interface70 may be provided to allow the incorporation of amotion sensor75, for example, an accelerometer or an RFID scanner (not shown.) An internally installedmotion sensor75 may be used in conjunction with or in lieu of anexternal motion sensor75P (FIG. 1A). The sensor interface may include an analog to digital converter circuit which periodically samples analog signals generated by analog types ofmotion sensors75. Conversion to a digital motion event may then performed by theportable computing device100C orwireless sensor100P.
Anaudio subsystem80 is provided and operatively coupled to thecommunications infrastructure90. Theaudio subsystem80 provides for the output of sounds corresponding to rep-counting feedback exercise regimen feedback, voice output reciting the current repetition count, other repetition counting statistics, exercise activity set or exercise type prompts, rest prompts, repetition speed prompts, repetition performance assessments, sound effects, rep-counting related audible phrases, exercise activity set prompting phrases, encouragement phrases, and/or exercise completion phrases. Output of the sound effects could be programmed to correspond with a user's physical motion imparted with a piece of exercise equipment. For example, as a weight is lifted and lowered, a sound effect may be played that emulates the sound of pumping, sawing, hammering, and/or otherwise emulating a physical activity that conveys strength and power. In some exemplary embodiments, the pitch and/or volume of the sound effect may be varied with the detected physical motion of the exercise equipment, for example with the magnitude of the detected motion event of the exercise equipment.
In an exemplary embodiment, the audio output includes a voice emulation or voice synthesizer circuit which is configured to announce the next exercise activity set and/or type to be performed by the user, for example “Next up, Bench Press, 50 pounds, 12 reps.” In another exemplary embodiment, the audio output includes a verbal indication if a previous repetition was faster or slower than a predefined repetition time or speed threshold, for example “slow down” or “speed up” or “too fast” or “too slow.”
The audio subsystem includes aspeaker output95 and/or a headphone jack. Connection of a set ofheadphones95 includes both traditional cable and wireless arrangements such as BlueTooth™ which are known in the relevant art.
Theportable computing device100C is envisioned to be encompassed within a highlyportable housing200C such as a palm-sized case or smaller form factor which may be held or worn by the user analogous to the various designs of, for example, the compact and highly portable Apple iPod™ In addition, theportable computing device100C need not be a specialized piece of hardware, but may employ commercially available handheld devices such as a PDA or a suitably equipped cellular telephone. Theportable computing device100C is also envisioned to be built into a wrist-watch and worn like a watch on the user's wrist during exercise or incorporated in a set headphones and/or suitably equipped eye glasses.
Theportable computing device100C includes an operating system or operating environment, the hardware and software drivers necessary to fully utilize the devices operatively coupled to thecommunications infrastructure90, and programmatic instructions operatively loaded into thememory10 to perform rep-counting and exercise regimen orchestration in conjunction with the user's interactions withuser interface60 and data received from thesensor unit100P via thetransceiver65. Additional programmatic instructions may be provided to perform data logging where the data collected from thesensor unit100P may be stored in thesecondary memory30 for future analysis, replay, or downloading to other computers. This collected data could also be used for training purposes. The portable computing device is programmed to at least execute the process shown inFIG. 10.
FIG. 1A provides a generalized block diagram of an embodiment of awireless sensor unit100P encompassed within a wirelesssensor unit casing200P. One skilled in the art will appreciate that many of the components, circuits, interfaces and devices are equivalent to those described for theportable computing device100C. In certain instances, abbreviated descriptions are provided to avoid duplicity and to simplify the understanding of this exemplary embodiment. For example, thewireless sensor unit100P may be configured from an application specific integrated circuit (ASIC) or computer on a chip arrangements.
In this exemplary embodiment, thewireless sensor unit100P includes acommunications infrastructure90P, aprocessor5P, amemory10P and atiming circuit15P. Theprocessor5P,memory10P,timing circuit15P andcommunications infrastructure90P may be integrated into a common chip for space and electrical power savings as well as improved ruggedness. Theprocessor5P is programmed with executable instructions to process sensor signals75P received from asensor interface70P and transmit the processed sensor signals via aninternal transceiver65P to aportable computing device100C. Anoptional display interface20P may be provided to drive anoptional display25P, although in general this is not needed since a display is generally provided with theportable computing device100C.
Where applicable, theprocessor5P may further be programmed to perform rep-counting in conjunction with input signals received from auser interface60P via simplepush button switches60A′,60B′ and output information to a user on thedisplay25P. An optionalsecondary memory30P may be provided in exemplary embodiments where data storage and greater programming flexibility are desirable. For example, where thewireless sensor unit100P is performing time integration functions and/or processing multiple sensor inputs, asecondary memory30P may be necessary to avoid overflowing theprimary memory10P. In some such exemplary embodiments, exercise data may be buffered locally inwireless unit100P before being sent toportable computer100C.
Depending on the embodiment, aninternal power source45P such as a battery, and/or photocell supplies electrical energy to operate the electrical circuits included in this embodiment of thewireless sensor unit100P. In some exemplary embodiments, an inertial power generation system may be employed within thewireless sensor unit100P to generate power in response to the physical motions induced upon it by a user.
Acommunications interface55P is provided which optionally provides for direct electrical connection of thewireless sensor unit100P to theportable computing device100C or another computer system. Asimplified user interface60P and atransceiver65P operatively coupled to thecommunications infrastructure90P via thecommunications interface55P.
Thetransceiver65P facilitates the exchange of data between thewireless sensor unit100P and one or moreportable computing devices100C. Thetransceiver65P is of a type compatible with thetransceiver65 provided for theportable computing device100C. Aninternal antenna85P is provided to transmit and receive radio frequency radiation in conjunction with the one or moreportable computing devices100C.
In another exemplary embodiment, thetransceiver65P is actually a low power device with little or no data receiving capability. In an exemplary embodiment, thewireless sensor unit100P acts simply as a remote transponder. For example, RFID technology may be used to enable such a low power embodiment as is known to those skilled in the art.
Asensor interface70P is provided which allows one ormore sensors75P to be operatively coupled to thecommunications infrastructure90P. Thesensor interface70P may monitor interactions with theuser interface60P. Another function of thesensor interface70P is to determine the various dynamic states in which thewireless sensor unit100P may be undergoing. For example, a static state (no movement) and an active state (movement) may be detected by themotion sensor75P. When in the static state, automated power conservation functions may be enacted to savebattery power45P.
In a further example, thesensor interface70P may be used to monitor a user's interaction with the one or more push-button switches60A′,60B′. Alternately, the push-button switches60A′,60B′ may be augmented or replaced with capacitive sensing circuits (not shown) and/or other touch sensitive type circuitry (not shown) known in the relevant art. A separate interrupt circuit (not shown) may be incorporated into the hardware supporting thecommunications infrastructure90P,sensor interface70P,user interface60P, and/or anoptional audio subsystem80P andaudio output device95P such as a speaker or buzzer.
Themotion sensor75P operatively coupled to thesensor interface70P may include single andmulti-axis accelerometers75P, aproximity antenna85P, an inclinometer, or a momentary switch. An integrating circuit (not shown) may be operatively coupled to theaccelerometer75P andtiming circuit15P to provide velocity and displacement information. Accelerometers are preferred in implementations where ruggedness and costs are of primary consideration.Accelerometers75P are generally low in cost and may be configured or selected to determine instantaneous and/or average accelerations acting upon a wirelesssensor unit casing200P in which the electronics are incorporated into.
Themotion sensor75P produces signals indicative of a dynamic motion event involving thecasing200P. In this embodiment, theprocessor5P is programmed to processes the signals produced by thesensor75P and a wirelessly transmits the processed motion signals to theportable computing device100C. Theportable computing device100C is programmed to monitor sensor readings, determine the completion of an exercise repetition based upon the time varying profile of the sensor readings, and maintain a count of exercise repetitions based upon the determination.
Anoptional audio subsystem80P andinternal speaker95P may be provided to supplement or replace the optional audio subsystem described for theportable computing devices100C. Theaudio subsystem80P may further be programmed to emit periodic tones for locating a lost wirelesssensor unit casing200P. In another exemplary embodiment, thewireless sensor unit100P is an RFID chip encompassed within the wirelesssensor unit casing200P, the RFID chip may be configured to relay sensor readings to anRFID scanner70.
In this exemplary embodiment, theprocessor5P,memory10P, transceiver (i.e., transponder)65P andcommunications infrastructure90P are integrated into a single chip in which awire loop antenna85P is connected. In an exemplary embodiment, theRFID chip100P within the wirelesssensor unit casing200P is passive, drawing all power from an RF signal emitted by theportable computing device100C. In other exemplary embodiments, the RFID chip is active, drawing power from a battery orother power source45P on board thewireless sensor unit100P. An advantage of an active RFID chip is that it can be generally be detected from a longer range by aportable computing device100C than a passive RFID chip.
Thewireless sensor unit100P may be encompassed in various form factors, although a generally small and unobtrusive object is preferable to allow it to be affixed to and/or incorporated within a variety of pieces of exercise equipment that are moved by users in a repetitive manner. Thewireless sensor100P may be configured to be magnetically affixed to a moving portion of a piece of exercise equipment or clipped and/or strapped to a user or his or her clothing.
Referring toFIG. 2, aplastic casing200P is used as the wireless sensor unit and is provided in a lightweight and highly portable form factor. Thecasing200P is configured of a size and shape that is easily carried in a user's pocket and may be selectively affixed to a variety of pieces of exercise equipment. Since many common pieces of exercise equipment are comprised of ferrous metal, amagnet210 is included within theplastic casing200P as a means of affixing thewireless sensor unit100P to the movable portion of a piece of exercise equipment.
In this way, theplastic casing200P may be easily affixed to free weights such as dumbbells and/or barbells. Similarly, themagnet210 incorporated theplastic casing200P may be easily affixed to the movable weights and/or other movable surfaces of universal exercise equipment such as bench press machines, shoulder shrug machines, curl machines, leg press machines, and/or other similar machines that have moving weights and/or other moving metal components that move in a repetitive manner during exercise.
In this way, the unit becomes highly flexible, enabling the monitoring of both repetitive body motions and/or repetitive exercise equipment motions. Also, in some exemplary embodiments, the sensor unit may be affixed to the hand or wrist of the user, thereby tracking repetitive exercise motions during weight lifting activities. In one such embodiment, the user wears a wristband that includes a magnetic surface to which the sensor unit may be selectively affixed. In general, themotion sensor100P is disposed at a location and in a manner such that as a user performs a repetitive exercise activity set, the sensor unit provides an acceleration signal with a time varying profile, the form of the time varying profile including a cyclic signal in which each cycle generally represents or is indicative of a single repetition of the repetitive exercise event.
Internal to thecasing200P are the various components that enable the wireless sensor unit to detect physical motion and convey data representative of the physical motion to theportable computing device100. These internal components include thecontrol electronics100P,motion sensors75P, and awireless transceiver85P. Thecontrol electronics100P generally include aprocessor5P and acommunication infrastructure90P. Not shown is apower source45P which may include rechargeable batteries. In general, thecontrol electronics100P reads data from themotion sensor75P, processes the data, and then transmits a representation of the data over thewireless transceiver85P to theportable computing device100C.
Themotion sensor75P may be a single axis accelerometer that detects acceleration along one degree of freedom or may be amulti-axis accelerometer75P that detects acceleration along multiple degrees of freedom. In some common embodiments, theaccelerometer75P is a three axis accelerometer that detects acceleration in three orthogonal degrees of freedoms commonly referred to as X, Y and Z. A single resultant vector of the multiple acceleration signals may be processed by thesensor electronics100P or each directional component may be individually processed. The processing of the motion data may include simple data filtering, averaging, and/or attenuation. The processing of the motion data may include processing of the time varying profile of the motion signal to determine the presence of cyclic characteristics indicative of a motion event. Thus, thewireless sensor unit100P may convey raw or largely unprocessed data to theportable computing device100C, or may report a highly abstracted processing of the data such as an indication of rep completions. In this way, the processing of the data may be distributed among thewireless sensor unit100P and theportable computing device100C in a variety of ways.
In an exemplary embodiment, thewireless sensor unit200P may be incorporated into aportable computing device100C, thereby not requiring any communication link. In such an embodiment, the portable computing device may include themagnet210 such that it can be selectively affixed to the movable piece of exercise equipment during rep-counting activities. In such embodiments, theportable computing device100C ideally includes awireless link85 to headphones worn by the user. In this way, a user may clip theportable computing device100C to a piece of exercise equipment, for example a dumbbell or barbell or other moving weight, while still being able to easily listen to audio content from the portable computing device.
It should be noted that in some exemplary embodiments thesensor unit200P may be worn by the user to monitor repetitive exercise activities such as push up, chin ups, and sit ups that involve lifting and lowering the user's own body instead of an external weight. In such an embodiment, the user may grasp thesensor unit200P within his or her hand, for example during sit-ups, or may affix it by Velcro or a strap to his or her belt or shirt or other article of clothing.
Alternately, a user may want to affix thesensor unit200P to his or her person for some activities and affix the sensor unit to dumbbells, barbells, weights, and/or other pieces of exercise equipment for other activities. The user may also be provided with a belt and/or other article of clothing that includes a metallic and/or magnetic pad intended for affixing the magnetic portion of thewireless sensor unit200P. In this way, the user may affix thesensor unit200P to his or her person by the magnet when performing sit-ups, push-ups, pull-ups, and/or other similar repetitive body activities, and may affix the unit to barbells, dumbbells, and/or other movable hardware of actual exercise equipment.
Additionally, the user may affix the sensor to his or her wrist for certain exercise activities by use of a wrist band or other similar element. Again the wristband may include a metallic or magnetic area which allows the sensor unit to be detached and affixed to other exercise equipment hardware or other body parts. For example, a user may selectively affix the sensor to different body areas for different exercise activities performed as part of a single exercise session, for example to his or her wrist for dumbbell curls, to his or her shirt for push-ups, and to his or her ankle for left lifts. In this way the motion sensor data may be selectively collected from the appropriate body area based upon the required motion of the exercise activity set being performed.
Referring toFIGS. 3A and 3B, analog output signals from amotion sensor100P are depicted in which three repetitions of two different types of exercise activities are provided. The output signal from themotion sensor100P includes a time varying profile indicative of the sequence of repetition events performed by during a user's exercise activity.FIGS. 3A and 3B depict accelerometer data collected from a single axis accelerometer sensor included within awireless sensor unit100P and communicated by wireless link to aportable computing device100C.
In an exemplary embodiment, theportable computing device100C is configured to process the output signal from themotion sensor100P to determine if and when singular repetitions of the exercise activity set are performed and maintain a cumulative count of the repetitions over a period of time, determine the completion of an exercise activity set and based upon the completion of such exercise activity set, track progress through a pre-planned exercise regimen for a number of different exercise activity sets. In this exemplary embodiment, the analog output from themotion sensor100P is sampled by an analog to digital converter at approximately 100 millisecond intervals which should be more than adequate to capture the motion events from themotion sensor100P.
As is shown inFIGS. 3A and 3B, the accelerometer data is graphed as avoltage signal310A,310B which is proportional to acceleration such that 2100 millivolts (mV) is a nominal acceleration of 0 gs and fluctuations above and below 2100 mV depicts positive and negative accelerations imparted upon thewireless sensor unit100P respectively. The data is graphed overtime305A,305B on a scale of seconds, each graph depicting a 10 second long portion of an exercise activity set engaged by a user.
FIG. 3A is derived from a user engaged in a dumbbell curl exercise activity set using a free weight dumbbell during the time that this segment of data was collected. The motion data captured by the accelerometer depicts a characteristic time varying profile such that eachrepetition315A,315B,315C of the curl exercise imparts a distinguishable time dependent motion event. Theportable computing device100C is configured to receive and process the data and determine from if a motion event is present and if so increment an internal rep-counter variable. Theportable computing device100C may also be configured to determine if a required number of counts have been reached for a current exercise activity set of a current exercise regimen, and if so, determine that exercise activity set to be complete and then prompt the user to a next exercise activity set and exercise type of the current exercise regimen.
There are many signal processing techniques known in the relevant art by which the data can be processed to count the characteristic cyclic data profiles indicative of a single repetitive event. For example, an upper and lower signal threshold may be set and the data is processed to assess the exceeding of the upper and lower signal threshold within certain time constraints. If the data is determined to exceed the upper and lower signal thresholds within the time constraints, it may be inferred that a characteristic repetitive event is present within the time varying signal representative of an exercise repetition. In some exemplary embodiments, several threshold levels may be used to further refine the processing to avoid spurious signal responses caused by the user positioning the exercise equipment for use. Alternately, pattern matching routines may be used to assess the data for characteristic signal profiles.
FIG. 3B is derived from a user engaged in a bench press exercise activity set during the time that this segment of data was collected. The bench press exercise involves different physical motions and different exercise equipment from the dumbbell curl. However, the data follows a similar characteristic cyclic time varying profile to that of the dumbbell curl which is likewise highly prominent in the motion sensor data and easy to identify by the signal processing techniques known in the relevant art. For the bench press exercise, the motion data captured by the accelerometer depicts a characteristic time varying profile such that eachrepetition320A,320B,320C of the curl exercise imparts a distinguishable time dependent motion event. Analogous to the dumbbell curl described above, a time varying data profile collected during three consecutive repetitive bench press exercises320A,320B,320C performed by the user during a ten second time period is output to theportable computing device100C.
Upon determining that a motion event has occurred, a counter variable is changed from 0 to 1, indicating that 1 rep has been counted. At the same time theportable computing device100C may be configured to output the number “1” upon thedisplay25 of theportable computing device100C indicating that one rep has been performed. At the same time, theportable computing device100C may be configured to output an audible sound conveying the vocal word “one” to the user through theheadphone interface95.
In this way, the user hears a voice saying “one” as he or she completes thefirst rep320A. The sequential visual and/or audible output may continue for each detectedmotion event320B,320C respectively until the user finishes the required number of repetitions of exercise activity set as indicated by the stored exercise regimen.
In an exemplary embodiment, thepersonal computing device100C may be configured to stop counting when an elapsed time for the exercise activity set has exceeded a certain threshold or if the elapsed time for a single repetition has exceeded a certain threshold without a next characteristic sensor signal being detected. For example, if more than 10 seconds elapsed after the last detected motion event, the software may be configured to assume the user ceased performing the exercise activity set.
In an exemplary embodiment, if a user performs a rep at a rate (or at a total time) slower than a defined minimum threshold value, the system may output a verbal prompt such as “speed up” or “too slow.” In addition, if a user performs a rep at a rate (or with a total time) faster than a required maximum threshold value, the system may output a verbal prompt such as “slow down” or “too fast.” In addition, if a user is taking longer than some threshold value, theportable computing device100C may output a motivational phrase such as “push it out.”
Upon completion of the required number of repetitions, theportable computing device100C may also be configured to output a supportive message visually or through an auditory output of spoken language. Theportable computing device100C may also output performance information and/or statistics about the activity set including the elapsed time required to complete the activity set and/or an assessment metric. For example, the exercise activity set, comprising 10 repetitions of a particular exercise type, may have taken 22.6 seconds to complete. This data may be displayed visually upon thedisplay25 or aurally95 as an audio message to the user.
In an exemplary embodiment, once the prescribed number of repetitions of a prescribed exercise activity set has been completed by the user and counted by the routines of the present system, a next prescribed exercise activity set is automatically accessed from the current exercise regimen and the user is prompted as to the nature of the next exercise activity set. For example a textual and/or verbal message may be output such as “Next Up, Sit Ups, incline bench, 50 reps.” In some exemplary embodiments, a pictorial representation may also be output on ascreen25 of theportable computing device100C.
Referring toFIG. 4, an exemplary embodiment of theportable computing device100C is shown, complete with a sample screen shot output to thedisplay25 of the device. The sample screen shot may display various pieces of information related to a current exercise regimen being performed by a user. For example, theportable computing device100C is configured to display the current exercise activity set415 of the current exercise regimen being performed by the user. In this case, “Right Curl, 20 lb.” In this way, the type of exercise of the current exercise activity set as well as the prescribed weight level to be used during the exercise activity set are both provided to the user as informational output. The device may also output the required number of reps to complete an exercise activity set. This is shown as the lower number indisplay box425. In this way, the user knows what exercise activity set he or she is to be performing at any given time during an exercise regimen session, including what weight level and how many reps to be performed. In this example, the user is informed that the current exercise activity set in the current exercise regimen is a prescribed exercise type of a Right Curl, a prescribed exercise weight of 20 lbs, and a prescribed number or repetitions of 12 reps. Thetotal time410 that has elapsed since the current exercise regimen has begun for the user may also be displayed.
Anindex number405 may also be displayed for the current exercise activity set in the exercise regimen. In this example, the index number is displayed as “ 7/20” indicating that the current exercise activity set is the seventh in the required sequence of twenty defined by the current exercise regimen. In this way, the user knows where he or she is within a current exercise regimen. The current elapsedtime420 may also be displayed in which the time that has elapsed for the current exercise activity set (i.e. for the current right curl of 20 lbs). Finally, thecurrent repetition count425 for the exercise activity set that is currently being performed may also be displayed. This is shown as “ 8/12”, indicating that 8 of the required 12 repetitions have thus far been completed. As previously discussed, the data displayed 25 may also be presented simultaneously with audio prompts and/or with the playing of musical media byportable computing device100C.
Referring toFIG. 5, an example graphical report output to adisplay25 of aportable computing device100C is depicted. Thegraph500 provides elapsedrepetition count505 versus elapsedtime510 during a current exercise activity set. Thegraph500 provides a visual representation of the rep-time for each sequential repetition within an exercise activity set. This is achieved by graphing the repetition count505 (i.e. the number of completed full repetitions of the exercise activity set) upon the vertical axis against the accruedtime510 upon the horizontal axis, thereby presenting visually how long each repetition took to complete. Thegraph500 depicts a characteristic stair-step pattern in which each step corresponding to a single repetition of an exercise activity set, the horizontal length of the step corresponding to the amount of time the user required to complete the repetition (i.e. the rep-time.) The graph thus shows the completion of 11 repetitions of a bench press activity set, graphed versus time, thereby showing visually how the user's rep-times varied during the exercise activity set.
Thus, by viewing the change in step size across the characteristic stair-step pattern, the user can quickly assess how his or her rep-time varied across an exercise activity set, the larger the steps, the longer the rep-times. As is typical of an exercise activity set, the rep-times increase as the user proceeds through the exercise because of muscle fatigue. This is shown visually inFIG. 5 by the example stair-step pattern in which the last few steps become more elongated as compared to the first few steps.
This unique graphing format allows a user to quickly and easily view how his or her rep-times slowed towards the end of an exercise activity set as compared to the beginning of the exercise activity set. In general, if the rep-times slows too much (i.e. the steps elongate greatly), the user struggled with the exercise activity set, but if the rep-times don't slow much at all (i.e. the steps remain similar in size), the set may have been too easy for the user. Thus, this unique graphic format may enable a user to quickly assess his or her performance in an exercise activity set. A graph heading515 may also be displayed which indicates the exercise information for which the set was graphed. Theexercise information515 may also include the set number for the exercise and/or other index number that identifies the set within an exercise regimen.
In this example, theexercise information515 displayed in the heading is “Bench Press (100 lb)” indicating that the set of reps being graphed is for a bench press activity set performed with 100 pounds of weight. In an exemplary embodiment, additional quantification values may be displayed to the user to help the user assess his or her performance in an exercise activity set. These additional quantification values may be presented upondisplay screen25 at the same time as thegraph500. An example of such a display is presented with respect toFIG. 6.
FIG. 6 provides anexample information display500 is shown as it may appear uponscreen25. Theexample information display500 again includes a graph of repetition count versus accrued exercise time for the set as shown in stair-step pattern605. Also shown is aslope line610 that indicates the central slope defined by the first few reps in the set. In this example, the slope line is determined by performing a best fit linear fit to the first four reps in the set. This slope line therefore represents how the stair step pattern would proceed if there was no slowing after the fourth rep in the set. Since there is apparent slowing as the user fatigues across the set, the actual stair step pattern diverges from the linear curve fit of theslope line610.
Theslope line610 is drawn upon the graph such that a user can easily view how thestair step pattern605 diverges from thelinear fit610. The amount of divergence between thestair step line605 andslope line610 for the final reps in the set visually indicates to the user the amount of slowing in rep time that has occurred during the exercise activity set. If the slowing is significant, the user may determine that he or she struggled and may adjust the weight or equipment settings accordingly in future exercise activity sets. If the slowing is minimal (i.e. thestair step line605 does not diverge much from the slope line610), the user may quickly assess that the exercise activity set was too easy and adjust the exercise activity set accordingly in future exercise activity sets. In such a case the user may decide in the future to increase the weight and/or increase the number of reps of that particular exercise activity set within the exercise regimen.
In addition to theslope line610, other quantification information may be determined and displayed to the user. This information is shown within thedisplay25 atinformation area600. The numerical information may be displayed to the user including the Total Reps (i.e. the total number of reps performed in the graphed exercise activity set), the Total Time (i.e. the total amount of time elapsed during the graphed exercise activity set), the Average Rate (i.e. a measure of the average speed at which reps were performed, in this case in reps per minute), and the First-to-Last Deceleration, which is a numerical metric of the amount of slowing between the initial reps and the final reps in the set. There are a variety of ways in which First-to-Last Deceleration may be determined and displayed. In this example, the deceleration may be determined from the change in repetition rate performed by the user from the first rep in the set to the last rep in the set. More specifically it is a measure of the percentage reduction in repetition rate between the first rep in the set and the last rep in the set.
In this particular example, the repetition rate dropped by about 78%. This means that final rep was performed at a speed that was approximately about 12% of the speed of the first rep. This metric quickly indicates the amount of slowing that occurred across the set. The deceleration metric may be also be used to determine if the set was established at a sufficient difficulty level for the user, not being too easy or too hard.
If the deceleration metric is determined to be too small (i.e. not enough slowing occurs between the first and last reps), this may indicate that the set was not difficult enough for the user. Thus, in response to computing a low deceleration metric, the software of the present system may be configured to automatically increase the prescribed weight or prescribed number of reps in a future set of the current exercise regimen and/or in a future set of a future exercise regimen. Conversely, if the deceleration metric is determined to be too large (i.e. too much slowing occurs between the first and last reps), this may indicate that the set was too difficult for the user. Thus, in response to computing a low deceleration metric, a programmatic function may be configured to automatically decrease the prescribed weight or prescribed number of reps in a future set of the current exercise regimen and/or in a future set of a future exercise regimen. In this way,portable computing device100C may automatically adjust a current or future exercise regimen of the user to ensure that exercise activity sets are not too easy or too hard, based upon the user's current actual fitness capabilities.
In an exemplary embodiment, a determined deceleration metric may be considered too great if more than an 85% reduction in rep rate is detected between the initial rep and the final rep. In response to such a deceleration metric, a future set may automatically be decreased in weight and/or rep count. Alternately, a deceleration metric may be determined to be too small if less than a 20% reduction in rep rate is detected between the initial rep and the final rep. In response to such a deceleration metric, a future set may automatically be increased in weight and/or rep count.
Referring toFIGS. 7A and B, an exemplary embodiment enables two exercise activity sets to be graphed side by side upon thedisplay screen25 of theportable computing device100C. This feature allows a user to quickly compare the performance of one set to another set. An additional feature generates a desired performance curve that the user is trying to obtain to be overlaid on the actual performance graph.
Thus, by viewing both side by side, the user can assess how close his or heractual performance data700A matches thereference performance data700B for a particular exercise activity set. The desired performance curves may be stored in memory for many different exercise types and styles and performance goals, enabling a user to compare his or her current exercise activity set with a specific reference set that most closely matches a desired target.
In the example shown,FIG. 7A may represent an exercise activity set that was just performed by the user andFIG. 7B may represent an exercise activity set that was performed a few weeks prior by the user. The user may visually compare his or her progress in exercise performance over the intervening weeks using this side-by-side comparison. As shown the in the figures, the characteristicstair step pattern610B slows less inFIG. 7B than thestair step pattern610A ofFIG. 7A. This indicates that the user performed the current exercise activity set (i.e. a Bench Press exercise of 100 lbs) with greater ease inFIG. 7B than inFIG. 7A. In addition, some exemplary embodiments may enable the two graphs to be displayed as co-located overlays on the same graphing axis. This too enables a user to quickly compare his or her current performance to a previous performance and/or to a reference performance.
Referring toFIG. 8, another graphical display example for evaluating user performance in an exercise activity set is shown. In thisexemplary graph800, a power-per-rep graphing feature is represented in which the user's performance data in an exercise activity set is graphed asuser power output805 versusrepetition count810. The value of this graphing method is best understood by first explaining how user power output may be determined for each repetition of an exercise.
As is well known in physics, power is a measure of energy expended over time. The power of a moving activity is often computed by multiplying the force required to propel the activity by the velocity of the activity itself. Thus, a common equation for power is represented as P=F*V; where P is the power, F is the force, and V is the velocity of the activity. It is also well known that F=m*a and V=X/t; where m is the mass of the moving object, a is the acceleration of the moving object, x is the distance traveled by the moving object and t is the time the moving object traversed the distance x.
These equations may be combined to yield P=m*a*X/t. Thus, the power output by a user during a repetition of an exercise activity set, for example a single rep of bench press exercise, is a function of the mass lifted, the acceleration imparted, the distance the mass was moved and the time required for completion of the rep. This equation may be simplified for comparative purposes because in general, the mass lifted and the distance traveled during each rep of an exercise activity set is the same. Therefore, to compare the power from one rep to another rep in an exercise activity set, a normalized measure of power may be computed that drops out the values for mass and distance.
This yields a simplified normalized equation for Relative Power Output (RP)=a/t. As such, the relative power output of a user during an exercise rep of a particular exercise may be determined by dividing the average acceleration of the exercise rep by the elapsed time of the exercise rep. Both of these values are readily available from the accelerometer data.
In some exemplary embodiments, peak acceleration may be used because it generally varies proportionally with the average acceleration. The RP for each rep is then stored and indexed with respect to the rep it corresponds to. The resulting set of RP values for rep count index may then be graphed as abar graph800, each bar indicating the RP for that rep in the set. An example such graph is shown with respect toFIG. 8 and is labeled thePower Curve815 for the set. As shown, thegraph800 is an indication of Power Output (in normalized RP format which is unit-less)805 on the vertical axis versus rep count on thehorizontal axis810. Because the power output are unit-less numbers that indicate relative power, not absolute power, they may be graphed on an arbitrary scale or on a percentage scale, the percentage being the percent of some full power value. Thegraph800 drawn shows Power Output graphed as percentages, the percentage values indicating the percent of the maximum expected power output for the given user based upon his or her past performance.
The value of such a Power Curve graph as shown is that it provides the user with an indication of how his or her power output varies across an exercise activity set. Generally, the power output begins near the maximum value and gradually decreases as the user fatigues. In this particular example graph, the power output starts at approximately 92% of the maximum value during the first executed rep of the exercise and decreases at an increasing rate across the set until it finishes at approximately 20% of the maximum value during the last executed rep of the exercise.
In this way, the user can easily visualize how the power output of his or her repetitions varies across the set. In general, a user attempts to keep their power output from falling below a certain minimum across a set, for example from falling below 40% of their target maximum value. In this particular exercise activity set, the last repetition does fall below this value, indicating to the user that he or she needs to try harder next time to keep the power output up across the full repetitive exercise activity set. In some exemplary embodiments, an estimated value for total calories burned may be output for a weight lifting set or other similar repetitive exercise activity set.
The total calories burned is generally proportional to the total mechanical work performed by the user during the repetitive weigh lifting set, adjusted with a metabolic rate constant. For weight lifting exercises, the total mechanical work is generally proportional to the amount of weight that is lifted during each rep, the distance it is raised and lowered during each rep, and the number of repetitions performed.
Thus, the calories equation is generally computed with consideration for the type of exercise, weight of exercise, and number of reps of exercise, for each exercise activity set as stored within the preplanned exercise regimen. This data may be accessed from the predefined exercise regimen script. The total calories burned may be determined by summing calories across the cumulative number of exercise activity sets performed for an exercise regimen. The total calories burned may be displayed as an accrual value during the preplanned exercise regimen. This enables theportable computing device100C to determine approximate calorie counting across a complex exercise regimen comprised of varying exercise type, exercise weight levels, and exercise repetition count value.
Referring toFIGS. 9A-D, the various exemplary embodiments described above may be accomplished for a wide variety of stationary exercise activities. For example, a user may affix a magnetically equippedmotion sensor200 to the weight portion of a weight-based piece ofexercise equipment910A,910B. Upon movement of theweights910A,910B, the magnetically affixedmotion sensor200 detects the motion induced910A′,910B′ upon the weights in response to the user performed exercise activity set which is received by aportable computing device100C attached for example to the waist of the user. Alternately, themotion sensor200′ may be strapped to an arm of the user as is shown inFIG. 9A.
The exercise equipment may be a traditional freeweight bench press900A or part of a universalstyle exercise machine900B,900C. In atraditional bench press900A, thephysical weights910A are raised and lowered in response to a user's bench press while lying prone on the bench portion of the weight stand. A magneticwireless motion sensor200 is affixed to the weights910. As the user performs the bench press exercise, the weights are raised and lowered915A. The induced motion is detected by themotion sensor200 in which the motion data is transmitted wirelessly to theportable computing device100C. Theportable computing device100C monitors the exercise, counts repetitions for the user, stores exercise metrics, and displays information representing the number of repetitions of the weight lifting exercise activity set to the user during a current exercise activity set as well as prompting the user for a next exercise activity set.
This arrangement is performed similarly when using the universalstyle exercise machine900B. For this embodiment, the user affixes themagnetic wireless sensor200 to the uppermost weight in thestack910B. The user then selects the amount of weight to lift and begins his or her exercise. As the user performs the bench press exercise, he or she is lifting and lowering a portion of the weights in arepetitive motion915B. Themagnetic wireless sensor200 is lifted and lowered and thus captures characteristic cyclic sensor data which is transmitted wirelessly to theportable computing device100C as described above.
InFIG. 9D, a user is disposed on an abdominal curl machine. In this exemplary embodiment, the user himself is the weight which will be moved. Theportable computing device100C may be affixed as before to a waistband of the user. Themotion sensor200 may be strapped to the user's arm as described above or is incorporated into theportable computing device100C. As the user begins the abdominal curl, the motion sensor detects200‘the user’smovement910D which is received and processed by theportable computing device100C.
As previously described, theportable computing device100C monitors the exercise, counts repetitions for the user, stores exercise metrics, and displays information representing the number of repetitions of the weight lifting exercise activity set to the user during a current exercise activity set as well as prompting the user for a next exercise activity set and/or type.
Programmatic FeaturesFIG. 10 depicts a process flow chart for the various exemplary embodiments described herein. The process is initiated1000 by coupling a motion sensor to aportable computing device1002. The user then selects an exercise regimen from a menu displayed on the portable computing device1004.
The selected exercise regimen is retrieved from thedatastore1006 and executed by the portable computing device. The selected exercise regimen outputs and/or prompts the user to perform a prescribed exercise activity set1008. Based upon the type of exercise activity set prescribed by the regimen, the motion sensor is then affixed to a moving portion of an appropriate piece of exercise equipment or to a body part of a user that moves sufficiently for data collection during the particular type of exercise activity set1010. The user then begins the exercise activity set1012 which causes the motion sensor to detect motion events which are then transmitted to the portable computing device. The portable computing device receives the time-dependent motion signals from themotion sensor1014 and determines time-dependent repetitive events from the receivedmotion signals1016.
In addition, the portable computing device determines repetition counts from therepetition events1018 which are then recorded in a datastore indexed to the currentexercise activity set1020. The datastore maintains a variety of exercise regimens and data recorded from the user's exercise activities including the repetition count, exercise performance data, elapsed time between repetition events, elapsed time between exercise activities, completed exercise activity sets, duration of rest periods taken by the user, anddeferred exercise activities1022.
During performance of the user exercise activity sets, the portable computing device monitors the repetition events and determines if the user is performing the exercise withinpredefined exercise tolerances1024. If the user is not performing the exercise activity sets within these predefined tolerances, the user is prompted to either slow down or speed up to keep pace with the prescribed exercise activity sets. This prompt may be conveyed as an audio signal conveyed through headphones, for example as a verbal prompt.
In an exemplary embodiment, the user may be provided with a number of options with respect to how an exercise regimen is stored and/or processed. For example, the user may request that the order of exercise activity sets within the exercise regimen may be randomized, updated or reordered1030. If the user chooses to either update or reorder an exercise regimen, the portable computing device changes the exercise regimen in the datastore then continues monitoring and orchestrating the individual exercise activity sets contained within the changed exercise regimen as previously described1028. For example, an exercise regimen may comprise a plurality of different exercise activity types, each with an associated number of repetitions and weight levels. The exercise regimen generally also defines a specific order in which the plurality of different exercise types is to be performed by the user. Alternately, the user may request that the order in which the exercise types are automatically selected and performed be shuffled, adjusted, or even randomized such that the user is provided with variety when performing the exercise regimen numerous times across various exercise sessions.
Alternately, the user may decide to defer a current exercise activity set1032 after being prompted to perform that exercise activity set by the computing device. For example, if the equipment he or she desires to use during the particular exercise activity is currently being used by another person, the user may request that the particular exercise activity be deferred until a later time during the exercise regimen. Alternately, if a user is too fatigued to perform a particular exercise activity set at the current time, the user may request that exercise activity set be deferred until a later time during the exercise regimen. If the user chooses to defer an exercise activity set, the user will be prompted in the future to perform the deferred exercise activity set. Changes to an exercise regimen and/or deferrals are stored in thedatastore1031 for later review by the user.
In addition, to moderating the order of exercise activity sets are to be performed by the user, programmatic functions may also moderate the rest periods provided to the user between exercise activity sets. For example, once an exercise activity set is completed by a user, the routines may provide a predetermined rest period to the user before the next exercise activity set is required to be performed. The programmatic functions track the elapsed time after a current exercise activity set has been completed and before a next exercise activity set is begun, optionally displaying the elapsed time to the user along with an indication of the total allowed rest time. The user may be prompted when a rest period is about to expire or has expired1034.
Lastly, if the user wishes to examine his or her exercise performance, the user selects the desired data output which causes the portable computing device to analyze the stored exercise performance data and/ormetrics1038 which is then graphicallyoutput1030 to theuser1040. A variety of graphical presentations are available including completed exercise activity sets, repetition rates, relative power outputs, exercise types, changes in repetition rates, changes to the exercise regimens, etc.1042.
If the exercise regimen has not been completed, the user is returned to the next exercise activity set1028 until either the user chooses to end theexercise session1044 or the exercise regimen is completed as prescribed.
Referring toFIG. 11, an exemplary hierarchical data structure for anexercise regimen1100 is depicted. Anexercise regimen1100 generally includes several different exercise activity sets1102,1108,1114 which are to be performed by the user, each exercise activity set comprising one of a plurality of different exercise types that require one of a plurality of different pieces of exercise equipment or configurations. Each exercise activity set1102,1108,1114, further includes one ormore exercise types1104,1110,1116 for a specific exercise activity set and eachexercise type1104,1110,1116 includes a number ofrepetitions1106,1112,1118 to be performed by the user to complete the exercise activity set. Each exercise activity set generally also includes a particular weight level or setting level to be used during the set. Each exercise activity set may also include one or more predefined performance targets, for example one or more target rep-times and/or target set-times for the reps of the set. Each exercise activity set may also include a predefined rest-time that is allowed after the exercise activity set is completed and before a next exercise activity set is begun. Each exercise activity set may also be stored along with one or more equipment settings for the user when performing that set, for example a seat-location setting on an exercise machine.
Exercise RegimenAn exercise regimen comprises one or more exercise scripts which may be retrievably stored in a datastore. Each exercise regimen includes a number of distinct exercise activity sets, each with a predefined number of repetitive motions. The exercise regimen may be entered by the user, selected by the user, downloaded by the user, and/or generated for the user based upon user input and historical data. The exercise regimen also may include a set of exercises activities to be performed by the user, the regimen indicating the type of exercise, the weight level or other setting level required of the exercise, and the number of sets and reps to be performed by the user. For example the script may indicate that the user perform 3 sets of 10 arm curls at a weight of twenty pounds. Theportable computing device100C may be configured to read the regimen from memory and instruct the user to perform the required tasks. An example of an exercise regimen, displayed in a tabular format is provided in Table 1 below.
| TABLE 1 |
|
| Exemplary Exercise Regimen |
| Sequence | | Exercise | | Exercise | Repetition | Allotted | Allotted |
| Index | Exercise Type | Group | Code | Qualifier | Quantity | Rest | Time | |
|
| 1 | Sit Ups | 1 | 156 | Incline | 25 | 20sec | 30sec |
| 2 | Sit Ups | 1 | 156 | Incline | 25 | 20sec | 30sec |
| 3 | Bench Press | 2 | 124 | 125lb | 12 | 40sec | 20sec |
| 4 | Bench Press | 2 | 124 | 135lb | 10 | 40sec | 20sec |
| 5 | Bench Press | 2 | 124 | 135lb | 8 | 40sec | 20sec |
| 6 | Left Curl | 3 | 167 | 20lb | 12 | 5sec | 25sec |
| 7 | Right Curl | 3 | 168 | 20lb | 12 | 20sec | 25sec |
| 8 | Left Curl | 3 | 167 | 25lb | 10 | 5sec | 25sec |
| 9 | Right Curl | 3 | 168 | 25lb | 10 | 20sec | 25sec |
| 10 | Left Curl | 3 | 167 | 30lb | 8 | 5sec | 25 sec |
| 11 | Right Curl | 3 | 168 | 30lb | 8 | 20sec | 25 sec |
| . . . | . . . |
| N | Cool Down | N | 9999 | null | null | null | 300 sec |
|
This exemplary exercise regimen includes a sequential listing of required exercise activity sets of the user. Each exercise activity set includes a sequence index which indicates the sequential order in which the exercise activity set is to be performed; an exercise type indicates the type of exercise activity to be performed; a code is used as an index value for a particular exercise type; an exercise qualifier indicates the weight value, equipment setting or other exercise parameter for an associated current exercise activity; a repetition quantity indicates the number of repetitions the user is to perform; an allotted rest time indicates how much time the user may rest after completing the exercise activity set; and an allotted time indicates how much time the user may spend actually performing the exercise activity once begun.
In addition, each exercise activity set may be associated with a target rep time (not shown) that indicates a desired time for performing each rep, and/or may be associated with a minimum and maximum threshold level for rep times (not shown), indicating threshold boundaries within which the rep time for the exercise activity set is intended to be performed. By storing a plurality of exercise activity sets in a tabular format, each exercise activity set with a sequential index and other exercise parameters, a full exercise regimen may be clearly specified for a user.
In an exemplary embodiment, the exercise regimen may also include a grouping identifier that is associated with a variety of exercise activity sets in the exercise regimen. The grouping identifier may be used to vary the order of the exercise activity sets in an exercise regimen such that the order of the exercise groupings may be varied, but the order of exercise activity sets within a grouping remain unchanged or at least remain grouped to ensure that a targeted muscle group is exercised in a proper order as is described below.
The exercise regimen reordering may automatically randomize or otherwise scramble the order of the scripted exercise regimen as it is presented to the user during an exercise session. The purpose of exercise regimen reordering is to provide the user with variety in exercise routine, while still instructing the user to perform a prescribed set of exercises (i.e. exercise types, weight or levels, and counts), just in an order that is varied.
In an exemplary embodiment, the exercise order is not entirely randomized, but randomized in groups such that the consecutive sets of the same exercise activity in the regimen are maintained in their prescribed order. Therefore, if an exercise regimen consisted of three activity sets of bench press, each of different weight value and rep counts, three sets of shoulder press, each of different weight value and rep counts, and three sets of sit ups, each of different rep counts, regimen reordering will maintain the prescribed order of the three sets of bench press, the prescribed order of the three sets of shoulder press, and the prescribed order of the three sets of sit ups, only varying the relative order of the three different exercises (bench press, shoulder press, and sit ups.)
In another exemplary embodiment, the exercise regimen may are also associated with a muscle group they intend to work, for example abdomen muscles (i.e. abs), pectoral muscles (i.e., “pecs,”) etc. Regimen reordering routines may be operative to maintain the grouping of exercises that target a common muscle sets, thereby keeping all the exercises, for example, that are relationally associated with the regimen with abdomen muscles, grouped together in the randomized regimen. In this way, a user may randomize or otherwise vary the order of a preplanned exercise regimen, but still maintain groupings of exercises in consecutive order by virtue of each exercise in the groupings being relationally associated with the same piece of exercise equipment and/or by virtue of each exercise in the grouping being relationally associated with the same muscle type.
A completed exercise regimen is stored in thedatastore10,30 and may be used for performance comparisons and improvements over time. An example of tabular data stored for an exercise regimen performed by a user, including performance rating values for each exercise activity as well as completion times for each exercise activity set, is provided in Table 2 below.
| TABLE 2 |
|
| Exemplary Stored Exercise Data |
| Se- | | | | | User | |
| quence | Exercise | | Exercise | Repetition | Perfor- | Time |
| Index | Type | Code | Qualifier | Quantity | mance | Used |
|
| 1 | Sit Ups | 156 | Incline | 25 | 8 | 24sec |
| 2 | Sit Ups | 156 | Incline | 25 | 7 | 28sec |
| 3 | Bench Press | 124 | 125lb | 12 | 6 | 15sec |
| 4 | Bench Press | 124 | 135lb | 10 | 7 | 19sec |
| 5 | Bench Press | 124 | 135lb | 8 | 5 | 18sec |
| 6 | Left Curl | 167 | 20lb | 12 | 7 | 19sec |
| 7 | Right Curl | 168 | 20lb | 12 | 7 | 19sec |
| 8 | Left Curl | 167 | 25lb | 10 | 5 | 20sec |
| 9 | Right Curl | 168 | 25lb | 10 | 5 | 20sec |
| 10 | Left Curl | 167 | 30lb | 8 | 4 | 25 sec |
| 11 | Right Curl | 168 | 30lb | 8 | 2 | 28 sec |
| . . . | . . . |
| N | . . . |
|
In general, when a user completes an exercise activity set, the user takes his or her magneticwireless sensor unit200P to the next piece of exercise equipment, as prompted by theportable computing device100C. In this way, theportable computing device100C, acts as a personal trainer, instructing the user which exercises activity sets to perform, in which order, and with what counts and weight levels.
Theportable computing device100C may also be configured to store historical data about the user's activities and/or display performance statistics such as the total number of activity sets and/or reps performed and/or the elapsed time required of different exercises. A user performance value (on a scale of 1 to 10) is recorded and stored for each exercise activity set in the exercise regimen. Also, a time used value is stored for each exercise activity in the exercise regimen. With respect to computing a performance assessment for a given exercise activity set, for example on a scale of 1 to 10, there are a variety of ways in which a value can be computed that quantifies the ease at which an exercise activity set was performed by a user. In general, when a user performs a set with ease, the rep-times for each rep of the set is performed with minimal slowing (i.e. low deceleration) across the set.
Conversely, when a user performs a set with considerable difficulty, the rep-times for each rep of the activity set is performed with considerable slowing (i.e. high deceleration) across the set. Thus, the deceleration in rep completion times (i.e. rep-times) across an exercise activity set may be used to quantify the ease or difficulty at which the set was performed. In general, a typical user is aiming to perform sets that are not too easy or too hard, thus a mid-range assessment on the ease-to-difficulty scale may be preferable. Therefore, a mid-range deceleration in rep-times is considered the result of a well-targeted exercise regimen for an average user.
In various exemplary embodiments, a deceleration metric may be determined that indicates the amount by which the user slows down through the course of an exercise activity set. This deceleration metric is then used to determine a relative performance assessment for the exercise activity set. There are numerous ways in which the deceleration metric may be determined. For example, the deceleration metric may be determined by comparing the rep completion time for the first rep of an exercise activity set with the rep completion time for the last rep of the set. By evaluating the change in rep completion times from the first rep to the last rep, a first-to-last deceleration value may be determined. If that deceleration metric is small (i.e. there is little deceleration), the current set may be too easy for the user and a high performance value assigned. Conversely, if the deceleration metric value is large (i.e. there is a very large amount of deceleration), the current set may be too difficult for the user and a low performance value assigned. Thedatastore10,30 may be used to store data relating to numerous historical exercise sessions. For example, a user might perform a particular exercise regimen once per day, every day, for three weeks.
As such, 24 sets of data, one for each day the exercise regiment was performed, may be stored inmemory30, each set of data indicating user performance on that instance of performing the exercise regimen. The historical data may be used to generate time-varying user performance data that indicates how a user is progressing over time as he or she performs the same or similar exercise regimens over days, weeks, months, or years.
Theportable computing device100C accesses an exercise regimen from adatastore10,30 tracks a user's progress through each required exercise activity set by counting time-dependent repetition events and prompts the user to consecutively perform each required exercise activity. Theportable computing device100C may also be programmed to monitor the time required for the user to perform each repetitive event for a given exercise activity, rest intervals taken and/or exercise activity intervals during a particular exercise activity and alert a user when a predefined time period to perform an exercise activity has been reached and/or exceeded.
Since theportable computing device100C is programmed to determine repetition events in a time dependent manner, a user may assess his or her performance for an exercise activity set based upon the time interval between repetitive motions (i.e. the repetition interval time). For example, if a user is performing a weight lifting exercise activity and the time interval between repetitive lifting events of the weights slows substantially over the required count of repetitive events, theportable computing device100C may determine that the user is struggling with that particular exercise activity set in the required exercise regimen and may heuristically adjust the exertion level or weight setting downward for the user for the next exercise activity using the same targeted muscle group.
Conversely, if the user is performing a weight lifting exercise activity and the time interval between repetitive lifting events of the weights remains relatively constant or accelerates over the required count of repetitive events, theportable computing device100C may determine that the user is unchallenged with that particular exercise activity in the required exercise regimen and may heuristically adjust the exertion level or weight setting upward for the user for the next exercise activity set using the same targeted muscle group.
To help the user conceptualize how his or her exercise rep times vary across an exercise activity set (i.e. how much the rep completion times slow over a given set), theportable computing device100C includes a Repetition Versus Time Graphing Feature as shown inFIGS. 5,6 and7 in which each completed repetition of an exercise activity is graphed visually versus time upon ascreen25 of theportable computing device100C. In this way, a user may quickly review his or her performance in a full set of an exercise regimen by viewing his or her progress through the exercise activity set in terms of repetitions versus time.
This graphical format is useful because the changing slope of the curve indicates the ease or difficulty at which the user performed the task. For example, a linear curve indicates that the user performed each repetition in the exercise activity set with similar time interval spacing. This indicates the set was performed with ease.
A non-linear curve, for example, in which the time spacing between repetitions increases over the exercise activity set, indicates that the user did not perform the set with ease. The set was sufficiently difficult that the user struggled more and more with each passing repetition. In this way, a visual graph of repetitions versus time provides the user with a fast and easy to understand measure of performance in a repetitive exercise activity set such as weight lifting or calisthenics. Such graphing may allow the user to manually adjust the required weight levels (or setting levels) and/or rep counts in future exercise activity sets based upon how hard or easy previous sets were to complete. In addition, the graphing functions may enable multiple graphed sets to be displayed at once, allowing a user to compare performance in one exercise activity set against another exercise activity set as is shown inFIGS. 7A,7B.
Another graphical function includes a Power-Per-Rep Graphing Feature as is shown inFIG. 8 graphically displays the relative power output of the user for each repetition across a set of repetitions for a given exercise activity set. The power may be computed as a normalized value, relative value, or percentage of a target value that reflects the power output of one repetition as compared to other repetitions. By graphing the power output versus repetitions, a user may quickly review how his or her power output varied across an exercise activity set, repetition by repetition. Since power is a function of both acceleration and repetition times, this performance metric provides additional insight into exercise performance, particularly for weight lifting exercise activities. For example, weight lifters generally desire to perform a set of repetitions with minimal power reduction across sets. In this way, the power graph is a valuable indication of performance.
Theportable computing device100C may also be programmed to provide an exercise rep-time prompting feature in which the user is notified when his or her rep completion times are falling outside of a desired tolerance range. More specifically, the exercise rep-time prompting feature may inform the user during a set if his or her most recent rep completion time was faster than a set maximum rep-time threshold tolerance level or slower than a set minimum rep-time threshold tolerance level.
This programmatic feature is particularly useful for certain types of weight training regimens in which the user attempts to perform weight lifting repetitions within certain desired repetition times. For example, there are some forms of weight training where the users attempts to raise and lower the weights very slowly. To support such an exercise activity, a low maximum rep-time threshold tolerance level may be set by the user and monitored by theportable computing device100C.
If the user completes a rep that is faster than the set maximum rep-time threshold tolerance level, the user is alerted by theportable computing device100C that he or she has performed a rep too quickly. The prompt may be an intuitive verbal message such as “slow down” or “too fast,” thereby informing the user that he or she should slow down his or her weight lifting reps to stay within the desired rep-time limits.
Similarly, if a user performs a rep more slowly than a minimum rep-time threshold level, the user is alerted by theportable computing device100C to speed up by providing a verbal utterance “speed up” or “too slow” to the user through an audio output. In this way, the programmatic features monitor the user's rep-times and inform the user upon completion of a rep that is faster or slower than set maximum or minimum rep-time limits, to slow down or speed up their rep times accordingly.
In some exemplary embodiments, theportable computing device100C may also be programmed to monitor the total time duration required to complete a current exercise activity (i.e. the exercise interval time) and/or monitor the elapsed period of rest between required exercise activities (i.e. the rest interval time.) The exercise interval time and/or the rest interval time may also be used to assess a user performance in a given exercise regimen. As a user proceeds through a current exercise activity, theportable computing device100C may be configured to audibly and/or visually output the current cumulative count after each completed repetition. In this way, the user of thepersonal computing device100C is informed as to the number of repetitions thus far performed in the current exercise activity.
In addition, theportable computing device100C may be programmed to inform the user as to the nature of the next required exercise activity set using an audible output. For example, a synthesized voice may issue a prompt such as “Next up, bench press—50 pounds, 12 reps.” In this way, a user is fully informed as to the next required exercise activity set of the regimen without needing to look at a screen. The prompt may also be visually displayed upon thescreen25 as a textual message.
Upon completion of an exercise activity set, theportable computing device100C may also be programmed to output a verbal phrase of encouragement such as “good job” or “good set.”
Lastly, in various exemplary embodiments, one or more exercise activity sets listed within a predefined exercise regimen may be associated with one or more musical media files. As such, when a particular exercise activity set is performed, an associated musical media file may be played to the user. In this way, a user may define a listing of musical media files that play, at least in part, based upon which exercise activity set within a pre-planned series of exercise activity sets, the user is currently engaged in. Thus, a user may select particular musical media files that he or she enjoys listening to for example during sit ups and associate these musical media files with sit up exercise activity sets.
The foregoing described of exemplary embodiments is provided as illustrations and descriptions. They are not intended to limit any one exemplary embodiment to the precise forms described. In particular, it is contemplated that functional implementation of an exemplary embodiment described herein may be implemented equivalently in hardware, software, firmware, and/or other available functional components or building blocks. No specific limitation is intended to a particular device or programmatic sequence. Other variations and embodiments are possible in light of above teachings, and it is not intended that this Detailed Description limit the scope of invention.