1. Introduction
As a representative of multidisciplinary systems, robotics has gained significant attention across various fields, driving economic growth and technological advancements. Notably, wearable robots are prime examples of human–machine coupling systems [Reference Bettella, Tortora, Menegatti, Petrone and Del1]. Hence, the robot functions as a mechanical motion platform with high load dynamics, while the human body serves as an environmental constraint. Specifically, the lower limb exoskeleton is a widely used wearable robot in the medical rehabilitation field, designed to assist elderly individuals and those with hemiplegia in regaining mobility [Reference Baud, Manzoori, Ijspeert and Bouri2].
Generally, various exoskeletons have been designed to assist with different tasks. For instance, Khamar et al. [Reference Khamar and Edrisi3] developed a knee exoskeleton to aid the wearer’s movement during flexion and extension. This design incorporated both a four-bar mechanism and a curved one. Aguirre-Ollinger et al. [Reference Aguirre-Ollinger, Colgate, Peshkin and Goswami4] created an exoskeleton specifically for knee flexion and extension exercises. Tsukahara et al. [Reference Tsukahara, Hasegawa, Eguchi and Sankai5] designed the HAL series exoskeletons to support individuals who require gait assistance. Li et al. [Reference Li, Guan, Han, Tang, Meng, Shi, Penzlin, Yang, Ren, Yang, Li, Leonhardt and Ji6] developed and validated a compact, modular lower limb exoskeleton to help patients regain locomotor ability. Centeno-Barreda et al. [Reference Centeno-Barreda, Salazar-Cruz, Lopez-Gutierrez, Rosales-Luengas and Rogelio7] proposed an adaptive nonsingular sliding mode control for lower limb exoskeletons in gait rehabilitation. Additionally, some lower limb exoskeletons have been powered by hydraulic actuators [Reference Yang, Ma and Huang8] or series elastic actuators (SEAs) [Reference Li, Liu and Yu9].
To ensure both comfort for the wearer and the stability of the exoskeleton’s motion, rapid response and precise tracking performance are essential for improving compliance control in human-exoskeleton cooperative motion [Reference Centeno-Barreda, Salazar-Cruz, López-Gutiérrez, Rosales-Luengas and Lozano10]. However, due to model uncertainties and external disturbances, the traditional PID controller, while easy to implement, often fails to deliver good tracking performance under complex conditions. Therefore, a model-based controller is proposed to improve tracking performance, provided that accurate model parameters can be obtained [Reference Guo, Zhang, Celler and Su11]. Model identification of the exoskeleton is essential for designing the model-based controller. The exoskeleton’s dynamic model can be derived using the Lagrangian or Newton–Euler methods [Reference Han, Wu, Liu and Xiong12]. However, model parameters derived from some CAD software can be inaccurate [Reference Guo, Chen, Yan, Xiong, Jiang and Shi13], as mechatronic components such as gearboxes and sensors are integrated into the robot. Therefore, model parameter identification based on sampling datasets is necessary to accurately reconstruct the robotic dynamic model. Meanwhile, the excitation trajectory must be designed to achieve accurate model identification [Reference Swevers, Ganseman, Tukel, de Schutter and Van Brussel14]. Traditional model identification methods, such as least-squares estimation and inverse dynamic identification models (IDIM), have been widely used in the robotics field. Recently, several studies have proposed new approaches for robot model identification [Reference Young and Ferris15]. Cao et al. [Reference Cao, Li, Li, Li and Wang16] used the Newton–Euler dynamics estimation method to effectively predict human–robot interaction forces in a 4-DOF upper extremity rehabilitation robot. Similarly, Bonnet et al. [Reference Bonnet, Fraisse, Crosnier, Gautier, Gonzalez and Venture17] proposed an identification method based on the leg system to determine optimal excitation motions while considering mechanical constraints. Furthermore, with advancements in AI (artificial intelligence) technology, intelligent algorithms such as neural networks (NN) and particle swarm optimization (PSO) have been increasingly applied to robotic dynamic model identification. In this study, neighborhood field optimization (NFO) is applied for model identification to enhance both accuracy and convergence speed. Additionally, sensor measurement noise is estimated using a designed filter, and a Huber fitness function [Reference Jiang, Wang, Fu and Wang18] is employed to achieve better identification performance.
It is important to study the mechanism of human-exoskeleton interaction control [Reference Yang, Li, Li, Zhou and Wang19]. In this context, physical human–robot interaction (pHRI) is achieved by measuring the interaction forces between the robot and its environment, with the corresponding interaction response [Reference Bettella, Tortora, Menegatti, Petrone and Felice20] being adjustable by regulating the controller parameters. The admittance model generates the reference trajectory for the position controller by utilizing the human-exoskeleton interaction force [Reference Shi, Zhang, Zhang and Ding21]. Furthermore, Modares et al. [Reference Modares, Ranatunga, Lewis and Popa22] introduced an admittance controller designed to accomplish point-to-point mapping motion. Morbi et al. [Reference Morbi and Ahmadi23] applied pHRI in haptic sensing devices to enhance human–robot compliance by utilizing various admittance controllers. Subsequently, Yan et al. [Reference Yan, Chen, Huang, Chen and Guo24] developed a human-exoskeleton interaction model using the linear-damping-spring method and described the muscle function loss of the wearer [Reference Sun, Chen, Guo and Yan25]. Meanwhile, Li et al. [Reference Li, Huang, Ye, Deng and Yang26] proposed a pHRI method based on admittance control to address unknown inertia masses and moments in the exoskeleton dynamics. Guo et al. [Reference Zhan, Kou, Guo, Wang, Chen, Shi and Li27] introduced a multilevel control strategy for human-exoskeleton cooperative motion in both active and passive modes of wearable training. Kou et al. [Reference Kou, Wang, Chen, Shi and Guo28] employed a central pattern generator to achieve gait planning for wearable exoskeletons. Zhan et al. [Reference Zhan, Kou, Guo, Zhang and Shi29] utilized dynamic movement primitives to optimize the exoskeleton’s gait trajectory and designed a fixed-time fuzzy adaptive controller to improve the exoskeleton’s response. Later, Yang et al. [Reference Yang, Peng, Li, Cui, Cheng and Li30] introduced an admittance adaptation method in robotic arms for interaction with unknown environments. Yu et al. [Reference Yu, He, Li, Xue, Li, Zou and Yang31] proposed a Bayesian approach to estimate impedance and motion intention in human–robot cooperative tasks, which was validated through experiments on the Baxter robot platform. Arefeen et al. [Reference Arefeen and Xiang32] proposed an artificial neural network-based control strategy for powered knee exoskeletons to assist with lifting tasks.
Despite significant advances in lower limb exoskeletons, existing control strategies often suffer from poor adaptability to human intentions, especially under uncertain dynamic parameters and varying interaction conditions. Traditional controllers such as PID are insufficient in such scenarios. To address these challenges, this study integrates accurate model identification via the NFO method with an active admittance control strategy. The admittance control framework enables real-time response to human-exoskeleton interaction torques, ensuring smooth and safe cooperative motion. This is particularly important for rehabilitation applications, where interaction safety and compliance are critical.
Based on the previous work related to the design of 2-DOF lower limb exoskeleton platforms, admittance control, and model identification, this study focuses on the model identification and active control of lower limb exoskeletons. The main contributions of this study are as follows:
-
1. A lower limb exoskeleton platform is developed with integrated sensing and control systems to support experimental validation of human-exoskeleton cooperative motion.
-
2. The NFO is employed to design the excitation trajectory with motion constraints and to identify unknown model parameters in the exoskeleton dynamics. This ensures that the model-based controller design has a relatively accurate Lagrangian model. The NFO method demonstrates better identification performance compared to other optimization algorithms, such as PSO and GA.
-
3. The active admittance control strategy for the exoskeleton is designed to ensure that the exoskeleton follows the operator’s motion intention based on real-time human-exoskeleton interaction torque. This approach guarantees both the operator’s comfort and safety during human-exoskeleton cooperative motion. Simulation and experimental results are provided to verify the effectiveness of the proposed methods in terms of model accuracy and interaction adaptability.
2. Design of exoskeleton platform
2.1. Lower limb exoskeleton platform
The 2-DOF exoskeleton platform is shown in Figure 1, with its structure made of carbon fiber to ensure both strength and portability. Flexible guards are used to secure the thighs and shanks, while the waist is fixed with a belt. An aluminum connector links the two legs. The hip and knee joints are active units driven by servo motors, while the ankle joint is a passive unit connected by a universal joint.
The 2-DOF lower limb exoskeleton.

