1 Introduction

A lower limb exoskeleton is a mobile machine worn by a person on the lower limbs that supplies at least some part of the activation- energy for lower limb movement. As a result, the human operator is able to do tasks that he otherwise would not be capable of completing alone. Generally, lower limb robotic exoskeletons provide actuation at all of the major joints of the lower limb (hip, knee, and ankle) for both the legs. Due to its wide potentiality in improving the gait pattern during rehabilitation, locomotion assistance for disabled people and in human power augmentation, lower limb exoskeletons have found a great importance in improving the quality of life, ability to walk, cardiovascular endurance, and motor neurological status of humans.

The three main applications of lower limb exoskeletons are gait rehabilitation, human locomotion assistance and human strength augmentation. The first application focuses on gait rehabilitation, which aids people with mobility issues in regaining their musculoskeletal strength, motor control and gait. The second application is targeted at paralysed patients who have lost motor and sensory function in their lower limbs. With the use of exoskeletons, these patients can once again stand up, sit down, and walk exactly like a normal person. The third application aims to enhance the physical capabilities of able-bodied humans. Some commercially available exoskeletons for rehabilitation aid, locomotion assistance and human strength augmentation are HAL, BEXXONX, Sarcos and Robo Knee [1].

In recent years, a lot of research has been done in the design and control of lower extremity exoskeletons. Shi et al. [2] reviewed the advancements in the mechanical design and control of lower limb rehabilitation exoskeleton robots and critically evaluated the current state of research on human gait analysis. Efficient human-robot integration for considering the robot and human as a whole system for efficient rehabilitation training is a major research area still required to be focused on. Hasan and Dhingra [3] proposed a biomechanical design of an 8-DOF human lower extremity exoskeleton robot for rehabilitation purpose and its control. The kinematic and dynamic model of the human lower extremity exoskeleton was designed and a cam-follower mechanism was used to mimic the complicated knee joint mechanism. The authors noted that a four-bar mechanism with a suitable instantaneous centre of rotation can also be employed to simulate the intricate motion of a knee joint. Umesh et al. [4] proposed a unique exoskeleton design and performed Ludwig von Mises stress analysis to the model. It was observed that the maximum stress acting on the model in loaded conditions was below the elastic limit of the materials, hence concluded that the design is capable to withstand the load of the user and also, that aluminium alloy is best suited due to its low cost along with its ease of machinability. Hyun et al. [5] developed a biomechanical concept for an agile electricity-powered lower limb exoskeleton, labelled as HUMA. The exoskeleton was developed as a research tool to provide its user with weight-bearing support for the improvement of human strength and endurance. There are 12 active/passive degrees of freedom over all. Wang et al. [6] researched on the design, control and preliminary evaluation of a novel exoskeleton, MINDWALKER. The goal of this research is to develop a powered exoskeleton to support SCI paraplegics to walk. Its actuation capacity and structural strength can deal with subjects weighing up to 100 kg. This exoskeleton has a total of 12 degrees of freedom in both of its legs equipped with a series elastic actuator that can provide 100 Nm of torque and 1 kW of power at each of the powered joints. Choi et al. [7] developed a 2 degrees of freedom exoskeleton only for the dorsiflexion/plantarflexion movement of the ankle driven by a remote centre-of-motion (RCM) mechanism actuated in linear manner with a ball-screw and a brushless dc motor. Lee et al. [8] developed a novel exoskeleton specially for the elderly intended to improve their gait. The device fits securely around the lower body of the wearer and efficiently and comfortably transfers the supporting torque to the hip/knee joint in accordance with human motion and anatomy.Narayan and Kumar Dwivedy [9] presented a paper on the design, modelling, and development of a low-cost lower limb exoskeleton (LLE) system for paediatric rehabilitation (for children of age 8–12). The simulation results have been carried out for two paraplegic subjects (one for 10years and another for 12 years of age). The developed system only allows for a restricted range of height changes in the lower limbs of youngsters, which could be resolved by slider rails for thigh and shank links in future. Banchadit et al. [10] developed a new robotic lower extremity exoskeleton with a control algorithm based on clinical gait analysis. To account for the peak-torque demands from the system’s electrical actuators, a developed spring-mechanical system is incorporated. The exoskeleton consists of 8 degrees of freedom at both the legs at hip, knee and ankle joints and 1 DOF at the connecting joint between both legs at torso of the patient. The experimental findings demonstrate that the exoskeleton can support walking steps by mimicking the gait cycle. Niestanak et al. [11] and AbbasiMoshaii and Najafi [12] used tendon driven and cable driven mechanisms for exoskeleton developed for rehabilitation after injury and ultra-sound imaging robot mechanisms. Zhou et al. [13] developed a hip and knee joint exoskeleton. A spring mechanism is used to make the joints passive and compensate for the human leg’s gravity. To overcome the effect of gravity, two mating gears are used to transform the tension force from the integrated springs into torques for balancing at the hip and knee joints. Baser et al. [14] presented the mechanical design of a new biomimetic compliant lower limb exoskeleton robot (BioComEx). The machine’s ankle uses a variable stiffness actuator design to mimic the biomechanical behaviour of the human ankle. The knee and hip joints use a series elastic actuator architecture with a single stiffness since one stiffness value is sufficient for the gait cycle. The exoskeleton has length adjustment mechanism in the shank and thigh parts due to which it can be easily adapted to different users. Gálvez-Zúñiga et al. [15] presented a comprehensive review of the compliant joint mechanisms used for lower limb exoskeletons. They also focused on the misalignment issue generated at the joints of the exoskeleton due to the use of simple revolute joints affecting the safety and comfort of the wearer. Moshaii et al.[16] performed static analysis of 3-RRS and 3-RSR 3 degree of freedom spherical parallel mechanisms. The 3-RRS joint had two revolute joints and one spherical joint with one revolute joint as passive joint and the other two joints as passive joints and the 3-RSR had two revolute joints and one spherical joint with one revolute joint as active joint and the remaining two joints as passive joints. From the analysis it was proved the these joints could be used in robots. Wang et al. [17] specifically designed the hardware of a lower extremity exoskeleton robot. In order to analyse the human lower limb movement characteristics, the lower extremity kinematics calculation was carried out and the optimization of the design of several key parts of the lower extremity exoskeleton was completed. Passive ankle abduction and adduction joints is used to ensure that the user can freely adjust the position of the centre of gravity to compensate for the rigid exoskeleton movement caused by fixed gait. Bartenbach et al. [18] presented the design of a modular, reconfigurable lower limb exoskeleton that can be adapted to a variety of users and applications in terms of its kinematics and actuation. Due to the modularity in design, a maximum of 4 degrees of freedom per leg of the exoskeleton can be achieved.

Yeung and Tong [19] studied about gait rehabilitation due to stroke through conventional practices and also by using powered exoskeletons and concluded that robot assisted gait training enhanced training intensity and dosage, which could clearly relieve the physical burden of therapists; and thereby designed a Wearable Exoskeleton Lower Limb (WELL) using modular approach for post-stroke patients with hemiplegic gait. It is controlled by a Finite State Machine control algorithm. Dos Santos et al. [20] designed and evaluated a modular lower limb exoskeleton to rehabilitate lower limb motions that have been hindered due to a stroke or partial spinal cord damage. The exoskeleton is made up of light weight tubular sections and six free joints that provide a modular feature to the system. The authors concluded that for both the cases of comfortable and higher walking speeds of the person wearing the exoskeleton, muscle activity rises indicating a higher effort to keep walking in the same rhythm. Mir-Nasiri [21] presented a paper on an efficient lower limb exoskeleton for human motion assistance. The proposed exoskeleton can also be used to help individuals recover from minor leg injuries. Because the electrical motors in this exoskeleton are smaller and do not support the weight as in other exoskeleton designs, it is more energy efficient. Hasan [22] developed a computed torque controller for a 7-DOF lower limb exoskeleton based on deep learning technology. To tackle prediction mistakes, a PD controller is introduced. The stability study of the designed controller is shown. The designed controller is compared against the Sliding Mode Controller, Computed Torque Controller, Adaptive Controller, Linear Quadratic Regulator, and Model Reference Computed Torque Controller while maintaining the same robot dynamics. Qu et al. [23] designed a robust computed torque control for trajectory following robotic manipulators. Stability has been shown in the sense of not only uniform boundedness, uniform ultimate boundedness, but also asymptotic stability. For this purpose, Lyapunov stability has been used.

