1. Introduction
A stroke is defined as a lack of blood supply to the brain due to a blockage or leakage in the blood vessel supplying the brain, resulting in a lack of oxygen required for brain cells to survive [Reference Johnson, Onuma, Owolabi and Sachdev1]. Strokes are the most prevalent neurological condition affecting the central nervous system (CNS), with a profound global impact [Reference Katan and Luft2, Reference Feigin, Vos, Nichols, Owolabi, Carroll, Dichgans, Deuschl, Parmar, Brainin and Murray3]. It is estimated that approximately 12.2 million strokes occur each year worldwide, which equates to one stroke every three seconds [Reference Feigin, Brainin, Norrving, Martins, Sacco, Hacke, Fisher, Pandian and Lindsay4]. Moreover, stroke causes an estimated 6.5 million fatalities each year, making it the second greatest cause of mortality after ischemic heart disease [Reference Feigin, Stark, Johnson, Roth, Bisignano, Abady, Abbasifard, Abbasi-Kangevari, Abd-Allah, Abedi and Abualhasan5].
Besides stroke, other CNS disorders, such as Parkinson’s disease (PD) and multiple sclerosis (MS), have been shown to cause impairments in balance and gait function [Reference Cameron and Nilsagard6, Reference Chastan, Do, Bonneville, Torny, Bloch, Westby, Dormont, Agid and Welter7]. These impairments are strongly associated with activities of daily living (ADL), including walking, standing, and sitting. Consequently, these impairments significantly impact the quality of daily life and autonomy of patients [Reference Tyson, Hanley, Chillala, Selley and Tallis8, Reference Preston, Ada, Dean, Stanton and Waddington9]. Currently, rehabilitation is the primary avenue for restoring balance and gait functions. There is substantial evidence that repetitive training, high-intensity training, and goal-directed rehabilitation contribute to the effectiveness of the neuromodelling process and rehabilitation outcomes [Reference Cramer, Sur, Dobkin, O’Brien, Sanger, Trojanowski, Rumsey, Hicks, Cameron, Chen, Chen, Cohen, deCharms, Duffy, Eden, Fetz, Filart, Freund, Grant, Haber, Kalivas, Kolb, Kramer, Lynch, Mayberg, McQuillen, Nitkin, Pascual-Leone, Reuter-Lorenz, Schiff, Sharma, Shekim, Stryker, Sullivan and Vinogradov10]. However, traditional therapies are inherently time-consuming and labor-intensive for the therapist, which presents a challenge in delivering high doses and intensities of rehabilitation.
The utilization of robotic devices in therapy has been demonstrated to be an efficacious method of treating neurological injuries, enabling the automation of rehabilitation processes [Reference Morone, Paolucci, Cherubini, De Angelis, Venturiero, Coiro and Iosa11]. The utilization of robotic devices enables the delivery of repetitive, intensive, and task-oriented training, thereby relieving therapists of physically demanding tasks and facilitating the supervision of multiple patients simultaneously [Reference Poli, Morone, Rosati and Masiero12]. Due to this, numerous technological devices have been created for rehabilitating both upper [Reference Ye, Tao, Gong, Ma, Wu, Li, Kang, Tang, Zuo and Shi13–Reference Jiang, Qian, Lin, Bi, Liu and Zhang22] and lower limbs [Reference Zhang, Rong and Luo23–Reference Kapsalyamov, Hussain, Goecke, Brown and Jamwal36] over the past twenty years. Furthermore, they are capable of performing more intricate rehabilitation exercises and of supplying patients with constructive feedback in a supportive environment, which encourages functional recuperation and facilitates neuroplasticity processes [Reference Stanton, Ada, Dean and Preston37]. The application of robotic devices in rehabilitation therapy has the potential to address the limitations of traditional treatment methods. Moreover, robotic-assisted therapy can be integrated with sensors to provide objective data on gait and balance progress, thereby enhancing the efficacy of rehabilitation programs [Reference Culhane, O’Connor, Lyons and Lyons38], which allows therapists to propose more effective customized rehabilitation plans [Reference Maggioni, Melendez-Calderon, van Asseldonk, Klamroth-Marganska, Lünenburger, Riener and van der Kooij39]. After an acute stroke has been clinically stabilized, the rehabilitation approach typically focuses on upper-limb and gait therapy, with balance being a secondary or neglected outcome. This is a challenging aspect of rehabilitation programs since balance is an important skill for patients’ autonomy and independence. In fact, balance is essential not just for walking but also for many other daily activities. It is also the primary weakness in fall risk assessment [Reference Marques-Sule, Arnal-Gómez, Buitrago-Jiménez, Suso-Martí, Cuenca-Martínez and Espí-López40].
With regard to the matter of balance rehabilitation machines, the continuous advancement of parallel robot technology provides new solutions for balance rehabilitation. Diego et al. [Reference Diego, Herrero, Macho, Corral, Diez, Campa and Pinto41] reviewed the existing parallel balance rehabilitation robots, providing a comprehensive introduction and classification. These robots have different designs and functions. Despite meeting certain criteria, these robots continue to exhibit inherent limitations. One major problem is the limited workspace, which affects the function of the rehabilitation machine. One solution is to increase the size of the parallel robot, but this will make the machine bulky and too high, making it inconvenient for patients to use. Another method involves linear motion actuated joints with multiple moving joints in series [Reference Ersoy and Hocaoglu31–Reference Saglia, Tsagarakis, Dai and Caldwell33], which overcomes the problem of bulky robots but results in a relatively tall robot that can carry a small load. In order to increase the load and safety, extra links are added between the upper and lower platforms, which makes the structure complex, reduces the degree of freedom of the structure, increases the difficulty of control, and increases the cost of the equipment. Despite meeting certain needs, these robots still have limitations, including a limited workspace, excessive height, a complex structure, singularity leading to unstable movement, and a single function.
Accurate modeling of parallel robots is crucial for optimization design, control, and performance evaluation. At present, common methods for modeling the kinematics and dynamics of parallel robots include the D-H parameter method, such as automatically generating DH kinematic and dynamic equations [Reference Bi, Zhang, Chen and Lang42] with hybrid robots [Reference Yu, Qian, Borugadda, Sun and Zhang43], screw theory [Reference Dai44], and constraint equations [Reference Russo, Zhang, Liu and Xie45]. When applied to the complex closed-loop structures of parallel robots, in addition to the aforementioned three common methods, there is also a hybrid method that combines the two approaches [Reference Thomas, Joy and Sudheer46]. As the complexity of robots continues to increase, the application of hybrid methods is becoming increasingly widespread. Therefore, it is necessary to select the most appropriate method based on the specific application environment.
Based on the above literature review, rehabilitation is a repetitive, tedious, and time-consuming process. Rehabilitation patients themselves are not very dexterous. A simple rehabilitation exercise involves multiple joints at the same time, so the rehabilitation device needs to have multiple degrees of freedom of movement at the same time. Therefore, it is necessary to introduce the theories of rehabilitation medicine and the concepts of human factors to the design and engineering. Thus, this project aims to develop situational interactive multifunctional machines for dynamic rehabilitation. Its purpose is to provide a humane and friendly situational interactive human–computer interface through rehabilitation games, so that rehabilitation patients can operate the machines simply and easily and complete their rehabilitation alone in a safe and relaxed environment, thereby facilitating the treatment process. The proposed 3-2PUS double triangle structure mechanism is a novel design. In comparison with the conventional Stewart configuration, it has the advantages of high load-bearing capacity, simple structural design, and no singularity in the workspace. The device overcomes some defects of existing equipment and provides a more efficient, stable, safe, and widely applicable solution for balance rehabilitation treatment.
The remaining sections of this paper are as follows. Section 2 describes the architecture of the parallel platform for balance rehabilitation. In Section 3, a complete kinematic model is derived, including forward and reverse kinematics. Section 4 examines the inherent singularities of the parallel platform. Section 5 presents an analysis of the workspace. In conclusion, Section 6 presents a summary of the findings.
2. Manipulator design and analysis
2.1. Manipulator design
The 3-2PUS dual-structure triangular mechanism proposed in this paper is a balance rehabilitation robot that integrates innovative design with ergonomics and virtual reality software technology. In terms of design, this mechanism addresses some shortcomings of existing balance rehabilitation mechanisms, taking into full consideration the limited mobility of patients during rehabilitation and the need for coordinated multi-joint movements. It aims to achieve high safety, low height, high load-bearing capacity, and smooth multi-degree-of-freedom movement capabilities. To address these requirements, the mechanism’s dimensions are defined as follows: a diameter of
$\varphi$
750 mm, a height of 200 mm, with a rated load capacity of 150 kg. The translational motion range is defined as X = ±20 mm, Y = ±20 mm, and Z = ±25 mm, while the rotational motion range is α = ±2°, β = ±2°, and γ = ±2°. These parameters were determined after in-depth research into the range of motion and mechanical requirements of patients during balance rehabilitation. In regard to movement speed, the mechanism employs a range of 1 ∼ 500 mm/sec, thus catering to the training requirements of patients at diverse rehabilitation stages. The design specifications are delineated in Table I.
Design specifications.