2.2. Design of the limitation strategy
The safety of both the exoskeleton and the wearer, as well as the development cost, must be considered during the design process. Therefore, an effective limitation strategy is essential to ensure the safety of both the exoskeleton and the human. First, a hard limitation structure is implemented to restrict the motion ranges of the hip and knee joints. The hip joint has a range of [−90
$^\circ$
to 45
$^\circ$
], and the knee joint ranges from [−120
$^\circ$
to 10
$^\circ$
]. Additionally, a soft limitation strategy is designed to prevent motor collision, as illustrated in Figure 2. The green line represents the normal operation safety area, and the circuit mode is used within this section. Once the motor’s rotational position exceeds the L1 soft limit, the target position controller is set to L1, with a PD controller used to achieve the tracking effect. If the motor surpasses the L2 critical line, it enters the brake area. The servo motor then switches to the S-curve position model and attempts to bring the motor back to the safe area as quickly as possible by adjusting the motor’s acceleration. Moreover, the maximum acceleration is limited to a normal speed to ensure wearer protection. Finally, if the motor’s rotational position exceeds the L3 collision line, buffer foams are attached to the limiting part to prevent hard collisions. The overall motor limitation strategy flowchart is shown in Figure 2. Following the limitation test, the experiments can be conducted without any issues.
The definition of limitation modular.