Most of the existing exoskeletons employ simple revolute (hinge) joints for the hip, knee and ankle joints. As the human biological knee has 3 degrees of freedom, such an over-simplified design of the knee joint leads to kinematic mismatch between the human knee and exoskeleton joint which arises mainly due to the misalignment of the centre of rotation of both the joints. So, prolonged use of the exoskeleton risks the safety, comfort of the wearer, and hence may lead to its rejection by the wearer. This disadvantage of traditional exoskeletons can be overcomed by designing exoskeletons having polycentric knee joints. Although some research has been done considering a polycentric knee joint detailed design and optimization of the mechanism used for such a joint is lacking. The novelty of the present work lies in the design and optimization of a polycentric knee joint using two four-bar mechanisms, one for obtaining the centre of rotation of the biological knee and a transmission four-bar mechanism for transmitting the torque from the actuator to the knee joint. Both the mechanisms are obtained using dimensional synthesis and optimization of the two four-bar mechanisms. Different researchers have designed various control systems to control the joints of lower limb exoskeletons to follow a desired trajectory. But simply controlling the joints is not enough. The control systems need to be robust enough or be optimized in order to linearize the nonlinear dynamics of the lower limb exoskeletons for obtaining the desired trajectories accurately and precisely. Developing controllers for such polycentric knee exoskeletons has not been done yet. In this work, a novel anthropomorphic lower extremity exoskeleton with a polycentric knee joint, named as EXXON is introduced. This exoskeleton is designed in a way such that it can mimic human biological lower limb joints, be light weight (below 30 kg) and provide a comfortable human-robot integration. A model-based robust control architecture is also developed for EXXON so that it can follow the desired trajectory of human gait cycle accurately and precisely.

The paper is organized as follows: the Problem definition is given in Sect. 2, Mechanical design of EXXON is described in Sect. 3, followed by its Analysis and Control Architecture in Sect. 4, Results and discussions in Sect. 5 and finally concluded in Sect. 6.

2 Problem definition

It is important to develop exoskeletons which are user-friendly and adaptable for different users. It is also required to design the exoskeleton in a way such that its joints mimics the normal human gait, ensuring the safety and comfort of the wearer for rehabilitation and assistive purposes. Furthermore, it has been reported that the knee joint of the lower limb exoskeleton was created as a simple revolute joint in the majority of the works, which results in poor human-robot interaction because of chattering and vibration at the knee joints. To satisfy the requirement of a bio-mimetic knee design considering the safety and comfort of the wearer, a lower extremity exoskeleton with a polycentric knee joint, named as EXXON is developed in this paper. The design of the lower limb exoskeleton is such that it has 5 degrees of freedom (DOF) in each leg with two DOF each at the hip and the ankle and one DOF at the knee. The two joints of the hip and the knee are designed as revolute joint, while the knee joint is made polycentric with a four bar mechanism. Various control systems are being designed by researchers to manipulate the joints of exoskeletons for lower limbs in order to achieve a desired trajectory. Simply controlling the joints of the exoskeleton may not be sufficient using conventional or model free based control techniques, which are not suitable for nonlinear systems. Due to the nonlinearity of the dynamics of the lower limb exoskeleton, it is required to develop a robust and, hence, optimized control strategy such that it linearizes the nonlinear dynamics of the system and obtain accurate and precise trajectories. In this paper, a nonlinear control system called the Computed Torque Controller is used for controlling the joints of EXXON. The human biological knee has more than 1 Degrees of Freedom (DOF) but only the flexion and extension movement plays a significant role for normal walking and running and also for maintaining balance. Moreover, controlling joints in more than one plane would involve the use of extra sensors and actuators which will lead to system complexity and increased cost. Thus, the knee joint is designed to have only 1 DOF, i.e., only flexion and extension movement in the sagittal plane. However, the hip joints are designed to follow the desired hip angles trajectory for both flexion and extension movements in the sagittal plane and abduction and adduction movements in the frontal plane and the ankle joint follows the human gait dorsiflexion and plantarflexion movement in the sagittal plane.

3 Mechanical design of EXXON

The design and development of EXXON should replicate human lower limb movement as accurately and enable individuals with lower limb disabilities to walk on level surfaces, retain lower limb stability and also to aid rehabilitation to patients at a faster rate. Based on the average walking speed of human, 0.8 m/s is considered to be the desired maximum walking speed of EXXON, with an average cadence of 80 steps/min so that its wearer can have a slow and stable walking. EXXON should be compatible with the anthropometric measures of Asian population (both children and adults). Based on the anthropometric data [24], for height in the range of [150–185]cm, the hip width range for EXXON is taken in the range of [36–46] cm. The weight of the final design of EXXON should not exceed 30 kgs, based on the weight of existing lower limb exoskeletons for locomotion assistance and rehabilitation like MINDWALKER, REX and Ekso [6]. Another important requirement is that the centre of gravity of the designed EXXON should be near the centre of gravity of human for its self-balancing. The complete CAD model of EXXON along with its primary elements are depicted in Figs. 1 and 2. The joints of EXXON are designed to have a total of 10 degrees of freedom for both of the limbs. Its hip joint has 2 DOF with both active hip Flexion/Extension (Fl/Ext) and Adduction/Abduction (Add/Abd). The knee joint is designed to have 1 DOF with a four-bar mechanism for replicating polycentric action of biological knee joint. The ankle joint of the EXXON is designed with 2 DOF with active Dorsiflexion/plantarflexion (DFL/PFl) and passive spring-loaded Inversion/Eversion (Inv/Ev). In Fig. 1, the axis of Fl/Ext movement of EXXON is shown in red and the axis for hip Add/Abd and ankle DFL/PFL is shown in blue.

Fig. 1
figure 1

CAD model of EXXON

Fig. 2
figure 2

Design of EXXON and its primary components

Taking account of human anatomy and its joint range of motion, the exoskeleton’s anticipated DOF and range of motion of the joints are defined to enable walking and standing. The range of motion of EXXON are shown in Table 1.

Table 1 Joint range of motion of EXXON

For locomotion assistive and rehabilitative exoskeletons, hip Add/Abd, hip Fl/Ext and knee Fl/Ext should all be powered in order to support the wearer in maintaining balance in both the sagittal and frontal planes. Additionally, ankle DFl/PFl should also be powered for maintaining balance. But there is a practical trade-off, powered ankle DFl/PFl can offer active ankle push-off, more adjustability in movement and better balancing of the exoskeleton, while a lighter design and reduced inertia at the distal end can be achieved with passive ankle DFl/PFl. In this design of EXXON, ankle DFl/PFl is an active joint to obtain better balancing of the exoskeleton so that the wearer need not use any crutches for balancing purpose. Hip Int/Ext rotation, ankle Inv/Ev and ankle Add/Abd should be compliant to lessen impact, increase wearing comfort and also to enhance mobility of the exoskeleton. These DOF are achieved either with spring-loaded joints or with compliant structure. Higher the DOF of the EXXON joints, better it can mimic the human anatomical joint motion. But at the same time, its structure will become complex and bulky. So, both hip Int/Ext rotation and ankle Add/Abd of EXXON are locked, because for EXXON to mimic human natural gait only movement along the sagittal plane is enough and for its balancing active hip Add/Abd is necessary.

EXXON will be attached to the wearer at five places: footplate, shank segment, thigh segment, hip segment and at torso. Each footplate has 4 holders consisting of elastic straps, which will securely hold the shoe of the wearer. The waist brace holds the wearer firmly whereas shank and thigh braces allow some amount of tolerance. Due to this tolerance, the locked degrees of freedom of EXXON can be compensated and also the wearing comfort of the user increases. Since the joints of EXXON has to rotate accurately to mimic human gait, Servo motors will be used for actuating the active joints.

3.1 Design of shank, thigh and hip segments of EXXON

The shank segment of EXXON is designed as a sliding rail and its length can be adjustable up to 10 cm with the aid of screws to accommodate the diversity in length of the human shank. The polycentric knee joint is connected to the hip joint through the thigh segment. At the middle of the thigh segment, the actuator for knee flexion is placed. The upper part of the thigh segment can be adjusted up to 8 cm through screws to accommodate various lengths of the human biological thigh. Due to the adjustable shank and thigh segment of EXXON, it can be used by a wide range of patients, including children and old ones. The design of shank and thigh segments of most of the existing exoskeletons does not take into consideration the shape of human anatomical thigh and shin bone. The shank and thigh segments of most of the existing exoskeletons are designed to be straight. As a result of which the exoskeleton takes up unnecessary space and there remains a lot of gap between the exoskeleton limbs and the human leg. This leads to extra torque requirement for the motors to actuate the exoskeleton joints. Taking account of the human anatomical structure and distribution of muscle in the lower limbs, both the shank and thigh segments of EXXON are inclined outwards by \(10^\circ \). However, due to the presence of length adjustable unit, the shank and thigh segments are provided with this \(10^\circ \) inclination up to a certain distance. The shank and thigh segments of EXXON are shown in Figs. 3 and 4.

Fig. 3
figure 3

Adjustable shank segment of EXXON

Fig. 4
figure 4

Adjustable thigh segment of EXXON

The hip segment of EXXON can also be adjusted up to 10 cm with the help of sliding rails situated on both sides of the hip segment. Users with 36 cm to 46 cm of hip size can easily get accommodated into this exoskeleton. As the hip segment of EXXON has to bear a large fraction of weight of the human torso, so it has to be sturdy as well as strong enough. The hip segment of EXXON is shown in Fig. 5.

Fig. 5
figure 5

Adjustable hip segment of EXXON

Fig. 6
figure 6

Hip joint of EXXON

Fig. 7
figure 7

Adduction/abduction DOF of Hip joint

3.2 Design of hip joint of EXXON

According to biomechanical study, the human musculoskeletal system permits 3 DOF hip movement in three dimensions [25]. For kinematic compatibility, all the rotational axes of hip joint of EXXON should align with the centre of the human hip joint. If there occurs some mis-alignment, then some additional stresses will be introduced in the human hip joint and also discomfort will be felt by the user during walking. In accordance to it, the hip joint of EXXON is designed in such a way that the rotational axes of hip Fl/Ext and Add/Abd are on the same plane and both of them intersect at the human anatomical hip joint centre. The designed artificial hip joint is shown in Fig. 6.