The 3-2PUS double triangle structure mechanism has the following notable features: Firstly, it has a high load-bearing capacity, enabling it to support substantial weights. Secondly, its compact design facilitates its use in confined spaces. Thirdly, there are no singularities in the workspace, ensuring continuous, stable movement and a large workspace. In terms of motion capabilities, the mechanism adopts a 6-degree-of-freedom design, enabling a richer variety of motion patterns and more comprehensively simulating the various movements of the human body in balance control. Consequently, this design is conducive to improving the effect of rehabilitation therapy. Additionally, the mechanism integrates situational interaction functionality, utilizing rehabilitation-focused situational interaction games to effectively alleviate boredom during the rehabilitation procedure. Therefore, patient engagement and motivation are increased. Due to this functionality, the mechanism is referred to as a situational interactive balance rehabilitation parallel manipulator (BRPM). These features are not available in many existing balance rehabilitation robots. Therefore, the device proposed in this study overcomes some of the shortcomings of existing devices, providing a more efficient, stable, safe, and widely applicable solution for balance rehabilitation therapy. A detailed comparison of this study with existing literature [Reference Ersoy and Hocaoglu31, Reference Ishizaki, da Silva, de Almeida Moura, dos Reis, Lazzareschi, da Silva Boschi and da Silva32] is shown in Table II below.
A detailed comparison of this study with existing literature.

