USER-DEFINED ENVIRONMENTS FOR EXERCISE MACHINE TRAINING
A method of implementing a user-defined environment for exercise includes specifying a course route with a course development tool, and designating additional parameters associated with the course route. The course route and additional parameters support simulation of exercise on a course corresponding to the specified court route and additional parameters.
Latest IBM Patents:
- Distributed platform for computation and trusted validation
- Acoustic attenuating ear muffs with mechanically actuated attenuation plugs
- Seamless abort and reinstatement of TLS sessions
- Management of mobile computing devices in emergency conditions
- Providing an alert to a passenger based on a location of the passenger while in transit on a multi-passenger mode of transport
Individuals training for a foot race on a specific route may not always have easy access to the physical terrain over which the race takes place. Many race courses have high vehicle traffic that is rerouted only during the actual race. Inclement weather may prevent training. In addition, the race course could be a long distance away from where the runner lives. For example, a runner could live in California but want to run the Boston Marathon.
To improve their performance the competitors may want to simulate a course that corresponds to a future or past event. For example, race terrain can vary widely in difficulty due to elevation changes. For example, the course for an upcoming race could begin with relatively flat terrain and end with a large uphill climb. This would be far more difficult than a predominately flat course. To properly prepare for an upcoming race where it is not possible to train on the actual race course, runners may want to run a simulation of the race to improve their pacing or other aspects of their strategy specific to that race course, such as conserving enough energy to finish a final hill.BRIEF SUMMARY OF THE INVENTION
A system for creating and utilizing user-defined environments for exercise machine training includes a course development software tool which allows a user to define a course and other parameters, the course and other parameters being exported to an exercise machine, the exercise machine being configured to simulate the course based on the received parameters. A method of implementing a user-defined environment for exercise machine training includes: a user entering a course route and additional parameters through a web-based course development tool, and exporting the course route and additional parameters to an exercise machine which simulates the course.
The accompanying drawings illustrate various embodiments of the principles described herein and are a part of the specification. The illustrated embodiments are merely examples and do not limit the scope of the claims.
Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.DETAILED DESCRIPTION OF THE INVENTION
As will be appreciated by one skilled in the art, the present invention may be embodied as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium.
Any suitable computer usable or computer readable medium may be utilized. The computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-usable medium may include a propagated data signal with the computer-usable program code embodied therewith, either in baseband or as part of a carrier wave. The computer usable program code may be transmitted using any appropriate medium, including but not limited to the Internet, wireline, optical fiber cable, RF, etc.
Computer program code for carrying out operations of the present invention may be written in an object oriented programming language such as Java, Smalltalk, C++ or the like. However, the computer program code for carrying out operations of the present invention may also be written in conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
The present invention is described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The invention provides a way to use a course development software tool to create data that will allow an exercise machine to simulate the desired terrain and environmental conditions of a specific race route or course. By way of example and not limitation, an exercise machine may be a treadmill, bicycle, aerobic elliptical, stepper, rowing device, or other machine designed to allow training or exercise.
A variety of other informational displays or functional tools could be used to facilitate the use of the software by the user. By way of example and not limitation, a route summary window (135) could be displayed which gives summary or aggregated information about the user-designed course, such as the total distance of the course.
Additionally, the course development software may include an elevation profile (160). The elevation profile (160) may include a graph showing the change in elevation as a function of distance over the designated race route. By way of example and not limitation, the vertical axis of the graph may show elevation changes and the horizontal axis may show distance. Additional parameters such as the maximum elevation, minimum elevation, accumulative ascent, and accumulative descent may also be shown or indicated on the profile (160).
Weather data (165) may also be included in the course development software. According to one exemplary embodiment, the user designates a specific time period during which the exercise will take place. The weather data (165) is then retrieved from a data base and shows either the forecasted weather or historical weather parameters. If forecasted weather is not available for the specific location or time, historical averages or probable environmental conditions could be used. The weather data could include information relating to the time of day, amount of sunlight, precipitation, humidity, wind, air temperature, elevation, pressure variances, and other factors. The software tool could be used to recreate the courses and weather of historical races. By way of example and not limitation, the route and weather conditions for the first Boston Marathon could be generated using the course development software.
GPS waypoints (350) could be included in the data to pin point the location and direction of travel throughout the course. The GPS waypoints could be generated by the course development software or could be inputs from a GPS device to define the course. According to one exemplary embodiment, the user clicks on a map (110,
According to one exemplary embodiment, the distance data (310) and the corresponding elevation data (320) could be used to calculate the slope at a specific part of the course. The exercise machine (210,
The weather data may be historical, current, predicted or user generated. For example, historical weather data could be used to simulate a past race or other event. Historical weather data could be archived or retrieved from a number of sources including the National Oceanic and Atmospheric Administration archives. Also, in another alternative, the weather data used may be predicted weather for the course being simulated at the time of an actual future race. According to still another alternative embodiment, the user could choose desired environmental parameters.
Environmental factors often play a critical role in races, particularly long distance races such as marathons. Temperature, humidity, altitude, wind and other factors can become significant challenges for the contestants. Elevated temperatures can lead to dehydration, while head winds can require a small but significant increase in effort. According to one exemplary embodiment, environmental controls external to the exercise machine are used to more closely simulate the course conditions. For example, air conditioners, heaters, heat pumps, fans, heat lamps, humidifiers, dehumidifiers and other environmental control devices could be used in the same room to help simulate weather conditions of the desired course. In one embodiment, an exercise machine may be placed within a general weather simulating room or chamber. The general weather simulating room or chamber could, for example, be controlled by the weather module.
Additionally, these environmental controls could be altered as the user progresses through the course. Direction of travel can be inferred from data produced by the course development software. As the user progresses along the course route, the direction of the simulated wind and radiant heating (simulating the sun) could be altered to match the actual orientation of a user running on the physical terrain. This allows for a more realistic course simulation and provides an opportunity for the user to more fully appreciate the challenges of the course. For example, the location of the sun at the indicated local time and relative to the position of the user on the racecourse can be simulated by heat lamps and can change as the user progresses through the simulated course. Both time and user progress on the course may change the relative position of the simulated sunshine.
The weather data being used for the simulation may also affect the heating that is used to simulate the sunshine. For example, if the weather is cloudy, the amount of heat produced to simulate the sunshine can be decreased accordingly.
A fourth “performance” module, (440) could be used to display performance parameters that reflect the user's physical state. By way of example and not limitation, many competition runners are interested in a parameter referred to as % VO2 max. The VO2 max represents the maximum capacity of a body to transport and utilize oxygen during exercise. It is also called maximal oxygen consumption or maximal oxygen uptake and reflects the aerobic capacity of an individual. VO2 max is reached when oxygen consumption plateaus despite an increase in workload. According to one exemplary embodiment, other parameters such as heart rate, lactic acid percent, blood oxygen percent concentration and other parameters could be displayed and graphed in the performance parameter module. Depending on the desired training profile, the physical parameters displayed in the performance window (440) could be selected to meet a specific goal or reduce the chance of injury. For example, the parameters displayed in the performance module (440) could indicate that the user is running faster than his condition allows. A relatively high heart rate, high lactic acid %, and low blood oxygen concentration could indicate that the user has entered an anaerobic stage that is not sustainable over the remaining distance in the course.
Following the entry of the course route and other desired parameters, the data could be formatted, saved, and/or exported (step 620). The data could be formatted such that the data is compatible with a specific exercise machine. According to one exemplary embodiment, the data could be saved to an online repository and, upon request for the data by a web enabled exercise machine, the data could be formatted (if necessary) and transferred to the requesting exercise machine. The data is then loaded onto the exercise machine (step 630). By way of example and not limitation, the data could be saved to a flash drive or other storage medium and manually transferred to the exercise machine. The exercise machine could copy the data into an internal memory or simply access the data as required during use.
In an alternative embodiment, the course development software resides on the exercise machine itself and no transfer of information is required. In this embodiment, the display, such as a liquid crystal display (LCD), may be touch-sensitive or another input device may be provided. The exercise machine computer may be Internet enabled and access a web portal that contains the course development software. Alternatively, the course development software could reside on the exercise machine and access online data, such as map and weather information. The user directly enters the course waypoints and other parameters, which are then saved on the exercise machine.
When the appropriate course data has been provided by any of the methods described herein, the user may then begin the simulation of the course by instructing the exercise machine to simulate the course that was entered or for which data was imported (step 640). The simulation then begins.
According to one exemplary embodiment, additional sensors are positioned on the user's clothing or person. By way of example and not limitation, sensors could be placed on or in the shoes of the user to gage parameters such as stride tempo, stride length, impact, or other parameters. Other sensors such as heart rate sensors could be worn or otherwise accessed by the user. These sensors could wirelessly transmit data to the exercise machine, which then displays the user's physical performance parameters throughout the exercise period (step 650). Additionally, the exercise machine can display distance and other time based parameters as the user moves through the course (step 650). As previously mentioned, these distance and time based parameters may include elapsed distance, lap times, weather data, changes in resistance or incline, changes in environmental parameters, motion on a map, pictures or videos that correspond to the users location on the course, etc.
When the exercise period or course simulation is complete, the user can terminate the program by pushing a control button or through other means (step 660). The exercise machine would then cease operation and store the accumulated data, including the present position of the user on the course being simulated. In this manner, the user could break up long courses, such as a marathon or mountain assent, into several different exercise sessions. According to one exemplary embodiment, the exercise machine saves the data onto a web repository, where it can be later retrieved by the same or a different exercise machine.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
Having thus described the invention of the present application in detail and by reference to embodiments thereof, it will be apparent that modifications and variations are possible without departing from the scope of the invention defined in the appended claims.
1. A method of implementing a user-defined environment for exercise in which environmental parameters are simulated with exercise equipment, said method comprising:
- specifying a course route with a course development tool,
- designating time dependent environmental parameters and spatial environmental parameters associated with said course route, in which said time dependent environmental parameters comprise at least one of air temperature, humidity, wind speed, wind direction, precipitation, atmospheric pressure, sun position, and solar heat flux, and
- simulating said course route with said exercise equipment, said time dependent environmental parameters being varied as time progresses and said spatial environmental parameters being varied according to a user's simulated position on said course route.
2. The method of claim 1, further comprising:
- exporting data corresponding to said course route and said time dependent environmental parameters and said spatial environmental parameters to an exercise machine; and
- simulating exercise on said course using said exercise machine.
12. A system for creating and utilizing user-defined environments for exercise machine training comprising:
- a course development software tool stored on a computer-readable medium, said course development software tool configured to allow a user to define a course to be simulated with course parameters; said course parameters comprising time dependent environmental parameters and spatial environmental parameters, in which said time dependent environmental parameters comprise at least one of air temperature, humidity, wind speed, wind direction, precipitation, atmospheric pressure, sun position, and solar heat flux, said course development software tool being configured to export said course parameters, and
- an exercise machine configured to receive said course parameters, said exercise machine being configured to simulate said course using said course parameters;
- in which said time dependent environmental parameters are varied as time progresses and said spatial environmental parameters are varied according to a user's simulated position on said course route.
13. The system of claim 12, wherein said course development software tool further comprises a mapping module and an elevation profile.
14. The system of claim 13, wherein said mapping module is configured to receive waypoint data defining said course.
15. The system of claim 14, wherein said waypoint data includes metadata describing characteristics or actions to occur at said waypoint.
16. The system of claim 15, wherein said exercise machine is further configured to take action based on said metadata associated with a waypoint as said user passes said waypoint.
17. The system of claim 12, wherein said course development software tool further comprises a weather module configured to retrieve at least a portion of said time dependent environmental parameters from an external weather database.
18. The system of claim 17, wherein said weather module is configured to obtain historical or current weather parameters associated with said course.
21. A system for creating and utilizing user-defined environments for exercise machine training comprising:
- a course development software tool stored on a computer-readable medium, said course development software tool configured to allow a user to define a course by entering or importing waypoint data, said waypoint data defining said course, said software tool being configured to allow said user to associate metadata with a waypoint, said metadata comprising course information, identification of physical facilities along said course, image data, video data, or audio data;
- wherein said course development software tool further comprises a mapping module, an elevation profile, and a weather module; said weather module configured to allow the retrieval of historical or current weather data, said weather data comprising one or more of: temperature, wind speed, wind direction, humidity, precipitation, and pressure.
- wherein said course development software tool is further configured to export course data, said course data comprising said waypoint data, said metadata, and said weather data;
- an exercise machine configured to receive said course data, said exercise machine being configured to simulate said course using said course data.
22. The method of claim 1, further comprising designating a historical date which said user-defined environment will recreate.
23. The method of claim 22, further comprising retrieving said time dependent environmental parameters over said course route for said historical date.
24. The method of claim 1, further comprising designating a future date which said user-defined environment will create, said course development tool using predicted values of said time dependent environmental parameters.
25. The method of claim 1, in which said time dependent environmental parameters comprise air temperature, humidity, wind speed, and wind direction.
26. The method of claim 25, in which said time dependent environmental parameters further comprise sun position and solar heat flux.
27. The method of claim 1, further comprising calculating a velocity vector of a user exercising within said user-defined environment, said velocity vector being used to calculate wind velocity, wind direction, and solar flux relative to said user.
28. The method of claim 1, further comprising monitoring biological parameters which measure a user's physical performance during said simulation over said specified course route, said biological parameters including at least one of: percent of VO2 Max, Lactic acid, and blood oxygen.
29. The method of claim 28, further comprising displaying said biological parameters on a graph against at least one of: elapsed time or elapsed distance.
30. The method of claim 28, further comprising recording said biological parameters and storing said biological parameters for later comparison.
31. The method of claim 1, in which said spatial environmental parameters include side-to-side inclination of said specified course route.
32. The method of claim 1, in which said spatial environmental parameters include elevation over said course, said elevation being displayed on a graph which shows elevation as a function of distance over said specified course route, in which said user's progress through said specified course route is configured to be marked on said elevation graph.
Filed: Feb 14, 2008
Publication Date: Aug 20, 2009
Applicant: International Business Machines Corporation (Armonk, NY)
Inventors: Bradley A. Crater (Cary, NC), Todd J. Lopez (Raleigh, NC), Grant S. Mericle (Durham, NC), Benjamin T. Rau (Raleigh, NC)
Application Number: 12/031,505
International Classification: A63B 71/00 (20060101);