For both Fl/Ext and Add/Abd movement of the artificial hip, revolute joints are used. The range of motion of hip joint is limited to 35\(^\circ \) Fl and 15\(^\circ \) Ext in sagittal plane, and 8\(^\circ \) Abd and 12\(^\circ \) Add in frontal plane. For balancing purpose, the Add/Abd DOF is active, otherwise it can be designed as a passive one to reduce the weight of the exoskeleton. Figures 7 and 8 shows the Add/Abd and Fl/Ext DOF of EXXON, respectively.

The Int/Ext rotation of hip joint of EXXON is rigid. As a result of which the exoskeleton limbs cannot be rotated about the transverse pane axis. But restricting this DOF of hip joint of EXXON does not affect the gait pattern or comfort of the user. This is due to the flexible attachments between the exoskeleton limbs and human legs. So, relative rotation about transverse plane axis between human leg and exoskeleton limbs are permitted to some extent (Fig. 8).

3.3 Design of foot module and ankle joint of EXXON

The dimensions of the foot module are considered in such a manner that it can accommodate a wide range of foot sizes. The length of the foot module is taken to be 28 cm, which can accommodate foot size of a 190 cm (6feet 2inch) height person. There are four holders attached to the foot module where elastic straps are to be fixed in order to tightly hold the shoes of the patient. The foot plate’s front half is composed of rubber or EVA (Ethylene-vinyl Acetate), making it flexible, while the back portion is rigid. The rigid heel component bears the patient’s weight whereas the flexible front section facilitates a more natural gait cycle during ankle push-off. Additionally, the rigid heel component is designed to mate with the EXXON’s ankle joint. The ankle joint plays a great role in the gait cycle because of its exceptional flexibility. The numerous movements of the human body place considerable expectations on the flexibility of the ankle joint; hence, ankle joint stability and flexibility are critical in people’s everyday activities. The torque encountered by the knee joint is increased by inflexible ankle joints, which lead to stress concentration at different parts of the body including the lumbar spine. So, it is very necessary to design the ankle joint of EXXON in such a way that it can replicate the exact degrees of freedom of human anatomical ankle joint. For kinematic compatibility, all the rotational axes of ankle joint of EXXON should align with the centre of the human ankle joint. Figure 9 shows the designed ankle joint along with the foot module.

Fig. 8
figure 8

Flexion/extension DOF of hip joint

Ankle DFl/PFl is actively actuated with a Servo motor whereas ankle Inv/Ev of EXXON is designed as a passive joint with the help of two parallel helical springs so that the wearer can experience a natural gait and at the same time the mass of EXXON does not increase much. For Inv and Ev of the artificial ankle joint, 15\(^\circ \) and 7\(^\circ \) are set as the allowable range of motion, respectively. These range of motion are considered from gait analysis and anatomical characteristics. The DFl/PFl and Inv/Ev motion of the ankle joint are shown in Figs. 10 and 11, respectively.

Fig. 9
figure 9

Ankle joint and foot module of EXXON

Fig. 10
figure 10

Dorsiflexion/plantarflexion of ankle

Fig. 11
figure 11

Inversion/eversion of ankle

3.4 Polycentric knee joint design of EXXON

Human knee is one such joint where there is a high possibility of misalignment between the human knee and EXXON artificial knee. The kinematic analysis of anatomical knee joint is complicated. Gunston [26] demonstrated that its motion is a combination of rotation, oscillation, and translation. However, the knee joint of many typical artificial limbs is of single-axis type for design simplicity. The movement of human knee joint is polycentric in nature due to rolling and sliding of femur over the tibial plateau [27]. The human knee joint seems to be a simple pivot joint, but it actually acts like a polycentric joint, which has a moving instantaneous centre of rotation (ICR). Kinematic disparities are generated between the exoskeleton’s single-axis knee joint and the biological knee trochlea due to the use of single-axis joint on the multi-axial human knee joint, resulting in relative sliding motion between the exoskeleton and the limb, creating human–machine coordination error. Another disadvantage of employing a single-axis knee joint in the exoskeleton is chattering at the hip and pull-feeling at the ankle of the wearer. In addition to this, robotic exoskeletons add-up mass and inertia to the human leg, which hinders the agility of leg motion and develop unwanted forces and torques at the joints thereby leading to injury. Because of these constraints of the single-axis knee joint, researchers have sought mechanisms that might simulate the polycentric behaviour of the biological knee joint. There are many orthoses for knee injury patients and prostheses for transfemoral amputees which are equipped with polycentric knee joints employing some mechanisms. The zone of voluntary knee stability can be expanded by employing polycentric knee joint mechanisms, which enables patients to walk more naturally during the stance phase of gait with knee flexion. Furthermore, despite their low structural longevity, polycentric knee orthoses have better motion alignment, greater ground clearance and aesthetic superiority [5]. Many lower extremity exoskeletons use cam and follower or gear mechanisms to imitate the polycentric behaviour of the biological knee joint. However, these systems increase the weight of the exoskeletons. The 4-bar mechanism (4-BM) is a popular mechanism which is used for tracking the biological knee centrode in prostheses [27]. The knee joint of EXXON is designed to be polycentric in nature to replicate the actual motion of the human knee joint. To achieve the polycentric action of the knee joint of EXXON, a double 4-bar mechanism (4-BM) each having single degree of freedom is implemented. One of the 4-bar linkage, named as trajectory tracing 4-BM, is used for tracing the moving centrode of the anatomical knee joint while the second 4-bar linkage is for transmitting the torque from the knee actuator to the trajectory fitting 4-BM, named as transmission 4-BM. The design of the polycentric knee is shown in Fig. 12.

Fig. 12
figure 12

Designed links of the transmission 4-BM along with the trajectory tracing 4-BM

The dimensional synthesis of both the 4-BMs and their optimization are presented in further sections.

3.4.1 Dimensional synthesis of the trajectory tracing 4-BM

The human body’s femur and tibia have an uneven contact surface, which results in the formation of a J-shaped centrode. For the knee joint of EXXON to be a polycentric one, the centrode of the trajectory tracing 4-BM must be similar with the moving centrode generated by the biological knee joint. The J-shaped centrode has been experimentally obtained by Piña-Martínez et al. [27] with the help of 3-D motion capture system. The J-shaped biological knee moving centrode ranging from 0\(^\circ \) - 100\(^\circ \) flexion angle is plotted and shown in Fig. 13.

Fig. 13
figure 13

Centrode of biological knee

This centrode is the reference centrode and its coordinates are (\(\text {x}_\text {ref}\), \(\text {y}_\text {ref}\) ). The objective is to obtain the dimensions of the trajectory tracing 4-BM such that its centrode fits as similar with the plotted J-shaped moving centrode.

A similar approach has been followed in the present study as of Bapat and Sujatha [28] for dimensional synthesis of the trajectory tracing 4-bar mechanism. Analysis of a 4-bar linkage with coupler link as input for locating its centrode is described below. In this analysis, the frame is considered to be the thigh and the coupler link to be the shank of EXXON.

As demonstrated in Fig. 14, a reference coordinate system is drawn such that the crank centre O\(_{1}\) lies at the origin.

Fig. 14
figure 14

Configuration of a 4-bar linkage to obtain its ICR

The crank pins A and B on the coupler rotate about their crank centres O\(_{1}\) and O\(_{2}\), respectively. Link O\(_{1}\)-A is of length l\(_{2}\), coupler A-B is of length l\(_{3}\), link O\(_{2}\)-B has a length l\(_{4}\) and the frame O\(_{1}\)-O\(_{2}\)is of length l\(_{1}\) which is at an angle \(\alpha \) from the positive x-axis. The angle of each link is measured in a clockwise sense from the positive direction of the x-axis. \(\theta _2\) and \(\theta _4\) are the two crank angles while \(\theta _3\) is the coupler angle (knee flexion angle) which varies from 0\(^\circ \) to 100\(^\circ \). The coordinates of points A and B are \((x_A, y_A)\) and \((x_B, y_B)\) shown by Eqs. 1-8.

$$\begin{aligned}&x_{O_{2}} = l_1\cos {\alpha }\end{aligned}$$
(1)
$$\begin{aligned}&y_{O_{2}} = l_1\sin {\alpha } \end{aligned}$$
(2)
$$\begin{aligned}&x_A = x_B - l_3\cos {\theta _3} \end{aligned}$$
(3)
$$\begin{aligned}&x_B = x_{O_{2}}-l_4\cos {\theta _4} = -l_2\cos {\theta _2} + l_3\cos {\theta _3}\end{aligned}$$
(4)
$$\begin{aligned}&l_2\cos {\theta _2} = l_4\cos {\theta _4} + K_1\end{aligned}$$
(5)
$$\begin{aligned}&K_1 = -x_{O_{2}} + l_3\cos {\theta _3}\end{aligned}$$
(6)
$$\begin{aligned}&y_A = y_B + l_3\sin {\theta _3}\end{aligned}$$
(7)
$$\begin{aligned}&y_B = y_{O_{2}}-l_4\sin {\theta _4} = -l_2\sin {\theta _2} - l_3\sin {\theta _3}\end{aligned}$$
(8)
$$\begin{aligned}&l_2\sin {\theta _2} = l_4\sin {\theta _4} + K_2\end{aligned}$$
(9)
$$\begin{aligned}&K_2 = -y_{O_{2}} - l_3\sin {\theta _3} \end{aligned}$$
(10)