The structure of the BRPM is depicted in Figure 1(a) and includes a parallel manipulator, a frame, an armrest, and a situational interactive human–machine interface (HMI). Figure 1(b) illustrates the prototype of the parallel manipulator designed for balance rehabilitation. The double triangle parallel manipulator is composed of a fixed base, six supporting fixed-length limbs, and a mobile platform.
A 3-2PUS balance rehabilitation parallel manipulator (a) A 3D schematic diagram, (b) a prototype.

The design of the parallel manipulator diverges from the typical parallel manipulator in that it does not employ the limbs as drive joints. Instead, the two fixed-length limbs of the body are connected together using spherical joints. This limb structure negates the necessity for an actuator, resulting in a simplified limb structure and reduced limb inertia in comparison to the traditional Stewart parallel robot. Accordingly, the designed parallel manipulator is configured with a compact layout and is capable of providing accommodation for a high payload. Prior to analyzing the motion of the mechanism, it is essential to calculate the number of degrees of freedom. This is achieved by employing the general mobility equation [Reference Tsai47]:
where λ denotes the number of degrees of freedom of the mechanism in space, n i denotes the number of links in the mechanism, n j denotes the number of joints in the mechanism, f i denotes the number of degrees of freedom of the i th joint, and f p denotes the number of passive degrees of freedom in the mechanism. Figure 2(a) illustrates that the configuration of the parallel manipulator comprises three enclosed loops, resulting in a total of fourteen links (n i = 14). Each enclosed loop contains three universal joints and two prismatic joints, so it can be calculated that n j = 15, f i = 27, and f p = 9. Substitution of the above values into Equation (1) yields a value of 6, so it is determined that the parallel manipulator possesses six degrees of freedom.
Schematic diagram of the coordinate system (a) diagram loop of 3-2PUS, (b) 3D model with coordinate systems.

