US20250262483A1
EXERCISE PROGRAM GENERATOR
Publication
Application
Classifications
IPC Classifications
CPC Classifications
Applicants
iFIT Inc.
Inventors
Rebecca Lynn Nielsen
Abstract
A device may receive user input for a customized workout, the user input including at least one exercise parameter. A device may generate, based on the at least one exercise parameter, a plurality of exercise device controls, the plurality of exercise device controls configured to adjust at least one exercise parameter of an exercise device. A device may generate an exercise program to be implemented on the exercise device, the exercise program including the plurality of exercise device controls.
Figures
Description
CLAIM PRIORITY
[0001]This application claims the benefit and priority to U.S. Patent Application No. 63/555,768, filed Feb. 20, 2024, which is incorporated herein by reference in its entirety for all that it discloses.
BACKGROUND
[0002]Health is a critical part of a person's well-being. People cultivate their health through health actions, including exercise, diet, lifestyle, and so forth. People may use exercise systems to facilitate their health journey. Indoor exercise has increased in popularity and accessibility. Many people exercise indoors with the aid of an exercise device. Exercise devices may be designed to simulate outdoor exercise activities, such as a treadmill to simulate running, a stationary bicycle to simulate cycling, or a rower to simulate rowing. Additionally, or alternatively, exercise devices may be designed to exercise a certain muscle or muscle group, reduce the impact or force applied to the user, aid in certain types of indoor exercises, perform any other function, and combinations thereof.
[0003]Many exercise devices facilitate playing or implementing an exercise program on the exercise device. The exercise program may include operating information for the exercise device and some interactive features. The interactive features may include videos, including videos of trainers and/or virtual environments. The exercise programs are often stored in an exercise program library. But exercise program libraries may store massive amounts of exercise programs making it difficult for a user to search and find one that they like or one that would be beneficial for that particular user based on their exercise goals and trends.
SUMMARY
[0004]In some embodiments, a method for generating exercise programs is provided. The method includes receiving user input for a customized workout, the user input including at least one exercise parameter. The method further includes generating a plurality of exercise device controls based on the at least one exercise parameter, the plurality of exercise device controls configured to adjust at least one exercise parameter of an exercise device. The method further includes generating an exercise program including the exercise device controls.
[0005]This summary is provided to introduce a selection of concepts that are further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in limiting the scope of the claimed subject matter.
[0006]Additional features and advantages of embodiments of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of such embodiments. The features and advantages of such embodiments may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features will become more fully apparent from the following description and appended claims, or may be learned by the practice of such embodiments as set forth hereinafter.
BRIEF DESCRIPTION OF DRAWINGS
[0007]In order to describe the manner in which the above-recited and other features of the disclosure can be obtained, a more particular description will be rendered by reference to specific implementations thereof which are illustrated in the appended drawings. For better understanding, the like elements have been designated by like reference numbers throughout the various accompanying figures. While some of the drawings may be schematic or exaggerated representations of concepts, at least some of the drawings may be drawn to scale. Understanding that the drawings depict some example implementations, the implementations will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
DETAILED DESCRIPTION
[0016]This disclosure generally relates to customizable exercise programs that are easy to create and modify, and that can be implemented automatically on one or more exercise devices. Conventional exercise systems may provide pre-programmed exercise programs to a user, but these systems do not provide a complete customization option for their users. Therefore, one of the objectives of this application is to provide systems and methods for allowing users to easily create and modify exercise programs to their own preferences and exercise goals. For example, an exercise program may be customized by utilizing an exercise program template and adjusting, changing, removing, or adding one or more workout segments, exercise parameters, exercise device controls, or a combination thereof.
[0017]The features and functionalities of the system(s) described herein provide a number of advantages and benefits over conventional exercise systems. For instance, one possible advantage of allowing a user to customize their exercise programs in accordance with one or more embodiments described herein is that it may create additional commitment and loyalty for the user to continue using the exercise programs as they are able to select and modify them to their own preferences. Indeed, by providing an interface that enables a user to select exercise parameters, the systems described herein can generate any number of exercise programs that are unique to a particular device and that are customized to the preferences of an individual user. In some implementations, the exercise parameters are independent to a specific exercise device, but can nonetheless be converted by the exercise program generator to create a machine-specific program having unique exercise device controls even where the exercise parameters may not necessarily differ between different workouts involving different exercise devices. Thus, one or more embodiments described herein provide a device-agnostic approach in which a user can provide general parameters that can be rendered uniquely to specific devices.
[0018]Another possible advantage is that by creating the exercise device controls responsive to received exercise parameters, the user does not need to manually change any settings on the exercise device, as the exercise device controls automatically implement the selected exercise program on the exercise device. Thus, a user need not have prior experience using a particular exercise device to know exactly which exercise device controls correspond to the desired level of intensity (or other exercise parameter) that the user wishes to experience for a particular workout on a specific device. Moreover, as mentioned above, this can be applied to multiple exercise programs on difference devices, as features and functionalities of the exercise device generator enable an exercise program created on one device (e.g., in response to a specific set of exercise parameters) to be converted to a comparable type of exercise program for a difference device (e.g., without additional user input other than the received exercise parameters).
[0019]In addition to providing a cross-device and flexible exercise program generation mechanism, features of the systems described herein provide a dynamic approach to modifying exercise programs over time (e.g., without requiring that a user specifically modify exercise parameters over time). For example, by tracking a heartrate and determining a change in fitness level over time, the systems described herein can prevent users from experiencing fitness plateaus or frustration associated with trial-and-error modification of exercise programs without requiring that the user specifically modify device controls for the exercise devices. Indeed, in one or more embodiments, the systems facilitate dynamic modification of device controls over time based on a changing fitness level of a user in a way that the exercise parameters and device controls can stay aligned notwithstanding an observed change in the fitness level of a user.
[0020]As illustrated by the foregoing discussion, the present disclosure utilizes a variety of terms to describe features and advantages of the exercise recommendation system. Additional detail is now provided regarding the meaning of such terms. For example, as used herein, the term “exercise program” refers to a pre-recorded exercise activity or series of activities that may be displayed and/or performed on an exercise device. For example, when an exercise program is running on an exercise device, the exercise program may guide a user through a workout. This may occur through a series of instructions, such as instructions delivered to a user over an audiovisual portion of an exercise program. In some situations, the instructions may include instructions to change an operating parameter of the exercise device. In this manner, the user may follow a pre-determined workout without manually changing the exercise parameters throughout the exercise program.
[0021]In some examples, as used herein, an exercise program may include one or more exercise parameters. The exercise parameters may be parameters related to the performance of an exercise activity. In some embodiments, an exercise parameter may be a representation of an operating parameter of an exercise device. In some embodiments, an exercise parameter may be a representation of a simulated outdoor activity, such as a pace, speed, hill incline, and so forth. While certain embodiments of the present disclosure may disclose operating parameters of an exercise device in terms of a simulated outdoor activity, it should be understood that the operating parameters include the operation of the exercise device to simulate the outdoor activity, such as rotating a belt with a particular speed, adjusting a resistance of a flywheel, adjusting an incline of an exercise deck, and so forth. In some embodiments, at least one exercise parameter includes an intensity. The intensity may be a representation of the difficulty of an exercise activity. For example, the intensity may include or otherwise be associated with a pace, a speed, a resistance, a weight, an incline, a target heartrate range, or any other representation of intensity or difficulty, and combinations thereof.
[0022]In some embodiments, an exercise program includes one or more workout segments. A workout segment may be a portion of an exercise program that has a particular set of exercise parameters. In some embodiments, a workout segment may represent a length of time between changing at least one exercise parameter. As a specific, non-limiting example, a first workout segment for a treadmill may be five minutes long with a speed of three miles per hour with zero incline. A second workout segment may be ten minutes long with a speed of six miles per hour and a 1% incline. In some embodiments, a workout segment may follow another workout segment. In the example discussed above, the second workout segment may follow the first workout segment. During the transition from the first workout segment to the second workout segment, the exercise program may increase the belt speed to six miles per hour and the deck incline to 1%. An exercise program may include multiple sequential workout segments. An exercise program may include any number of workout segments, including 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 30, 40, 50, 100, 150, 200, 500, 1,000, or more workout segments.
[0023]In some embodiments, the one or more exercise parameters stay unchanged during the duration of a workout segment. In some embodiments, at least one exercise parameter includes a duration of a workout segment. The duration of a workout segment may include any duration, such as 1 s, 5 s, 10 s, 20 s, 30 s, 45 s, 1 min, 1.5 min, 2 min, 3 min, 4 min, 5 min, 10 min, 15 min, 20 min, 30 min, 45 min, 60 min, or any value therebetween. In some embodiments, different workout segments have different durations. For example, a first workout segment may be five minutes long and a second workout segment may be ten minutes long. In some embodiments, different workout segments have the same duration.
[0024]In some embodiments, the intensity may change throughout an exercise program. For example, a pace in a first workout segment may be 20 min per mile, and a pace in a second workout segment may be 10 min per mile, meaning that the intensity is higher in the second workout segment than in the first workout segment. In another example, an incline may be 0% in the first workout segment and 1% in the second workout segment, meaning that the intensity is higher in the second workout segment than in the first workout segment. In yet another example, a heartrate range in the first workout segment may be between 100 beats per minute (bpm) and 120 bpm, and between 140 bpm and 160 bpm in the second workout segment, meaning that the intensity is higher in the second workout segment than in the first workout segment. While embodiments discussed herein may include the second workout segment having a higher intensity than the first workout segment, it should be understood that the second workout segment may have a lower intensity than the first workout segment.
[0025]In some embodiments, at least one exercise parameter includes a speed of a tread belt of the exercise device associated with the pace. For example, the speed of the tread belt may be three miles per hour in the first workout segment, and six miles per hour in the second workout segment. In some embodiments, at least one exercise parameter includes a deck incline of a deck of the exercise device. For example, the deck incline may be 0% in the first workout segment and 1% in the second workout segment.
[0026]In some embodiments, an exercise program includes a video portion, an audio portion, and an exercise device controls portion. The video portion may include a video associated with an exercise activity. The video portion may include any type of video, such as a video of a trainer performing an exercise activity, instruction from a trainer, scenery, and so forth. The audio portion may include audio associated with an exercise activity. The audio portion may include any type of audio, such as audio of a trainer, music, and so forth. In some embodiments, the audio portion may be synchronized with the video portion. The exercise device controls may include instructions operable by the exercise device to adjust any exercise parameter of the exercise device. For example, the exercise device controls may include instructions executable by the exercise device to adjust a flywheel resistance, a belt speed, a device incline, a duration of each of the one or more workout segments, any other exercise parameter, and combinations thereof.
[0027]In some embodiments, the exercise device controls maintain the operating parameter of the exercise device at a particular setpoint for a duration of the workout segments of the exercise program. In some embodiments, a particular workout segment may include an exercise device control for every exercise parameter of the exercise device. In some embodiments, the exercise program may include an exercise control for every exercise parameter for the total length of an exercise program. For example, each workout segment in the exercise program includes starting exercise device controls and ending exercise device controls, wherein at least one exercise parameter in the starting exercise device controls differs from the exercise parameters in the ending exercise device controls.
[0028]For example, as used herein, the term “exercise program template” refers to a pre-determined exercise program or a readymade exercise program including one or more workout segments which may be freely adjusted, moved around, removed, added, and combinations thereof. In some embodiments, an exercise program template is created by a professional fitness trainer. Such pre-determined exercise programs may provide the user with readily-available exercise programs that may be implemented by a user. The user may desire to adjust a portion of the pre-determined exercise program, and may use the pre-determined exercise program recorded by the trainer as a template for the adjustments. For example, an exercise program template may include two workout segments; a five minute long first workout segment with a speed of three miles per hour with zero incline, and a ten minute long second workout segment with a speed of six miles per hour and a 1% incline. The user may adjust any portion of the template. For example, the user may freely adjust one or both of these workout segments by changing the duration, speed, and incline. In some embodiments, a user freely moves around the workout segments by switching the second workout segment to be a first in time and followed by the first workout segment. In some embodiments, a user adds a third workout segment to the exercise program template, for example, by copying one of the existing workout segments or by creating a new workout segment. For example, a user may copy the first workout segment and add it as a third workout segment that immediately follows after the second workout segment. In some embodiments, the user removes the first workout segment and adjusts the second workout segment to last twice as long. In some embodiments, a workout segment includes stopping the operation of the exercise device for the length of the workout segment. For example, a workout segment may include off-device activity, such as exercising with dumbbells or resistance bands.
[0029]For example, as used herein, the term “Fitness Data” or “User's Fitness Data” refers to the user's exercise information, fitness goals, and the user's current level of fitness. For example, the exercise information may include heartrate information, blood oxygen levels, electrocardiogram (EKG) information, blood sugar information, blood oxygen information, any other user exercise information, and combinations thereof. In some embodiments, exercise information includes user lifestyle or habit information. For example, user lifestyle or habit information may include historical training plan information, sleep information (e.g., duration, time, quality), diet and nutrition information (e.g., food eaten, supplements taken, time of meals), work details, any other user lifestyle or habit information, user exercise goal information, and combinations thereof. In some embodiments, exercise information includes qualitative user exercise information. For example, qualitative user exercise information may include user exercise program ratings, stress levels, pain levels, fatigue levels, attitude levels, motivation levels, any other qualitative user exercise information, and combinations thereof. In some embodiments, exercise information includes information related to the user's exercise activities. In some embodiments, exercise information includes demographic information of the user, including gender, age, altitude, address, any other demographic information, and combinations thereof. In some embodiments, fitness goals include long term or short-term fitness goals, such as speed goals, distance goals, weight goals, strength goals, etc. In some embodiments, a user's current level of fitness can be measured in relation to the set goal. For example, if the user's goal is to lose weight by 10 pounds, a current level of fitness may be determined in relation to current weight versus the starting weight.
[0030]
[0031]The exercise devices 102 may be in communication with a computing device(s) 104 over a network 118. The network 118 may be any type of network. For example, the network 118 may be a local area network (LAN), a wide area network (WAN), a Wi-Fi network, a cellular network, any other network, and combinations thereof.
[0032]The environment 100 may further include one or more computing device(s) 104. The one or more computing device(s) 104 may include an exercise program creator 106. The exercise program creator 106 may be configured to generate exercise programs. For example, the exercise program creator 106 may provide a graphical user interface (GUI) for a user to utilize in creating an exercise program. In one or more embodiments, an exercise program is created with one or more workout segments, as further described in connection with
[0033]In some embodiments, the one or more computing device(s) 104 further includes an exercise program template database 108. The exercise program template database 108 may include plurality of exercise program templates for a user to choose from. Some examples of exercise program templates are further discussed in connection to
[0034]The one or more computing device(s) 104 may further include an exercise device control generator 110. The exercise device control generator 110 is configured to generate a plurality of exercise device controls based on the at least one exercise parameter. The plurality of exercise device controls is configured to adjust at least one exercise parameter of an exercise device. For example, if the exercise parameter for speed is set for five miles per hour, the exercise device control for a treadmill is configured to rotate the belt speed of a tread belt at five miles per hour.
[0035]The one or more computing device(s) 104 may further include an exercise device video creator 112. The exercise device video creator 112 is configured to create a seamless and continuous video and audio based on at least one or more exercise parameters in an exercise program. For example, if an exercise program includes a first workout segment including a 10% incline exercise parameter and a second workout segment including a 0% incline exercise parameter, the exercise device video creator 112 may create a first video for the first workout segment with scenery including an uphill climb, and a second video for the second workout segment with a scenery including a flat terrain. The exercise device video creator 112 may further combine these two videos so as to provide a seamless transition between the two videos based on the speed of movement of the belt. For example, if the transition from a 10% incline to a 0% incline takes ten seconds, the scenery in the video from uphill terrain into a flat terrain will similarly take ten seconds.
[0036]The one or more computing device(s) 104 may further include a user's fitness data 114. In some embodiments, the fitness data 114 includes the user's exercise information, fitness goals, and/or the user's current level of fitness. For example, the exercise information may include heartrate information, blood oxygen levels, electrocardiogram (EKG) information, blood sugar information, blood oxygen information, any other user exercise information, and combinations thereof. In some embodiments, exercise information includes user lifestyle or habit information. For example, user lifestyle or habit information may include historical training plan information, sleep information (e.g., duration, time, quality), diet and nutrition information (e.g., food eaten, supplements taken, time of meals), work details, any other user lifestyle or habit information, user exercise goal information, and combinations thereof. In some embodiments, exercise information includes qualitative user exercise information. For example, qualitative user exercise information may include user exercise program ratings, stress levels, pain levels, fatigue levels, attitude levels, motivation levels, any other qualitative user exercise information, and combinations thereof. In some embodiments, exercise information may be information related to the user's exercise activities. In some embodiments, exercise information includes demographic information of the user, including gender, age, altitude, address, any other demographic information, and combinations thereof. In some embodiments, fitness goals may include long term or short-term fitness goals, such as speed goals, distance goals, weight goals, strength goals, etc. In some embodiments, the user's current level of fitness can be measured in relation to the set goal. For example, if the user's goal is to lose weight by 10 pounds, a current level of fitness may be determined in relation to current weight versus the starting weight. In some embodiments, one or more of the user's fitness data is used by the exercise program creator to create an exercise program based on user input. Further examples of using fitness data in creating exercise programs are provided in connection with
[0037]The one or more computing device(s) 104 may further include an exercise converter 116. The exercise converter 116 may convert an exercise program and the exercise device controls associated with the exercise program from one type of exercise device to another type of exercise device. For example, an exercise program may have originally been created to a first treadmill where the maximum incline is 20%, but another type of treadmill (a second treadmill) only has a maximum incline of 15%. If a user wishes to use the same exercise program now on the second treadmill, the exercise converter 116 may be used to convert or scale the first exercise parameters of the first treadmill to second exercise parameters of the second treadmill. In another example, an exercise program may be originally created on a stationary bicycle 102-3. If a user wishes to use the same exercise program on an elliptical device 102-2, the exercise converter 116 may convert the first exercise parameters of the stationary bicycle 102-3 into a second exercise parameters of the elliptical device 102-2.
[0038]A finished exercise program may then be delivered from the computing device(s) 104 via the network 118 to the exercise device 102. In some embodiments, the exercise device 102 is configured to implement the exercise program on the exercise device 102. For example, the exercise device 102 may be configured to execute the exercise program controls on the exercise device 102 causing at least one exercise parameter of the exercise device 102 to be adjusted. In some embodiments, the exercise program controls cause a change on a speed of a belt, incline of a deck, resistance of a flywheel, or a combination thereof.
[0039]In some embodiments, when the exercise program is delivered to the exercise device 102, the exercise program automatically starts without any further user inputs. For example, a presence-sensor on the exercise device 102 may detect a presence of a user on the exercise device 102 and start the exercise program based on detecting the user on the exercise device 102. In some embodiments, the presence-sensor is a weight sensor, a visual sensor, thermal sensor, or a combination thereof. In some embodiments, a user manually starts the exercise program by providing a user-validation to start the operation of the exercise device 102.
[0040]
[0041]As shown in
[0042]
[0043]In some embodiments, one or more of the workout segments includes on-device exercise activity and one or more of the workout segments includes off-device exercise activity. The off-device exercise activity is completable separate from the exercise device. For example, the exercise activity may be working with a dumbbells or with resistance bands. When a workout segment includes an off-device exercise activity, the exercise device controls may include generating a stop-device control configured to stop operation of the exercise device based on the off-device exercise activity. When a new workout segment begins after an off-device exercise activity, a start-device control is generated to start the operation of the exercise device after completion of the off-device activity.
[0044]In some embodiments, the start-device control includes a user-validation to start the operation of the exercise device when a user confirms readiness to start the operation of the exercise device. The user-validation may include any type of user-validation. For example, the user-validation may be a user input indicating that it is safe to start the operation of the exercise device. In some examples, the user-validation may include a presence sensor detecting a presence of the user on the exercise device, such as a weight sensor, an image sensor, an infrared sensor, or other presence sensor.
[0045]The workout segment may include stopping the operation of the exercise device for the length of the workout segment (e.g., setting one or more operating parameters to zero, such as zero speed, zero resistance). In some embodiments, stopping operation of the exercise device may include maintaining at least one exercise parameter. For example, the resistance and/or incline of the exercise device may be maintained while the exercise device is stopped. For example, a workout segment may include off-device activity, such as exercising with free weights or resistance bands, performing a body-weight exercise activity, operating a different exercise device, any other off-device activity, and combinations thereof.
[0046]In some embodiments the exercise program 220 may be converted to more than one exercise device. For example, the exercise program 220 may have originally been created to a first treadmill where the maximum incline is 20%, but another type of treadmill (a second treadmill) only has a maximum incline of 15%. If a user wishes to use the same exercise program now on the second treadmill, the exercise program 220 may scale the first exercise parameters of the first treadmill to second exercise parameters of the second treadmill. In another example, an exercise program may be originally created on a stationary bicycle. If a user wishes to use the same exercise program on an elliptical device the exercise program 220 may convert the first exercise parameters of the stationary bicycle into a second exercise parameters of the elliptical device. Similarly, the exercise device controls 330 may be scaled from a one type of exercise device to another type of exercise device, or to a same exercise device but that has either broader or more limited functionality compared to the first exercise device.
[0047]Scaling the exercise program may scale any portion of the exercise program. For example, scaling the exercise program may include scaling the calorie burn estimate of the exercise program. For example, if the maximum incline of a particular exercise device has decreased, then the calorie burn estimate for the exercise program may be reduced. In some examples, if the maximum speed of the exercise device has decreased, then the calorie burn estimate for the exercise program may be reduced. In some embodiments, other portions of the exercise program may be scaled based on the change in exercise device. For example, the speed may be increased when the incline is decreased, or vice versa. In some examples, the duration may be extended when the speed and/or the incline is decreased. This may help to maintain a target calorie burn.
[0048]
[0049]In the example shown in
[0050]In the example shown in
[0051]
[0052]
[0053]
[0054]As shown in
[0055]
[0056]
[0057]As shown in
[0058]Based on the change on one or more exercise parameters of the exercise program, the exercise device controls are adjusted based on the new exercise parameters. In some embodiments, based on the change in the fitness level of a user, the exercise device controls are adjusted. In some embodiments, the exercise device controls may be adjusted after a user has implemented and executed the current exercise program 680-1 at least one time.
[0059]The new exercise device controls may be generated based on the particular user's fitness data. For example, a user having a big increase in their fitness level may need to have a higher intensity level in their exercise program than a user who has only a small increase in their fitness level. In some embodiments, when a fitness level of a user is identified, the exercise device controls may be adjusted based on user preferences. For example, a user may have provided a preference on increasing incline, or decreasing speed. When the user preference includes increasing speed, the exercise device controls may be adjusted to increase a speed of the exercise device. When the user preference includes increasing strength, the exercise device controls may be adjusted to increase at least one of an incline or a flywheel resistance of the exercise device.
[0060]In some embodiments, identifying the change in the fitness level of a user includes identifying a change in a VO2 max of the user. For example, if the user's VO2 max was 25 mL/kg/min before and now it is 30 mL/kg/min, the system may identify that the fitness level of the user has increased. In some embodiments, identifying the change in the fitness level of a user includes identifying a change in an average VO2 of the user when performing the same current exercise program 680-1. In some embodiments, identifying the change in the fitness level of a user includes identifying a change in an average heartrate of the user. For example, if the user's average heartrate when performing the current exercise program 680-1 previously was 155 bpm, and is now 13 5 bpm, the system may identify that the fitness level of the user has increased. In another example, the user's heartrate may be analyzed over a plurality of workouts and a change in the fitness level of the user may be analyzed based on the heartrate over the plurality of workouts. In some embodiments, analyzing whether the user's heartrate has changed includes analyzing the heartrate of the user based on a target heartrate for the plurality of workouts. For example, if the user's heartrate is greater than the target heartrate, it can be identified that the fitness level of the user has decreased in which case adjusting the exercise device controls include decreasing an intensity of the exercise device controls. In another example, if the user's heartrate is lower than the target heartrate, it can be identified that the fitness level of the user has increased in which case adjusting the exercise device controls include increasing an intensity of the exercise device controls.
[0061]In some embodiments, when a user has generated the current exercise program 680-1, they may have selected a particular exercise category for a workout segment. An exercise category may include at least one of walking, running, or sprinting. In the example shown in
[0062]
[0063]As shown in
[0064]The series of acts 770 may further include an act 774 of generating a plurality of exercise device controls based on the exercise parameter. For example, the plurality of exercise device controls may be configured to adjust at least one exercise parameter of an exercise device.
[0065]The series of acts 770 may further include an act 776 of generating an exercise program including exercise device controls to be implemented on an exercise device.
[0066]
[0067]The computer system 800 includes a processor 801. The processor 801 may be a general-purpose single or multi-chip microprocessor (e.g., an Advanced RISC (Reduced Instruction Set Computer) Machine (ARM)), a special purpose microprocessor (e.g., a digital signal processor (DSP)), a microcontroller, a programmable gate array, etc. The processor 801 may be referred to as a central processing unit (CPU). Although just a single processor 801 is shown in the computer system 800 of
[0068]The computer system 800 also includes memory 803 in electronic communication with the processor 801. The memory 803 may be any electronic component capable of storing electronic information. For example, the memory 803 may be embodied as random access memory (RAM), read-only memory (ROM), magnetic disk storage media, optical storage media, flash memory devices in RAM, on-board memory included with the processor, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM) memory, registers, and so forth, including combinations thereof.
[0069]Instructions 805 and data 807 may be stored in the memory 803. The instructions 805 may be executable by the processor 801 to implement some or all of the functionality disclosed herein. Executing the instructions 805 may involve the use of the data 807 that is stored in the memory 803. Any of the various examples of modules and components described herein may be implemented, partially or wholly, as instructions 805 stored in memory 803 and executed by the processor 801. Any of the various examples of data described herein may be among the data 807 that is stored in memory 803 and used during execution of the instructions 805 by the processor 801.
[0070]A computer system 800 may also include one or more communication interfaces 809 for communicating with other electronic devices. The communication interface(s) 809 may be based on wired communication technology, wireless communication technology, or both. Some examples of communication interfaces 809 include a Universal Serial Bus (USB), an Ethernet adapter, a wireless adapter that operates in accordance with an Institute of Electrical and Electronics Engineers (IEEE) 802.11 wireless communication protocol, a Bluetooth® wireless communication adapter, and an infrared (IR) communication port.
[0071]A computer system 800 may also include one or more input devices 811 and one or more output devices 813. Some examples of input devices 811 include a keyboard, mouse, microphone, remote control device, button, joystick, trackball, touchpad, and lightpen. Some examples of output devices 813 include a speaker and a printer. One specific type of output device that is typically included in a computer system 800 is a display device 815. Display devices 815 used with embodiments disclosed herein may utilize any suitable image projection technology, such as liquid crystal display (LCD), light-emitting diode (LED), gas plasma, electroluminescence, or the like. A display controller 817 may also be provided, for converting data 807 stored in the memory 803 into text, graphics, and/or moving images (as appropriate) shown on the display device 815.
[0072]The various components of the computer system 800 may be coupled together by one or more buses, which may include a power bus, a control signal bus, a status signal bus, a data bus, etc. For the sake of clarity, the various buses are illustrated in
INDUSTRIAL APPLICABILITY
[0073]This disclosure generally relates to customizable exercise programs that are easy to create and modify, and that can be implemented automatically on one or more exercise devices. Conventional exercise systems may provide pre-programmed exercise programs to a user, but these systems do not provide a complete customization option for their users. Therefore, one of the objectives of this application is to provide systems and methods for allowing users to easily create and modify exercise programs to their own preferences and exercise goals. For example, an exercise program may be customized by utilizing an exercise program template and adjusting, changing, removing, or adding one or more workout segments, exercise parameters, exercise device controls, or a combination thereof. One possible advantage of allowing a user to customize their exercise programs is that it may create additional commitment and loyalty for the user to continue using the exercise programs as they are able to select and modify them to their own preferences. Another possible advantage is that by creating the exercise device controls, the user does not need to manually change any settings on the exercise device, as the exercise device controls automatically implement the selected exercise program on the exercise device. Furthermore, typical exercise machines do not support converting an exercise program created on one type of exercise device to another type of exercise device.
[0074]As illustrated by the foregoing discussion, the present disclosure utilizes a variety of terms to describe features and advantages of the exercise recommendation system. Additional detail is now provided regarding the meaning of such terms. For example, as used herein, the term “exercise program” refers to a pre-recorded exercise activity or series of activities that may be displayed and/or performed on an exercise device. For example, when an exercise program is running on an exercise device, the exercise program may guide a user through a workout. This may occur through a series of instructions, such as instructions delivered to a user over an audiovisual portion of an exercise program. In some situations, the instructions may include instructions to change an operating parameter of the exercise device. In this manner, the user may follow a pre-determined workout without manually changing the exercise parameters throughout the exercise program.
[0075]In some examples, as used herein, an exercise program may include one or more exercise parameters. The exercise parameters may be parameters related to the performance of an exercise activity. In some embodiments, an exercise parameter may be a representation of an operating parameter of an exercise device. In some embodiments, an exercise parameter may be a representation of a simulated outdoor activity, such as a pace, speed, hill incline, and so forth. While certain embodiments of the present disclosure may disclose operating parameters of an exercise device in terms of a simulated outdoor activity, it should be understood that the operating parameters include the operation of the exercise device to simulate the outdoor activity, such as rotating a belt with a particular speed, adjusting a resistance of a flywheel, adjusting an incline of an exercise deck, and so forth. In some embodiments, at least one exercise parameter includes an intensity. The intensity may be a representation of the difficulty of an exercise activity. For example, the intensity may include a pace, a speed, a resistance, a weight, an incline, a heartrate range, any other representation of intensity or difficulty, and combinations thereof.
[0076]In some embodiments, an exercise program includes one or more workout segments. A workout segment may be a portion of an exercise program that has a particular set of exercise parameters. In some embodiments, a workout segment may represent a length of time between changing at least one exercise parameter. As a specific, non-limiting example, a first workout segment for a treadmill may be five minutes long with a speed of three miles per hour with zero incline. A second workout segment may be ten minutes long with a speed of six miles per hour and a 1% incline. In some embodiments, a workout segment may follow another workout segment. In the example discussed above, the second workout segment may follow the first workout segment. During the transition from the first workout segment to the second workout segment, the exercise program may increase the belt speed to six miles per hour and the deck incline to 1%. An exercise program may include multiple sequential workout segments. An exercise program may include any number of workout segments, including 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 30, 40, 50, 100, 150, 200, 500, 1,000, or more workout segments.
[0077]In some embodiments, the one or more exercise parameters stay unchanged during the duration of a workout segment. In some embodiments, at least one exercise parameter includes a duration of a workout segment. The duration of a workout segment may include any duration, such as 1 s, 5 s, 10 s, 20 s, 30 s, 45 s, 1 min, 1.5 min, 2 min, 3 min, 4 min, 5 min, 10 min, 15 min, 20 min, 30 min, 45 min, 60 min, or any value therebetween. In some embodiments, different workout segments have different durations. For example, a first workout segment may be five minutes long and a second workout segment may be ten minutes long. In some embodiments, different workout segments have the same duration.
[0078]In some embodiments, the intensity may change throughout an exercise program. For example, a pace in a first workout segment may be 20 min per mile, and a pace in a second workout segment may be 10 min per mile, meaning that the intensity is higher in the second workout segment than in the first workout segment. In another example, an incline may be 0% in the first workout segment and 1% in the second workout segment, meaning that the intensity is higher in the second workout segment than in the first workout segment. In yet another example, a heartrate range in the first workout segment may be between 100 beats per minute (bpm) and 120 bpm, and between 140 bpm and 160 bpm in the second workout segment, meaning that the intensity is higher in the second workout segment than in the first workout segment. While embodiments discussed herein may include the second workout segment having a higher intensity than the first workout segment, it should be understood that the second workout segment may have a lower intensity than the first workout segment.
[0079]In some embodiments, at least one exercise parameter includes a speed of a tread belt of the exercise device associated with the pace. For example, the speed of the tread belt may be three miles per hour in the first workout segment, and six miles per hour in the second workout segment. In some embodiments, at least one exercise parameter includes a deck incline of a deck of the exercise device. For example, the deck incline may be 0% in the first workout segment and 1% in the second workout segment.
[0080]In some embodiments, an exercise program includes a video portion, an audio portion, and an exercise device controls portion. The video portion may include a video associated with an exercise activity. The video portion may include any type of video, such as a video of a trainer performing an exercise activity, instruction from a trainer, scenery, and so forth. The audio portion may include audio associated with an exercise activity. The audio portion may include any type of audio, such as audio of a trainer, music, and so forth. In some embodiments, the audio portion may be synchronized with the video portion. The exercise device controls may include instructions operable by the exercise device to adjust any exercise parameter of the exercise device. For example, the exercise device controls may include instructions executable by the exercise device to adjust a flywheel resistance, a belt speed, a device incline, a duration of each of the one or more workout segments, any other exercise parameter, and combinations thereof.
[0081]In some embodiments, the exercise device controls maintain the operating parameter of the exercise device at a particular setpoint for a duration of the workout segments of the exercise program. In some embodiments, a particular workout segment may include an exercise device control for every exercise parameter of the exercise device. In some embodiments, the exercise program may include an exercise control for every exercise parameter for the total length of an exercise program. For example, each workout segment in the exercise program includes starting exercise device controls and ending exercise device controls, wherein at least one exercise parameter in the starting exercise device controls differs from the exercise parameters in the ending exercise device controls.
[0082]For example, as used herein, the term “exercise program template” refers to a pre-determined exercise program or a readymade exercise program including one or more workout segments which may be freely adjusted, moved around, removed, added, and combinations thereof. In some embodiments, an exercise program template is created by a professional fitness trainer. Such pre-determined exercise programs may provide the user with readily-available exercise programs that may be implemented by a user. The user may desire to adjust a portion of the pre-determined exercise program, and may use the pre-determined exercise program recorded by the trainer as a template for the adjustments. For example, an exercise program template may include two workout segments; a five minute long first workout segment with a speed of three miles per hour with zero incline, and a ten minute long second workout segment with a speed of six miles per hour and a 1% incline. The user may adjust any portion of the template. For example, the user may freely adjust one or both of these workout segments by changing the duration, speed, and incline. In some embodiments, a user freely moves around the workout segments by switching the second workout segment to be a first in time and followed by the first workout segment. In some embodiments, a user adds a third workout segment to the exercise program template, for example, by copying one of the existing workout segments or by creating a new workout segment. For example, a user may copy the first workout segment and add it as a third workout segment that immediately follows after the second workout segment. In some embodiments, the user removes the first workout segment and adjusts the second workout segment to last twice as long. In some embodiments, a workout segment includes stopping the operation of the exercise device for the length of the workout segment. For example, a workout segment may include off-device activity, such as exercising with dumbbells or resistance bands.
[0083]For example, as used herein, the term “Fitness Data” or “User's Fitness Data” refers to the user's exercise information, fitness goals, and the user's current level of fitness. For example, the exercise information may include heartrate information, blood oxygen levels, electrocardiogram (EKG) information, blood sugar information, blood oxygen information, any other user exercise information, and combinations thereof. In some embodiments, exercise information includes user lifestyle or habit information. For example, user lifestyle or habit information may include historical training plan information, sleep information (e.g., duration, time, quality), diet and nutrition information (e.g., food eaten, supplements taken, time of meals), work details, any other user lifestyle or habit information, user exercise goal information, and combinations thereof. In some embodiments, exercise information includes qualitative user exercise information. For example, qualitative user exercise information may include user exercise program ratings, stress levels, pain levels, fatigue levels, attitude levels, motivation levels, any other qualitative user exercise information, and combinations thereof. In some embodiments, exercise information includes information related to the user's exercise activities. In some embodiments, exercise information includes demographic information of the user, including gender, age, altitude, address, any other demographic information, and combinations thereof. In some embodiments, fitness goals include long term or short-term fitness goals, such as speed goals, distance goals, weight goals, strength goals, etc. In some embodiments, a user's current level of fitness can be measured in relation to the set goal. For example, if the user's goal is to lose weight by 10 pounds, a current level of fitness may be determined in relation to current weight versus the starting weight.
[0084]As discussed herein, an exercise program generation system may facilitate a user generating an exercise program for execution on an exercise device. The environment may include one or more exercise devices. The exercise devices may include any type of exercise device, such as a treadmill, an elliptical device, a stationary bicycle, a rower, a cable extension device, a mirror including a backlit display behind a mirrored surface, any other exercise device, and combinations thereof. While specific exercise devices are illustrated and discussed herein, it should be understood that the techniques of the present disclosure may be applied to any exercise device that is capable of implementing an exercise program.
[0085]The exercise devices may be in communication with a computing device(s) over a network. The network may be any type of network. For example, the network may be a local area network (LAN), a wide area network (WAN), a Wi-Fi network, a cellular network, any other network, and combinations thereof.
[0086]The environment may further include one or more computing device(s). The one or more computing device(s) may include an exercise program creator. The exercise program creator may be configured to generate exercise programs. For example, the exercise program creator may provide a graphical user interface (GUI) for a user to utilize in creating an exercise program. In one or more embodiments, an exercise program is created with one or more workout segments, as further described herein. Each workout segment includes one or more exercise parameters. For example, an exercise parameter may be a duration of a workout segment, a resistance of a workout segment, an intensity of a workout segment, or a combination thereof. In some embodiments, the intensity may be a pace, a speed, an incline, or a heartrate range.
[0087]In some embodiments, the one or more computing device(s) further includes an exercise program template database. The exercise program template database may include plurality of exercise program templates for a user to choose from. Some examples of exercise program templates are further discussed herein.
[0088]The one or more computing device(s) may further include an exercise device control generator. The exercise device control generator is configured to generate a plurality of exercise device controls based on the at least one exercise parameter. The plurality of exercise device controls is configured to adjust at least one exercise parameter of an exercise device. For example, if the exercise parameter for speed is set for five miles per hour, the exercise device control for a treadmill is configured to rotate the belt speed of a tread belt at five miles per hour.
[0089]The one or more computing device(s) may further include an exercise device video creator. The exercise device video creator is configured to create a seamless and continuous video and audio based on at least one or more exercise parameters in an exercise program. For example, if an exercise program includes a first workout segment including a I 0% incline exercise parameter and a second workout segment including a 0% incline exercise parameter, the exercise device video creator may create a first video for the first workout segment with scenery including an uphill climb, and a second video for the second workout segment with a scenery including a flat terrain. The exercise device video creator may further combine these two videos so as to provide a seamless transition between the two videos based on the speed of movement of the belt. For example, if the transition from a 10% incline to a 0% incline takes ten seconds, the scenery in the video from uphill terrain into a flat terrain will similarly take ten seconds.
[0090]The one or more computing device(s) may further include a user's fitness data. In some embodiments, the fitness data includes the user's exercise information, fitness goals, and/or the user's current level of fitness. For example, the exercise information may include heartrate information, blood oxygen levels, electrocardiogram (EKG) information, blood sugar information, blood oxygen information, any other user exercise information, and combinations thereof. In some embodiments, exercise information includes user lifestyle or habit information. For example, user lifestyle or habit information may include historical training plan information, sleep information (e.g., duration, time, quality), diet and nutrition information (e.g., food eaten, supplements taken, time of meals), work details, any other user lifestyle or habit information, user exercise goal information, and combinations thereof. In some embodiments, exercise information includes qualitative user exercise information. For example, qualitative user exercise information may include user exercise program ratings, stress levels, pain levels, fatigue levels, attitude levels, motivation levels, any other qualitative user exercise information, and combinations thereof. In some embodiments, exercise information may be information related to the user's exercise activities. In some embodiments, exercise information includes demographic information of the user, including gender, age, altitude, address, any other demographic information, and combinations thereof. In some embodiments, fitness goals may include long term or short-term fitness goals, such as speed goals, distance goals, weight goals, strength goals, etc. In some embodiments, the user's current level of fitness can be measured in relation to the set goal. For example, if the user's goal is to lose weight by 10 pounds, a current level of fitness may be determined in relation to current weight versus the starting weight. In some embodiments, one or more of the user's fitness data is used by the exercise program creator to create an exercise program based on user input. Further examples of using fitness data in creating exercise programs are provided herein.
[0091]The one or more computing device(s) may further include an exercise converter. The exercise converter may convert an exercise program and the exercise device controls associated with the exercise program from one type of exercise device to another type of exercise device. For example, an exercise program may have originally been created to a first treadmill where the maximum incline is 20%, but another type of treadmill (a second treadmill) only has a maximum incline of 15%. If a user wishes to use the same exercise program now on the second treadmill, the exercise converter may be used to convert or scale the first exercise parameters of the first treadmill to second exercise parameters of the second treadmill. In another example, an exercise program may be originally created on a stationary bicycle. If a user wishes to use the same exercise program on an elliptical device, the exercise converter may convert the first exercise parameters of the stationary bicycle into a second exercise parameters of the elliptical device.
[0092]A finished exercise program may then be delivered from the computing device(s) via the network to the exercise device. In some embodiments, the exercise device is configured to implement the exercise program on the exercise device. For example, the exercise device may be configured to execute the exercise program controls on the exercise device causing at least one exercise parameter of the exercise device to be adjusted. In some embodiments, the exercise program controls cause a change on a speed of a belt, incline of a deck, resistance of a flywheel, or a combination thereof.
[0093]In some embodiments, when the exercise program is delivered to the exercise device, the exercise program automatically starts without any further user inputs. For example, a presence-sensor on the exercise device may detect a presence of a user on the exercise device and start the exercise program based on detecting the user on the exercise device. In some embodiments, the presence-sensor is a weight sensor, a visual sensor, thermal sensor, or a combination thereof. In some embodiments, a user manually starts the exercise program by providing a user-validation to start the operation of the exercise device.
[0094]An exercise program may include plurality of workout segments and plurality of exercise parameters, in accordance with at least one or more embodiments. The exercise program may include three workout segments, a first workout segment, a second workout segment, and a third workout segment. Each of the plurality of workout segments includes a plurality of exercise parameters. A workout segment defines a time interval during which exercise parameters are unchanged. For example, immediately before and immediately after a workout segment, one or more exercise parameters are changed. In some embodiments, an exercise program includes two or more workout segments that have identical exercise parameters, as long as they are not placed immediately one after another in the exercise program. For example, the first workout segment and the third workout segment may be identical, as long as the second workout segment includes at least one different exercise parameter than the first workout segment and the third workout segment.
[0095]The first workout segment includes a first speed, a first incline, and a first duration. For example, the first speed may be three miles per hour, the first incline may be a 5% incline, and the first duration may be 15 minutes. The second workout segment includes a second speed, a second incline, and a second duration. For example, the second speed may be six miles per hour, the second incline may be a 2% incline, and the second duration may be 30 minutes. The third workout segment includes a third speed, a third incline, and a third duration. For example, the third speed may be four miles per hour, the third incline maybe a 0% incline, and the third duration may be 15 minutes.
[0096]In some embodiments, an example of generating plurality of exercise device controls based on the at least one exercise parameters of an exercise program includes an exercise program including three workout segments, as previously discussed. The first workout segment may include an exercise parameter for speed. A first exercise device control is generated based on the exercise parameter for speed. For example, if the exercise parameter for speed in the exercise program is set for three miles per hour, the first exercise device control is configured to adjust the exercise parameter (e.g., the speed of the belt) of the exercise device based on the exercise parameter of the exercise program. Similarly, the first workout segment may include an exercise parameter for incline. The first exercise device control is generated based on the exercise parameter for incline. For example, if the exercise parameter for incline in the exercise program is set for 5%, the first exercise device control is configured to adjust the exercise parameter (e.g., the incline of the deck) of the exercise device based on the exercise parameter of the exercise program. Furthermore, the first workout segment may include an exercise parameter for duration. The first exercise device control is generated based on the exercise parameter for duration. For example, if the exercise parameter for duration in the exercise program is set for 15 minutes, the first exercise device control is configured to adjust the exercise parameter (e.g., the duration of the exercise machine operation) of the exercise device based on the exercise parameter of the exercise program. In some embodiments, a single workout segment includes two or more exercise parameters. For example, the first workout segment may include speed, incline, duration, or a combination thereof as exercise parameters. The first exercise device control may then create a plurality of exercise device controls to adjust the exercise device accordingly. The first exercise device controls are implemented at time t=0 and maintained as the same until t=10 minutes. At t=10 min, the second exercise device controls are implemented, causing the exercise device to adjust at least one exercise parameter of the exercise device compared to the first exercise device controls. The second exercise device controls are then maintained until t=30 min. At t=30 min, the third exercise device controls 332 are implemented, causing the exercise device to adjust at least one exercise parameter of the exercise device compared to the second exercise device controls. At time t=40 min, the exercise device controls may turn off the exercise device.
[0097]In some embodiments, one or more of the workout segments includes on-device exercise activity and one or more of the workout segments includes off-device exercise activity. The off-device exercise activity is completable separate from the exercise device. For example, the exercise activity may be working with a dumbbells or with resistance bands. When a workout segment includes an off-device exercise activity, the exercise device controls may include generating a stop-device control configured to stop operation of the exercise device based on the off-device exercise activity. When a new workout segment begins after an off-device exercise activity, a start-device control is generated to start the operation of the exercise device after completion of the off-device activity.
[0098]In some embodiments, the start-device control includes a user-validation to start the operation of the exercise device when a user confirms readiness to start the operation of the exercise device. The user-validation may include any type of user-validation. For example, the user-validation may be a user input indicating that it is safe to start the operation of the exercise device. In some examples, the user-validation may include a presence sensor detecting a presence of the user on the exercise device, such as a weight sensor, an image sensor, an infrared sensor, or other presence sensor.
[0099]The workout segment may include stopping the operation of the exercise device for the length of the workout segment (e.g., setting one or more operating parameters to zero, such as zero speed, zero resistance). In some embodiments, stopping operation of the exercise device may include maintaining at least one exercise parameter. For example, the resistance and/or incline of the exercise device may be maintained while the exercise device is stopped. For example, a workout segment may include off-device activity, such as exercising with free weights or resistance bands, performing a body-weight exercise activity, operating a different exercise device, any other off-device activity, and combinations thereof.
[0100]In some embodiments the exercise program may be converted to more than one exercise device. For example, the exercise program may have originally been created to a first treadmill where the maximum incline is 20%, but another type of treadmill (a second treadmill) only has a maximum incline of 15%. If a user wishes to use the same exercise program now on the second treadmill, the exercise program may scale the first exercise parameters of the first treadmill to second exercise parameters of the second treadmill. In another example, an exercise program may be originally created on a stationary bicycle. If a user wishes to use the same exercise program on an elliptical device the exercise program may convert the first exercise parameters of the stationary bicycle into a second exercise parameters of the elliptical device. Similarly, the exercise device controls may be scaled from a one type of exercise device to another type of exercise device, or to a same exercise device but that has either broader or more limited functionality compared to the first exercise device.
[0101]Scaling the exercise program may scale any portion of the exercise program. For example, scaling the exercise program may include scaling the calorie burn estimate of the exercise program. For example, if the maximum incline of a particular exercise device has decreased, then the calorie burn estimate for the exercise program may be reduced. In some examples, if the maximum speed of the exercise device has decreased, then the calorie burn estimate for the exercise program may be reduced. In some embodiments, other portions of the exercise program may be scaled based on the change in exercise device. For example, the speed may be increased when the incline is decreased, or vice versa. In some examples, the duration may be extended when the speed and/or the incline is decreased. This may help to maintain a target calorie burn.
[0102]In some embodiments, an exercise device, such as at least one of the exercise devices discussed herein, may provide exercise program creation. In some embodiments, a user may utilize an exercise program creator provided through an Internet browser, or an application running on a user device. The exercise program creator may provide plurality of ways to start to create a customized exercise program. For example, the GUI may show exercise program templates that have been categorized based on the exercise device being used. Each type of exercise device and their respective exercise program templates can be categorized separately under each heading. In another example, the exercise program templates may be categorized based on the user's goal. As discussed herein, a goal-based categorization of the exercise program templates are contemplated. In yet another example, the exercise program templates may be categorized based on an intensity level. An intensity level-based categorization of the exercise program templates are contemplated. In some embodiments, a user may choose not to utilize any pre-created templates, in which case the use may start creating their own customized exercise program with a new template. The new template may be a representation of a creating or generating a new exercise program, as discussed herein.
[0103]In some examples, a user has selected to create customized exercise program for a treadmill. In some embodiments, a user can select to create customized exercise program by selecting one or more of a trainer from a plurality of trainers, an intensity of the exercise program, a music, a duration of the exercise, a scenery shown while exercising, variability, or a combination thereof.
[0104]In some examples, a user has selected variability and duration as a starting template for generating customized exercise program. In some embodiments, a user may select all options to further define details of their customized exercise program template. For example, a user may select a trainer A from a plurality of trainers. In another example, a user may select pop music by selecting a pop music genre and they may further select a mountain scenery. Once a user has provided their options a detailed exercise program template with one or more workout segments having one or more exercise parameters may be shown to the user for further customization. Based on the selection, where the user selected duration as 30 min, and variability as low variability, an exercise program template is provided to the user for further customization. The exercise program template 490 includes a first workout segment and a second workout segment. The first workout segment includes a first speed, that is set to 4 Mph, a first incline that is set to 4%, and a first duration of the workout segment, that is set to IO Min. The second workout segment includes a second speed, set at 8 Mph, a second incline set at 1%, and a second duration of the second workout segment set at 20 Min. The provided template fulfills both of the options chosen on
[0105]In some embodiments, a user may customize an exercise program template. A user has decided to change the first incline on the first workout segment by selecting the block. The exercise program creator may show the minimum and maximum inclines for a specific treadmill and only allow a user to select a new incline value between the minimum (0%) and maximum (10%) incline values that are available for that specific treadmill.
[0106]In some embodiments, after a user has adjusted one exercise parameter on an exercise program, a user may desire to adjust the first incline on the first workout segment, and based on the available minimum and maximum value to select, the user selected 9% incline that replaced the original 4% incline. Based on the adjustment of one or more exercise parameters on an exercise program, the exercise device controls are adjusted as well so that the deck incline during the first 10 minutes of the exercise program is raised to 9%, instead of the 4%.
[0107]In some embodiments, an exercise program template includes three workout segments, a first workout segment, a second workout segment, and a third workout segment. Each of the plurality of workout segments includes a plurality of exercise parameters. A workout segment defines a time interval during which exercise parameters are unchanged. For example, immediately before and immediately after a workout segment, one or more exercise parameters are changed. In some embodiments, an exercise program may include two or more workout segments that have identical exercise parameters, as long as they are not placed immediately one after another in the exercise program. For example, the first workout segment and the third workout segment may be identical, as long as the second workout segment includes at least one different exercise parameter than the first workout segment and the third workout segment.
[0108]In some embodiments, the first workout segment includes a first speed, a first incline, and a first duration. For example, the first speed may be three miles per hour, the first incline may be a 5% incline, and the first duration may be 15 minutes. The second workout segment includes a second speed, a second incline, and a second duration. For example, the second speed may be six miles per hour, the second incline may be a 2% incline, and the second duration may be 30 minutes. The third workout segment includes a third speed, a third incline, and a third duration. For example, the third speed may be four miles per hour, the third incline 526-3 maybe a 0% incline, and the third duration may be 15 minutes.
[0109]In some embodiments, customizing the exercise program template includes removing one or more workout segments. A user may remove the first workout segment including the first speed, the first incline, and the first duration. In some embodiments, customizing the exercise program template may include copying one or more workout segments. A user may copy the third workout segment and replaced the removed first workout segment with the copied third workout segment. In some embodiments, customizing the exercise program template includes creating a new workout segment. A user may create a new workout segment, a fourth workout segment, that includes a fourth speed, a fourth incline, and a fourth duration. In some embodiments, customizing the exercise program template further includes moving around workout segments. The fourth workout segment may be moved at the end of the exercise program to be placed between the second workout segment and the third workout segment. In some embodiments, customizing the exercise program template further includes customizing the one or more parameters of the work segments. The second duration of the second workout segment on exercise program template may be changed to a fifth duration of the second workout segment on the customized exercise program. While the examples discussed herein illustrate a limited number of workout segments, it should be understood that the selected exercise program template and the customized exercise program may include any number of workout segments. Similarly, even though the figures show only one addition, one deletion, and one moving of a workout segment on the customized exercise program compared to the exercise program template, it should be noted that any number of additions, deletions, and moving around of workout segments is allowed. Furthermore, it should be noted that any number of modifications may be applied to any number of exercise parameters.
[0110]In some situations, the user's fitness level may change. This may make a customized exercise program, such as the current exercise program, less effective. For example, the user's fitness level may increase, resulting in the customized exercise program to be no longer challenging for the user. In another example, the user's fitness level may decrease, resulting in a workout that is too intense or even impossible for the user to perform. In accordance with at least one embodiment of the present disclosure, the exercise generation system may adjust the current exercise program based on the change in the user's fitness level. For example, if the user's fitness level increases, one or more of the exercise parameters may be adjusted to further increase the user's fitness level, or to achieve the user's goals. Similarly, if the user's fitness level decreases, one or more of the exercise parameters of the exercise program may be adjusted to allow the user to perform them completely.
[0111]The current exercise program 680-1 may include a first workout segment and a second workout segment. The first workout segment includes a first speed, a first incline, and a first duration. The second workout segment includes a second speed, a second incline, and a second duration. In some embodiments, the exercise generation system identifies a change in a fitness level of a user. For example, the exercise generation system may identify that the user's fitness level has increased. The exercise generation system may adjust the current exercise program by creating an adjusted exercise program. Based on the identification that the user's fitness level has increased, the system has adjusted the first speed, by increasing the speed by 1 mph, and the second incline, by increasing the incline by 1%.
[0112]Based on the change on one or more exercise parameters of the exercise program, the exercise device controls are adjusted based on the new exercise parameters. In some embodiments, based on the change in the fitness level of a user, the exercise device controls are adjusted. In some embodiments, the exercise device controls may be adjusted after a user has implemented and executed the current exercise program at least one time.
[0113]The new exercise device controls may be generated based on the particular user's fitness data. For example, a user having a big increase in their fitness level may need to have a higher intensity level in their exercise program than a user who has only a small increase in their fitness level. In some embodiments, when a fitness level of a user is identified, the exercise device controls may be adjusted based on user preferences. For example, a user may have provided a preference on increasing incline, or decreasing speed. When the user preference includes increasing speed, the exercise device controls may be adjusted to increase a speed of the exercise device. When the user preference includes increasing strength, the exercise device controls may be adjusted to increase at least one of an incline or a flywheel resistance of the exercise device.
[0114]In some embodiments, identifying the change in the fitness level of a user includes identifying a change in a VO2 max of the user. For example, if the user's VO2 max was 25 mL/kg/min before and now it is 30 mL/kg/min, the system may identify that the fitness level of the user has increased. In some embodiments, identifying the change in the fitness level of a user includes identifying a change in an average VO2 max of the user when performing the same current exercise program. In some embodiments, identifying the change in the fitness level of a user includes identifying a change in an average heartrate of the user. For example, if the user's average heartrate when performing the current exercise program previously was 155 bpm, and is now 135 bpm, the system may identify that the fitness level of the user has increased. In another example, the user's heartrate may be analyzed over a plurality of workouts and a change in the fitness level of the user may be analyzed based on the heartrate over the plurality of workouts. In some embodiments, analyzing whether the user's heartrate has changes includes analyzing the heartrate of the user based on a target heartrate for the plurality of workouts. For example, if the user's heartrate is greater than the target heartrate, it can be identified that the fitness level of the user has decreased in which case adjusting the exercise device controls include decreasing an intensity of the exercise device controls. In another example, if the user's heartrate is lower than the target heartrate, it can be identified that the fitness level of the user has increased in which case adjusting the exercise device controls include increasing an intensity of the exercise device controls.
[0115]In some embodiments, when a user has generated the current exercise program, they may have selected a particular exercise category for a workout segment. An exercise category may include at least one of walking, running, or sprinting. For example, the user may have selected walking as the exercise category for the first workout segment and running as the exercise category for the second workout segment. When a change in fitness level of a user is identified, and the exercise device controls are adjusted based on the change, the adjusting may be limited based on the user selected exercise category. In some embodiments, the user has selected walking as the exercise category for first workout segment, therefore the adjusted exercise program may not adjust the first speed above 4 mph as raising it above 4 mph would change the exercise category from walking into running or jogging. In some embodiments, adjusting the exercise device controls includes adjusting the exercise device controls within an exercise category of a workout segment of the exercise program.
[0116]In some embodiments, a method for generating exercise programs may include an act of receiving user input with exercise parameters. For example, the user input may be a user input for a customized workout. In some embodiments, the exercise parameters may include duration of a workout, intensity of a workout, or a combination thereof. For example, the intensity of a workout may include speed, pace, incline, heartrate range, and resistance.
[0117]The series of acts may further include an act of generating a plurality of exercise device controls based on the exercise parameter. For example, the plurality of exercise device controls may be configured to adjust at least one exercise parameter of an exercise device.
[0118]The series of acts may further include an act of generating an exercise program including exercise device controls to be implemented on an exercise device.
[0119]One or more computer systems may be used to implement the various devices, components, and systems described herein. For example, the computer system may be the one or more computing devices. In yet another example, the computer system may be the exercise device discussed herein.
[0120]The computer system includes a processor. The processor may be a general-purpose single or multi-chip microprocessor (e.g., an Advanced RISC (Reduced Instruction Set Computer) Machine (ARM)), a special purpose microprocessor (e.g., a digital signal processor (DSP)), a microcontroller, a programmable gate array, etc. The processor may be referred to as a central processing unit (CPU). Although just a single processor is discussed herein, in an alternative configuration, a combination of processors (e.g., an ARM and DSP) could be used.
[0121]The computer system also includes memory in electronic communication with the processor. The memory may be any electronic component capable of storing electronic information. For example, the memory may be embodied as random access memory (RAM), read-only memory (ROM), magnetic disk storage media, optical storage media, flash memory devices in RAM, on-board memory included with the processor, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM) memory, registers, and so forth, including combinations thereof.
[0122]Instructions and data may be stored in the memory. The instructions may be executable by the processor to implement some or all of the functionality disclosed herein. Executing the instructions may involve the use of the data that is stored in the memory. Any of the various examples of modules and components described herein may be implemented, partially or wholly, as instructions stored in memory and executed by the processor. Any of the various examples of data described herein may be among the data that is stored in memory and used during execution of the instructions by the processor.
[0123]A computer system may also include one or more communication interfaces for communicating with other electronic devices. The communication interface(s) may be based on wired communication technology, wireless communication technology, or both. Some examples of communication interfaces include a Universal Serial Bus (USB), an Ethernet adapter, a wireless adapter that operates in accordance with an Institute of Electrical and Electronics Engineers (IEEE) 802.11 wireless communication protocol, a Bluetooth® wireless communication adapter, and an infrared (IR) communication port.
[0124]A computer system may also include one or more input devices and one or more output devices. Some examples of input devices include a keyboard, mouse, microphone, remote control device, button, joystick, trackball, touchpad, and lightpen. Some examples of output devices include a speaker and a printer. One specific type of output device that is typically included in a computer system is a display device. Display devices used with embodiments disclosed herein may utilize any suitable image projection technology, such as liquid crystal display (LCD), light-emitting diode (LED), gas plasma, electroluminescence, or the like. A display controller may also be provided, for converting data stored in the memory into text, graphics, and/or moving images (as appropriate) shown on the display device.
[0125]The various components of the computer system may be coupled together by one or more buses, which may include a power bus, a control signal bus, a status signal bus, a data bus, etc. For the sake of clarity, the various buses are discussed herein as a bus system.
- [0127]A1. A method for generating exercise programs, the method comprising:
- [0128]receiving user input for a customized workout, the user input including at least one exercise parameter;
- [0129]based on the at least one exercise parameter, generating a plurality of exercise device controls, the plurality of exercise device controls configured to adjust at least one exercise parameter of an exercise device; and
- [0130]generating an exercise program to be implemented on the exercise device, the exercise program including the plurality of exercise device controls.
- [0131]A2. The method of section A1, further comprising implementing the exercise program on the exercise device.
- [0132]A3. The method of section A2, wherein, while implementing the exercise program, the exercise device controls cause the at least one exercise parameter of the exercise device to be adjusted.
- [0133]A4. The method of any of sections A1-A3, wherein the at least one exercise parameter includes a duration of a workout segment.
- [0134]A5. The method of any of sections A1-A4, wherein the at least one exercise parameter includes an intensity of a workout segment.
- [0135]A6. The method of section A5, wherein the intensity of the workout segment includes a pace.
- [0136]A7. The method of any of sections A5 or A6, wherein the intensity of the workout segment includes an incline.
- [0137]A8. The method of any of sections A5-A7, wherein the intensity of the workout segment includes a heartrate range of the workout segment.
- [0138]A9. The method of any of sections A1-A8, wherein the at least one exercise parameter includes a duration, a pace, and an incline of a workout segment.
- [0139]A10. The method of section A9, wherein the at least one exercise parameter of the exercise device includes a belt speed of a tread belt of the exercise device, the belt speed associated with the pace, and a deck incline of a deck of the exercise device, the deck incline associated with the incline.
- [0140]A11. The method of section A10, further comprising implementing the exercise program, wherein implementing the exercise program includes maintaining the belt speed and the deck incline for the duration of the workout segment.
- [0141]A12. The method of any of sections A1-A11, wherein the at least one exercise parameter of the exercise device includes a belt speed of a tread belt of the exercise device.
- [0142]A13. The method of any of sections A1-A12, wherein the at least one exercise parameter of the exercise device includes a deck incline of a deck of the exercise device.
- [0143]A14. The method of any of sections A1-A13, wherein the at least one exercise parameter of the exercise device includes a resistance of a flywheel of the exercise device.
- [0144]A15. The method of any of sections A1-A14, wherein the at least one exercise parameter includes a target heartrate, and further comprising generating the plurality of exercise device controls includes determining the plurality of exercise device controls based on the target heartrate and a fitness level of a user.
- [0145]A16. The method of any of sections A1-A15, wherein the at least one exercise parameter includes an on-device parameter and an off-device parameter, the on-device parameter including an on-device exercise activity completable through operation of the exercise device, the off-device parameter including an off-device exercise activity completable separate from the exercise device.
- [0146]A17. The method of section A16, wherein generating the plurality of exercise device controls includes generating a stop-device control configured to stop operation of the exercise device based on the off-device exercise activity.
- [0147]A18. The method of section A17, wherein generating the plurality of exercise device controls includes generating a start-device control configured to start operation of the exercise device after completion of the off-device exercise activity.
- [0148]A19. The method of section A18, wherein the start-device control includes a user-validation to start the operation of the exercise device when a user confirms readiness to start the operation of the exercise device.
- [0149]A20. The method of section A19, wherein the user-validation includes a user input.
- [0150]A21. The method of any of sections A19 or A20, wherein the user-validation includes a presence-sensor on the exercise device.
- [0151]A22. The method of section A21, wherein the presence-sensor includes at least one of a weight sensor, a visual sensor, or a thermal sensor.
- [0152]A23. The method of any of sections A1-A22, wherein receiving the user input includes receiving an adjustment to an exercise program template.
- [0153]A24. The method of section A23, wherein the exercise program template includes a pre-determined set of exercise device controls based on a pre-determined workout.
- [0154]A25. The method of any of sections A23 or A24, wherein the adjustment to the exercise program template includes a change to an intensity of a workout segment.
- [0155]A26. The method of section A25, wherein the change to the intensity includes a change to at least one of a speed, a resistance, or an incline of the workout segment of the exercise program.
- [0156]A27. The method of any of sections A23-A26, wherein the exercise program template includes a video portion and a control portion, and wherein adjusting the plurality of exercise device controls includes adjusting the control portion of the exercise program template.
- [0157]A28. The method of section A27, wherein adjusting the plurality of exercise device controls does not include adjusting the video portion.
- [0158]A29. The method of any of sections A27 or A28, wherein adjusting the plurality of exercise device controls does not include adjusting a duration of a workout segment of the control portion.
- [0159]A30. The method of any of sections A1-A30, further comprising:
- [0160]identifying a change in a fitness level of a user; and adjusting the plurality of exercise device controls based on the change in the fitness level.
- [0161]A31. The method of section A30, wherein identifying the change in the fitness level includes identifying a change in a VO2 max of the user.
- [0162]A32. The method of section A31, wherein adjusting the plurality of exercise device controls includes adjusting the exercise device controls after the user implements the exercise program at least one time.
- [0163]A33. The method of any of sections A30-A32, further comprising analyzing a heartrate of the user over a plurality of workouts, and wherein identifying the change in the fitness level includes determining the change in the fitness level based on the heartrate over the plurality of workouts.
- [0164]A34. The method of section A33, wherein analyzing the heartrate of the user over the plurality of workouts includes analyzing the heartrate of the user based on a target heartrate for the plurality of workouts.
- [0165]A35. The method of section A34, wherein, when the heartrate of the user is greater than the target heartrate, identifying the change in the fitness level includes identifying a decrease in the fitness level and adjusting the plurality of exercise device controls includes decreasing an intensity of the plurality of exercise device controls.
- [0166]A36. The method of any of sections A34 or A35, wherein, when the heartrate of the user is lower than the target heartrate, identifying the change in the fitness level includes identifying an increase in the fitness level and adjusting the plurality of exercise device controls includes increasing an intensity of the plurality of exercise device controls.
- [0167]A37. The method of any of sections A30-A36, wherein adjusting the plurality of exercise device controls includes adjusting the exercise device controls within an exercise category of a workout segment of the exercise program.
- [0168]A38. The method of section A37, wherein the exercise category includes at least one of walking, running, or sprinting.
- [0169]A39. The method of any of sections A30-A38, wherein adjusting the plurality of exercise device controls includes adjusting the plurality of exercise device controls based on a user preference.
- [0170]A40. The method of section A39, wherein, when the user preference includes increasing speed, adjusting the plurality of exercise device controls includes increasing a speed of the exercise device.
- [0171]A41. The method of section A39, wherein, when the user preference includes increasing strength, adjusting the plurality of exercise device controls includes increasing at least one of an incline or a flywheel resistance of the exercise device.
- [0172]A42. The method of any of sections A1-A41, wherein generating the plurality of exercise device controls includes scaling the exercise device controls to a maximum exercise parameter of the exercise device.
- [0173]A43. The method of section A42, further comprising generating a calorie burn estimate based on the maximum exercise parameter.
- [0174]A44. The method of any of sections A1-A43, wherein generating the plurality of exercise device controls includes generating the exercise device controls for a plurality of exercise device types.
[0175]Embodiments of the present disclosure may thus utilize a special purpose or general-purpose computing system including computer hardware, such as, for example, one or more processors and system memory. Embodiments within the scope of the present disclosure also include physical and other computer-readable media for carrying or storing computer-executable instructions and/or data structures, including applications, tables, data, libraries, or other modules used to execute particular functions or direct selection or execution of other modules. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer system. Computer-readable media that store computer-executable instructions (or software instructions) are physical storage media. Computer-readable media that carry computer-executable instructions are transmission media. Thus, by way of example, and not limitation, embodiments of the present disclosure can include at least two distinctly different kinds of computer-readable media, namely physical storage media or transmission media. Combinations of physical storage media and transmission media should also be included within the scope of computer-readable media.
[0176]Both physical storage media and transmission media may be used temporarily store or carry, software instructions in the form of computer readable program code that allows performance of embodiments of the present disclosure. Physical storage media may further be used to persistently or permanently store such software instructions. Examples of physical storage media include physical memory (e.g., RAM, ROM, EPROM, EEPROM, etc.), optical disk storage (e.g., CD, DVD, HDDVD, Blu-ray, etc.), storage devices (e.g., magnetic disk storage, tape storage, diskette, etc.), flash or other solid-state storage or memory, or any other non-transmission medium which can be used to store program code in the form of computer-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer, whether such program code is stored as or in software, hardware, firmware, or combinations thereof.
[0177]A “network” or “communications network” may generally be defined as one or more data links that enable the transport of electronic data between computer systems and/or modules, engines, and/or other electronic devices. When information is transferred or provided over a communication network or another communications connection (either hardwired, wireless, or a combination of hardwired or wireless) to a computing device, the computing device properly views the connection as a transmission medium. Transmission media can include a communication network and/or data links, carrier waves, wireless signals, and the like, which can be used to carry desired program or template code means or instructions in the form of computer-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer.
[0178]Further, upon reaching various computer system components, program code in the form of computer-executable instructions or data structures can be transferred automatically or manually from transmission media to physical storage media (or vice versa). For example, computer-executable instructions or data structures received over a network or data link can be buffered in memory (e.g., RAM) within a network interface module (NIC), and then eventually transferred to computer system RAM and/or to less volatile physical storage media at a computer system. Thus, it should be understood that physical storage media can be included in computer system components that also (or even primarily) utilize transmission media.
[0179]One or more specific embodiments of the present disclosure are described herein. These described embodiments are examples of the presently disclosed techniques. Additionally, in an effort to provide a concise description of these embodiments, not all features of an actual embodiment may be described in the specification. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous embodiment-specific decisions will be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one embodiment to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure.
[0180]The articles “a,” “an,” and “the” are intended to mean that there are one or more of the elements in the preceding descriptions. The terms “comprising,” “including,” and “having” are intended to be inclusive and mean that there may be additional elements other than the listed elements. Additionally, it should be understood that references to “one embodiment” or “an embodiment” of the present disclosure are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features. For example, any element described in relation to an embodiment herein may be combinable with any element of any other embodiment described herein. Numbers, percentages, ratios, or other values stated herein are intended to include that value, and also other values that are “about” or “approximately” the stated value, as would be appreciated by one of ordinary skill in the art encompassed by embodiments of the present disclosure. A stated value should therefore be interpreted broadly enough to encompass values that are at least close enough to the stated value to perform a desired function or achieve a desired result. The stated values include at least the variation to be expected in a suitable manufacturing or production process, and may include values that are within 5%, within 1%, within 0.1%, or within 0.01% of a stated value.
[0181]A person having ordinary skill in the art should realize in view of the present disclosure that equivalent constructions do not depart from the spirit and scope of the present disclosure, and that various changes, substitutions, and alterations may be made to embodiments disclosed herein without departing from the spirit and scope of the present disclosure. Equivalent constructions, including functional “means-plus-function” clauses are intended to cover the structures described herein as performing the recited function, including both structural equivalents that operate in the same manner, and equivalent structures that provide the same function. It is the express intention of the applicant not to invoke means-plus-function or other functional claiming for any claim except for those in which the words ‘means for’ appear together with an associated function. Each addition, deletion, and modification to the embodiments that falls within the meaning and scope of the claims is to be embraced by the claims.
[0182]The terms “approximately,” “about,” and “substantially” as used herein represent an amount close to the stated amount that still performs a desired function or achieves a desired result. For example, the terms “approximately,” “about,” and “substantially” may refer to an amount that is within less than 5% of, within less than 1% of, within less than 0.1% of, and within less than 0.01% of a stated amount. Further, it should be understood that any directions or reference frames in the preceding description are merely relative directions or movements. For example, any references to “up” and “down” or “above” or “below” are merely descriptive of the relative position or movement of the related elements.
[0183]The present disclosure may be embodied in other specific forms without departing from its spirit or characteristics. The described embodiments are to be considered as illustrative and not restrictive. The scope of the disclosure is, therefore, indicated by the appended claims rather than by the foregoing description. Changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Claims
What is claimed is:
1. A method for generating exercise programs, comprising:
receiving a user input for a customized workout, the user input including at least one exercise parameter;
generating, based at least in part on the at least one exercise parameter, a plurality of exercise device controls, the plurality of exercise device controls configured to adjust at least one operating parameter of an exercise device; and
generating an exercise program to be implemented on the exercise device, the exercise program comprising the plurality of exercise device controls.
2. The method of
implementing the exercise program on the exercise device.
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. The method of
11. The method of
implementing the exercise program, wherein implementing the exercise program comprises:
maintaining the belt speed and the deck incline for the duration of the workout segment.
12. The method of
13. The method of
14. The method of
15. The method of
determining the plurality of exercise device controls based at least in part on the target heartrate and a fitness level of a user.
16. The method of
17. The method of
generating a stop-device control configured to stop operation of the exercise device based at least in part on the off-device exercise activity.
18. The method of
generating a start-device control configured to start operation of the exercise device after completion of the off-device exercise activity.
19. An exercise system, comprising:
an exercise device;
one or more memories comprising instructions; and
one or more processors coupled with the one or more memories and configured to execute the instructions to cause the exercise system to:
receive a user input for a customized workout, the user input including at least one exercise parameter;
generate, based at least in part on the at least one exercise parameter, a plurality of exercise device controls, the plurality of exercise device controls configured to adjust at least one operating parameter of the exercise device; and
generate an exercise program to be implemented on the exercise device, the exercise program comprising the plurality of exercise device controls.
20. A non-transitory computer-readable medium storing code comprising instructions which, when executed by one or more processors of an exercise device, cause the exercise device to:
receive a user input for a customized workout, the user input including at least one exercise parameter;
generate, based at least in part on the at least one exercise parameter, a plurality of exercise device controls, the plurality of exercise device controls configured to adjust at least one operating parameter of the exercise device; and
generate an exercise program to be implemented on the exercise device, the exercise program comprising the plurality of exercise device controls.