\((x_{O_{2}}, y_{O_{2}})\) are the coordinates of the crank centre O\(_{2}\). \(K_{1}\) and \(K_2\) are constants for any flexion angle \(\theta _3\). Squaring and adding Eq. 5 and 9 and rearranging we get Eq. 11

$$\begin{aligned}&2K_{2}l_{4}\sin {\theta _{4}} + 2K_{2}l_{4}\sin {\theta _{4}} = l^2_2 - l^2_4 - K^2_1 - K^2_2 \end{aligned}$$
(11)
$$\begin{aligned}&P\sin {\theta _{4}} + Q\cos {\theta _{4}} = R \end{aligned}$$
(12)
$$\begin{aligned}&P = 2K_{2}l_{4}\end{aligned}$$
(13)
$$\begin{aligned}&Q = 2K_{1}l_{4}\end{aligned}$$
(14)
$$\begin{aligned}&R = l^2_2 - l^2_4 - K^2_1 - K^2_2 \end{aligned}$$
(15)

PQR are constants for any input angle \(\theta _{3}\).

$$\begin{aligned}&\sin {\theta _{4}} = \frac{2\tan \frac{\theta _{4}}{2}}{1+(\tan \frac{\theta _{4}}{2})^2} \end{aligned}$$
(16)
$$\begin{aligned}&\quad \cos {\theta _{4}} = \frac{1-(\tan \frac{\theta _{4}}{2})^2}{1+(\tan \frac{\theta _{4}}{2})^2} \end{aligned}$$
(17)

Substituting from Eqs. 16 and 17 in Eq. 12 we get Eq. 18.

$$\begin{aligned} \theta _{4} = 2\tan ^{-1}\left( \frac{P\pm \sqrt{P^2+Q^2-R^2}}{Q+R}\right) \end{aligned}$$
(18)

The correct sign of \(\theta _{4}\) must be used or the remaining solutions will be meaningless. The coupler angle \(\theta _{2}\) can be obtained by Eq. 19.

$$\begin{aligned} \theta _2 = tan^-1({\frac{-y_A}{-x_A}}) \end{aligned}$$
(19)

The x and y coordinate of the synthesized ICR of the 4-bar linkage denoted as \(x_{\textrm{syn}}\) and \(y_{\textrm{syn}}\) are obtained as given by Eqs. 20 and 21, respectively.

$$\begin{aligned}{} & {} x_{\textrm{syn}} = \frac{y_{\textrm{syn}}}{\tan (180-\theta _2)} \end{aligned}$$
(20)
$$\begin{aligned}{} & {} y_{\textrm{syn}} = \frac{{y_{o_2}}-{x_{o_2}\tan (180-\theta _4)}}{1-\frac{\tan (180-\theta _4)}{\tan (180-\theta _2)}} \end{aligned}$$
(21)
Table 2 Optimized dimensions of the trajectory tracing 4-BM

3.4.2 Optimization of the trajectory tracing 4-BM

The optimization target is to fit the moving centrode of human knee joint to the greatest extent possible. For that, the structural parameters of the trajectory tracing 4-BM are to be optimized. This can be accomplished by reducing the distance between the reference moving centrode and the synthesized centrode of the trajectory tracing 4-BM, satisfying some constraints. Therefore, the objective function is to minimize the sum of error, which is the Euclidean distance between the i\(_\text {th}\) position of the reference centrode to the i\(_\text {th}\) position of the synthesized centrode of the 4-BM, for a particular knee flexion angle. The optimization problem is formulated as follows:

$$\begin{aligned}&\text{ Minimize } \quad f_1 \nonumber \\ {}&\quad = \sum _{i=1}^n\sqrt{((x_{\textrm{ref}})_{i}-(x_{\textrm{syn}})_{i})^2 +((y_{\textrm{ref}})_{i}-(y_{\textrm{syn}})_{i})^2}\end{aligned}$$
(22)
$$\begin{aligned}&\text{ Subject } \text{ to }\quad 15~mm\le l_1,l_2, l_3, l_4\le 100~mm \end{aligned}$$
(23)
$$\begin{aligned}&5 \le \alpha \le 10 \end{aligned}$$
(24)

where n is the total number of knee flexion angles, x\(_\text {ref}\), y\(_{\textrm{ref}}\) are the reference coordinates of the reference trajectory, x\(_\text {syn}\), y\(_\text {syn}\) are the synthesized coordinates of the trajectory tracing 4-BM, l\(_{1}\), l\(_{2}\), l\(_{3}\) and l\(_{4}\) are the link lengths of the 4-BM and \(\alpha \) is the angle made by link l\(_{1}\) with the positive x-direction.

For optimization of the trajectory tracing 4-BM, GA (Genetic Algorithm) Toolbox available on MATLABTM (R2015a) software is used. The objective function as shown in Eq. 22 is the fitness function which is evaluated using 5 variables (\(\text {l}_{1}\), \(\text {l}_{2}\), \(\text {l}_{3}\) and \(\text {l}_{4}\) and \(\alpha \)). The GA creates an arbitrary initial population size (500 in this case), which is then utilized for reproduction, crossover and mutation processes to generate the next improved generation. The GA got converged to a global minimum after 12 generations and the best fit solutions are obtained. The optimal dimensions of the trajectory tracing 4-BM are reported in Table 2 and Fig. 15 shows the moving centrode of the anatomical knee joint along with the optimized centrode of the trajectory tracing 4-BM.

Fig. 15
figure 15

Centrode of biological knee joint along with the centrode of the optimized trajectory tracing 4-BM

After obtaining the optimal dimensions, the links of the trajectory tracing 4-BM are designed as shown in Fig. 16.

Fig. 16
figure 16

Designed links of the trajectory tracing 4-BM

Figure 17 shows how the centrode of the optimized Trajectory Tracing 4-BM fits on the thigh and shank segment of EXXON.

Fig. 17
figure 17

Centrode of the trajectory tracing 4-BM along with ICR at 30\(^\circ \) flexion angle

The ICR changes as the knee flexion angle changes and thus the centrode is obtained. Here, the ICR is shown for 30\(^\circ \) flexion angle.

3.4.3 Dimensional synthesis of the transmission 4-BM

After the design of trajectory tracing 4-BM is complete, the next task is to actuate it. But as it is not a simple revolute joint, so the actuator cannot be fitted directly on the joint itself. Choo and Park [29] added a linear actuator along with a 4-BM mechanism at the knee joint, significantly improving the exoskeleton’s loading capacity. A linear actuator is composed of various components, which are DC motor, ball-screw or belt mechanism and housing [30]. Due to these components, the weight of the linear actuator increases and, thus, increases the weight of the exoskeleton. The actuator to be used is a Servo motor. To reduce inertia effects, the actuator has to be placed above the knee joint, so that centre of mass of EXXON gets shifted near the human body centre of mass. It is decided that the actuator is fixed at the middle of the thigh segment of EXXON. So, another mechanism is required to transmit the torque from the actuator to the crank (\(\text {l}_{4}\)) of trajectory tracing 4-BM. For this purpose, another 4-BM is to be designed. The dimensional synthesis of this transmission 4-BM is based on minimum output torque provided by the knee actuator during the gait. Moment generated by the biological knee joint has been obtained and plotted from the gait data of [27] for a single gait, similar to the plotting of angular positions of hip, knee and ankle joint in sagittal plane. Figure 18 shows the maximum biological knee flexion moment at different knee flexion angles.

Fig. 18
figure 18

Maximum knee flexion moment at different knee flexion angle

The dimensional synthesis of the transmission 4-BM is present below. The same reference system as of Fig. 14 is taken. Referring to Fig. 19, point C is the centre of the actuator, the distance \(\text {O}_\text {1}\)C is \(\text {l}_\text {thigh}\) which is taken as 200 mm.

Fig. 19
figure 19

Configuration of transmission 4-BM along with trajectory tracing 4-BM

The length of link CD is \(\text {l}_{5}\), which is at an angle \(\theta _5\) from the positive x-axis, length of link DE is \(\text {l}_{6}\), and link \(\text {O}_{2}\)E has a length \(\text {l}_{7}\). \(\beta \) is the angle between link \(\text {O}_{2}\)E and \(\text {O}_{2}\)B and \(\text {l}_{8}\) is the distance from \(\text {O}_{1}\) to the centre of actuator. The angle of each link is measured in counter- clockwise sense from the positive direction of the x-axis.\(\theta _{5}\) and \(\theta _{7}\) are the two crank angles. From kinematic analysis, we get:

$$\begin{aligned}&x_ E = x_{O_2} + l_7\cos {\theta _7} \end{aligned}$$
(25)
$$\begin{aligned}&\quad l_8 + l_5\cos {\theta _5} + l_6\cos {\theta _6} = x_{O_2} + l_7\cos {\theta _7} \end{aligned}$$
(26)
$$\begin{aligned}&\quad y_ E = y_{O_2} + l_7\sin {\theta _7}\end{aligned}$$
(27)
$$\begin{aligned}&\quad l_{\textrm{thigh}} + l_5{\sin {\theta _5}} + l_6{\sin {\theta _6}} = y_{O_2} + l_7\sin {\theta _7} \end{aligned}$$
(28)