2.3. Electronic system of a lower limb exoskeleton
The main control system consists of an STM32 and an FPGA. The STM32H733 is selected to implement the control algorithm, while the XC6SLX9 FPGA is used to collect 32-channel parallel AD data, communicating with the ADC chip via SPI. Memory data exchange between the STM32 flexible state memory controller and the FPGA is implemented efficiently. The test bandwidth is set to 10 MB to meet the data collection requirements. Eight distributed acquisition modules around the main controller handle data conditioning and ADC tasks. Additionally, the system features interactive interfaces such as network ports, Bluetooth, and a keypad, enabling various expansion tasks.
The servo motors (QDD Pro-PR60-100-90 and QDD Pro-NE30-100-70) are selected for the exoskeleton actuator system, which includes the motor, decelerator, and absolute encoder, communicating with the main controller via CAN. The sensor system is designed to measure real-time motion information using absolute encoders, a 3D force sensor, and plantar pressure sensors. The absolute encoder, integrated into the servo motor, is used to track the exoskeleton’s real-time position. To accurately measure human-exoskeleton interaction torque, a 3D force sensor (LH-SZ-60F3-50N) is installed on both legs, the H3D60-100N sensor is used to measure waist force, and the Model-1021 sensor is employed to measure ground reaction force.
3. Modeling and identification
3.1. Parametric dynamics model of exoskeleton
The experimental platform for the lower extremity exoskeleton is shown in Figure 3. This exoskeleton is a humanoid leg with two degrees of freedom. The mechanical bracket is fixed to the ground, with the hip joint of the exoskeleton mounted onto the bracket. Both the hip and knee joints are driven by servo motors. The leg is connected to three-dimensional (3D) force sensors via a strap, with one terminal of the 3D force sensors fixed to the corresponding exoskeleton calf and thigh, while the other terminal is secured to the strap. The joint angles and torques are measured by absolute encoders and torque sensors, respectively.
The lower limb exoskeleton experimental platform.