2.2. Analysis of manipulator’s geometric properties
In the present study, two Cartesian coordinate systems were established: one to facilitate analysis of the fixed base frame O(X, Y, Z) and one for the moving platform frame M(x, y, z). In Figure 2(b), the frames are considered to lie at the center of the base and the center of the moving platform, respectively. In particular, the symbols
$p=[\begin{array}{c@{\quad}c@{\quad}c} \begin{array}{c@{\quad}c@{\quad}c} p_{1} & p_{2} & p_{3} \end{array} & \begin{array}{c@{\quad}c} p_{4} & p_{5} \end{array} & p_{6} \end{array}]^{T}$
and
$d=[\begin{array}{c@{\quad}c@{\quad}c} x & y & \begin{array}{c@{\quad}c@{\quad}c} z & \alpha & \begin{array}{c@{\quad}c} \beta & \gamma \end{array} \end{array} \end{array}]^{T}$
are employed to represent the joint position set and the Cartesian position vector of the mobile platform along its central mass, which is described in the stationary frame O, respectively. The transition between the mobile coordinate system M and the stationary coordinate system O is represented through a 3 × 3 rotational matrix
${}^{O}{R_{M}}{}$
. Suppose that the final position is derived by rotating around the Z-axis by γ, then a second rotation around the offset Y axis by β, and finally a third rotation around the offset X axis by α. Therefore, the rotation matrix is expressed as follows:
\begin{equation}{}^{O}{R_{M}}{}\left(\alpha ,\beta ,\gamma \right)=R=\left[\begin{array}{c@{\quad}c@{\quad}c} c\beta c\gamma & -c\beta s\gamma & s\beta \\ \mathit{s}\mathit{\alpha }s\beta c\gamma +s\gamma c\alpha & -\mathit{s}\mathit{\alpha }s\beta s\gamma +c\gamma c\alpha & -s\alpha c\beta \\ -\mathit{c}\mathit{\alpha }s\beta c\gamma +s\gamma s\alpha & \mathit{c}\mathit{\alpha }s\beta s\gamma +s\alpha c\gamma & c\alpha c\beta \end{array}\right],\end{equation}
where
$c\alpha =\cos \alpha\ and\ s\alpha =\sin \alpha$
.
The following equation is used to determine the angular velocity of the moving platform:
\begin{equation}\omega =\left[\begin{array}{c} \omega _{x}\\ \omega _{y}\\ \omega _{z} \end{array}\right]=\left[\begin{array}{c@{\quad}c@{\quad}c} c\beta c\gamma & s\gamma & 0\\ -c\beta s\gamma & c\gamma & 0\\ s\beta & 0 & 1 \end{array}\right]\cdot \left[\begin{array}{c} \dot{\alpha }\\ \dot{\beta }\\ \dot{\gamma } \end{array}\right]\end{equation}
and the angular acceleration is:
\begin{equation}\dot{\omega }=\left[\begin{array}{c} \dot{\omega _{x}}\\ \dot{\omega _{y}}\\ \dot{\omega _{z}} \end{array}\right]=\left[\begin{array}{c@{\quad}c@{\quad}c} -s\beta c\gamma \cdot \dot{\beta -c\beta s\gamma \cdot \dot{\gamma }} & c\gamma \cdot \dot{\gamma } & 0\\ s\beta s\gamma \cdot \dot{\beta -c\beta c\gamma \cdot \dot{\gamma }} & -s\gamma \cdot \dot{\gamma } & 0\\ c\beta \cdot \dot{\beta } & 0 & 0 \end{array}\right]\cdot \left[\begin{array}{c} \dot{\alpha }\\ \dot{\beta }\\ \dot{\gamma } \end{array}\right]+\left[\begin{array}{c@{\quad}c@{\quad}c} c\beta c\gamma & s\gamma & 0\\ -c\beta s\gamma & c\gamma & 0\\ s\beta & 0 & 1 \end{array}\right]\cdot \left[\begin{array}{c} \ddot{\alpha }\\ \ddot{\beta }\\ \ddot{\gamma } \end{array}\right].\end{equation}
The position of each actuator can be calculated using the loop-closure equation, as follows:
where
$\overline{OM}$
represents the position vector of the centroid of the mobile platform M depicted in the fixed frame O;
$\overline{p_{i}s_{i}}=L_{i}l_{i}$
represents the ith leg length and the corresponding unit vector;
$\overline{Ms_{i}}=r_{si}=R{}^{M}{s_{i}}{}$
represents the position vector of a joint
$s_{i}$
in relation to the mobile platform M and is denoted in the fixed frame O; and
$\overline{Op_{i}}=r_{pi}$
represents the position vector of the joint
$p_i$
in relation to the fixed frame O, respectively. Accordingly, a second-order polynomial can be utilized to represent the positional relationship, which is expressed as follows:
3. Kinematics model
3.1. Analysis of the inverse kinematics
The inverse kinematic problem is the determination of the input active joints pi given a known posture of the mobile platform. The solution to this problem is found from Equation (6), which can be expressed as follows:
As a result, there are usually two possible solutions for every given position of the moving platform. It is not possible to achieve a negative limb length without reassembling the mechanism. Conversely, only a positive limb length can be physically achieved.
3.2. Analysis of the forward kinematics
The goal of direct kinematics is to ascertain the position of the mobile platform in relation to the input active joints. Though the direct kinematics of the BRPM can easily be obtained from the closed form, the problem is very hard to solve since the closed form is a nonlinear equation. A significant amount of research has been dedicated to the development of solutions to the direct kinematics problem. For example, the use of a neural network [Reference Yee and Lim48, Reference Boundreau, Levesque and Darenfed49], polynomial solutions [Reference Boundreau, Darenfed and Gosselin50–Reference Gosselin and Sefrioui52], and the Newton–Raphson method [Reference Shim, Kwon and Cho53, Reference Chuang and Chang54] have been employed. To solve these equations, this study utilizes the Newton–Raphson method. This algorithm approximates the true roots of the equation through continuous iterations, with each iteration calculating the next approximate solution based on the current approximate solution until the preset accuracy requirements or iteration limit are met. First, it is necessary to define six scalar functions in order to apply the Newton–Raphson method:
where the vector s is denoted by:
and then use the iterative formula as follows:
where:
The Jacobian matrix J of
$ \Gamma $
is defined as follows (see Appendix):
\begin{equation}J=\left[\begin{array}{c} \begin{array}{c@{\quad}c@{\quad}c} \dfrac{\delta \Gamma _{1}}{\delta x} & \dfrac{\delta \Gamma _{1}}{\delta y} & \begin{array}{c@{\quad}c@{\quad}c} \dfrac{\delta \Gamma _{1}}{\delta z} & \dfrac{\delta \Gamma _{1}}{\delta \alpha } & \begin{array}{c@{\quad}c} \dfrac{\delta \Gamma _{1}}{\delta \beta } & \dfrac{\delta \Gamma _{1}}{\delta \gamma } \end{array} \end{array} \end{array}\\ \begin{array}{c@{\quad}c@{\quad}c} \begin{array}{c@{\quad}c@{\quad}c} \vdots & \vdots & \vdots \end{array} & \vdots & \begin{array}{c@{\quad}c} \vdots & \vdots \end{array} \end{array}\\ \begin{array}{c@{\quad}c@{\quad}c} \begin{array}{c@{\quad}c@{\quad}c} \dfrac{\delta \Gamma _{6}}{\delta x} & \dfrac{\delta \Gamma _{6}}{\delta x} & \dfrac{\delta \Gamma _{6}}{\delta x} \end{array} & \dfrac{\delta \Gamma _{6}}{\delta \alpha } & \begin{array}{c@{\quad}c} \dfrac{\delta \Gamma _{6}}{\delta \beta } & \dfrac{\delta \Gamma _{6}}{\delta \gamma } \end{array} \end{array} \end{array}\right].\end{equation}
The implementation of numerical methods consists of two main processes: selecting the initial value s and utilizing recursion. The following steps delineate the algorithmic process for calculating s:
Step 1: Select the initial value of pose s 1.
Step 2: Compute
$\Gamma _{i}(s)=0\ (i=1,\ldots ,6)$
using (8).
Step 3: Compute Jacobian matrix J using (12).
Step 4: IF |
$ \varGamma $
(s)| <
$ \varepsilon $
, THEN STOP using (14).
Step 5: Solve
$\Delta s$
using (10).
Step 6: Update platform pose,
$s_{k+1}=s_{k}+\Delta s$
.
Step 7: GOTO step 3.
In accordance with Step 4, an admissible error can be defined by establishing a tolerance value, designated as
$ \varepsilon $
, such that the element e
i
of the error vector e during the k iteration is calculated using the following formula:
which should to satisfy:
\begin{equation}\sqrt{\sum _{i=1}^{6}e_{i}^{2}}\leq \varepsilon.\end{equation}
In order to validate the kinematic model of the BRPM designed in this study, the computer-aided design software MATLAB R2023a is utilized to implement the above algorithm and the analysis of singularities and workspace in the following sections, and the simulation results are represented visually. The parameters employed in the simulation of the manipulator are itemized in Table III.
Simulation parameters.