Considering \(l_8 = a\), \(l_{\textrm{thigh}} = b\), \(x_E = c\) and \(y_E = d\) Eq. 26 and Eq. 28 can be written as:

$$\begin{aligned}&a + l_5\cos {\theta _5} + l_6\cos {\theta _6} = c \end{aligned}$$
(29)
$$\begin{aligned}&\quad b + l_5{\sin {\theta _5}} + l_6{\sin {\theta _6}} = d \end{aligned}$$
(30)

From Eqs. 29 and  30, we get:

$$\begin{aligned}&2l_5(c-a)\cos {\theta _5} + 2l_5(d-b)\sin {\theta _5} = (c-a)^2 - (d-b)^2 \end{aligned}$$
(31)
$$\begin{aligned}&\theta _{5} = 2tan^-1\left( \frac{2l_5(d-b)\pm 2\sqrt{(2l_5(c-a))^2+(2l_5(d-b))^2-((c-a)^2-(d-b)^2)^2}}{2l_5(c-a) + (c-a)^2 - (d-b)^2}\right) \end{aligned}$$
(32)

Coordinates of position D are given by \((x_D, y_D)\) that are as follows:

$$\begin{aligned} x_D = l_8 + l_5\cos {\theta _5} \end{aligned}$$
(33)
$$\begin{aligned} y_D = l_{\textrm{thigh}} + l_5{\sin {\theta _5}} \end{aligned}$$
(34)

The vertical Distance from ICR of trajectory tracing 4-BM (I) to line DE is \(l_{I_{DE}}\) given by Eq. 36 and the vertical Distance from point C to line DE is \(l_{C_{DE}}\) given by Eq. 35.

$$\begin{aligned}&l_{C_{DE}} = \frac{(y_D - y_E)l_{\textrm{thigh}}+(x_E - x_D)l_{\textrm{thigh}} + (x_D-x_E)y_E - (y_D - y_E)x_E}{\sqrt{(y_D - y_E)^2+(x_E - x_D)^2}} \end{aligned}$$
(35)
$$\begin{aligned}&l_{I_{DE}} = \frac{(y_D - y_E)x_{syn}+(x_E - x_D)y_{\textrm{syn}} + (x_D-x_E)y_E - (y_D - y_E)x_E}{\sqrt{(y_D - y_E)^2+(x_E - x_D)^2}} \end{aligned}$$
(36)

The Transmission Ration (TR) of the transmission 4-BM is obtained as given in Eq. 37

$$\begin{aligned} TR = \frac{l_{I-DE}}{l_{C-DE}} \end{aligned}$$
(37)

3.4.4 Optimization of transmission 4-BM

The optimization target is to improve the transmission performance of the mechanism. For that the dimensions of the transmission 4-BM needs to be optimized. This can be achieved by minimizing the output torque characteristics of the knee actuator. The objective function given by Eq. 38 is to minimize the required torque output of the motor for flexion and extension of the knee. Optimization constraints include dimensions of the links \(\text {l}_{5}\),\(\text {l}_{6}\),\(\text {l}_{7}\),\(\text {l}_{8}\) and the angle \(\beta \). The optimization problem is formulated as follows:

$$\begin{aligned} \text{ Minimize }&\quad f_1 =\frac{\tau (\theta _3)}{TR} \end{aligned}$$
(38)
$$\begin{aligned} \text{ Subject } \text{ to }&\quad 15~mm\le l_5,l_6, l_7, l_8\le 200~mm \end{aligned}$$
(39)
$$\begin{aligned}&\quad 110\le \beta \le 160 \end{aligned}$$
(40)

where \(\text {f}_{1}\) is the maximum value of the ratio of \(\tau (\theta _3)\) which represents the variation of maximum knee flexion moment at different knee flexion angles for a single gait and transmission ratio represented as TR.

Similar to the optimization of the Trajectory Tracing 4-BM, GA Toolbox available on MATLABTM (R2015a) software is used for this optimization. The objective function shown by Eq. 38 is the fitness function which is evaluated using 5 variables (\(\text {l}_{5}\),\(\text {l}_{6}\),\(\text {l}_{7}\),\(\text {l}_{8}\) and \(\beta \)). The GA got converged to a global minimum after 27 generations and the best fit solutions are obtained. The optimal dimensions of the trajectory tracing 4-BM are reported in Table 3 and Fig. 20 shows the optimal output torque characteristics along with the maximum knee torque requirement at different knee flexion angles.

Table 3 Optimized dimensions of the transmission 4-BM

After obtaining the optimal dimensions, the links of the transmission 4-BM are designed as shown in Fig. 12.

The polycentric knee joint is shown in Fig. 21 and its Fl/Ext DOF in Fig. 22. The polycentric knee joint can only be flexed up to \(70^\circ \).

4 Analysis and control architecture of EXXON

The type of controlling used has a significant impact on a robot’s accuracy, precision, and utility. In robotics applications, model-based control is quite frequent. Model-based control refers to controlling a system based on the kinematic or dynamic model of the system. For the designed robotic exoskeleton (EXXON), Computed Torque Control scheme is derived for feedback linearization of nonlinear dynamics of EXXON.

4.1 Kinematic and dynamic modelling of EXXON

The kinematic model was developed using the Denavit-Hartenberg (DH) parameter method [31]. Each DOF of individual joints of EXXON is assigned its own link frame.

Fig. 20
figure 20

Maximum knee flexion moment of the biological knee along with the optimized output torque of the actuator, at different knee flexion angles

Fig. 21
figure 21

CAD model of the polycentric knee joint of EXXON

Fig. 22
figure 22

Flexion/extension DOF of the polycentric knee joint of EXXON

Fig. 23
figure 23

Frame assignment at the joints of EXXON

Table 4 DH parameters of each joint of EXXON

Figure 23 shows the frame assignment at each joint of EXXON to derive its kinematic model and Table 4 shows the DH parameters for each joint of EXXON, where

  • Twist Angle (\(\alpha _{i-1}\) ): angle between \(Z_{i-1}\) to \(Z_{i}\), measured about \(X_{i-1}\) axis.

  • Link Length (\(a_{i-1}\)): perpendicular distance from \(Z_{i-1}\) to \(Z_{i}\), measured along \(X_{i-1}\) axis.

  • Joint Angle (\(\theta _i\)): angle between \(X_{i-1}\) to \(X_{i-1}\), measured about \(Z_{i}\) axis.

  • Joint Distance (\(d_i\) ): perpendicular distance from \(X_{i-1}\) to \(X_{i}\) measured along \(Z_{i}\) axis.

The general form of the transformation matrix is given in Eq. 41 [31]:

$$\begin{aligned} T^{i-1}_i = \begin{bmatrix} \cos {\theta _{i}} &{} -\sin {\theta _{i}} &{} 0 &{} a_{i-1}\\ \sin {\theta _{i}}\cos {\alpha _{i-1}} &{}\cos {\theta _{i}}\cos {\alpha _{i-1}} &{} -\sin {\alpha _{i-1}} &{} -d_{i}\sin {\alpha _{i-1}}\\ \sin {\theta _{i}}\sin {\alpha _{i-1}} &{}\cos {\theta _{i}}\sin {\alpha _{i-1}} &{}\cos {\alpha _{i-1}} &{} d_{i}\cos {\alpha _{i-1}}\\ 0 &{} 0 &{} 0 &{} 1 \end{bmatrix}\nonumber \\ \end{aligned}$$
(41)

On substituting the values of DH parameters from Table 4 into Eq. 41, the following transformation matrices, are obtained as given by Eqs. 4246

$$\begin{aligned} T^{0}_1 = \begin{bmatrix} \cos {\theta _{1}} &{} -\sin {\theta _{1}} &{} 0 &{} 0\\ \sin {\theta _{1}}&{}\cos {\theta _{1}} &{} 0 &{} 0\\ 0&{}0 &{}1 &{} 0\\ 0 &{} 0 &{} 0 &{} 1 \end{bmatrix} \end{aligned}$$
(42)
$$\begin{aligned} T^{1}_2 = \begin{bmatrix} \cos {\theta _{1}} &{} -\sin {\theta _{1}} &{} 0 &{} a_1\\ 0&{}0 &{} -1 &{} d_2\\ \sin {\theta _2}&{}\cos {\theta _2} &{}0 &{} 0\\ 0 &{} 0 &{} 0 &{} 1 \end{bmatrix} \end{aligned}$$
(43)
$$\begin{aligned} T^{2}_3 = \begin{bmatrix} \cos {\theta _{3}} &{} -\sin {\theta _{3}} &{} 0 &{} a_2\\ \sin {\theta _3}&{}\cos {\theta _3} &{}0 &{} 0\\ 0&{}0 &{} 1 &{} d_3\\ 0 &{} 0 &{} 0 &{} 1 \end{bmatrix} \end{aligned}$$
(44)
$$\begin{aligned} T^{3}_4 = \begin{bmatrix} \cos {\theta _{4}} &{} -\sin {\theta _{4}} &{} 0 &{} a_{3}\\ \sin {\theta _{4}}&{}\cos {\theta _{4}}&{} 0&{}0\\ 0 &{} 0 &{} 1 &{} d_4\\ 0 &{} 0 &{} 0 &{} 1 \end{bmatrix} \end{aligned}$$
(45)
$$\begin{aligned} T^{4}_5 = \begin{bmatrix} 1 &{} 0 &{} 0 &{} a_{4}\\ 0&{} 0 &{} 1&{} d_5\\ 0 &{} -1 &{} 0 &{} 0\\ 0 &{} 0 &{} 0 &{} 1 \end{bmatrix} \end{aligned}$$
(46)

