Stretching activities have been shown to be beneficial for mobility, athletic performance, rehabilitation, and general health. Stretching is most commonly performed as a series of exercises, often incorporated into an exercise or rehabilitation routine; or as its own activity such as yoga.
Due to the viscoelastic nature of the tissues to be stretched, recommended durations for a single stretch often range from 30 seconds to several minutes. When a stretching routine involves multiple stretches or repetitions, stretching can become very time-consuming and tedious, resulting in low compliance to a given routine. Non-compliance may be particularly problematic in medical, athletic or rehabilitation settings, where prescribed stretches may be critical to avoid injury, attain recovery or mitigate effects of disease progression. In the case of patients with Duchenne Muscular Dystrophy (DMD), stretching is important to maintain joint mobility for as much function as possible due to the progressive nature of the disease and associated contractures. Currently, prescriptions for stretching regimens are communicated, prescribed, and reproduced based on therapist and caregiver feel. The subjective nature of this method leads to variability across stretch sessions, patients, and stretch providers.
Orthoses are commonly available to facilitate stretching. Ankle foot orthoses (AFOs) such as those from Ultraflex Systems (Pottstown, Pa.) and Cascade Dafo (Ferndale, Wash.) are commonly prescribed for DMD patients to facilitate ankle stretching. The AFOs may utilize an elastic or spring-loaded stirrup to pull upward on the forefoot to assist with dorsiflexion stretching of the ankle joint. Because these AFOs utilize passive elastic components, they must be manually engaged or disengaged to apply the stretching force, making repetitions of a particular stretch cumbersome. Additionally, the rigid elements of AFOs render the device bulky, which may discourage patient use and result in decreased stretching regimen compliance. AFOs worn at night are not well tolerated by some users, and users often remove the AFOs. Some complain of not being able to walk to the bathroom at night while wearing them. There is currently no documentation of how long or how often they are used. The toe strap or stirrup that induces ankle dorsiflexion typically has an elastic section to allow the foot to release and reset into the stretch. There is currently no documentation of how often or how long the foot is pressing against the elastic portion.
Powered devices for stretching assistance are known, such as the Intellistretch developed by Rehabtek LLC (Wilmette, Ill.). These systems typically comprise large, stationary frames, computers and equipment. The size of these devices typically requires that they remain in one location and that the wearer transfer into and out of the system in order to use it. In some cases, the patient may be required to travel to a clinical setting where such a system is provided.
The passive range of motion (ROM) of a joint is often reduced as a consequence of injury, surgery or degenerative changes. Stretching exercise regimens are often prescribed to restore ROM, sometimes in conjunction with therapy. As described above, stretching regimens can be tedious and compliance is often poor. In the case of reduced ROM secondary to surgery, a continuous passive motion (CPM) machine is commonly prescribed. CPM machines are typically large, utilize wall power, and are generally not indicated to be worn while sleeping or performing any other activities. CPM machines also typically operate through a specified range of motion, without any capability of sensing the actual ROM of the joint or progress being made. An improved system would be portable, with an integral battery or power supply, would be able to be worn while sleeping or performing other activities, and be able to sense and measure the range of motion or kinematics of the joint to properly stretch the joint and increase ROM as prescribed.
Portable powered stretching exosuit (PPSE) systems and methods according to various embodiments are described herein. The PPSE can be used to facilitate stretching routines for athletics, rehabilitation, or for therapeutic purposes such as maintaining mobility for DMD patients. The PPSE is comfortable, easy to don and doff, and in a form factor such that the PPSE can be worn during the wearer's normal activities. The PPSE may be battery-powered, and automatically perform or assist with specific stretching routines. PPSEs may be optimized for one or more specific stretches, whether for athletic performance, medical purposes or rehabilitation following surgery or injury. One example includes ankle dorsiflexion and eversion stretches, which are commonly prescribed for DMD patients.
The PPSE can “learn” the stretch prescribed by a therapist to an individual by measuring and recording the biomechanics of the stretch and parameters of the stretch regimen performed by the therapist on the patient. The PPSE can reproduce the stretch biomechanics across stretch sessions. The PPSE can communicate the parameters of the stretch biomechanics and stretch regimen with a central database. The PPSE may use the stored data to suggest stretching regimens during the programming step, and enable the user and therapist to access the database to explore successful treatment regimens for similar users. The PPSE may be used to record and share innovations in therapy quantitatively to guide individual therapy, capture innovations in prescribed therapy, outcome measures to evaluate the impact of drug, gene, or manual therapy treatments, and document improvement in joint health to guide practitioners and inform insurance reimbursement.
In one embodiment, a portable powered stretching exosuit (PPSE) system for use with a human body joint is provided. The PPSE system can include a support plate having inside, outside, and lateral attachment points, a load distributing and flexible grip elements (Flexgrip) configured to enshroud a portion of the human body adjacent to the joint, first, second, and third flexible linear actuators (FLAs), each of which are coupled to the support plate and the Flexgrip. The system can include at least one muscle activity detection sensor, at least one pressure sensor coupled to the plate, and control circuitry electrically coupled to the first, second, and third FLAs, the at least one muscle activity detection sensor, and the at least one pressure sensor, the control circuitry operative to execute a control scheme to stretch the joint, wherein the control scheme selectively activates the first, second, and third FLAs to apply to one or more stretching forces to the joint.
In another embodiment, a method implemented in a portable powered stretching exosuit (PPSE) system for use with a human foot is provided. The method includes conducting first programming in which a person performs a manual stretching routine on a user foot that has the PPSE donned thereon, the conducting comprising recording sensor data during execution of the manual stretching routine, and generating second programming based on the recorded sensor data, wherein the second programming controls operation of the PPSE to execute an automated stretching routine that emulates the manual stretching routine.
In yet another embodiment, a portable powered stretching exosuit (PPSE) system for use with a human foot is provided. The system can include a base layer comprising an ankle region and a calf region, first load distribution member secured to the calf region, second load distribution member secured to the ankle region, a footplate constructed to interface with a planar surface of the foot and is coupled to the second load distribution member, the footplate including first and second attachment points. The system can include first flexible linear actuator (FLA) coupled to the first load distribution member and the first attachment point, second FLA coupled to the first load distribution member and the second attachment point, a plurality of sensors, and control circuitry electrically coupled to the first and second FLAs and the plurality of sensors, the control circuitry operative to control operation of the first and second FLAs to apply a stretch routine to the foot.
Various objects, features, and advantages of the disclosed subject matter can be more fully appreciated with reference to the following detailed description of the disclosed subject matter when considered in connection with the following drawings, in which like reference numerals identify like elements.
In the following description, numerous specific details are set forth regarding the systems, methods and media of the disclosed subject matter and the environment in which such systems, methods and media may operate, etc., in order to provide a thorough understanding of the disclosed subject matter. It will be apparent to one skilled in the art, however, that the disclosed subject matter may be practiced without such specific details, and that certain features, which are well known in the art, are not described in detail in order to avoid complication of the disclosed subject matter. In addition, it will be understood that the examples provided below are exemplary, and that it is contemplated that there are other systems, methods and media that are within the scope of the disclosed subject matter.
A PPSE can typically include elements of an assistive exosuit, as described in U.S. patent application Ser. No. ______, titled “Systems and Methods for Assistive Exosuit System,” filed ______, the contents of which are incorporated by reference. A PPSE typically includes one or more flexible linear actuators (FLAs). An FLA is a powered actuator capable of generating a contractile force between two attachment points, over a given stroke length. An FLA is flexible, such that it can follow a contour, for example around a body surface, and therefore the forces at the attachment points are not necessarily aligned. In some embodiments, one or more FLAs comprise one or more twisted string actuators or Flexdrives, as described in further detail in U.S. Pat. No. 9,266,233, the contents of which are incorporated herein by reference. In the descriptions that follow, FLA refers to a flexible linear actuator that exerts a contractile force, contracts or shortens when actuated. The FLA may be used in conjuction with a mechanical clutch that lock the tension force generated by the FLA in place so that the FLA motor does not have to consume power to maintain the desired tension force. Examples of such mechanical clutches are discussed below. FLA may also be used in connection with electrolaminate clutches, which are described in the U.S. Pat. No. 9,266,233. The electrolaminate clutch (e.g., clutches configured to use electrostatic attraction to generate controllable forces between clutching elements) may provide power savings by locking a tension force without requiring the FLA to maintain the same force.
In some embodiments, a PPSE can be adapted to be both comfortable and unobtrusive, as well as to comfortably and efficiently transmit loads from one or more FLAs to the wearer's body in order to provide the desired assistance. The PPSE can include one or more different material types to achieve these purposes. Elastic materials may provide compliance to conform to the wearer's body and allow for ranges of movement. The innermost layer is typically adapted to grip the wearer's skin, undergarments or clothing so that the PPSE does not slip as stretching loads are applied. Substantially inextensible materials are preferably used to transfer loads from the to the wearer's body. These materials may be substantially inextensible in one axis, yet flexible or extensible in other axes such that the load transmission is along preferred paths. The load transmission paths can be optimized to distribute the loads across regions of the wearer's body to minimize the forces felt by the wearer, while providing efficient load transfer with minimal loss and not causing the PPSE to slip. Collectively, this load transmission configuration may be referred to as a Flexgrip. Further details and embodiments are described in International Application PCT/US16/19565, titled “Flexgrip,” the contents of which are incorporated herein by reference. Flexgrips refer to elements that distribute loads across a region of the wearer's body and may sometimes be referred to as a load distribution member.
A third FLA (208) is operably coupled at a first end to the medial side of a Flexgrip (202) at the upper calf and at the opposite end to a footplate (206) at the lateral side of the midfoot (209). Actuating the third FLA (208) pulls on the outside of the foot to perform an eversion stretch. The Flexgrips (202) around the upper calf support the loads of the FLAs (201, 204, 208), distributing forces generated by the FLAs evenly around the calf, while the Flexgrip resists sliding down the leg.
The footplate (206) distributes forces generated by the FLAs about the plantar surface of the foot. Stiffness or rigidity of the footplate distributes these loads across the foot both for comfort, and to ensure that the forces generate a dorsiflexion torque that stretches the ankle, as opposed to stretching the plantar fascia of the foot. That is, the footplate (206) may support the arch of the foot and is sufficiently stiff such that it does not stretch the plantar fascia when a dorsiflexion or eversion stretch is applied to the foot. A strut (214) connects the footplate (206) to a Flexgrip (215) at the lower ankle so that the footplate is securely coupled to the foot. The coupling between footplate (206) and Flexgrip (215) can ensure that the ankle is pulled forward towards the front of the foot (in the direction of the toes) when the PPSE subjects the foot to a dorsiflexion stretch. Many other mechanisms for securing the back of the foot or the region above the calceaneus bone to the footplate (206) are possible and are discussed in more detail below.
It should be appreciated that additional FLAs may be added to the PPSE of
In one example, first and second FLAs (201, 204) are simultaneously actuated to perform a dorsiflexion stretch. Based on the prescribed stretch, the FLAs apply a specified total force corresponding to the sum of the forces measured by the force sensors (212) integrated in the first and second FLAs. The control hardware monitors the pressure sensors (211) on the bottom of the foot to ensure that the forces applied by the FLAs are appropriately balanced, adjusting each FLA as needed. The output of the goniometers (213) is monitored to measure the actual range of motion and amount of stretch that was achieved. In another example, a wearer initiates a dorsiflexion or eversion stretch to the best of their ability, using their own muscles. The EMG sensors (210) detect this activity, and the FLAs are actuated to support the wearer-initiated stretch, maintain balance and help prevent fatigue. In yet another example, first, second, and third FLAs (201, 204, and 208) are simultaneously actuated to perform a combination dorsiflexion and heel eversion stretch. The control hardware can monitor pressure sensors (211) and goniometers (213) to ensure the stretches are being applied with adequate force and sufficient range of motion.
The first stretch segment (340) is a slow ramp in position actuated by the FLAs, from the resting position (302) to an end position (312) that is defined by the position at which the stretch force reaches a specified level (313), as programmed. The stretch force can be determined by the contactor force applied by FLAs or can be measured using a sensor. In one embodiment, the specified level (313) can set on-the-fly by the user. For example, the stretch force may increase at constant rate and the user can instruct the PPSE to cease increasing the stretch force by providing an input to a user interface. The first stretch segment can also be a ramp in force up to a defined force level, because the force is expected to raise exponentially with a ramp in position. The second stretch segment (341) is a hold of position (312). During this position hold, the joint is expected to relax viscoelastically. Once the force relaxes to a programmed level (314) set in the programming step, the third stretch segment (342) begins. The third stretch segment is a ramp in position up to the position at which the same force level (313) programmed for the first stretch segment occurs. Due to viscoelastic relaxation during the second stretch segment, the force level (313) is expected to occur at a more dorsiflexed joint position (315) as compared to joint position (312) reached during the first stretch segment (340). The fourth stretch segment (343) is a hold at the position (315) defined by the programmed force level (313), with measurement of force relaxation. When the measured stress reaches the programmed level (314), the fifth segment (344) begins. In the fifth segment, the joint is slowly released back to the resting position, by releasing the clutching and reversing or releasing the actuators. The viscoelastic time constant of collagen is around 100 seconds. Therefore, the approximate time of the stretch can be predicted by the ratio of the max stretched force and the target relaxation force level (314) according to standard exponential relationship:
A reduction to 61% of max force can occur over 50 seconds, to 36% of Fmax can occur over 100 seconds, and to 13% of Fmax can occur over 200 seconds. Thus this control mode can result in stretch sequences lasting several minutes to a half hour.
If desired, the stretch and hold segments can be repeated as many times as desired during a stretch session. The stretch forces, positions, hold segments are selected to target the viscoelastic parameters of the joint (e.g., foot) and tissue.
As in
In the first stretch segment (361), the user activates muscles that are agonists to (work in the same direction as) the direction of the stretch (at the ankle, the tibialis anterior and other dorsiflexors) to near-maximal effort or level of tolerance, at the cue of the tablet/phone application. The actuators match the voluntary dorsiflexion motion, and provide actuation forces to balance the foot rotation and ankle eversion (See
Footplate with Contour Blocks and Electrolaminate Clutch
The PPSE is then programmed for the specific stretches prescribed for the wearer. In a first programming step (704), the PPSE “learns” stretches as they are performed by a therapist. For example, a therapist may manually perform a dorsiflexion ankle stretch, applying the appropriate amount of force or resistance based on their training and familiarity with the wearer's needs. The PPSE can detect the forces applied during the stretch, for example with pressure sensors in the footplate, goniometers at the ankle joint, or other elements of the sensors and controls layer. This enables the PPSE to reproduce the stretch as performed by the therapist via the sensors and controls layer. In a second programming step (705), the stretching regimen or routine is programmed, including the stretch duration and frequency. The wearer is then trained (706) in use of the PPSE, for example how to don and doff the system, clean and care for the device, and any specific guidelines or techniques for the stretching regimen with the PPSE.
The wearer is then released to use the PPSE for independent stretch assistance at home (707). Depending on the prescribed stretches and wearer's capabilities, the PPSE may be worn for stretching while asleep, during leisure time or other appropriate settings for a given stretch sequence. While at use in the home, the sensors and controls layer of the PPSE logs data pertaining to the stretching regimen, including wearer compliance with the regimen, PPSE status, and analytics related to the stretches such as range of motion and joint stiffness. These data are logged and reported to a clinician, therapist, caregiver or other individual or service (708). Based on these data, the stretch regimen programming is adjusted, as necessary (709).
Traction typically increases the range of motion of a joint, which facilitates stretching and may increase the effectiveness of a stretch.
The FSRs (1001) are stitched with one common conductive thread connecting them electrically (1006), to be used as a common ground. Each FSR has a separate electrical contact with the conductive thread (1009), which is not connected to the other FSR. As in
In this example the blocks are separated for clarity in the illustration, but can be connected by narrow segments with arbitrary shapes and angles to control effective bending stiffness and position of the structure under no-load condition. Blocks can also be combined with multiple channels in different directions to create networks of contour blocks with controllable contours and pressure distributions.
Several direct measurements are made by embedded sensors integrated into the PPSE as described above, including but not limited to: skin stretch (1301), joint position (1302), FLA force (1304), foot pressure (1305), and muscle activity (1307). Several derived values are calculated from the measurements, including but not limited to joint position (1302, which may be either directly measured or calculated), joint velocity (1303), joint torque (1306). At the programming step, the joint stiffness (1309) and desired stretch position and torque (1310) are measured, and the stretch regimen parameters (1311) are entered and recorded locally in the PPSE and also in the database. The measured, derived, and entered values can be used to control the position, force, and duration of the segments of the stretch regimen (for example, as in
If desired, some or all of the derived data can be reported to the user and therapist to track disease progression or therapy effects. The primary readout to track progression is the joint stiffness (1309), and may also include changes over time in any of the other measured or derived data, including stretch reflex or reciprocal inhibition (1307). The PPSE may store the parameters describing the stretch regimen and the user biomechanics.
Events that may be detected from the collective sensors include user effort against the device (1308) and stretch reflex or reciprocal inhibition in the muscles (1307). Detection of user effort against the device (1308) or a stretch reflex (1312) may indicate that the speed or force of the stretch should be decreased, and/or the duration of the stretch increased, while detection of reciprocal inhibition (1313) may indicate a beneficial neuromuscular response to the stretch regimen. These events can be reported to the therapist and user, along with suggestions to alter the stretch regimen based on the collected experience stored in the database.
The PPSE may use these stored data to suggest stretching regimens during the programming step, and enable the user and therapist to access the database to explore successful treatment regimens for similar users. The collected data may be used to guide individual therapy, capture innovations in prescribed therapy, evaluate the impact of drug, gene, or manual therapy treatments, and document improvement in joint health to guide practitioners and inform insurance reimbursement.
A PPSE can be operated by electronic controllers disposed on or within the PPSE or in wireless or wired communication with the PPSE. The electronic controllers can be configured in a variety of ways to operate the PPSE and to enable functions of the PPSE. The electronic controllers can access and execute computer-readable programs that are stored in elements of the PPSE or in other systems that are in direct or indirect communications with the PPSE. The computer-readable programs can describe methods for operating the PPSE or can describe other operations relating to a PPSE or to a wearer of a PPSE.
The user interface 1410 can be configured to be removably mounted to the PPSE 1400 (e.g., by straps, magnets, Velcro, charging and/or data cables). Alternatively, the user interface 1410 can be configured as a part of the PPSE 1400 and not to be removed during normal operation. In some examples, a user interface can be incorporated as part of the PPSE 1400 (e.g., a touchscreen integrated into a sleeve of the PPSE 1400) and can be used to control and/or access information about the PPSE 1400 in addition to using the user interface 1810 to control and/or access information about the PPSE 1400. In some examples, the controller 1805 or other elements of the PPSE 1400 are configured to enable wireless or wired communication according to a standard protocol (e.g., Bluetooth, ZigBee, WiFi, LTE or other cellular standards, IRdA, Ethernet) such that a variety of systems and devices can be made to operate as the user interface 1410 when configured with complementary communications elements and computer-readable programs to enable such functionality.
The PPSE 1400 can be configured as described in example embodiments herein or in other ways according to an application. The PPSE 1400 can be operated to enable a variety of applications. The PPSE 1400 can be operated to enhance the strength of a wearer by detecting motions of the wearer (e.g., using sensors 1403) and responsively applying torques and/or forces to the body of the wearer (e.g., using actuators 1401) to increase the forces the wearer is able to apply to his/her body and/or environment. The PPSE 1400 can be operated to train a wearer to perform certain physical activities. For example, the PPSE 1400 can be operated to enable rehabilitative therapy of a wearer. The PPSE 1400 can operate to amplify motions and/or forces produced by a wearer undergoing therapy in order to enable the wearer to successfully complete a program of rehabilitative therapy. Additionally or alternatively, the PPSE 1400 can be operated to prohibit disordered movements of the wearer and/or to use the actuators 1801 and/or other elements (e.g., haptic feedback elements) to indicate to the wearer a motion or action to perform and/or motions or actions that should not be performed or that should be terminated. Similarly, other programs of physical training (e.g., dancing, skating, other athletic activities, vocational training) can be enabled by operation of the PPSE 1400 to detect motions, torques, or forces generated by a wearer and/or to apply forces, torques, or other haptic feedback to the wearer. Other applications of the PPSE 1400 and/or user interface 1410 are anticipated.
The user interface 1410 can additionally communicate with communications network(s) 1420. For example, the user interface 1410 can include a WiFi radio, an LTE transceiver or other cellular communications equipment, a wired modem, or some other elements to enable the user interface 1410 and PPSE 1400 to communicate with the Internet. The user interface 1410 can communicate through the communications network 1420 with a server 1430. Communication with the server 1430 can enable functions of the user interface 1410 and PPSE 1400. In some examples, the user interface 1410 can upload telemetry data (e.g., location, configuration of elements 1401, 1403 of the PPSE 1400, physiological data about a wearer of the PPSE 1400) to the server 1430.
In some examples, the server 1430 can be configured to control and/or access information from elements of the PPSE 1400 (e.g., 1401, 1403) to enable some application of the PPSE 1400. For example, the server 1430 can operate elements of the PPSE 1400 to move a wearer out of a dangerous situation if the wearer was injured, unconscious, or otherwise unable to move themselves and/or operate the PPSE 1400 and user interface 1410 to move themselves out of the dangerous situation. Other applications of a server in communications with a PPSE are anticipated.
The user interface 1410 can be configured to communicate with a second user interface 1445 in communication with and configured to operate a second flexible exosuit 1440. Such communication can be direct (e.g., using radio transceivers or other elements to transmit and receive information over a direct wireless or wired link between the user interface 1410 and the second user interface 1445). Additionally or alternatively, communication between the user interface 1410 and the second user interface 1445 can be facilitated by communications network(s) 1420 and/or a server 1430 configured to communicate with the user interface 1410 and the second user interface 1445 through the communications network(s) 1420.
Communication between the user interface 1410 and the second user interface 1445 can enable applications of the PPSE 1400 and second PPSE 1440. In some examples, actions of the PPSE 1400 and second flexible exosuit 1440 and/or of wearers of the PPSE 1400 and second PPSE 1440 can be coordinated. For example, the PPSE 1400 and second PPSE 1440 can be operated to coordinate the lifting of a heavy object by the wearers. The timing of the lift, and the degree of support provided by each of the wearers and/or the PPSE 1400 and second PPSE 1440 can be controlled to increase the stability with which the heavy object was carried, to reduce the risk of injury of the wearers, or according to some other consideration. Coordination of actions of the PPSE 1400 and second PPSE 1440 and/or of wearers thereof can include applying coordinated (in time, amplitude, or other properties) forces and/or torques to the wearers and/or elements of the environment of the wearers and/or applying haptic feedback (though actuators of the exosuits 1400, 1440, through dedicated haptic feedback elements, or through other methods) to the wearers to guide the wearers toward acting in a coordinated manner.
Coordinated operation of the PPSE 1400 and second PPSE 1440 can be implemented in a variety of ways. In some examples, one PPSE (and the wearer thereof) can act as a master, providing commands or other information to the other PPSE such that operations of the PPSE 1400, 1440 are coordinated. For example, the PPSE 1400, 1440 can be operated to enable the wearers to dance (or to engage in some other athletic activity) in a coordinated manner. One of the PPSEs can act as the ‘lead’, transmitting timing or other information about the actions performed by the ‘lead’ wearer to the other PPSE, enabling coordinated dancing motions to be executed by the other wearer. In some examples, a first wearer of a first exosuit can act as a trainer, modeling motions or other physical activities that a second wearer of a second exosuit can learn to perform. The first exosuit can detect motions, torques, forces, or other physical activities executed by the first wearer and can send information related to the detected activities to the second exosuit. The second exosuit can then apply forces, torques, haptic feedback, or other information to the body of the second wearer to enable the second wearer to learn the motions or other physical activities modeled by the first wearer. In some examples, the server 1430 can send commands or other information to the PPSEs 1400, 1440 to enable coordinated operation of the PPSEs 1400, 1440.
The PPSE 1400 can be operated to transmit and/or record information about the actions of a wearer, the environment of the wearer, or other information about a wearer of the PPSE 1400. In some examples, kinematics related to motions and actions of the wearer can be recorded and/or sent to the server 1430. These data can be collected for medical, scientific, entertainment, social media, or other applications. The data can be used to operate a system. For example, the PPSE 1400 can be configured to transmit motions, forces, and/or torques generated by a user to a robotic system (e.g., a robotic arm, leg, torso, humanoid body, or some other robotic system) and the robotic system can be configured to mimic the activity of the wearer and/or to map the activity of the wearer into motions, forces, or torques of elements of the robotic system. In another example, the data can be used to operate a virtual avatar of the wearer, such that the motions of the avatar mirrored or were somehow related to the motions of the wearer. The virtual avatar can be instantiated in a virtual environment, presented to an individual or system with which the wearer is communicating, or configured and operated according to some other application.
Conversely, the PPSE 1400 can be operated to present haptic or other data to the wearer. In some examples, the actuators 1401 (e.g., twisted string actuators, exotendons) and/or haptic feedback elements (e.g., EPAM haptic elements) can be operated to apply and/or modulate forces applied to the body of the wearer to indicate mechanical or other information to the wearer. For example, the activation in a certain pattern of a haptic element of the PPSE 1400 disposed in a certain location of the PPSE 1400 can indicate that the wearer had received a call, email, or other communications. In another example, a robotic system can be operated using motions, forces, and/or torques generated by the wearer and transmitted to the robotic system by the PPSE 1400. Forces, moments, and other aspects of the environment and operation of the robotic system can be transmitted to the PPSE 1400 and presented (using actuators 1401 or other haptic feedback elements) to the wearer to enable the wearer to experience force-feedback or other haptic sensations related to the wearer's operation of the robotic system. In another example, haptic data presented to a wearer can be generated by a virtual environment, e.g., an environment containing an avatar of the wearer that is being operated based on motions or other data related to the wearer that is being detected by the PPSE 1400.
Note that the PPSE 1400 illustrated in
A controller of a PPSE and/or computer-readable programs executed by the controller can be configured to provide encapsulation of functions and/or components of the flexible exosuit. That is, some elements of the controller (e.g., subroutines, drivers, services, daemons, functions) can be configured to operate specific elements of the PPSE (e.g., a twisted string actuator, a haptic feedback element) and to allow other elements of the controller (e.g., other programs) to operate the specific elements and/or to provide abstracted access to the specific elements (e.g., to translate a command to orient an actuator in a commanded direction into a set of commands sufficient to orient the actuator in the commanded direction). This encapsulation can allow a variety of services, drivers, daemons, or other computer-readable programs to be developed for a variety of applications of a flexible exosuits. Further, by providing encapsulation of functions of a flexible exosuit in a generic, accessible manner (e.g., by specifying and implementing an application programming interface (API) or other interface standard), computer-readable programs can be created to interface with the generic, encapsulated functions such that the computer-readable programs can enable operating modes or functions for a variety of differently-configured PPSE, rather than for a single type or model of flexible exosuit. For example, a virtual avatar communications program can access information about the posture of a wearer of a flexible exosuit by accessing a standard exosuit API. Differently-configured exosuits can include different sensors, actuators, and other elements, but can provide posture information in the same format according to the API. Other functions and features of a flexible exosuit, or other robotic, exoskeletal, assistive, haptic, or other mechatronic system, can be encapsulated by APIs or according to some other standardized computer access and control interface scheme.
The controller 1510 additionally operates a user interface 1550 that is configured to present information to a user and/or wearer of the PPSE 1500 and a communications interface 1560 that is configured to facilitate the transfer of information between the controller 1510 and some other system (e.g., by transmitting a wireless signal). Additionally or alternatively, the user interface 1550 can be part of a separate system that is configured to transmit and receive user interface information to/from the controller 1510 using the communications interface 1560 (e.g., the user interface 1550 can be part of a cellphone).
The controller 1510 is configured to execute computer-readable programs describing functions of the flexible exosuit 1512. Among the computer-readable programs executed by the controller 1510 are an operating system 1512, applications 1514a, 1514b, 1514c, and a calibration service 1516. The operating system 1512 manages hardware resources of the controller 1510 (e.g., I/O ports, registers, timers, interrupts, peripherals, memory management units, serial and/or parallel communications units) and, by extension, manages the hardware resources of the PPSE 1500. The operating system 1512 is the only computer-readable program executed by the controller 1510 that has direct access to the hardware interface electronics 1540 and, by extension, the actuators 1520 and sensors 1530 of the PPSE 1500.
The applications 1514a, 1514b, 1514 are computer-readable programs that describe some function, functions, operating mode, or operating modes of the PPSE 1500. For example, application 1514a can describe a process for transmitting information about the wearer's posture to update a virtual avatar of the wearer that includes accessing information on a wearer's posture from the operating system 1512, maintaining communications with a remote system using the communications interface 1560, formatting the posture information, and sending the posture information to the remote system. The calibration service 1516 is a computer-readable program describing processes to store parameters describing properties of wearers, actuators 1520, and/or sensors 1530 of the PPSE 1500, to update those parameters based on operation of the actuators 1520, and/or sensors 1530 when a wearer is using the PPSE 1500, to make the parameters available to the operating system 1512 and/or applications 1514a, 1514b, 1514c, and other functions relating to the parameters. Note that applications 1514a, 1514b, 1514 and calibration service 1516 are intended as examples of computer-readable programs that can be run by the operating system 1512 of the controller 1510 to enable functions or operating modes of a PPSE 1500.
The operating system 1512 can provide for low-level control and maintenance of the hardware (e.g., 1520, 1530, 1540). In some examples, the operating system 1512 and/or hardware interface electronics 1540 can detect information about the PPSE 1500, the wearer, and/or the wearer's environment from one or more sensors 1530 at a constant specified rate. The operating system 1512 can generate an estimate of one or more states or properties of the PPSE 1500 or components thereof using the detected information. The operating system 1512 can update the generated estimate at the same rate as the constant specified rate or at a lower rate. The generated estimate can be generated from the detected information using a filter to remove noise, generate an estimate of an indirectly-detected property, or according to some other application. For example, the operating system 1512 can generate the estimate from the detected information using a Kalman filter to remove noise and to generate an estimate of a single directly or indirectly measured property of the PPSE 1500, the wearer, and/or the wearer's environment using more than one sensor. In some examples, the operating system can determine information about the wearer and/or PPSE 1500 based on detected information from multiple points in time. For example, the operating system 1500 can determine an eversion stretch and dorsiflexion stretch.
In some examples, the operating system 1512 and/or hardware interface electronics 1540 can operate and/or provide services related to operation of the actuators 1520. That is, in case where operation of the actuators 1520 requires the generation of control signals over a period of time, knowledge about a state or states of the actuators 1520, or other considerations, the operating system 1512 and/or hardware interface electronics 1540 can translate simple commands to operate the actuators 1520 (e.g., a command to generate a specified level of force using a twisted string actuator (TSA) of the actuators 1520) into the complex and/or state-based commands to the hardware interface electronics 1540 and/or actuators 1520 necessary to effect the simple command (e.g., a sequence of currents applied to windings of a motor of a TSA, based on a starting position of a rotor determined and stored by the operating system 1510, a relative position of the motor detected using an encoder, and a force generated by the TSA detected using a load cell).
In some examples, the operating system 1512 can further encapsulate the operation of the PPSE 1500 by translating a system-level simple command (e.g., a commanded level of force tension applied to the footplate) into commands for multiple actuators, according to the configuration of the PPSE 1500. This encapsulation can enable the creation of general-purpose applications that can effect a function of an PPSE (e.g., allowing a wearer of the PPSE to stretch his foot) without being configured to operate a specific model or type of PPSE (e.g., by being configured to generate a simple force production profile that the operating system 1512 and hardware interface electronics 1540 can translate into actuator commands sufficient to cause the actuators 1520 to apply the commanded force production profile to the footplate).
The operating system 1512 can act as a standard, multi-purpose platform to enable the use of a variety of PPSEs having a variety of different hardware configurations to enable a variety of mechatronic, biomedical, human interface, training, rehabilitative, communications, and other applications. The operating system 1512 can make sensors 1530, actuators 1520, or other elements or functions of the PPSE 1500 available to remote systems in communication with the PPSE 1500 (e.g., using the communications interface 1560) and/or a variety of applications, daemons, services, or other computer-readable programs being executed by operating system 1512. The operating system 1512 can make the actuators, sensors, or other elements or functions available in a standard way (e.g., through an API, communications protocol, or other programmatic interface) such that applications, daemons, services, or other computer-readable programs can be created to be installed on, executed by, and operated to enable functions or operating modes of a variety of flexible exosuits having a variety of different configurations. The API, communications protocol, or other programmatic interface made available by the operating system 1512 can encapsulate, translate, or otherwise abstract the operation of the PPSE 1500 to enable the creation of such computer-readable programs that are able to operate to enable functions of a wide variety of differently-configured flexible exosuits.
Additionally or alternatively, the operating system 1512 can be configured to operate a modular flexible exosuit system (i.e., a flexible exosuit system wherein actuators, sensors, or other elements can be added or subtracted from a flexible exosuit to enable operating modes or functions of the flexible exosuit). In some examples, the operating system 1512 can determine the hardware configuration of the PPSE 1500 dynamically and can adjust the operation of the PPSE 1500 relative to the determined current hardware configuration of the PPSE 1500. This operation can be performed in a way that was ‘invisible’ to computer-readable programs (e.g., 1514a, 1514b, 1514c) accessing the functionality of the PPSE 1500 through a standardized programmatic interface presented by the operating system 1512. For example, the computer-readable program can indicate to the operating system 1512, through the standardized programmatic interface, that a specified level of torque was to be applied to an ankle of a wearer of the PPSE 1500. The operating system 1512 can responsively determine a pattern of operation of the actuators 1520, based on the determined hardware configuration of the PPSE 1500, sufficient to apply the specified level of torque to the ankle of the wearer.
In some examples, the operating system 1512 and/or hardware interface electronics 1540 can operate the actuators 1520 to ensure that the PPSE 1500 does not operate to directly cause the wearer to be injured and/or elements of the PPSE 1500 to be damaged. In some examples, this can include not operating the actuators 1520 to apply forces and/or torques to the body of the wearer that exceeded some maximum threshold. This can be implemented as a watchdog process or some other computer-readable program that can be configured (when executed by the controller 1510) to monitor the forces being applied by the actuators 1520 (e.g., by monitoring commands sent to the actuators 1520 and/or monitoring measurements of forces or other properties detected using the sensors 1530) and to disable and/or change the operation of the actuators 1520 to prevent injury of the wearer. Additionally or alternatively, the hardware interface electronics 1540 can be configured to include circuitry to prevent excessive forces and/or torques from being applied to the wearer (e.g., by channeling to a comparator the output of a load cell that is configured to measure the force generated by a TSA, and configuring the comparator to cut the power to the motor of the TSA when the force exceeded a specified level).
In some examples, operating the actuators 1520 to ensure that the PPSE 1500 does not damage itself can include a watchdog process or circuitry configured to prevent over-current, over-load, over-rotation, or other conditions from occurring that can result in damage to elements of the PPSE 1500. For example, the hardware interface electronics 1540 can include a metal oxide varistor, breaker, shunt diode, or other element configured to limit the voltage and/or current applied to a winding of a motor.
Note that the above functions described as being enabled by the operating system 1512 can additionally or alternatively be implemented by applications 1514a, 1514b, 1514c, services, drivers, daemons, or other computer-readable programs executed by the controller 1500. The applications, drivers, services, daemons, or other computer-readable programs can have special security privileges or other properties to facilitate their use to enable the above functions.
The operating system 1512 can encapsulate the functions of the hardware interface electronics 1540, actuators 1520, and sensors 1530 for use by other computer-readable programs (e.g., applications 1514a, 1514b, 1514c, calibration service 1516), by the user (through the user interface 1550), and/or by some other system (i.e., a system configured to communicate with the controller 1510 through the communications interface 1560). The encapsulation of functions of the PPSE 1500 can take the form of application programming interfaces (APIs), i.e., sets of function calls and procedures that an application running on the controller 1510 can use to access the functionality of elements of the PPSE 1500. In some examples, the operating system 1512 can make available a standard ‘exosuit API’ to applications being executed by the controller 1510. The ‘exosuit API’ can enable applications 1514a, 1514b, 1514c to access functions of the exosuit 1500 without requiring those applications 1514a, 1514b, 1514c to be configured to generate whatever complex, time-dependent signals are necessary to operate elements of the PPSE 1500 (e.g., actuators 1520, sensors 1530).
The ‘PPSE API’ can allow applications 1514a, 1514b, 1514c to send simple commands to the operating system 1512 (e.g., ‘begin storing mechanical energy from the ankle of the wearer when the foot of the wearer contacts the ground’) in such that the operating system 1512 can interpret those commands and generate the command signals to the hardware interface electronics 1540 or other elements of the PPSE 1500 that are sufficient to effect the simple commands generated by the applications 1514a, 1514b, 1514c (e.g., determining whether the foot of the wearer has contacted the ground based on information detected by the sensors 1530, responsively applying high voltage to an exotendon that crosses the user's ankle).
The ‘PPSE API’ can be an industry standard (e.g., an ISO standard), a proprietary standard, an open-source standard, or otherwise made available to individuals that can then produce applications for PPSEs. The ‘PPSE API’ can allow applications, drivers, services, daemons, or other computer-readable programs to be created that are able to operate a variety of different types and configurations of PPSEs by being configured to interface with the standard ‘PPSE API’ that is implemented by the variety of different types and configurations of PPSEs. Additionally or alternatively, the ‘PPSE API’ can provide a standard encapsulation of individual exosuit-specific actuators (i.e., actuators that apply forces to specific body segments, where differently-configured exosuits may not include an actuator that applies forces to the same specific body segments) and can provide a standard interface for accessing information on the configuration of whatever PPSE is providing the ‘PPSE API’. An application or other program that accesses the ‘PPSE API’ can access data about the configuration of the PPSE (e.g., locations and forces between body segments generated by actuators, specifications of actuators, locations and specifications of sensors) and can generate simple commands for individual actuators (e.g., generate a force of 30 newtons for 50 milliseconds) based on a model of the PPSE generated by the application and based on the information on the accessed data about the configuration of the PPSE. Additional or alternate functionality can be encapsulated by an ‘PPSE API’ according to an application.
Applications 1514a, 1514b, 1514c can individually enable all or parts of the functions and operating modes of a flexible exosuit described herein. For example, an application can enable haptic control of a robotic system by transmitting postures, forces, torques, and other information about the activity of a wearer of the PPSE 1500 and by translating received forces and torques from the robotic system into haptic feedback applied to the wearer (i.e., forces and torques applied to the body of the wearer by actuators 1520 and/or haptic feedback elements). In another example, an application can enable a wearer to locomote more efficiently by submitting commands to and receiving data from the operating system 1512 (e.g., through an API) such that actuators 1520 of the PPSE 1500 assist the movement of the user, extract negative work from phases of the wearer's locomotion and inject the stored work to other phases of the wearer's locomotion, or other methods of operating the PPSE 1500. Applications can be installed on the controller 1510 and/or on a computer-readable storage medium included in the PPSE 1500 by a variety of methods. Applications can be installed from a removable computer-readable storage medium or from a system in communication with the controller 1510 through the communications interface 1560. In some examples, the applications can be installed from a web site, a repository of compiled or un-compiled programs on the Internet, an online store (e.g., Google Play, iTunes App Store), or some other source. Further, functions of the applications can be contingent upon the controller 1510 being in continuous or periodic communication with a remote system (e.g., to receive updates, authenticate the application, to provide information about current environmental conditions).
The PPSE 1500 illustrated in
Control of actuators of a PPSE can be implemented in a variety of ways according to a variety of control schemes. Generally, one or more hardware and/or software controllers can receive information about the state of the flexible exosuit, a wearer of the PPSE, and/or the environment of the PPSE from sensors disposed on or within the PPSE and/or a remote system in communication with the PPSE. The one or more hardware and/or software controllers can then generate a control output that can be executed by actuators of the PPSE to effect a commanded state of the PPSE and/or to enable some other application. One or more software controllers can be implemented as part of an operating system, kernel, driver, application, service, daemon, or other computer-readable program executed by a processor included in the PPSE.
The PPSE embodiments described above generally relate to an ankle-stretching PPSE, typically to improve ankle flexibility by performing stretches prescribed for patients with DMD. However, it can be easily appreciated that the application for PPSEs is not limited to ankle stretches for DMD patients. In one alternative embodiment, a PPSE may be used during injury rehabilitation in place of a continuous passive motion (CPM) machine. The system described above may be used to restore ROM of the ankle, for example in the case of surgery or arthritis. An ankle ROM PPSE may additionally include FLAs approximating calf muscles to induce plantar-flexion of the ankle. Whereas a CPM machine simply cycles through a pre-set ROM, a PPSE can adaptively accommodate changes in a joints ROM. ROM of the ankle may be sensed by the sensors and controls layer, for example via one or more goniometers or force sensors, such that the PPSE applies a regimen that gradually increases ROM over time.
PPSEs may be optimized to other joints and muscle groups as well. For example, a PPSE may be adapted to pronate or supinate the forearm and wrist, in order to increase rotational range of motion of the joints, or muscles in the case of contractures. A PPSE adapted to flex and extend the knee can be used as an alternative to a CPM machine, in order to increase the range of motion of the knee after surgery such as anterior cruciate ligament (ACL) reconstruction or total joint replacement.
In addition to performing stretching regimens, embodiments of a PPSE can be adapted to perform assistive functions as well. For example, the ankle-stretching PPSE described above can be used to assist patients with foot-drop. The sensors and controls layer of a system like the ankle-stretching PPSE can detect the phases of the wearer's gait cycle, for example via one or more inertial measurement units (IMUs). Using that information, the PPSE can initiate dorsiflexion of the ankle during the swing phase, to assist with walking for wearers with foot drop.
In some embodiments, a powered assistive exosuit intended primarily for assistive functions can also be adapted to perform PPSE functions. In one embodiment, an assistive exosuit similar to the embodiments described in U.S. patent application Ser. No. ______, titled “Systems and Methods for Assistive Exosuit System,” filed ______, that is used for assistive functions may be adapted to perform PPSE functions. Embodiments of such an assistive exosuit typically include FLAs approximating muscle groups such as hip flexors, gluteal/hip extensors, spinal extensors, or abdominal muscles. In the assistive modes of these exosuits, these FLAs provide assistance for activities such as moving between standing and seated positions, walking, and postural stability. Actuation of specific FLAs within such an exosuit system may also provide stretching assistance. Typically, activation of one or more FLAs approximating a muscle group can stretch the antagonist muscles. For example, activation of one or more FLAs approximating the abdominal muscles might stretch the spinal extensors, or activation of one or more FLAs approximating gluteal/hip extensor muscles can stretch the hip flexors. The exosuit may be adapted to detect when the wearer is ready to initiate a stretch and perform an automated stretching regimen; or the wearer may indicate to the suit to initiate a stretching regimen.
It is to be understood that the disclosed subject matter is not limited in its application to the details of construction and to the arrangements of the components set forth in the following description or illustrated in the drawings. The disclosed subject matter is capable of other embodiments and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein are for the purpose of description and should not be regarded as limiting.
As such, those skilled in the art will appreciate that the conception, upon which this disclosure is based, may readily be utilized as a basis for the designing of other structures, systems, methods and media for carrying out the several purposes of the disclosed subject matter. Although the disclosed subject matter has been described and illustrated in the foregoing exemplary embodiments, it is understood that the present disclosure has been made only by way of example, and that numerous changes in the details of implementation of the disclosed subject matter may be made without departing from the spirit and scope of the disclosed subject matter.
This application claims priority to U.S. Provisional Patent Application No. 62/378,471, filed Aug. 23, 2016, U.S. Provisional Patent Application No. 62/378,555, filed Aug. 23, 2016, and U.S. Provisional Patent Application No. 62/431,779, filed Dec. 8, 2016, the disclosures of which are incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
62378471 | Aug 2016 | US | |
62378555 | Aug 2016 | US | |
62431779 | Dec 2016 | US |