Figure 3 illustrates that the inverse kinematics solution represents motion with a constant orientation, while Figure 4 depicts the direct kinematics solution. As illustrated in Figures 3 and 4, the proposed method is capable of accurately solving both the inverse kinematics and the forward kinematics.
The solutions of the inverse kinematic of the constant orientation motion.

The solutions of the direct kinematic of the constant orientation motion (a) position, (b) orientation.

3.3. Analysis of Jacobin matrix
The relationship between the velocity of the input joint and the velocity of the end-effector can be obtained by differentiation of Equation (5) with regard to time, as shown in the equation below:
where ω and v
p
, respectively, denote the angular velocity and the velocity of the mobile platform center of mass,
$\omega _{i}$
denotes the angular velocity of limb i, and
$\dot{J}$
denotes the unit vector of the input joint p
i
. By utilizing the inner product with l
i
on both sides of Equation (15), the resulting expression can be written as follows:
The above equation can be applied to each chain, resulting in a matrix presentation, which can be written as follows:
where
$$J_p=\left[\begin{array}{cccc} s_{y1}-p_{y1} & \ldots & 0\\ \vdots & \ddots & \vdots \\ 0 & \ldots & s_{y6}-p_{y6} \end{array}\right]$$
$$J_{d} =\left[\begin{array}{c@{\quad}c} l_{1}^{T} & \left(r_{p1}\times l_{1}\right)^{T}\\ \vdots & \vdots \\ l_{6}^{T} & \left(r_{p6}\times l_{6}\right)^{T} \end{array}\right]$$
The comprehensive Jacobian matrix is defined as follows:
The previous methods can be employed to ascertain the position and velocity of the mobile platform in relation to its centroid, which can be described within the fixed coordinate system O. The mapping between the linear and Cartesian velocities is represented by the velocity equations, which are of significant importance, as these equations characterize accurately the kinematic properties of the mechanism and enable the determination of its singularities.
4. Analysis of the singularity
The singularity results in a reduction of a manipulator’s controllability and a decline in its natural stiffness; therefore, parallel manipulators have been the focus of significant research. By employing the forward and inverse of the Jacobian matrix, it is possible to identify the three main types of singularities that may arise in a parallel mechanism. Typically, a singularity occurs when either J p , J d , or both variables become singularities. This categorization is based on the work of Tsai [Reference Tsai47] and Gosselin [Reference Gosselin and Angeles55].
(1) Inverse kinematic singularity
For an inverse kinematic singularity to occur, the determinant of the matrix J p must equal zero. This is expressed as follows:
In this configuration, the singularity occurs when the chain approaches either a workspace boundary or an inner boundary that restricts the number of branches within the various sub-regions. Consequently, the manipulator is restricted to a limited number of degrees of freedom. The configuration of the manipulator is achieved when one of the legs p i s i is normal to the y-axis. Figure 5(a), illustrates an example of the first kind of singularity, which occurs when the leg l 3 is normal to the y-axis.
The singular configuration of the BRPM (a) one example of the first kind of singularity, (b) one example of the second kind of singularity, (c) one example of the third kind of singularity.