Individual homogeneous transformation matrices, Eqs. 4246 are multiplied to generate the overall homogeneous transformation matrix, as shown in Eq. 47 transformation matrix locates the position and orientation of the foot w.r.t the base frame, i.e., the hip joint of EXXON.

$$\begin{aligned} T^{0}_5 = \begin{bmatrix} T^{0}_1 T^{1}_2 T^{2}_3 T^{4}_5 \end{bmatrix} \end{aligned}$$
(47)

The dynamic equation of motion in state space form for a serial robotic manipulator is given by Eq. 48 [31].

$$\begin{aligned} \tau _{\textrm{joint}} = M(\theta )\ddot{\theta }+V(\theta ,\dot{\theta })+ G(\theta ) \end{aligned}$$
(48)

In the above equation, \(V(\theta ,\dot{\theta })\) is a matrix that comprises of both Coriolis and Centripetal terms. Therefore, the dynamic equation of motion in state space form of the designed robotic exoskeleton can be written as in Eq. 49.

$$\begin{aligned} \tau _{\textrm{joint}} = M(\theta )\ddot{\theta }+B(\theta )[\dot{\theta },\dot{\theta }]+ C(\theta )[\dot{\theta }^2]+G(\theta ) \end{aligned}$$
(49)

In Eq. 49, \(M(\theta )\) is the inertia matrix which is a \((4\times 4)\) symmetric positive definite matrix. \(B(\theta )\) is a \((4\times 6)\) matrix containing all the Coriolis terms effecting the exoskeleton, \(C(\theta )\) is a \((4\times 4)\) skew-symmetric matrix comprising all the centripetal terms and \(G(\theta )\) is a \((4\times 1)\) vector consisting of the gravitational effects. \(\tau _{\textrm{joint}}\), a \((4\times 1)\) vector which represents the joint torque requirements to mimic the gait trajectories. \(\theta \), \(\dot{\theta }\) and \(\ddot{\theta }\) are the real-time position, velocity and acceleration of the exoskeleton joints. Every single analysis has been carried out in the configuration space of the exoskeleton. The angular acceleration of the joints of EXXON can be calculated by Eq. 50, which is obtained by simplifying Eq. 49.

$$\begin{aligned} M(\theta )^{-1}= (\tau _{\textrm{joint}}-B(\theta )[\dot{\theta },\dot{\theta }]- C(\theta )[\dot{\theta }^2]- G(\theta )) \end{aligned}$$
(50)

Figure 24 presents the schematic diagram of the ideal robot dynamics without considering joint friction.

Fig. 24
figure 24

Dynamic model of the ideal robot

The anthropometric parameters that are used along with the parameters of EXXON for developing the dynamical equation of motion are presented in Eq. 51 - 58 [32].

$$\begin{aligned} D_b = 1.0156 \times 10^3 + 91.40\frac{H}{3\sqrt{W}} \end{aligned}$$
(51)

In Eq. 51\(D_b\) is the body density (\(\frac{kg}{m^3}\)), H is the height of the subject (m) and W is the body weight of the subject (kg). The densities of shank (\(D_s\)), thigh (\(D_t\)) and foot (\(D_f\)) can be determined from the following empirical relations as shown in Eqs. 52-54.

$$\begin{aligned}&D_t = 16.58 + 0.814D_b \end{aligned}$$
(52)
$$\begin{aligned}&\quad D_s = 17.06 + D_b \end{aligned}$$
(53)
$$\begin{aligned}&\quad D_f = 17.16 + D_b \end{aligned}$$
(54)

The whole-body volume, \(V_b\) (\(m^3\)) can be calculated using Eq. 55.

$$\begin{aligned} V_b = \frac{W}{D_b} \end{aligned}$$
(55)

The volume of thigh, \(V_t\) (\(m^3\)), shank \(V_s\) (\(m^3\)) and foot \(V_f\) (\(m^3\)) can be approximated using Eqs. 56-58

$$\begin{aligned}&V_t = 0.0922 \times V_b \end{aligned}$$
(56)
$$\begin{aligned}&\quad V_s = 0.0464 \times V_b \end{aligned}$$
(57)
$$\begin{aligned}&\quad V_f = 0.0124 \times V_b \end{aligned}$$
(58)

The weight of the thigh, \(M_t\) (kg), shank \(M_s\) (kg) and foot \(M_f\) (kg) are calculated by Eqs. 59-61.

$$\begin{aligned}&M_t = V_t \times D_t \end{aligned}$$
(59)
$$\begin{aligned}&\quad M_s = V_s \times D_s \end{aligned}$$
(60)
$$\begin{aligned}&\quad M_f = V_f \times D_f \end{aligned}$$
(61)

The length of the thigh \(L_t\) (m), shank \(L_s\) (m), foot \(L_f\) (m) are calculated by Eqs. 62-64

$$\begin{aligned}&L_t = 0.245 \times H \end{aligned}$$
(62)
$$\begin{aligned}&\quad L_s = 0.285 \times H \end{aligned}$$
(63)
$$\begin{aligned}&\quad L_f = 0.152 \times H \end{aligned}$$
(64)

The empirical equations for the inertial properties of the thigh \(I_t\), shank \(I_s\) and foot \(I_f\) are given in Eqs. 65-67.

$$\begin{aligned}&I_t = \begin{bmatrix} M_t(0.124\times L_t)^2 &{} 0 &{} 0\\ 0&{} M_t(0.267\times L_t)^2 &{} 1\\ 0 &{} 0 &{} M_t(0.267\times L_t)^2\\ \end{bmatrix}\nonumber \\ \end{aligned}$$
(65)
$$\begin{aligned}&I_s = \begin{bmatrix} M_s(0.281\times L_s)^2 &{} 0 &{} 0\\ 0&{} M_s(0.114\times L_s)^2 &{} 1\\ 0 &{} 0 &{} M_s(0.275\times L_s)^2\\ \end{bmatrix}\nonumber \\ \end{aligned}$$
(66)
$$\begin{aligned}&I_f = \begin{bmatrix} M_f(0.124\times L_f)^2 &{} 0 &{} 0\\ 0&{} M_f(0.245\times L_f)^2 &{} 1\\ 0 &{} 0 &{} M_f(0.257\times L_f)^2\\ \end{bmatrix}\nonumber \\ \end{aligned}$$
(67)

For simulation purpose, the above anthropometric parameters have been considered for a subject with \(W = 90\) kg and \(H = 1.85\) m.

4.2 Friction modelling

A robot control system must be sufficiently robust to compensate for frictional effects. According to Liu and Chen [33], the amount of friction torque generated at the joints can be as high as 50% of the transmitted torques. Developing a theoretical model of the friction phenomenon is quite difficult. The majority of established friction models are empirical. Some common friction models to explain the friction phenomena are Coulomb friction model, viscous friction model, Stribeck effect, pre-sliding behaviour, small displacement in the stiction phase. A friction model with Coulomb friction, viscous friction and Stribeck effect was used by Hasan and Dhingra [34]. For the present analysis, a combined friction model depicting Coulomb friction along with Stribeck effect is used [35]. Equation 68 presents the friction model used in the analysis. Equations 6970 are used to calculate the friction torque (\(\tau _{\textrm{friction}}\)) acting at the joints of EXXON.

Fig. 25
figure 25

Simulation of friction model

Fig. 26
figure 26

Computed torque control scheme

$$\begin{aligned}&\tau _{\textrm{friction}} = T_{\textrm{Coul}}\tanh {\frac{\omega }{\omega _{\textrm{stribeck}}}} +\nonumber \\&\quad \sqrt{2e}(T_{\textrm{break}}-T_{\textrm{Coul}})\exp ((\frac{\omega }{\omega _{\textrm{stribeck}}})^2)(\frac{\omega }{\omega _{\textrm{Coul}}}) \end{aligned}$$
(68)
$$\begin{aligned}&\quad \omega _{\textrm{stribeck}} = \sqrt{2}\omega _{\textrm{break}} \end{aligned}$$
(69)
$$\begin{aligned}&\quad \omega _{\textrm{Coul}} = \frac{\omega _{\textrm{break}}}{10} \end{aligned}$$
(70)

where \(T_{\textrm{Coul}}\) is the Coulomb friction torque, \(T_{\textrm{break}}\) is the Breakaway friction torque or Stiction torque.The breakaway friction torque is the sum of Coulomb and Stribeck friction torques in the vicinity of zero velocity. \(\omega \) is the relative angular velocity, \(\omega _{\textrm{break}}\) is the breakaway friction velocity, \(\omega _{\textrm{Coul}}\) is the Coulomb velocity threshold and \(\omega _{\textrm{Stribeck}}\) is the Stribeck velocity threshold.