The exoskeleton single-side model can be simplified to a 2-link model as shown in Figure 3, with the origin of the Cartesian coordinate system defined at the hip joint center. In this system,
$O$
,
$x$
, and
$y$
represent the origin,
$x$
-axis,
$y$
-axis, respectively. The variables
$q_{1}$
and
$q_{2}$
represent the rotational angles of hip and knee joints. The parameters
$m_{th}$
and
$m_{sh}$
are the masses of thigh and shank, while
$a_{th}$
and
$a_{sh}$
represent their respective lengths. The distances
$l_{th}$
and
$l_{sh}$
denote the lengths from the hip motor center to the centroid of the thigh and from the knee motor center to the centroid of the shank, respectively.
$I_{th}$
and
$I_{sh}$
are the inertia moments of thigh and shank, and
$g$
is the gravitational constant.
The dynamic model of a 2-DOF lower limb exoskeleton, accounting for joint friction and human-exoskeleton interaction torque, is derived using the Lagrange method as follows:
where
$q \in \mathbb{R}^2$
is the position of two exoskeleton joints,
$\tau \in \mathbb{R}^2$
is the torque of two joint motors,
$\tau _{ext} \in \mathbb{R}^2$
is the human-exoskeleton interaction torque,
${\tau _f} ({\dot q})$
is the joint friction of exoskeleton;
$M(q) \in \mathbb{R}^{2 \times 2}$
,
$C(q, \dot {q}) \in \mathbb{R}^{2 \times 2}$
, and
$G(q) \in \mathbb{R}^2$
are the inertia matrix, coriolis matrix, gravity force matrix, and these 3 terms are given by
$M\left ( q \right ) = \left [ {\begin{array}{*{20}{c}} {{M_{11}}}&{{M_{12}}}\\ {{M_{21}}}&{{M_{22}}} \end{array}} \right ]$
,
$C\left ( {q,\dot q} \right ) = \left [ {\begin{array}{*{20}{c}} {{C_{11}}}&{{C_{12}}}\\ {{C_{21}}}&{{C_{22}}} \end{array}} \right ]$
,
$G\left ( q \right ) = \left [ {\begin{array}{*{20}{c}} {{G_1}}\\ {{G_2}} \end{array}} \right ]$
, where
${M_{11}} = {I_{th}} + {I_{sh}} + {m_{th}}l_{th}^2 + {m_{sh}}a_{th}^2 + {m_{sh}}l_{sh}^2 + 2{m_{sh}}{a_{th}}{l_{sh}}\cos {q _2}$
,
${M_{12}} = {I_{sh}} + {m_{sh}}l_{sh}^2 + {m_{sh}}{a_{th}}{l_{sh}}\cos q_2$
,
${M_{21}} = {I_{sh}} + {m_{sh}}l_{sh}^2 + {m_{sh}}{a_{th}}{l_{sh}}\cos q_2$
, and
${M_{22}} = {I_{sh}} + {m_{sh}}l_{sh}^2$
. For the Coriolis matrix,
${C_{11}} = - {m_{sh}}{a_{th}}{l_{sh}}\sin {q _2}{{\dot q }_2}$
,
${C_{12}} = - {m_{sh}}{a_{th}}{l_{sh}}\sin {q _2}( {{{\dot q }_1} + {{\dot q }_2}})$
,
${C_{21}} = {m_{sh}}{a_{th}}{l_{sh}}\sin {q _2}{{\dot q }_1}$
, and
${C_{22}} = 0$
. And
${G_1} = l_{th}^{}{m_{th}}g\sin {q _1} + {m_{sh}}g( {{a_{th}}\sin {q _1} + {l_{sh}}\sin ( {{q _1} + {q _2}} )} )$
and
${G_2} = {l_{sh}}{m_{sh}}g\sin ( {{q _1} + {q _2}} )$
.
${\dot q_i},{\ddot q_i}( {i = 1,2} )$
are the angular velocity and acceleration of exoskeleton 2 joints, respectively. The joint friction
${\tau _f}( {\dot q } )$
is given by
\begin{align} {\tau _f}\left ( {\dot q} \right ) = \left [ {\begin{array}{*{20}{c}} {{k_{1,1}}{\mathop {\textrm {sgn}}} \left ( {{{\dot q}_1}} \right ) + {k_{1,2}}{{\dot q}_1}}\\[3pt] {{k_{2,1}}{\mathop {\textrm {sgn}}} \left ( {{{\dot q}_2}} \right ) + {k_{2,2}}{{\dot q}_2}} \end{array}} \right ], \end{align}
where
${k_{i,1}},{k_{i,2}}( {i = 1,2})$
are coulomb and viscous friction coefficient. To address the operability of identification, the system dynamic model can be rewritten as follows:
where
$Y(q, \dot {q}, \ddot {q})$
is the kinetic regression matrix, and
$\Phi$
is the uncertain parameter matrix.
$Y$
and
$\Phi$
are given by
\begin{equation} Y = \left [ {\begin{array}{*{20}{c}} {{Y^{(11)}}}&{\begin{array}{*{20}{c}} {{Y^{(12)}}}& \ldots &{{Y^{(18)}}} \end{array}}\\[3pt] {{Y^{(21)}}}&{\begin{array}{*{20}{c}} {{Y^{(22)}}}& \ldots &{{Y^{(28)}}} \end{array}} \end{array}} \right ] \end{equation}
where
${Y^{( {11} )}} = {{\ddot q}_1} + e\sin {q_1}$
,
${Y^{( {12} )}} = {{\ddot q}_2} - e\sin {q_1}$
,
${Y^{( {13} )}} = 2\cos {q_2}{{\ddot q}_1} + \cos {q_2}{{\ddot q}_2} - 2\sin {q_2}{{\dot q}_1}{{\dot q}_2} - \sin {q_2}{{\dot q}^2}_2 + e\sin ( {{q_1} + {q_2}} )$
,
${Y^{( {14} )}} = e\sin {q_1}$
,
${Y^{\left ( {15} \right )}} = {\mathop {\textrm {sgn}}} \left ( {{{\dot q}_1}} \right )$
,
${Y^{\left ( {16} \right )}} = {{\dot q}_1}$
,
${Y^{\left ( {17} \right )}} = 0$
and
${Y^{\left ( {18} \right )}} = 0$
,
${Y^{\left ( {21} \right )}} = 0$
,
${Y^{\left ( {22} \right )}} = {{\ddot q}_1} + {{\ddot q}_2}$
,
${Y^{\left ( {23} \right )}} = \cos {q_2}{{\ddot q}_1} + \sin {q_2}{{\dot q}^2}_1 + e\sin \left ( {{q_1} + {q_2}} \right )$
,
${Y^{\left ( {24} \right )}} = 0$
,
${Y^{\left ( {25} \right )}} = 0$
,
${Y^{\left ( {26} \right )}} = 0$
,
${Y^{\left ( {27} \right )}} = {\mathop {\textrm {sgn}}} \left ( {{{\dot q}_2}} \right )$
,
${Y^{\left ( {28} \right )}} = {{\dot q}_2}$
, and
$e = {a_{th}}/g$
.
$\Phi = {\left [ {\begin{array}{*{20}{c}} {{\Phi ^{\left ( 1 \right )}}}&{\begin{array}{*{20}{c}} {{\Phi ^{\left ( 2 \right )}}}& \ldots \end{array}}&{{\Phi ^{\left ( 8 \right )}}} \end{array}} \right ]^T}$
, where
${\Phi ^{\left ( 1 \right )}} = {I_{th}} + {I_{sh}} + {m_{th}}l_{th}^2 + {m_{sh}}a_{th}^2 + {m_{sh}}l_{sh}^2$
,
${\Phi ^{\left ( 2 \right )}} = {I_{sh}} + {m_{sh}}l_{sh}^2$
,
${\Phi ^{\left ( 3 \right )}} = {m_{sh}}{a_{th}}{l_{sh}}$
,
${\Phi ^{\left ( 4 \right )}} = {m_{th}}{a_{th}}l_{th}^{} - {I_{th}} - {m_{th}}l_{th}^2$
,
${\Phi ^{\left ( 5 \right )}} = {k_{1,1}}$
,
${\Phi ^{\left ( 6 \right )}} = {k_{1,2}}$
,
${\Phi ^{\left ( 7 \right )}} = {k_{2,1}}$
, and
${\Phi ^{\left ( 8 \right )}} = {k_{2,2}}$
.
The model identification of the exoskeleton is based on the estimation of certain mechatronic parameters, excluding the human-exoskeleton interaction torque. Therefore, if
${\tau _{ext}} = 0$
, the exoskeleton model is given by
where
$\Phi$
is the unknown parameter vector to be identified based on the torque
$\tau$
and the matrix
$Y$
.
The sampling dataset with
$N$
groups is established by 2 parts, i.e.,
$\bar Y \in {R^{2N \times 8}}$
and
$\bar \tau \in {R^{2N}}$
, which are given by
where
$Y^{i}$
and
$\tau ^{i}$
are the
$i$
-th sampling regression matrix
$Y$
and the torque vector
$\tau$
. Based on the current estimated parameter vector
$\hat \Phi$
, the estimated torque vector
$\hat \tau \in {R^{2N}}$
is given by
$\hat \tau = \bar Y\hat \Phi$
, where
$\hat \Phi$
is the estimated parameter vector. Meanwhile, the estimated torque error
$\tilde \tau = \bar \tau - \hat \tau$
is the performance index to evaluate the estimation value
$\hat \Phi$
.
3.2. Neighborhood field optimization (NFO)
The NFO algorithm fully utilizes the local neighborhood information of each particle to enhance both the overall optimization accuracy and convergence speed. For a
$D$
-dimensional optimization vector, the NFO algorithm is described as follows:
Step 1. Initialization: The number of individuals and the termination condition for optimization are determined by the optimization problem. The initial
$N$
individuals are randomly distributed within the designed search space.
Step 2. Local search: If the
$i-th$
individual at the
$G-th$
generation is defined as
$x_{i,G}$
, then the superior
$xc_{i,G}$
and inferior
$xw_{i,G}$
are found in the respective neighborhoods as follows
\begin{align} \left \{ {\begin{array}{*{20}{c}} {x{c_{i,G}} = \arg {{\min }_{f\left ( {{x_{k,G}}} \right ) \lt f\left ( {{x_{i,G}}} \right )}}\left \| {{x_{k,G}} - {x_{i,G}}} \right \|}\\[3pt] {x{w_{i,G}} = \arg {{\min }_{f\left ( {{x_{k,G}}} \right ) \gt f\left ( {{x_{i,G}}} \right )}}\left \| {{x_{k,G}} - {x_{i,G}}} \right \|} \end{array}} \right . , \end{align}
where
$x_{k,G}$
is the other individual in population,
$f$
is the fitness function,
$||$
is the Euclidean distance in search space, and
$xc_{i,G}$
and
$xw_{i,G}$
are the superior and inferior individuals based on the fitness function.
Step 3. Mutation: The mutation factors for the individuals are generated by
where
$\alpha$
is the random learning rate, and
$rand(1)$
is the random factor vector with each element value in [0,1].
Step 4. Crossover: The mutation vector is updated with the current individual
$x_i$
by
where
$j$
is the dimensional index,
$C_r = 0.5$
is the crossover factor, rand (0,1) is a random number in the scale of [0,1], and
$j_{rand}$
is a random component to accept the new vector.
Step 5. Selection: The individual with the better fitness between
$u_{i,G}$
and
$x_{i,G}$
is selected as the
$i$
-th individual for the next generation as follows:
Step 6. Judgment: If the current termination condition is satisfied, the optimization process stops. Otherwise, proceed to Step 2.
3.3. Stimulated trajectory design
To improve the accuracy of model identification, the designed stimulated trajectories for the two joints must minimize the influence of external disturbances and acquisition errors. At the same time, the physical motion constraints of both the exoskeleton and the wearer should be considered to ensure human-exoskeleton safety. Based on these requirements, the limited motion constraint range for the stimulated trajectory is provided in Table I. Additionally, the condition number of the observation matrix (Cond(Y)) is used to assess the effectiveness of the proposed stimulated trajectories. The sensitivity of the matrix error depends on the value of Cond(Y), with smaller values indicating better results.
The motion constraints of stimulated trajectory.

In this study, the stimulated trajectory is designed using Fourier series methods as given by
\begin{align} \left \{ {\begin{array}{*{20}{c}} {{q_d} = {q_0} + \sum \limits _{k = 1}^N {\left ( {{a_k}\sin k{w_f}t + {b_k}\cos k{w_f}t} \right )} }\\[2pt] {{{\dot q}_d} = \sum \limits _{k = 1}^N k {w_f}\left ( {{a_k}\cos k{w_f}t - {b_k}\sin k{w_f}t} \right )}\\[2pt] {{{\ddot q}_d} = \sum \limits _{k = 1}^N {{{\left ( {k{w_f}} \right )}^2}\left ( { - {a_k}\sin k{w_f}t - {b_k}\cos k{w_f}t} \right )} } \end{array}} \right .. \end{align}
where
$a_k$
and
$b_k$
are the optimized parameters, which are the coefficients of the sine and cosine terms to construct different trajectories,
$q_0$
is the initial offset of each joint trajectory,
$w_f$
is the fundamental frequency, and
$k$
is the frequency coefficient.
To ensure the effectiveness of the optimization and the convergence speed of the stimulated trajectory, the NFO algorithm, based on the regression matrix
$Y$
, is used to obtain the optimized parameters
$a_k$
and
$b_k$
. The corresponding fitness function is given by
3.4. Exoskeleton model identification
Similar to the stimulated trajectory design in the previous section, the PD control algorithm is used to control the exoskeleton in following the stimulated trajectory. Meanwhile, the actual angular values and torques of the exoskeleton are measured by the corresponding sensors. The dataset is bidirectionally filtered using a Butterworth low-pass filter to eliminate external interference. The system identification scheme is shown in Figure 4. By utilizing the observation dataset
$\bar Y$
and
$\tau$
obtained from the excitation experiment, the estimated parameter vector
$\hat \Phi$
is optimized using the NFO algorithm to ensure that the estimated torque vector
$\hat \tau \to \tau$
. According to the exoskeleton’s identification model, the ideal estimated parameter vector
$\hat \Phi$
should satisfy the condition
$\hat \Phi \to \Phi$
.
If the sampled data is accurate, the SSE fitness function can quickly yield the ideal parameter vector with high accuracy as follows
where
$N$
is the sample numbers, and
$E_i$
is the torque estimated deviation between acquisition torque and the model identification solved torque.
The model parametric identification diagram of the exoskeleton.

4. Active admittance controller design
4.1. The modeling of human-exoskeleton interaction torque
The accurate solution of the differential equation is crucial for implementing the admittance controller of the exoskeleton. In this study, the fourth-order Runge-Kutta method is employed to solve the differential equation. The numerical solution of the differential equations is feasible to implement on the STM32 platform using
$C$
language. With the help of human-exoskeleton interaction torques, the exoskeleton can follow the wearer’s motion. Therefore, the model for the human-exoskeleton interaction torque must be accurate to effectively capture the wearer’s motion intentions. In this study, only sagittal plane motion is considered for the experiment. Let the exoskeleton motion be represented as
$[ {{q_1},{q_2}} ]$
, and the measured force from the 3-D force sensor is given by
where
$F$
is the total external force measured by the force sensor,
$F_s$
consists of the gravity and centripetal forces that affect the motion of the sensor and the flexible protector, and
$F_b$
is the human-exoskeleton interaction force.
For the exoskeleton thigh,
$F_{s1}$
can be decomposed into gravity force
$F_{{s_1}g}$
and centripetal force
$F_{{s_1}c}$
. Then
$F_{{s_1}g}$
can be decomposed into
$x$
and
$y$
directions, which could be measured by the force sensor such that
where
$q_1$
is the angle between the thigh and the direction of gravity.
Hence, the
$x$
and
$y$
axis forces measured by the force sensor are given by
\begin{align} \left \{ \begin{array}{l} {F_{{s_1}}}_x = {F_{{s_1}g}}_{_x} = {m_{{s_1}}}g\sin {q _1}\\[2pt] {F_{{s_1}y}} = {F_{{s_1}g}}_{_y} + {F_{{s_1}c}} = {m_{{s_1}}}g\cos {q _1} + {m_{{s_1}}}{r_1}{{\dot q }^2}_1 \end{array} \right . \end{align}
where
$m_{{s_1}}$
is the mass of the force sensor and the flexible brace,
$g$
is the gravity acceleration term,
$F_{{s_1}c}$
is the centripetal force of the thigh sensor and the flexible brace,
$r_1$
is the rotation radius, and
${\dot q ^{}}_1$
is the hip joint angular velocity.
Meanwhile, for knee joints, we can derive that
\begin{equation} \left \{ \begin{array}{l} {F_{{s_2}g}}_{_x} = {F_{{s_2}g}}\sin {q _3} = {m_{{s_2}}}g\sin {q _3}\\[2pt] {F_{{s_2}g}}_{_y} = {F_{{s_2}g}}\cos {q _3} = {m_{{s_2}}}g\cos {q _3} \end{array} \right . \end{equation}
where
$m_{{s_1}}$
is the mass of the shank sensor and the flexible brace, and
$q _3$
is the angle between the shank and the direction of gravity.
Hence, the
$x$
and
$y$
axis forces measured by the shank force sensor are given by
\begin{equation} \left \{ \begin{array}{l} {F_{{s_2}}}_x = {F_{{s_2}g}}_{_x} + {F_{th}}\sin {q _4} = {m_{{s_2}}}g\sin {q _3} + {m_{{s_2}}}r{{\dot q }^2}_1\sin {q _4}\\[2pt] {F_{{s_2}y}} = {F_{{s_2}g}}_{_y} + {F_{th}}\cos {q _4} + {F_{{s_2}c}} \\[2pt] \qquad = {m_{{s_2}}}g\cos {q _3} + {m_{{s_2}}}r{{\dot q }^2}_1\cos {q _4} + {m_{{s_2}}}{r_2}{{\dot q }^2}_2 \end{array} \right . \end{equation}
where
$F_{th}$
is the centripetal force on the shank sensor and brace centered on the hip motor,
$q _4$
is the angle between the shank and the centripetal force,
$r_2$
is the rotation radius, and
$F_{{s_2}c}$
is the centripetal force on the sensor and the brace centered on the knee joint.
The solutions of
$r$
and
$q _4$
are
\begin{align} \left \{ \begin{array}{l} r = \sqrt {{L_1}^2 + {r_2}^2 + {L_1}{r_2}\cos {q _2}} \\[2pt] {q _4} = \arccos ( {{\textstyle {{{r_2}^2 + {r^2} - {L_1}^2} \over {2{r_2}r}}}} ) \end{array} \right . \end{align}
where
$L_1$
is the distance between the mass center of the hip and knee joints.
The human-exoskeleton interaction torque of
$x$
and
$y$
directions is given by
\begin{equation} \left [ {\begin{array}{*{20}{c}} {{F_b}_{t{h_x}}}\\ {{F_b}_{t{h_y}}}\\ {{F_b}_{s{h_x}}}\\ {{F_b}_{s{h_y}}} \end{array}} \right ] = \left [ {\begin{array}{*{20}{c}} {{F_s}_{t{h_x}}}\\ {{F_s}_{t{h_y}}}\\ {{F_s}_{s{h_x}}}\\ {{F_s}_{s{h_y}}} \end{array}} \right ] - \left [ {\begin{array}{*{20}{c}} {{F_{{s_1}x}}}\\ {{F_{{s_1}y}}}\\ {{F_{{s_2}x}}}\\ {{F_{{s_2}y}}} \end{array}} \right ] \end{equation}
where
${F_b}_{t{h_ \bullet }}$
,
${F_s}_{t{h_ \bullet }}$
, and
$F_{{s_1} \bullet }$
are the human-exoskeleton interaction torque of the thigh, the sensor-measured force, and the external force, respectively, which are similar to the shank.
Since the output of the motor is torque, the human-exoskeleton interaction forces need to be converted into torque as follows:
\begin{equation} \left [ {\begin{array}{*{20}{c}} {{\tau _{hip}}}\\ {{\tau _{knee}}} \end{array}} \right ] = \left [ {\begin{array}{*{20}{c}} {{r_1}}&0&{{L_1}\cos {q _2}}&{{L_1}\sin {q _2}}\\ 0&0&{{r_2}}&0 \end{array}} \right ]\left [ {\begin{array}{*{20}{c}} {{F_b}_{t{h_x}}}\\ {{F_b}_{t{h_y}}}\\ {{F_b}_{s{h_x}}}\\ {{F_b}_{s{h_y}}} \end{array}} \right ]. \end{equation}
where
$\tau _{hip}$
and
$\tau _{knee}$
are interaction torques. During the experiment, the real-time torque information can be obtained by the sensor acquisition data.
4.2. Position control loop design
Feedback control is used to establish the relationship between learning rates and network training. PID control offers a straightforward and efficient solution to many real-world control problems. It computes the control variable
$u_t$
based on the proportional (P), integral (I), and derivative (D) components of the error
$e_t$
. The PID control law is expressed as
where
$K_p$
is the proportional gain,
$T_I$
is the integral time constant, and
$T_D$
is the derivative time constant. The rule must be digitized for computer realization.
Eq. (7) is converted into a difference equation, which results in digital PID control. First, the integral and derivative terms are approximated as follows
where
$k$
is a sampling time, and
$T$
is the sampling period.
Furthermore, the incremental PID controller is designed as
\begin{equation} {\tau _k} = {K_p}\left ( {{e_k} + \frac {T}{{{T_I}}}\sum \limits _{i = 0}^k {{e_i} + {T_D}\frac {{{e_k} - {e_{k - 1}}}}{T}} } \right ) \end{equation}
where
$u_k$
is the output at the
$k$
th sampling time.
Meanwhile, the
$k-1$
control variable
$\tau _{k-1}$
is given by
\begin{equation} {\tau _{k - 1}} = {K_p}\left ( {{e_{k - 1}} + \frac {T}{{{T_I}}}\sum \limits _{i = 0}^{k - 1} {{e_i} + {T_D}\frac {{{e_{k - 1}} - {e_{k - 2}}}}{T}} } \right ). \end{equation}
Hence, the PID incremental variable
$\Delta {\tau _k}$
becomes
where
$K_p$
is the proportional coefficient,
${K_I} = ( {{K_p}T/{T_I}} )$
is the integral coefficient, and
${K_D} = \left ( {\left ( {{K_p}{T_D}} \right )/T} \right )$
is the derivative coefficient.
Finally, the incremental PID controller is defined as
Unlike the positional PID controller, the incremental PID controller is particularly well-suited for tuning learning rates, as it depends only on the last three errors, resulting in lower computational cost.
4.3. Admittance control loop design
The admittance control serves as the outer loop of the exoskeleton, as illustrated in Figure 5. By applying Newton’s and Hooke’s laws, the admittance model of a mechanical system is formulated as a mass-spring-damping model as follows:
where
$\Delta q = q_d - q_r$
and
$q_d, q_r\in \mathbb{R}^2$
are the output and input of the admittance controller,
$M_a$
,
$B_a$
, and
$K_a$
are inertia, damping, and stiffness matrices, and
$\tau _{e x t}$
is the human-exoskeleton torque.
If the human-exoskeleton torque
$\tau _{e x t}$
and the reference joint position
$q_r$
of the exoskeleton are obtained in real-time, then the admittance controller output
$q_d$
is calculated by the converted linear transfer function as follows:
where
$\Delta q$
is determined by both the admittance parameters and the human-exoskeleton interaction torque.
Remark. In practice, the human-exoskeleton interaction torque
$\tau _{ext}$
can be measured using a 3D force sensor located on the exoskeleton.
The control block diagram for the admittance control is shown in Figure 5. The admittance loop directly influences the response performance of the inner position loop, as
$q_d$
also represents the desired demand for the position controller. In fact,
$\Delta q$
represents the output of the admittance controller to correct the reference trajectory
$q_r$
, which is subjects to the true desired trajectory
$q_d$
of the position controller.
The model parametric identification diagram of the exoskeleton.

5. Experimental verification
5.1. Stimulated trajectory verification
In the design of the simulated trajectory, the following parameters are selected:
$N=4$
, the number of individuals is 80, and the maximum number of iterations is 500. The parameter search range is [−40, 40] with
$q_0 \in [{-}21.5^{\circ }, 28.5^{\circ }]$
, the angular frequency
$\omega = 0.2\pi$
rad/s, and the random number
$\alpha$
constrained to the range [1.5, 1.7]. Through iterative computation, the simulated trajectory parameters are obtained using an optimal algorithm based on the fitness function, resulting in
$Cond(Y) = 48.45$
. The designed parameters of stimulated trajectory are shown in Table II.
The excitation trajectory of 2 joints: (a) hip joint and (b) knee joint.

The excitation trajectories of the two joints are shown in Figure 7. It can be observed that the trajectories of the exoskeleton joints are constrained within motion limits by the NFO algorithm with the fitness function. As a result, these two simulated trajectories are smooth and suitable for use in model parametric identification.
The tracking response of the exoskeleton by the PD controller is shown in Figure 6, and the actual position response of 2 joints is stable and satisfied with the exoskeleton model identification.
The designed parameters of stimulated trajectory.

The actual position response of two designed joint stimulated trajectories: (a) hip joint and (b) knee joint.

For the real-time torque signal obtained from the servo motor, the sampling torque matrix
$\bar \tau$
can be calculated using the current torque coefficients provided by the manufacturer. However, high-frequency noise exists in the acquisition signals due to sampling errors and time delays. To enhance identification accuracy, a low-pass filter is designed to process the raw data and estimate these disturbances. While the motor positions
$q_1$
and
$q_2$
, obtained from the absolute encoder, are accurate, the velocities
$ \dot q_1$
and the acceleration
$\ddot q_2$
, calculated using the difference method, are not. Therefore, these signals also need to be processed by the low-pass filter. The processed signals are shown in Figure 8.
The condition results of the acquisition signals by low-pass filter are (a) hip joint and (b) knee joint.

The model parametric identification values.

5.2. Model parametric identification results
The NFO, together with the sample regression matrix
$\bar Y$
and the sample torque matrix
$\bar \tau$
, are used for model identification. The corresponding parameters are selected as the population size
$N_{p} = 50$
, the iteration number
$N = 500$
, and the range of optimization is
$[\!-50,50]$
. By using the 50-s sampling data of the designed stimulated experiment, the model identification results of the 8 model parameters
${\hat \Phi ^{\left ( i \right )}}\left ( {i = 1, \ldots 8} \right )$
are shown in Table III. Only
$\hat \Phi ^{(4)}$
is the minimal value. Hence, the results match the limit condition.
Furthermore, to evaluate the identification results, the exoskeleton’s real output torque can be obtained using the identified model parameters
$\hat \phi$
and the regression matrix
$\bar Y$
. The comparison between the real torque and the measured torque is shown in Figure 9.
The torque estimation and the measurement values of 2 joints: (a) hip joint and (b) knee joint.

To further validate the superiority of the NFO algorithm, comparative experiments were conducted using the same experimental setup with PSO and GA under identical population size and iteration conditions. As shown in Figure 10, the NFO algorithm not only converged faster but also achieved the lowest fitness value, indicating better identification accuracy. The improved performance is attributed to the NFO’s ability to exploit local neighborhood information effectively while maintaining global search capabilities, which reduces the risk of premature convergence and enhances robustness in complex parameter spaces.
Different identification algorithm comparison.

5.3. Admittance controller verification
The active admittance control strategy is validated on the designed exoskeleton platform. Both the outer-loop admittance controller and the inner-loop position controller are implemented to conduct the human-exoskeleton interaction experiments.
The active admittance experimental results are (a) the angle response of the hip joint, (b) the interaction torque of the thigh, (c) the angle response of the hip joint, and (d) the interaction torque of the shank.

The experimental verification of the active admittance control strategy is shown in Figure 11; the joint position tracking results exhibit smooth trajectories with minimal overshoot and steady-state error. The exoskeleton responds rapidly to variations in human-exoskeleton interaction torque, demonstrating the system’s high sensitivity and adaptability. Furthermore, the torque response curves show consistent alignment with the wearer’s motion intention, indicating that the admittance controller effectively ensures compliant interaction. These results confirm that the proposed control framework not only guarantees motion accuracy but also enhances safety and comfort during cooperative tasks, particularly in rehabilitation scenarios.
6. Conclusion
In this study, a lower limb exoskeleton is designed to conduct human-exoskeleton cooperative motion experiments. The NFO algorithm is used to design the stimulated trajectories and identify the exoskeleton model parameters. The NFO algorithm demonstrates better identification performance compared to PSO and GA. Furthermore, the admittance control strategy is implemented to facilitate active motion experiments of the exoskeleton, ensuring the operator’s wearable comfort and safety during human-exoskeleton cooperative motion.
Future research will focus on extending the current approach to multi-degree-of-freedom (multi-DOF) exoskeleton systems to support more complex human motions. Moreover, combining intelligent optimization algorithms such as NFO with adaptive or learning-based control strategies (e.g., reinforcement learning) will be explored to enhance human-exoskeleton interaction. Clinical trials and long-term user studies will also be conducted to further validate the safety, comfort, and rehabilitation efficacy of the proposed system in real-world applications.
Supplementary material
The supplementary material for this article can be found at https://doi.org/10.1017/S0263574725103032.
Author contributions
Haoran Zhan: Writing–original draft. Jiange Kou: Data curation. Yuanchao Cao: Writing–review & editing. Wanqi Wang: Validation. Qing Guo: Conceptualization, Jiyu Zhang: Resource. Yan Shi: Project administration.
Financial support
This work was supported by the National Natural Science Foundation of China (No. 52175046) and Sichuan Science and Technology Program (No. 2024YFFK0037 and 2024ZYD0165).
Competing interests
The authors declare no conflicts of interest exist.
Ethical approval
We have stated that informed consent was obtained or provided an explanation in my Methods section.