(2) Forward kinematic singularity
The condition for the direct kinematic singularity is defined as occurring when the determinant of the matrix J d equals 0, which can be expressed as follows:
Notwithstanding the complete constraint of all actuators, the moving platform is still capable of exhibiting slight movement in a given direction. Therefore, the moving platform is able to achieve one or more degrees of freedom, despite the fact that all of the actuators remain in a locked position. The actuated joints achieve an equilibrium state, which is referred to as a deadpoint. In consequence, this type of singularity is represented by a cluster of points within the manipulator workspace. Alternatively, in forward singular conditions, the manipulator is unable to withstand forces or moments in a specific direction. Figure 5(b) illustrates an example of this singularity, which occurs when two neighboring legs are parallel simultaneously.
(3) Combined singularity
The third singularity is defined as a simultaneous occurrence of zero determinants of J p and J d , which is expressed as follows:
When both J p and J d become singular at the same time, the combined singularity configuration occurs. This condition describes configurations where the chain can have limited motion with its drives in a constrained state, or where limited motion of the drives does not result in corresponding motion of the output. Figure 5(c) illustrates an example of this singularity, wherein leg l 5 intersects the normal of the y-axis and two adjacent legs, l 3 and l 4, are parallel to each other.
5. Analysis of workspace
A workspace can be defined as the space that can be reached from the centroid of the end-effector. The definition of the workspace is of great importance in the development of novel parallel mechanisms. The issue of establishing the workspace of parallel mechanisms has been explored by numerous scholars [Reference Gosselin56–Reference Gao, Li, Qian, Wang, Bi and Zhang63], who have devoted considerable attention to this complicated problem. The above methodology identifies three principal mechanical constraints that restrict the operational envelope of a parallel manipulator: (1) linear actuators’ stroke, (2) passive joints’ limited range, and (3) link interference. Due to the structural characteristics of the proposed parallel manipulator, in addition to the aforementioned three kinematic constraints, an additional constraint is introduced so that all workspace solutions can be obtained. Therefore, this study considers four kinematic constraints to determine the workspace of the manipulator, as described below.
(1) Linear actuators’ stroke
The structural characteristics impose constraints on the operational range of the actuator p i , which can be expressed as follows:
(2) Passive joints’ limited range
The connecting rod is connected to both the mobile platform and the fixed base through a kinematic pair, which is constrained by physical limitations. Furthermore, the range of motion of every passive joint is also restricted. In accordance with the structural configuration of the design, the passive joints of each branch are composed of universal joints and spherical joints. The constraint conditions of each of these joints are described as follows:
(a) Universal joint
The range of motion for each passive joint is limited. It is assumed that
$k_{{u_{i}}}$
represents the unit vector of the universal joint at the point u
i
, with respect to the base frame and along the symmetric axis. The maximum allowable angle of deviation for this joint is designated as
$\theta _{{u_{i}}}$
. In consequence, the restriction imposed by base joint i is given by the following expression:
(b) Spherical joint
Similarly, it is assumed that
$k_{{s_{i}}}$
represents the unit vector along the symmetry axis of the spherical joint at point s
i
, expressed with respect to the moving frame. The maximum allowable deviation angle of this joint is designated as
$\theta _{{s_{i}}}$
. In consequence, the limit constraints for the moving platform joint i can be formulated as follows:
(3) Link interference
Interference may result from the physical characteristics of the links. Considering every link as a cylinder of diameter ∅ c , the minimum length separating two neighboring links l i and l i + 1 is expressed as follows:
where D i denotes a point on link l i and D i + 1 denotes a point on link l i + 1. Although a straightforward formula cannot be used to calculate the shortest distance between two given line segments, a multi-step algorithm can be employed to obtain this value. This algorithm will not be presented in detail here because of space limitations; readers can find the comprehensive and detailed version provided in ref. [Reference Antonov and Glazunov62].
(4) Additional constraints
In light of the particular configuration of the prototyping platform, it is necessary to consider the restriction Z > 0.
As previously stated, the methodology utilized to calculate the volume of the workspace can be observed in Figure 6. The general workspace is divided into two distinct categories: a positional workspace, which denotes the reachable space at a given point on the mobile platform, and an orientational workspace, which signifies the tilting angle of the mobile platform.
Flow chart of search algorithm.

