StrideAssist - Adaptable Walking Exoskeleton

A below-waist exoskeleton with adjustable lumbar width and leg-link mechanisms to support users with varying lower-limb lengths and mobility impairments

Project Overview

This project focused on the design of a modular, below-waist exoskeleton intended to assist walking for users with a wide range of lower-body dimensions, including individuals with no amputation, below-knee amputation, or above-knee amputation. Existing exoskeletons are typically built for a single user profile, so the primary goal was to create a single platform that could be adjusted geometrically without compromising gait stability or comfort. Initial work involved reviewing current market designs and defining key requirements around adjustability, biomechanical alignment, and cost.

The mechanical design was developed in SolidWorks and included adjustable lumbar plates, push-pin leg linkages, and a motor-driven transmission system. To generate a realistic walking motion, the exoskeleton was modelled as a rocker–rocker four-bar linkage. Kinematic and velocity-polygon analysis was used to select link proportions, evaluate transmission angles, and determine the motor oscillation frequency required to achieve an average walking speed of 0.82 m/s. The resulting relationship allowed the system to scale automatically based on the user's leg length while maintaining consistent gait behaviour.

Final Product

Mechanical Design

There are several features that improve the comfort and customizability of StrideAssist to allow usage for any person. As shown below, the width of the exoskeleton can be controlled through 8 M6 screws, enabling a lumbar width of 21.5 cm - 50.0 cm. This adjustability is critical as the adult lumbar width across the general population varies from approximately 21.5 cm to 50 cm depending on sex and body mass index.

Lumbar Support Customizability

The length of the above and below knee links in addition to their support links can be controlled through spring-loaded push-pins, similar to what is found in crutches. Moreover, straps are located at the bottom of each joint to attach to the user. This allows the total length of the leg joints to vary between 33.0 cm - 62.5 cm. Ultimately this can accommodate users with a short or tall stature, and also those with limb-length discrepancies such as those with amputations.

Link Mechanism
Link Length Variability Mechanism

The figures below provide an outline of the link's transmission. A NEMA 34 Stepper Motor (1) is bound to an M8 shoulder head screw (3) using a bore clamping shaft coupler (2). This prevents relative motion between the screw and motor. The shoulder head screw is press-fit into a bushing (4) in the nearby link, and the bushing is press-fit and epoxied into the nearby link (the leftmost link in the left figure). Therefore, the link has no relative motion to the motor. The shoulder screw continues into the outermost link (on the right figure), fitting through a second, looser bushing (5), before being closed by a locknut (6). This transmission system prevents slippage between the motor and the input link while allowing free movement of the second link. Note that all other linkage bindings throughout other joints are equal to the transmission's bindings, except for using the looser bushing (5) for both links, and of course, not including a motor or coupler. This allows the input link to drive all other links.

Sectioned Transmission System
Transmission Perspective View

Kinematic Analysis

For the walking motion, the goal is to have a customizable input that moves the foot at an average walking speed of 0.82 m/s. In this case the input is a motor that oscillates the thigh back and forth. The mechanism will operate as a rocker-rocker four-bar linkage, seen below. To achieve customizability, we need an algorithm that takes height parameters as inputs and outputs an appropriate frequency to oscillate the motor that generates the correct angular motion in the thigh, which will produce an average foot speed.

Stick Diagram of Mechanism

A typical person, regardless of size, has a total thigh swing of 40 degrees when walking. Therefore, the amplitude phased into the code is a constant 40 degrees. Now the question becomes: What frequency should be input into the code to achieve normal walking speed? We look at the configuration of the mechanism when the angular velocity is at its peak. This occurs when the thigh angle measured from the vertical to the thigh \(\theta_2\) is at half the amplitude, 20 degrees. We also approximate that at this position the foot speed is at the average walking speed 0.82m/s. The equation for this maximum angular velocity is:

Equation 1

We make the approximation that link lengths of links one and two are the same, \(L_1\), as they are for most humans. Therefore, we take links three and four to be the shortest and longest links, respectively. To make sure this 4 bar behaves as a rocker-rocker:

Equation 2

To uphold this condition we choose \(L_3 = 0.9L_1\) and \(L_4 = 1.20L_1\). Choosing link 3 to be nearly as long as the main links and link 4 to be the longest link keeps the four-bar in a geometry that maintains favorable transmission angles throughout motion. This improves how efficiently the mechanism can transmit forces and resist external loads, avoiding weak "toggle-like" positions. As a result, the linkage provides greater stiffness, smoother torque transfer, and better overall support for an exoskeleton application.

We have now reduced the problem to the velocity polygon problem shown below.

Velocity Polygon Problem

Using the relative velocity equation between points A and B, the solved velocity polygon is shown below. The result is \(|V_B| = |V_{foot}| = 1.24mL_1fA\). As previously stated, the forward velocity needs to be 0.82m/s. This gives the following relation, assuming length length is approx \(2L_1\):

Equation 3

This gives us an equation for the proper frequency that the motor should oscillate at to achieve normal walking motion, based on the user's input leg length. This formula is added to the Arduino code, so the user only has to plug in their leg length, and the output should be the motor oscillating at the proper frequency. Note amplitude is a constant for any user.

Velocity Polygon

Project Details

Project Type

Design & Development

Technologies Used

  • SolidWorks
  • Motion Systems
  • Kinematic Analysis
  • CAD Design