Figure 25 presents the simulation of friction torque model based on the Eqs. 68-70. The following parameter values were considered for the simulation:

$$\begin{aligned}&T_{\textrm{peak}} = 100~\text{ Nm }, T_{\textrm{Coul}} = 0.1\times T_{\textrm{peak}}~\text{ Nm },\\&T_{\textrm{break}} = 0.15\times T_{\textrm{peak}}~\text{ Nm },\\&T_{\textrm{break}} = 0.15\times T_{\textrm{peak}}~\text{ Nm },\\&\omega _{\textrm{break}} = 0.01~\text{ rad/sec } -1\le \omega \le 1~\text{ rad/sec } \end{aligned}$$

After considering the joint friction torques, the dynamic equation of motion of the robotic exoskeleton is shown as Eq. 71.

$$\begin{aligned} \tau _{\textrm{joint}}= & {} M(\theta )\ddot{\theta }+B(\theta )[\dot{\theta },\dot{\theta }]\nonumber \\ {}{} & {} + C(\theta )[\dot{\theta }^2]+G(\theta ) + \tau _{\textrm{friction}} \end{aligned}$$
(71)

where \(\tau _{\textrm{friction}} = f(\dot{\theta })\)

Angular acceleration of the joints can be written from Eq. 72 as:

$$\begin{aligned} \ddot{\theta }= & {} M(\theta )^{-1}\left[ (\tau _{\textrm{joint}}-B(\theta )[\dot{\theta },\dot{\theta }]\right. \nonumber \\ {}{} & {} \left. - C(\theta )[\dot{\theta }^2]- G(\theta ) - f(\dot{\theta })\right] \end{aligned}$$
(72)

4.3 Computed torque control

Computed Torque Control (CTC) is a dynamic motion control strategy for robotic manipulator systems that provide globally asymptotic stability. CTC is a linear control approach that uses perfect dynamical models of robotic manipulator systems to linearize and decouple robotic dynamics such that each joint’s motion may be separately controlled using other well-developed linear control strategies. The CTC scheme calculates robot joints’ trajectory tracking torque requirements by using robot inverse dynamics. The CTC system achieves two goals: Linearizing nonlinear robot dynamics by providing the required torque to mitigate the effects of gravity and Coriolis-centrifugal force (Linearization loop, Fig. 26) and to provide that controlled torque to track the robot input trajectories (Control loop, Fig. 26).

In real world, several external factors, like unexpected environmental forces or interactions, can initiate disturbances in the system. As the CTC depends on an accurate model of the robot’s dynamics, such uncertainties may not be considered perfectly, and discrepancies may arise between the assumed model and the actual robot leading to modelling errors and disturbance torque in the system and thus affecting its performance.

Proportional-Derivative (PD) Computed Torque Control scheme is used for controlling EXXON. The PD controller is used in servo controlling because of its excellent performance in controlling systems with slow motion movement. The CTC scheme is shown in Fig. 26. Let \(\theta _d\) represents the desired angular positions of the joints of EXXON, which are the gait trajectories shown in Figs. 27, 28, 29, 30

Fig. 27
figure 27

Angular positions of hip adduction/abduction

Fig. 28
figure 28

Angular positions of hip flexion/extension

Fig. 29
figure 29

Angular positions of knee flexion/extension

Fig. 30
figure 30

Angular positions of ankle dorsiflexion/plantarflexion

The joint position error e, which is the tracking error, is given by Eq. 73

$$\begin{aligned} e = \theta _d - \theta \end{aligned}$$
(73)

On taking first order and second order derivatives of Eq. 73 gives the velocity error \(\dot{e}\) and acceleration error \(\ddot{e}\), as shown in Eq. 74 and Eq. 75.

$$\begin{aligned}{} & {} \dot{e} = \dot{\theta }_d - \dot{\theta } \end{aligned}$$
(74)
$$\begin{aligned}{} & {} \quad \ddot{e} = \ddot{\theta _d} - \ddot{\theta } \end{aligned}$$
(75)

Substituting the value of \(\ddot{\theta }\) in Eq. 75 we get Eq. 76.

$$\begin{aligned} \ddot{e}= & {} \theta _d - M(\theta )^{-1}\left[ (\tau _{\textrm{joint}}-B(\theta )[\dot{\theta },\dot{\theta }]\right. \nonumber \\ {}{} & {} \quad \left. - C(\theta )[\dot{\theta }^2]- G(\theta ) - f(\dot{\theta })\right] \end{aligned}$$
(76)

Since PD controller is used, the control input(u) will be:

$$\begin{aligned} u = -K_pe-K_d\dot{e} \end{aligned}$$
(77)

Incorporating the control input (u) into Eq. 76 we get Eq. 79 which is the computed torque law.

$$\begin{aligned}&\tau _{\textrm{joint}} = M(\theta )\left[ (\ddot{\theta _d} -u)\right] +B(\theta )[\dot{\theta },\dot{\theta }]+ C(\theta )[\dot{\theta }^2]+G(\theta ) \end{aligned}$$
(78)
$$\begin{aligned}&\tau _{\textrm{joint}} = M(\theta )\left[ \ddot{\theta _d -K_pe-K_d\dot{e}}\right] \nonumber \\&\quad +B(\theta )[\dot{\theta },\dot{\theta }]+ C(\theta )[\dot{\theta }^2]+G(\theta ) \end{aligned}$$
(79)

In presence of an error induced into the system as an external disturbance the joint torque is given by Eq. 80

$$\begin{aligned} \tau _{\textrm{joint}}&= M(\theta )\left[ \ddot{\theta _d -K_pe-K_d\dot{e}}\right] +B(\theta )[\dot{\theta },\dot{\theta }]+ C(\theta )[\dot{\theta }^2]\nonumber \\ {}&\quad +G(\theta ) +\tau _{\textrm{des}} \end{aligned}$$
(80)

\(K_p\) and \(K_d\) are position and derivative control gains which are (\(4\times 4\)) positive definite diagonal matrices and \(\tau _{\textrm{des}}\) is the external disturbance torque induced into the system. From Eq. 71 and Eq. 79, we get:

$$\begin{aligned}&\ddot{\theta } = \ddot{\theta _d} + K_pe + K_d\dot{e} \end{aligned}$$
(81)
$$\begin{aligned}&\ddot{e} + K_pe + K_d\dot{e} = 0 \end{aligned}$$
(82)

The values of the PD control gains \(K_p\) and \(K_d\) can be either selected by trial and error such that the desired and real-time trajectories coincide with each other, or else can be auto-tuned. But these two methods are not a good and efficient practice. The control gains are usually selected for critical damping (\(\zeta = 1\)). For this case, the values of the control gains are given by \(K_d = \sqrt{2}K_p\) and \(K_d = \frac{K^2_d}{4}\). While selecting the values of \(K_p\) and \(K_d\), it should be taken care that too large values of the control gains results in minute tracking error but the joint torque required to track the desired trajectory becomes too high, and vice versa. In the present work, the control gain parameters are obtained from an optimization result. The designed polycentric knee consists of a trajectory tracing 4-BM. The optimization target is to both minimize the maximum tracking error between desired gait trajectory and the real-time trajectory and at the same time minimize the maximum joint torque required to track the desired gait trajectory, specifically for the knee joint. The multi-objective optimization has been performed only for the knee joint but not for the other joints, this is because only the knee joint is a polycentric joint and all other joints are revolute one. The prime motive is that the polycentric knee joint should be able to replicate the knee gait trajectory with very less tracking error and also with minimum torque requirements. Once this is achieved all the other three joints will definitely track the desired trajectories with less error and torque requirements. The optimization problem is formulated as follows:

$$\begin{aligned} \text{ Minimize }{} & {} e_3{} & {} {}{} & {} {}{} & {} {}{} & {} {}&\end{aligned}$$
(83)
$$\begin{aligned} \text{ Minimize }{} & {} \tau _3{} & {} {}{} & {} {}{} & {} {}{} & {} \end{aligned}$$
(84)

where \(e_3 = \theta ^3_d - \theta ^3\) is the tracking error between the desired and output trajectories of knee joint and \(\tau _3\) is the joint torque required to track the desired trajectories.

$$\begin{aligned} \text{ Subject } \text{ to }{} & {} 0\le K^i_p\le 1000{} & {} {}{} & {} {}&\end{aligned}$$
(85)
$$\begin{aligned}{} & {} 0\le K^i_d\le 1000{} & {} {}{} & {} {}&\end{aligned}$$
(86)

where i is the number of active joints. i ranges from 1 to 4.

5 Results and discussions

The dynamic simulation is performed in MATLAB-Simulink environment. While constructing the dynamic model of EXXON, human anthropometric parameters and parameters of EXXON are considered. Figures 32, 33, 34, 35, 36, 37, 38, 39, 40 present the simulation results for simultaneous joint movements. In the simultaneous joint movement, all the joints of EXXON will start to move at the same time and will complete the desired trajectory at the same time. In the simulation results, trajectory tracking performance, trajectory tracking error, the torque and power requirement for tracking the specified gait trajectories are shown. Based on the developed friction model, the calculated joint friction torques are presented. The simulation time is taken as 4.5 s because the exoskeleton robot is designed to walk at slow walking speed. Figure 26 presents the CTC scheme developed in MATLAB-Simulink environment for dynamic simulation. For the multi-objective optimization, ‘gamultiobj’ solver available in MATLABTM (R2015a) software is used. Population size is taken as 500, number of iterations as 200. The two fitness functions are Eq. 83 and 84. After the optimization algorithm converged, a pareto front (set of optimal solutions) is obtained, shown in Fig. 31.

Fig. 31
figure 31

Pareto front of the multi-objective optimization

A particular set of optimal value is selected such that the tracking error is well below 1\(^\circ \) and the joint torque requirement is also less. The values of the fitness function for the selected optimal set are 0.63\(^\circ \) and 157.9 Nm. The optimal values of the control gains (decision variables) corresponding to the selected optimal solution are presented in Table 5.

Table 5 Optimal gain values

The entire simulation results are obtained with these optimal values of control gains. Figures 32, 33, 34, 35 show the trajectory tracking performance of the CTC for all the active joints of EXXON.

Fig. 32
figure 32

Trajectory tracking performance of CTC for hip Ab/Ad

Fig. 33
figure 33

Trajectory tracking performance of CTC for hip Fl/Ext/Ad

Fig. 34
figure 34

Trajectory tracking performance of CTC for knee Fl/Ext

Fig. 35
figure 35

Trajectory tracking performance of CTC for ankle DFl/PFl

The simulation results are obtained with friction acting at each of the four active joints. The black colour lines show the desired gait trajectories while the coloured lines show the output trajectories. Due to very small tracking errors, it is difficult to distinguish between the desired (input) and real (output) trajectories. For hip Add/Abd, knee Fl/Ext and ankle DFl/PFl, very minute deviations between the desired and real trajectories can be seen at the peaks where direction of joint movement changes. Figure 36 shows the joint trajectory tracking error. The maximum tracking errors are [0.18\(^\circ \), 0.43\(^\circ \), 0.63\(^\circ \), 0.76\(^\circ \)]. Since the tracking error of each of the four active joints are less than 1\(^\circ \), so EXXON can be used both for rehabilitation as well as for assistive purpose [36]. Maximum tracking error of 0.76\(^\circ \) can be seen for ankle DFl, during the swing phase of the gait cycle. To check the performance of the proposed controller, an external disturbance torque is induced into the system and the torque required at each joint is obtained using Eq. 80. A disturbance torque of \(\tau _{\textrm{des}}= [0.1sin(1.5t), 0.1sin(1.5t), 0.1sin(1.5t), 0.1sin(1.5t)] \) is applied at each joint as stated in Mathew and Jisha [37]. The tracking error of each joints is shown in Fig. 37. The maximum tracking errors are [0.18\(^\circ \), 0.43\(^\circ \), 0.79\(^\circ \), 0.86\(^\circ \)]. In this case also, maximum tracking error of 0.86\(^\circ \) can be seen for ankle DFl, during the swing phase of the gait cycle. Thus, the controller is robust enough as the tracking error is still below 1\(^\circ \) for small external disturbances into the system. However, the error might increase with increase in the magnitude of the disturbance torque. Hence, better controllers may be developed to account for larger interaction torques.

Fig. 36
figure 36

Joint trajectory tracking error

Fig. 37
figure 37

Joint trajectory tracking error in presence of external disturbance

During simulation, the peak torque necessary to determine joint friction torque is obtained from the torque needed to follow the same desired trajectory in the absence of friction. The amount of friction torque developed in each joint during tracking the desired trajectories are shown in Fig. 38.

Fig. 38
figure 38

Joint friction torqued during trajectory tracking

The maximum values of friction toque developed in each joint are [28.52, 26.63, 22.37, 1.65] Nm. The maximum value of joint friction torque is highest in hip Add/Abd joint and lowest in ankle DFl/PFl joint. This is because the entire limb of EXXON is attached with hip Add/Abd joint but only the foot module is attached with the ankle DFl/PFl joint. So torque required to overcome friction for hip Add/Abd joint will be maximum. Figure 39 shows the joint torque requirements for tracking the desired gait trajectories.

Fig. 39
figure 39

Joint torque required during trajectory tracking

The maximum torque required for tracking the desired trajectories are [319.18, 188.79, 157.9, 17.83] Nm. Peak torques can be seen at those instances of the gait cycle where the angular positions of the joints are large. At small angular positions, the torque requirements are low. For hip Add/Abd joint, maximum joint torque is required for Add; for hip Fl/Ext joint, it is for Ext; for knee joint, it is for Fl during swing phase; and for ankle joint, maximum joint torque occurs for DFl. Figure 40 shows the power requirements of the servo motor for tracking the desired gait trajectories.

Fig. 40
figure 40

Required power to track the desired trajectories

The maximum power required for tracking the desired trajectories are [95.66, 100.32, 93.25, 13.56] Watt. Although out of all the 4 joints the maximum joint torque is required for hip Add/Abd, yet the maximum power requirement is for hip Fl/Ext. It is because the range of motion and angular velocities of hip Add and Abd DOF are very small as compared to other joints of EXXON. Based on the maximum power requirement for each joint, the capacity of the servo motors are selected. For hip Add/Abd and Fl/Ext joint, and for knee Fl/Ext joint three servo motors with each 120 Watt rating are selected and for ankle DFl/PFl joint a servo motor with 20 Watt rating will perform the required task.

From Fig. 39, it can be seen that the torque requirement for the joints to track the desired gait trajectories are not smooth. Although the fluctuations in torque requirement are very small, yet their presence may create some minute unwanted chattering at the joints which may cause discomfort to the user. This is because the designed CTC is not being able to perform the linearization process perfectly. This is an inherited drawback of CTC controllers. CTC-based controllers are not very robust to parametric uncertainties and need accurate dynamical model for smooth performances. External disturbances or unmodelled dynamics can negatively affect the tracking accuracy and stability of CTC-based control systems. To account for these drawbacks of CTC, more robust controllers like adaptive controllers, sliding mode controllers, CTC-based controllers with machine learning, etc., are used in systems with complex dynamics.

6 Conclusions

A lower extremity exoskeleton, named as EXXON, for assistive and rehabilitative application is designed with a total of 10 DOF for both the limbs. The CAD model of EXXON is designed in SolidWorks (2018). The structure of EXXON is designed in such a way that it mimics the anatomy of humans. Both the thigh and shank segments are designed to be inclined outwards by 10\(^\circ \) so that the frame goes parallel to the human thigh and shin bones. The hip joint is a simple revolute joint which is designed to have 2 DOF, both active Fl/Ext and Add/Abd. The knee of EXXON is a polycentric joint with single DOF. The benefits of using a polycentric knee joint over a single-axis one are discussed. The ankle joint is also a revolute one with 2 DOF. Ankle DFl/PFl is an active joint whereas Inv/Ev DOF is passively actuated with a pair of helical spring. All the active joints are actuated with a servo motor. The range of motion of all the joints are within the human anatomical range of motion. Polycentric action of the human anatomical knee is obtained with a double 4-BM. Dimensional synthesis of both the trajectory tracing 4-BM and transmission 4-BM is presented. Optimization of centrode of the synthesized trajectory 4-BM is done to mimic the moving centrode of the anatomical knee joint, whereas optimization of transmission ratio of the transmission 4-BM is performed to minimize the required torque output of the motor for knee Fl/Ext. Thus, the design of EXXON is made anthropomorphic to replicate the human leg anatomy as much as possible. The adjustable thigh and shank and hip segment make EXXON adaptable for different users, while the inclined shank segment and polycentric knee joint ensures the safety and comfort of the wearer by avoiding misalignment between the human and exoskeleton. Thus, the wearers can use it for a prolonged period of time without discomfort. A PD Computed Torque Control, which is a model-based control, is developed to control the active joints of EXXON in order to track the gait trajectories. The kinematic and dynamic model of EXXON is presented using iterative Newton-Euler’s method. The state space model of the dynamic model is presented. A realistic friction model (Coulomb friction + Stribeck effect) is developed and incorporated into the dynamic model of EXXON to mitigate the frictional effects at the joints. The values of position and differential gains of the PD controller for all the four joints are obtained by a multi-objective optimization of the knee joint. The objective is to reduce both tracking error as well as joint torque for the designed polycentric knee. Further, in the simulation results, trajectory tracking performance, trajectory tracking error, torque and power requirement for tracking the specified gait trajectories are shown. The future scopes of the present work are as follows:

  • The physical model of EXXON can be fabricated and tested on potential users. Based on the feedback collected from such users improvement in the bio-mechanical design and its controller can be done.

  • Compliant actuator technology can be used instead of a rigid one for actuating the joints of EXXON so that the user feels comfort during its operation. A Series Elastic Actuator can be designed and its performance can be compared with servo motors.

  • Although the controlling of EXXON is stable, yet it is not self-balanced. Some mechanism or control strategy can be designed to make EXXON self-balanced.

  • External disturbances or parameter uncertainties can negatively affect the tracking accuracy and stability of CTC-based control systems. To account for these drawbacks of CTC, more robust controllers like adaptive controlling, sliding mode controlling, and neural networks can be implemented.