The results of these categories are illustrated in the following figures. Figure 7 illustrates the graphical relationship between the workspace and the height of the Z-axis. From this illustration, it can be observed that the workspace ranges from 101 to 175 mm, with the largest workspace occurring at Z = 156 mm. According to Figure 8, the three-dimensional configuration of the BRPM positioning workspace is depicted, wherein the displacement of the linear actuator is
$p_{i}\in [-100,100]$
. Figures 9(a) through (c) illustrate the three-dimensional orientation workspace of the BRPM, wherein the displacement of the linear actuator is
$p_{i}\in [-100,100]$
. Figure 10 illustrates the two-dimensional singularity and workspace configurations of the BRPM.
The relationship between the workspace and the height of the Z-axis.

The 3D constant positional workspace of the BRPM (a) (α = β = γ = 0°), (b) x–y plane, (c) x–z plane, (d) y–z plane.

As illustrated in Figures 10(a) through (d), the workspace regional state is observed when Z = 156 mm. The blue polygon delineates the extent of the workspace, while the black dashed line with red values denotes the Jacobian matrix determinant value. As illustrated in the diagram, this workspace does not contain any singularities.
The 3D constant orientation workspace of the BRPM (a) (α = 1°, β = γ = 0°), (b) (β = 2°, α = γ = 0°), (c) (γ = 3°, α = β = 0°).

Configurations of the workspace and singularity of the BRPM in Z = 156 mm (a) (α = β = γ = 0°), (b) (α = 1°, β = 2°, γ = 3°), (c) (α = −1°, β = −2°, γ = −3°), (d) (α = −1o, β = 2°, γ = −3°).

