The present invention generally relates to equipment for exercise, rehabilitation, athletic performance or sports training, and the like, and more specifically relates to control systems for said equipment.
Speed and other operational parameters of a conventional piece of exercise equipment, such as a treadmill, are typically manually set by a user. If the user wishes to change any of these parameters during operation, the user must manipulate a keypad or other touch interface to make the change.
There is a demonstrable need for self-pacing exercise equipment to bring improvements in safety, to accommodate users with disabilities (e.g., uneven gait), and to enhance the user experience overall. There have been some previous attempts to making self-pacing treadmills; however, the existing systems lack a fundamental grounding in biomechanics and are unable to properly adjust for the dynamic pace and motion of each individual user.
A system for controlling exercise equipment based on user pace and motion analysis is disclosed. The system includes a control unit communicatively coupled with a center of mass (COM) sensor and one or more additional sensors. The COM sensor is configured to track a position of a body of a user on the exercise equipment over time. The one or more additional sensors are configured to track off-center movements of the user over time. The control unit is configured to modulate an adjustable parameter of the exercise equipment based on a plurality of measurements of the user's body position and off-center movements collected by the COM sensor and the one or more additional sensors over time.
In some embodiments, the system is specifically configured to control a treadmill. For example, the system may include: a first time-of-flight (TOF) sensor configured to track a position of a body of a user on the treadmill over time; a second TOF sensor configured to track a position of a left leg of the user on the treadmill over time; a third TOF sensor configured to track a position of a right leg of the user on the treadmill over time; and a control unit configured to modulate a speed of the treadmill based on measurements from the first, second, and third TOF sensors.
A method of controlling exercise equipment is also disclosed. The method may include the steps of: tracking a position of a body of a user on the exercise equipment over time with a COM sensor coupled to or embedded within the exercise equipment; tracking off-center movements of the user over time with one or more additional sensors coupled to or embedded within the exercise equipment; and modulating an adjustable parameter of the exercise equipment, with a control unit coupled to or embedded within the exercise equipment, based on a plurality of measurements of the user's body position and off-center movements collected by the COM sensor and the one or more additional sensors over time.
This Summary is provided solely as an introduction to subject matter that is fully described in the Detailed Description and Drawings. The Summary should not be considered to describe essential features nor be used to determine the scope of the Claims. Moreover, it is to be understood that both the foregoing Summary and the following Detailed Description are example and explanatory only and are not necessarily restrictive of the subject matter claimed.
The detailed description is described with reference to the accompanying figures. The use of the same reference numbers in different instances in the description and the figures may indicate similar or identical items. Various embodiments or examples (“examples”) of the present disclosure are disclosed in the following detailed description and the accompanying drawings. The drawings are not necessarily to scale. In general, operations of disclosed processes may be performed in an arbitrary order, unless otherwise provided in the claims.
The present disclosure is directed to a system 100 for controlling exercise equipment based on user pace and motion analysis. For example, the system 100 may be configured to control exercise equipment, including but not limited to a treadmill, based on user pace and motion (e.g., gait) analysis. In some embodiments, the system 100 utilizes a motion-capture free sensor system to identify gait, position, and limb (e.g., leg) swing. Using an algorithm to assess exercise equipment (e.g., treadmill) speed, on a moment by moment basis, the invention adjusts equipment speed based upon limb speed, user position, and other factors. The system 100 effectively enables automated, real-time responsive, self-pacing exercise equipment. The system 100 may also improve exercise equipment safety by providing an automatic shut-off feature when the operator is not using the equipment appropriately or when external motion is detected in proximity to moving mechanical parts.
In some embodiments, the COM sensor 106 and the one or more off-center sensors 104 are time-of-flight (TOF) sensors, such as but not limited to: optical sensors (e.g., infrared sensors, Lidar sensors, etc.), radar sensors, or hybrid sensors. In a treadmill implementation, for example, the system 100 may include: a first TOF sensor (i.e., the COM sensor 106) configured to track a position of a body of a user on the treadmill over time; a second TOF sensor (i.e., left-side/left-shank off-center sensor 104) configured to track a position of a left leg of the user on the treadmill over time; and a third TOF sensor (i.e., right-side/right-shank off-center sensor 104) configured to track a position of a right leg of the user on the treadmill over time. As discussed in more detail below, the control unit 102 may be configured to modulate a speed of the treadmill based on measurements from the first, second, and third TOF sensors.
Referring now to
The processor provides processing functionality for at least the control unit 102 and can include any number of processors, microprocessors, microcontrollers, circuitry, field programmable gate array (FPGA) or other processing systems and resident or external memory for storing data, executable code and other information accessed or generated by the control unit 102. The processor can execute one or more software programs embodied in a non-transitory computer readable medium (e.g., memory) that implement techniques/operations described herein. The processor is not limited by the materials from which it is formed, or the processing mechanisms employed therein and, as such, can be implemented via semiconductor(s) and/or transistors (e.g., using electronic integrated circuit (IC) components), and so forth.
The memory can be an example of tangible, computer-readable storage medium that provides storage functionality to store various data and/or program code associated with operation of the control unit 102/processor, such as software programs and/or code segments, or other data to instruct the processor, and possibly other components of the control unit 102, to perform the functionality described herein. Thus, the memory can store data, such as a program of instructions for operating the control unit 102, including its components (e.g., processor, communication interface, etc.), and so forth. It should be noted that while a single memory is described, a wide variety of types and combinations of memory (e.g., tangible, non-transitory memory) can be employed. The memory can be integral with the processor, can comprise stand-alone memory, or can be a combination of both. Some examples of the memory can include removable and non-removable memory components, such as random-access memory (RAM), read-only memory (ROM), flash memory (e.g., a secure digital (SD) memory card, a mini-SD memory card and/or a micro-SD memory card), solid-state drive (SSD) memory, magnetic memory, optical memory, universal serial bus (USB) memory devices, hard disk memory, external memory, or the like.
The communication interface can be operatively configured to communicate with components of the control unit 102. For example, the communication interface can be configured to retrieve data from the processor or other devices (e.g., sensors 104, 106, 108, and/or 110, treadmill 200, etc.), transmit data for storage in the memory, retrieve data from storage in the memory, and so forth. The communication interface can also be communicatively coupled with the processor to facilitate data transfer between components of the control unit 102 and the processor. It should be noted that while the communication interface is described as a component of the control unit 102, one or more components of the communication interface can be implemented as external components communicatively coupled to the control unit 102 via a wired and/or wireless connection. The control unit 102 can also include and/or connect to one or more input/output (I/O) devices (e.g., via the communication interface), such as an input device (e.g., a trackpad, a touchpad, a touchscreen, a keyboard, a keypad, a microphone (e.g., for voice commands), etc.) and/or an output device (e.g., a display, a speaker, a tactile feedback device, etc.). In embodiments, the communication interface may also include or may be coupled with a transmitter, receiver, transceiver, physical connection interface, or any combination thereof.
It shall be understood that any of the functions, steps or operations described herein are not necessarily all performed by one control unit 102. In some embodiments, various functions, steps, or operations may be performed by one or more control units 102. For example, one or more operations and/or sub-operations may be performed by a first control unit, additional operations and/or sub-operations may be performed by a second control unit, and so forth. Furthermore, some of the operations and/or sub-operations may be performed in parallel and not necessarily in the order that they are disclosed herein.
In embodiments, the control unit 102 may be within the central console 202 of the treadmill 200. Alternatively, the control unit 102 may be externally coupled to the central console 202 or integrated within or coupled to another portion of the treadmill 200. The control unit 202 may be configured to communicate with the treadmill 200 via a CSAFE communication interface of the treadmill 200 or any other appropriate communication protocol.
As shown in
The control unit 102 is configured to modulate the speed of the treadmill based on the measurements from the COM sensor 106 and the off-center (left-side/left-shank and right-side/right-shank) sensors 104. For example, the control unit 102 may be configured to: collect multiple sets of sensor measurements for the position of the body of the user, the position of the left leg of the user, and the position of the right leg of the user on the treadmill at multiple points in time; calculate differences between heel strike measurements in a first set of sensor measurements for a first point in time and heel strike measurements in a second set of sensor measurements for a second point in time; and adjust the speed of the treadmill based on the differences between the heel strike measurements at the first and second points in time.
The system 100 may be configured to account for user disabilities (e.g., uneven gait). For example, in some embodiments, the control unit 102 is configured to adjust the speed of the treadmill based on the differences between the heel strike measurements at the first and second points in time by reducing the speed of the treadmill to conform to a difference between heel strike measurements of the user's slowest leg. In further embodiments, the control unit 102 is configured to adjust the speed of the treadmill based on the differences between the heel strike measurements at the first and second points in time by: (i) reducing the speed of the treadmill to conform to a difference between heel strike measurements of the user's slowest leg for a first time frame corresponding to a full step of the slowest leg of the user; and then (ii) increasing the speed of the treadmill to conform to a difference between heel strike measurements of user's fastest leg for a second time frame corresponding to a full step of the fastest leg of the user. The control unit 102 may be configured to repeat (i) and (ii) until detecting a change in differences between heel strike measurements at subsequent points in time.
In some embodiments, the control unit 102 may be configured to assign weights to the measurements from the COM sensor 106 and the off-center (left-side/left-shank and right-side/right-shank) sensors 104 based on treadmill specifications, user-input data associated with the user (e.g., height, weight, age, physiological information, average performance parameters, target performance parameters, etc.), and/or previously collected sensor measurements. The control unit 102 may additionally/alternatively be configured to assign weights to the sensor measurements to compensate for a non-responsive sensor (e.g., when the COM sensor 106 or one of the off-center sensors 104 is determined to be non-responsive or providing out-of-range data, most likely due to malfunction).
In some embodiments, the system 100 may further include force/pressure sensors configured to assist the off-center sensors 104 with detection of heel strikes, or to assist with calibration by measuring the user's weight and/or the amount of force that the user exerts on the treadmill 200 while running/walking. For example, the system 100 may include load cells 108, force sensing resistors 110, or other types of force/pressure sensors configured to detect force/pressure exerted on the platform 210 and/or belt 212. In some embodiments, the control unit 102 may be configured to assign weights to measurements from sensors 104 and/or 106 based on force, pressure, and/or impact data collected via sensors 108 and/or 110.
In addition to controlling the treadmill 200 based on user pace and motion analysis, the control unit 102 may be further configured to provide long term user analytics or session analytics based on recorded sensor measurements and logged treadmill speed over time. For example, the control unit 102 may be configured to record and/or report various metrics such as, but not limited to, average speed, highest speed, lowest speed, step counts, gait performance, left leg performance, right leg performance, and the like.
The COM sensor 106 and the off-center (left-side/left-shank and right-side/right-shank) sensors 104 may be further configured to detect whether the user in within a predefined zone on the treadmill 200 (e.g., between the lower range and upper range boundary lines in
In embodiments, the system 100 engages in a feedback loop to regulate the speed of the treadmill 200 constantly. Starting with the instant speed of the belt 212, the control unit 102 is configured to initiate communication with the treadmill 200 (e.g., via C-SAFE) to determine the sensor input and the user's position and leg speed (blocks 302-308). One set of sensors (e.g., COM sensor 106) measures the position of the user on the belt 212 of the treadmill 200, and another set of sensors (e.g., off-center (left-side/left-shank and right-side/right-shank) sensors 104) can measure the location of each of the user's feet—based on their gait cycle (blocks 310-314). The sensor data may integrate into the treadmill through the C-SAFE portal or any other appropriate communication interface.
The integration of the sensor data allows the system 100 to calibrate, over time, to determine if the system 100 needs to accelerate the belt to accommodate the instant pace of the user. By using multiple sensors, the system 100 can fill buffers where signal from one sensor is unable to meaningfully measure the location of the user on the treadmill 200. For example, if a sensor loses the location of one of the user's feet, it can simply weight the data from the user's visible foot.
In the foregoing manner, the system 100 creates ongoing frames (MW) wherein it can compare the biomechanics of the user and the instant speed of the user (blocks 316-322, also see
With the buffered information and the operation of the treadmill, the control unit 102 is ready to apply an algorithm in order assess if the system 100 needs to adjust the belt speed (block 324). The algorithm uses the distance values from the sensors and weights them dynamically based upon the fill buffers. In addition, the sensors identify the change in heel strikes—the location of where the user's feet are falling on the treadmill belt 212—to position the user on the known length of the belt 212. Integrating that positional data relative to the pre-defined limits, the algorithm dictates real time speed changes of the belt based on the user's biomechanics (blocks 326-330).
The control unit 102 then closes the frame and starts over. Beginning with the instant speed of the treadmill the system then measures the position of the user.
The algorithm executed by the control unit 102 focuses on what the user is doing “now” and then “next”. These “windows” of data allow the algorithm to capture and then continually adjust to the next conditions. In this implementation, the system 100 employs a feed-forward solution and the data windowing provides the feedback loop. For each step, the algorithm checks for that step and the corresponding center of mass reading, then it makes a decision, and it continuously repeats the loop.
Other systems have tried to overcome similar operating challenges by monitoring and controlling a continuous stream of data, but this is too reactive, and the system becomes unstable—the user is not part of the system because there is too much instantaneous feedback in a continuous stream of data approach.
In embodiments of the disclosed system 100, the control unit 102 executes the self-pacing algorithm. The control unit 102 reads the user's current cadence, position, and speed through the sensor system (sensors 104, 106, etc.) that detect the left and right shank swing as well as the user's center of mass. The control unit 102 then compares these readings against the desired cadence, position, and speed and sends the corresponding speed update signals to the treadmill 200 as needed.
Referring now to
This main loop comprises the data gathering subsystem. The data window (moving window, MW) is sliding through time and is typically 2-3 gait cycles. Change in distance and change in time over a few steps are used to prime the system. Variables in the algorithm are used to hold the information for continuous analysis. Algorithm control dials are the primary control variables. As shown in
In some embodiments, the moving windows (MW) can then be adjusted wider or narrower (e.g., MW(n)), allowing the algorithm to better assess stride-to-stride variance without overdamping or underdamping the next positions. The main loop continually performs input capture, processing the data (filling windows, filtering and smoothing the data), and output adjustments. This “time history of movement” represents an improved dynamic system model for user feedback and system adjustment.
It is further contemplated that several sub-window concepts could be created, for example, to account for specifics and nuances in commercial versus consumer, performance, rehabilitation, and other use cases, creating infinite opportunities to fine tune the dials required for the different control approaches.
In an example operational scenario, the control unit 102 may be configured to fill the window (MW) when the user starts walking on the treadmill 200. When enough data is acquired to make an adjustment, the algorithm does so based off the cadence provided by the lower sensors (sensors 104) and the Center of Mass by the upper sensor (sensor 106). The window (MW) is always refreshed with new data and only keeps as much data as needed (set by the dials) to allow the algorithm to detect changes in cadence.
In some embodiments, the system 100 only requires the last two peaks and calculates a change between them. Data smoothing and corrections happen within the algorithm and only affect change to improve data being acted upon to allow a better choice when making/feeding the treadmill changes.
User safety is inherent in the system 100 because the algorithm can feed directly into the existing treadmill speed controls, not around nor outside of them. Furthermore, the existing treadmill safety mechanisms and standards are still in place, including the safety lanyards. As such, the algorithm can adhere to and improve upon all the safety standards currently designed into the treadmill.
Robustness is also inherent in the system. Due to the scalar “dials,” the measurement weights can be adjusted if any one of the existing optical sensors becomes momentarily or permanently disabled. Similarly, with the ranges already defined for detecting peaks and falls in the data windows, any data that is significantly different (e.g., MW (anomaly)) can be ignored and not responded to. The algorithm is designed to assume the data is imperfect—it could be a shin reading, then a foot, then an ankle—but all the data is considered to create a curve for the window to assess.
In embodiments, the algorithm also includes “minChange” and “maxChange” variables to prevent hard stops. The algorithm does not adjust the treadmill speed until it has completed a window. This smoothing helps prevent unexpected rapid acceleration and deceleration. The algorithm control dials can also be tuned to model falling, and then be adjusted to prevent the user from falling accordingly.
In embodiments, the control unit 102 is also configured to adapt the system 100 to different modes (e.g., rehabilitation, walking, jogging, running, sprinting, etc.). For example,
Studies have compared stride times calculated by the system 100 to stride times calculated using foot switches.
As previously noted, the system 100 may be configured for other types of exercise equipment or modalities. For example,
The system 100 may be configured for controlling any type of exercise equipment based on user pace and motion analysis, where the COM sensor 106 is configured to track a position of a body of a user on the exercise equipment over time, the one or more additional sensors (off-center sensors 104) are configured to track off-center movements of the user over time, and the control unit 102 is configured to modulate an adjustable parameter (e.g., speed, resistance, etc.) of the exercise equipment based on a plurality of measurements of the user's body position and off-center movements collected by the COM sensor and the one or more additional sensors over time.
Similarly, a method of controlling any type of exercise equipment may include the steps of: tracking a position of a body of a user on the exercise equipment over time with a COM sensor coupled to or embedded within the exercise equipment; tracking off-center movements of the user over time with one or more additional sensors coupled to or embedded within the exercise equipment; and modulating an adjustable parameter of the exercise equipment, with a control unit coupled to or embedded within the exercise equipment, based on a plurality of measurements of the user's body position and off-center movements collected by the COM sensor and the one or more additional sensors over time.
Furthermore, the system and/or method described above can further include means to provide analytics based on user performance and recorded equipment parameters. For example, the control unit 102 may be further configured to provide long term user analytics or session analytics based on recorded sensor measurements and logged equipment parameters over time. For example, the control unit 102 may be configured to record and/or report various metrics such as, but not limited to, average speed, highest speed, lowest speed, average resistance, lowest resistance, highest resistance, step counts, rpm, gait performance, left leg performance, right leg performance, and the like.
Although the technology has been described with reference to the embodiments illustrated in the attached drawing figures, equivalents may be employed, and substitutions may be made herein without departing from the scope of the technology as recited in the claims. Components illustrated and described herein are examples of devices and components that may be used to implement the embodiments of the present invention and may be replaced with other devices and components without departing from the scope of the invention. Furthermore, any dimensions, degrees, and/or numerical ranges provided herein are to be understood as non-limiting examples unless otherwise specified in the claims.
The present application claims priority under 35 U.S.C. § 119(e) to U.S. Provisional Application Ser. No. 63/214,430, filed Jun. 24, 2021, and titled “System for Controlling Exercise Equipment Based on User Pace and Motion Analysis,” which is incorporated herein by reference in its entirety.
This invention was made with U.S. government support under grant number UT2 GM130175 awarded by the National Institutes of Health (NIH). The U.S. government has certain rights in the invention.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2022/034914 | 6/24/2022 | WO |
Number | Date | Country | |
---|---|---|---|
63214430 | Jun 2021 | US |