The aforementioned simulation results, as illustrated in Figures 8 and 9, demonstrate that the workspace of the mechanism in this study is fully satisfactory with the design requirements specified in Table I.
6. Conclusion
This article presented a novel mechanism for implementing parallel manipulators with six degrees of freedom for the purpose of balance rehabilitation. The contributions of this paper are as follows. (1) A kinematic model of the balance rehabilitation parallel mechanism was presented, which encompasses both forward and inverse kinematics. (2) The singularity and workspace of the balance rehabilitation parallel mechanism were derived. (3) There was no singularity in the workspace of the parallel manipulator, and its compact structure met the requirements of balance rehabilitation equipment. This ensures that the rehabilitative devices will remain stable throughout the rehabilitation process, thus preventing any additional injuries that might otherwise result from unstable movement. The entire analysis of the parallel mechanics can be verified with numerical and graph modeling. Finally, a prototype parallel manipulator for balance rehabilitation was built according to this mechanism, and experiments were conducted to evaluate its feasibility. Further work will incorporate a complete dynamic model and dynamic performance evaluation, and use prototypes to validate its characteristics. The primary experimental validations for the future are outlined below. (1) A comparison will be made between different kinematic modeling methodologies, such as DH parameters combined with constraint equations and screw theory combined with constraint equations, with the method described in this paper in terms of performance. (2) In order to establish a complete dynamic model and evaluate dynamic performance, such as adjusting kinematic parameters (AKP) and real-time inverse kinematic feedforward feedback control (IKFFC), will be used to achieve smooth and precise motion.
Author contributions
Kuo-Hua Chien conceived and designed the study. Zihan Chen and Xiangfei Ren conducted data gathering. Zihan Chen performed statistical analyses. Kuo-Hua Chien wrote the article. All authors read and approved the final manuscript.
Financial support
This research received no specific grant from any funding agency, commercial or not-for-profit sectors.
Competing interests
The authors declare no conflicts of interest exist.
Ethical approval
Not applicable.
Appendix: Transformation matrix
Differentiating Eq. (6) with respect to t yields:
where
In the same way, the following may be obtained:
\begin{align}\frac{\partial \Gamma _{i}}{\partial \alpha } & =\frac{\partial \Gamma _{i}}{\partial s_{xi}}\cdot \frac{\partial s_{xi}}{\partial \alpha }+\frac{\partial \Gamma _{i}}{\partial s_{yi}}\cdot \frac{\partial s_{yi}}{\partial \alpha }+\frac{\partial \Gamma _{i}}{\partial s_{zi}}\cdot \frac{\partial s_{zi}}{\partial \alpha } \nonumber \\ & =2\cdot \left[\begin{array}{c@{\quad}c@{\quad}c} s_{xi}-p_{xi} & s_{yi}-p_{yi} & s_{zi}-p_{zi} \end{array}\right]\cdot R_{\alpha }\left(\alpha ,\beta ,\gamma \right)\cdot \left[\begin{array}{c@{\quad}c@{\quad}c} s_{xi} & s_{yi} & s_{zi} \end{array}\right]^{T}\!, \\[-24pt] \nonumber\end{align}
\begin{align}\frac{\partial \Gamma _{i}}{\partial \beta } & = \frac{\partial \Gamma _{i}}{\partial s_{xi}}\cdot \frac{\partial s_{xi}}{\partial \beta }+\frac{\partial \Gamma _{i}}{\partial s_{yi}}\cdot \frac{\partial s_{yi}}{\partial \beta }+\frac{\partial \Gamma _{i}}{\partial s_{zi}}\cdot \frac{\partial s_{zi}}{\partial \beta } \nonumber \\ & =2\cdot \left[\begin{array}{c@{\quad}c@{\quad}c} s_{xi}-p_{xi} & s_{yi}-p_{yi} & s_{zi}-p_{zi} \end{array}\right]\cdot R_{\beta }\left(\alpha ,\beta ,\gamma \right)\cdot \left[\begin{array}{c@{\quad}c@{\quad}c} s_{xi} & s_{yi} & s_{zi} \end{array}\right]^{T}\!, \\[6pt] \nonumber\end{align}
and
\begin{align}\frac{\partial \Gamma _{i}}{\partial \gamma } & =\frac{\partial \Gamma _{i}}{\partial s_{xi}}\cdot \frac{\partial s_{xi}}{\partial \gamma }+\frac{\partial \Gamma _{i}}{\partial s_{yi}}\cdot \frac{\partial s_{yi}}{\partial \gamma }+\frac{\partial \Gamma _{i}}{\partial s_{zi}}\cdot \frac{\partial s_{zi}}{\partial \gamma } \nonumber \\ & = 2\cdot \left[\begin{array}{c@{\quad}c@{\quad}c} s_{xi}-p_{xi} & s_{yi}-p_{yi} & s_{zi}-p_{zi} \end{array}\right]\cdot R_{\gamma }\left(\alpha ,\beta ,\gamma \right)\cdot \left[\begin{array}{c@{\quad}c@{\quad}c} s_{xi} & s_{yi} & s_{zi} \end{array}\right]^{T}\!.\end{align}
Here,
$R_{\alpha }(\alpha ,\beta ,\gamma )$
,
$R_{\beta }(\alpha ,\beta ,\gamma )$
, and
$R_{\gamma }(\alpha ,\beta ,\gamma )$
express the partial differentials with respect to α, β, and γ:
\begin{align}R_{\alpha }(\alpha ,\beta ,\gamma )=\left[\begin{array}{c@{\quad}c@{\quad}c} 0 & 0 & 0\\ \mathit{c}\mathit{\alpha }s\beta c\gamma -s\alpha s\gamma & -s\alpha c\gamma -\mathit{c}\mathit{\alpha }s\beta s\gamma & -c\alpha c\beta \\ \mathit{s}\mathit{\alpha }s\beta c\gamma +s\gamma c\alpha & c\alpha c\gamma -\mathit{s}\mathit{\alpha }s\beta s\gamma & -s\alpha c\beta \end{array}\right],\end{align}
\begin{align}R_{\beta }(\alpha ,\beta ,\gamma )=\left[\begin{array}{c@{\quad}c@{\quad}c} -s\beta c\gamma & s\beta s\gamma & c\beta \\ \mathit{s}\mathit{\alpha }c\beta c\gamma & -\mathit{s}\mathit{\alpha }c\beta s\gamma & s\alpha s\beta \\ -\mathit{c}\mathit{\alpha }c\beta c\gamma & \mathit{c}\mathit{\alpha }c\beta s\gamma & -c\alpha s\beta \end{array}\right],\quad \text{and}\end{align}
\begin{align}R_{\gamma }(\alpha ,\beta ,\gamma )=\left[\begin{array}{c@{\quad}c@{\quad}c} -c\beta s\gamma & -c\beta c\gamma & 0\\ -\mathit{s}\mathit{\alpha }s\beta s\gamma +c\alpha c\gamma & -c\alpha s\gamma -\mathit{s}\mathit{\alpha }s\beta c\gamma & 0\\ \mathit{c}\mathit{\alpha }s\beta s\gamma +s\alpha c\gamma & -s\alpha s\gamma +\mathit{c}\mathit{\alpha }s\beta c\gamma & 0 \end{array}\right].\end{align}


