Nomenclature
- $L$
Distance from base frame to the end-effector frame
- $l$
Distance from base frame to the intermediate frame
- $R$
Revolute joint
- $P$
Prismatic joint or end-effector frame depending on the context
- $U$
Universal joint
- $\mathcal{F}$
Frame symbol
- $\alpha$
Z-axis rotation angles/ axial rotation angles
- $\beta$
Flexion/extension angles
- $\gamma$
Lateral bending angles
- $\theta$
Angles of the link $S_{i}K_{i}$ relative to base plane
- $\phi$
Angles of the $K$ joint on each chain
- i
Chain number or joint number, depending on the context
- $x$
$x$ component of the coordinate
- $y$
$y$ component of the coordinate
- $z$
$z$ component of the coordinate
- $A$
Intermediate plane
- ${}^{O}{R_{P}}{}$
Rotation matrix from base frame to end-effector frame
- ${}^{\mathcal{F}_{O}}{P}{}$
Coordinate of the end-effector origin in base frame $\mathcal{F}_{O}$
- $s_{\theta }$
$\mathit{\sin }\ \theta$
- $c_{\theta }$
$\mathit{\cos }\ \theta$
1. Introduction
Traction of the head-neck plays an important role in the treatment of patients with neck pain. It has been noted that 26% –71% of adults experience episodes of neck pain or stiffness in their lifetime [Reference Pinar, Dilek, Betul and Hatice1]. Self-reported neck problems contribute to large healthcare expenditure [Reference Martin, Deyo, Mirza, Turner, Comstock, Hollingworth and Sullivan2]. The most common causes of neck pain are axial neck pain, whiplash-associated disorder (WAD), and cervical radiculopathy [Reference Douglass and Bope3]. A survey conducted by the American Physical Therapy Association (APTA) of 4,000 physical therapists who treat patients with neck pain concludes that physical therapists routinely use traction on patients for pain relief and comprehensive care [Reference Madson and Hollman4].
Current traction practices for neck pain include manual traction and mechanical traction. Manual traction is frequently used by doctors or chiropractors to treat neck pain of patients [Reference Gudavalli, Vining, Salsbury, Corber, Long, Patwardhan and Goertz5]. A study of manual traction in the treatment of patients with cervical radiculopathy shows that manual traction is far more operative and effective in comparison with strengthening exercises [Reference Tahir, Rana, Ghaffar, Sajjad, Idrees and Raza6]. Further studies also indicate that if manual traction can be used effectively at home, this would reduce expense and extra workload in hospitals [Reference Shakoor, Ahmed, Kibria, Khan, Mian, Hasan, Nahar and Hossain7]. Mechanical traction programs in neck pain treatment involve applying a traction force to the head-neck area by a machine in a specific direction. Intermittent cervical traction (ICT) is a common approach for mechanical traction. Patients who received ICT for neck pain had significantly lower pain scores than those who received placebos immediately after treatment [Reference Yang, Tam, Huang, Huang, Liou and Chen8]. Another study with more than 100 participants shows that upper cervical traction also improves active cervical rotation. This study also suggests that mechanical traction, along with lateral bending of the head, can improve cervical rotation range of motion and reduce neck pain [Reference Creighton, Marsh, Gruca and Walter9]. The two forms of cervical treatment, mechanical traction and manual traction, are almost equally effective in reducing pain and increasing the range of motion [Reference Sarfaraj and Deepali10].
Considering the complexity of the head-neck area, a compact design of a neck exoskeleton is needed to apply traction to the head-neck, especially when musculoskeletal disorders are in their early stages [Reference Kolur, Tejas and Raju Bahubalendruni11]. The current devices are limited to when subjects lie on a bed, but these do not offer traction during normal daily activities when sitting or standing [Reference Odebode and Agaja12, Reference Dawood, Kattabei, Nasef, Battarjee and Abdelraouf13]. A recent design of a parallel mechanism with 3-RPS chains was proposed by researchers to actively control the position of the head to release neck pain [Reference Ibrahem, El-Wakad, El-Mohandes and Sami14]. The design of a 6-DOF spatial parallel mechanism with the structure of a Stewart platform was proposed in simulation as a candidate rehabilitation device for patients with neck pain [Reference Wu, Wang and Li15]. However, only simulation results were discussed in this work. A physical prototype was not constructed.
A study with a 3-RPS parallel mechanism was proposed for head orientation control of patients suffering from chronic neck pain; however, traction was not considered in this study [Reference Lingampally and Doss16]. A cable-driven dynamic neck brace with 3 rotational DOFs was studied for rehabilitation [Reference Shoaib, Lai and Bab-Hadiashar17]. Another cable-driven parallel robot with four cables was proposed to assist therapists in the rehabilitation of the cervical spine [Reference Koszulinski, Stantinat, Ollivier, Sandoval and Laribi18]. However, these studies did not focus on the application of traction of the neck. A recent study with 3-RRS parallel mechanism to actively control the head neck motion with a joystick has shown that the brace with this architecture provides support to the head. During human testing, subjects activated their muscles less when assisted by the brace. This design opens up a new way to assist patients with head drop [Reference Zhang and Agrawal19]. A summary of features from these studies is presented in Table I.
In clinical research, traction plays an important role in the treatment of patients with neck pain. Thus, our proposed design of the neck brace focuses on applying traction to the head-neck along with a single degree-of-freedom rotation. In this article, specifically, we analyze a 4-chain-RRUR 2-DOF parallel mechanism for a neck brace to provide traction, where the structures of the component chains are shown in Figure 1 (right). We also compare the workspace of this mechanism with a 4-chain-RPUR mechanism, whose component chains are shown in Figure 1 (left). Both mechanisms can provide independent control of the vertical translation and lateral bending of the end-effector with respect to the base. The architecture of the 4-RPUR was based on the addition of a fourth chain to the 3-RPUR design in ref. [Reference Kulkarni and Agrawal20], and the 4-RRUR design expands by replacing the prismatic joint with a revolute joint. Considering that during manual traction, therapists prefer to tilt the head away from the vertical configuration, the goal of this article is to design a parallel mechanism to provide traction force while allowing a rotation to the head relative to the shoulders. We want to explore this mechanism as a wearable neck brace with 2 DOFs, which can be used to selectively apply controlled vertical traction on the head while achieving specific head orientation.
2. The mathematical model and kinematic analysis
2.1. Physical structure
The spatial parallel mechanism (shown in Figure 2) consists of 4 chains, a rigid end-effector with attachment point $E_{1},\ldots, E_{4}$ , and a base frame with attachment points for revolute joints $S_{1},\ldots, S_{4}$ . Each chain is composed of 5 revolute joints, as shown in the figure. Two out of the four revolute joints on the base frame, that is $S_{1}$ , $S_{4}$ are activated by rotary motors, while $S_{2}$ , $S_{3}$ remain passive revolute joints. Joints $K_{1},\ldots, K_{4}$ and $E_{1},\ldots, E_{4}$ are passive revolute joints. Joints $Q_{1},\ldots, Q_{4}$ are universal joints, a combination of two revolute joints. For each chain $S_{i}K_{i}Q_{i}E_{i}$ in the mechanism, the axes of the revolute joints $S_{i}$ , $K_{i}$ , and $Q_{i}$ are parallel. The axis of the second revolute joint making up the universal joint at $Q_{i}$ intersects the axis of the revolute joint $E_{i}$ at the point $A_{i}$ . These intersection points are chosen to make up an intermediate plane $A_{1}A_{2}A_{3}A_{4}$ . The two chains $S_{1}K_{1}Q_{1}$ and $S_{4}K_{4}Q_{4}$ are arranged within the plane $X_{O}OZ_{O}$ such that the revolute joints $S_{1}$ , $S_{4}$ axis-directions are parallel to the $Y_{o}$ axis. The chain $S_{2}K_{2}Q_{2}$ is placed on the base plane with an angle $\angle S_{1}OS_{2}=60^{\circ}$ . Similarly, chain $S_{3}K_{3}Q_{3}$ is placed on the base plane with an angle $\angle S_{1}OS_{3}=120^{\circ}$ . Furthermore, joint variables on revolute joints $S_{1},\ldots, S_{4}$ are labeled $\theta _{1},\ldots, \theta _{4}$ , and joint variables on revolute joints $K_{1},\ldots, K_{4}$ are denoted by $\phi _{1},\ldots, \phi _{4}$ . One can choose $S_{1}S_{2}S_{3}S_{4}$ to lie on tangents to a circle with the origin at $O$ , $A_{1}A_{2}A_{3}A_{4}$ will also form a circle with the origin at the midpoint of $A_{1}A_{4}$ , and $E_{1}E_{2}E_{3}E_{4}$ a circle with the origin being $P$ . $L$ and $l$ are, respectively, the heights of the end-effector and the virtual plane containing $A_{i}$ relative to the fixed base frame $X_{O}Y_{O}Z_{O}$ .
Each chain shown in Figure 2 has 5 revolute joints (3 revolute joints and 1 universal joint). Together, these add up to 5 degrees-of-freedom, thus providing one constraint to the motion of the end-effector. In total, 4 chains $S_{i}K_{i}Q_{i}E_{i}$ provide 4 constraints on the motion of the end-effector. With four constraints on the motion of the end-effector, the end-effector has overall two degrees-of-freedom of motion.
2.2. Description of the end-effector motion
The human head has both translation and rotation degrees-of-freedom with respect to the shoulders. However, the translational range of motion of the head is small, and the translation is often coupled with rotation. In our design, the end-effector will be attached to the human head. While we will do a more formal analysis of the motion of the end-effector in the upcoming sections, intuitively, due to the placements of the chains $S_{1}K_{1}Q_{1}$ and $S_{4}K_{4}Q_{4}$ with specific orientation of the first revolute joints within these chains, the points $A_{1}$ and $A_{4}$ are restricted to the plane $X_{O}OZ_{O}$ . As a result, the end-effector will have no axial rotation (Figure 3).
2.3. Inverse kinematics analysis
The inverse kinematics problem for this 4-chain-RRUR mechanism is to find the joint angles for each chain given the position and orientation of the end-effector. The following steps describe how to find the solution for inverse kinematics. Let $\mathcal{F}_{O}$ represent the base frame $X_{O}Y_{O}Z_{O}$ , ${}^{\mathcal{F}_{O}}{P}{}_{x}$ , ${}^{\mathcal{F}_{O}}{P}{}_{y}$ , ${}^{\mathcal{F}_{O}}{P}{}_{z}$ represent the $x$ , $y$ , and $z$ coordinates of $P$ in the frame $\mathcal{F}_{O}$ . Similarly, $\mathcal{F}_{P}$ represents end-effector frame $X_{P}Y_{P}Z_{P}$ . A symbol such as ${}^{\mathcal{F}_{P}}{E}{}_{1}$ represents the coordinates of $E_{1}$ in frame $\mathcal{F}_{\textrm{P}}$ .
Step 1: We need to choose a rotation sequence that will describe the orientation of the end-effector frame in the base frame. Here, we choose the Space 3-1-2 rotation sequence with the three successive angles $\alpha$ , $\beta$ , $\gamma$ around $Z$ , $X$ , and $Y$ axes. Here, $\alpha$ is the axial rotation or Z-axis rotation, $\beta$ is the flexion/extension angle, and $\gamma$ is the lateral bending angle.
Step 2: Describe points $E_{1},\ldots, E_{4}$ and $A_{1},\ldots, A_{4}$ in end-effector frame $\mathcal{F}_{P}$ as ${}^{\mathcal{F}_{P}}{E_{1}}{},\ldots, {}^{\mathcal{F}_{P}}{E_{4}}{}$ and ${}^{\mathcal{F}_{P}}{A_{1}}{},\ldots, {}^{\mathcal{F}_{P}}{A_{4}}{}$ .
Step 3: Convert ${}^{\mathcal{F}_{P}}{E_{1}}{},\ldots, {}^{\mathcal{F}_{P}}{E_{4}}{}$ and ${}^{\mathcal{F}_{P}}{A_{1}}{},\ldots, {}^{\mathcal{F}_{P}}{A_{4}}{}$ to base frame $\mathcal{F}_{O}$ using the following equations:
Step 4: Use the geometric constraints on the end-effector position and orientation. From the previous discussion on the physical structure of the chains and how their first joint axes are oriented in these chains, we have the following constraints on the motion of points on the end-effector.
The above four geometric constraints can be rewritten, where $s_{\beta }$ represents $\sin \beta$ , $c_{\beta }$ represents $\cos \beta$ , and $r_{A}$ is the radius of the circle $A_{1}A_{2}A_{3}A_{4}$ . Detailed expression for ${}^{\mathcal{F}_{O}}{A_{1}}{}, {}^{\mathcal{F}_{O}}{A_{2}}{}, {}^{\mathcal{F}_{O}}{A_{3}}{}, {}^{\mathcal{F}_{O}}{A_{4}}{}$ is shown in Eqs. (8) to (11) with $\theta _{a}=60^{\circ}$ , $L$ , $l$ are predetermined design parameters:
By combining the constraints equations from (4) to (7) and expressions for ${}^{\mathcal{F}_{O}}{A_{i}}{}$ , where $i=1\ldots 4$ , the geometry equation can be written as (12) to (14):
On expanding Eqs. (12), (13), and (14), the lateral bending angle $\gamma$ and flexion/extension angle $\beta$ satisfy the relation $c_{\beta }=c_{\gamma }$ . There would be 2 solutions, $\gamma =\beta$ or $\gamma =-\beta$ . The end-effector has the following motion constraints: $\alpha =0$ , $\gamma =\beta$ or $\gamma =-\beta$ , ${}^{\mathcal{F}_{O}}{P_{y}}{}=-s_{\beta }(L-l)$ and ${}^{\mathcal{F}_{O}}{P}{}_{x}=c_{\beta }s_{\gamma }(L-l) -\sqrt{3}/2r_{A}s_{\beta }s_{\gamma }$ . The z-translation of the end-effector ${}^{\mathcal{F}_{O}}{P}{}_{z}$ can be chosen independently. By choosing a pair $[{}^{\mathcal{F}_{O}}{P}{}_{z}, \gamma ]$ with specific values, the position and orientation of the end-effector in the base frame can be computed.
Step 5: Given the constraints on the motion of the end-effector position and orientation, the joint variables for each chain $S_{i}K_{i}Q_{i}E_{i}$ can be solved using the following equations, where $l_{QA}$ , $l_{QE}$ , $l_{KS}$ , $l_{KQ}$ represent the lengths of $QA$ , $QE$ , $KS,$ and $KQ$ , respectively.
Since the computation of joint variables for each chain is similar, we only show the computations for the joint variables $\theta _{1}$ and $\phi _{1}$ for the chain $S_{1}K_{1}Q_{1}E_{1}$ . Eqs. (15) and (16) of the chain $S_{1}K_{1}Q_{1}E_{1}$ are written as
where the symbols $a_{1},\ldots, a_{6}$ are determined by the end-effector position and orientation and the geometric parameters in chain 1. Detailed expressions for $a_{i}$ are written in the Appendix. $v_{1}$ and $v_{2}$ are described below where $c_{{\theta _{1}}+{\phi _{1}}}$ represents $\cos(\theta _{1}+\phi _{1})$ and $s_{{\theta _{1}}+{\phi _{1}}}$ represents $\sin(\theta _{1}+\phi _{1})$ . To solve the above nonlinear Eqs. (17) and (18), the numerical solver “scipy.optimize.fsolve()” was used.
In summary, one can choose the following two independent variables lateral bending $\gamma$ , z-translation ${}^{\mathcal{F}_{O}}{P}{}_{z}$ to describe the end-effector. The remaining position and orientation variables x-translation ${}^{\mathcal{F}_{O}}{P}{}_{x}$ , y-translation ${}^{\mathcal{F}_{O}}{P}{}_{y}$ , flexion/extension $\beta$ are determined using Step 4. Since each chain $S_{i}K_{i}Q_{i}$ is a planar-two-link mechanism, there will be 2 solutions for each input pair ${}^{\mathcal{F}_{O}}{P}{}_{z}$ and $\gamma$ , the “elbow down” and “elbow up” posture. Hence, the mechanism will have $2^{4}=16$ solutions for each pair of input $[{}^{\mathcal{F}_{O}}{P}{}_{z}, \gamma ]$ under the condition that $\gamma =\beta$ . Similarly, when $\gamma =-\beta$ , there should be 16 solutions as well given a pair of input $[{}^{\mathcal{F}_{O}}{P}{}_{z}, \gamma ]$ . Thus, for each given $[{}^{\mathcal{F}_{O}}{P}{}_{z}, \gamma ]$ , the mechanism could have up to 32 solutions, depending on the mechanism parameters.
2.4. Forward kinematics analysis
The forward kinematics problem is to determine the end-effector position and orientation given the joint rotation angles for motors at $S_{1}$ and $S_{4}$ . As for chain $S_{1}K_{1}Q_{1}$ , the related equations are Eqs. (21) and (22):
As for chain $S_{4}K_{4}Q_{4}$ , the related equations are Eqs. (23) and (24):
where $v_{3}$ and $v_{4}$ are expressed in Eqs. (25) and (26), which are similar to $v_{1}$ and $v_{2}$ .
$a_{i}$ symbols and $a_{i}^{\prime}$ symbols in Eqs. (21) to (24) are determined by end-effector position and orientation, and the design parameters. Detailed expressions for $a_{i}$ and $a_{i}^{\prime}$ are written in the Appendix.
In conclusion, Eqs. (21) and (22) can be written as Eqs. (27) and (28). In addition, Eqs. (23) and (24) can be written as Eqs. (29) and (30).
Since in the forward kinematics, ${}^{\mathcal{F}_{O}}{P}{}_{x},{}^{\mathcal{F}_{O}}{P}{}_{y}, \beta$ are determined by ${}^{\mathcal{F}_{O}}{P}{}_{z}$ , $\gamma$ , the unknown variables are ${}^{\mathcal{F}_{O}}{P}{}_{z}$ , $\gamma$ , $\phi _{1}$ , and $\phi _{4}$ . The provided input pair now are joint variable $\theta _{1}$ of the motor placed on $S_{1}$ and joint variable $\theta _{4}$ of the motor placed on $S_{4}$ . Therefore, there are 4 equations related to 4 unknown variables. For solving numerically, initial guesses were provided for the four variables to solve the forward kinematics problem. For each pair of $[\theta _{1}, \theta _{4}]$ , we expect the mechanism to have 8 solutions.
2.5. Simulation of kinematics in solidworks and python
To verify the correctness of inverse and forward kinematics, we used SolidWorks Model and Python code.
In SolidWorks, we built the model with chosen design parameters, listed in Table II, for the 4-chain-RRUR mechanism. With this model, we measured the end-effector position/orientation and the joint variables. Additionally, we coded the equations listed in Section 2.3 to create a Python model with the same set of design parameters as used in SolidWorks. For inverse kinematics (IK), we provided several pairs of $[{}^{\mathcal{F}_{O}}{P}{}_{z}, \gamma ]$ to the IK model. The IK model in Python outputs the joint variables. One case with inputs of ${}^{\mathcal{F}_{O}}{P}{}_{z}=166.12$ mm and $\gamma =10.1^{\circ}$ is shown in Figure 4.
Figure 4-(I), (II), (III) show three views of the SolidWorks model. Measurements of $\theta _{1}$ and $\phi _{1}$ are shown in Figure 4-(I), $\theta _{2}$ and $\phi _{2}$ in Figure 4-(II), and $\theta _{3}$ and $\phi _{3}$ in Figure 4-(III). Moreover, the results from Python with the input position ${}^{\mathcal{F}_{O}}{P}{}_{z}=166.12$ mm and $\gamma =10.1^{\circ}$ are shown in Figure 4-(IV), the dashed rectangle in Figure 4-(IV) shows the input parameters to the inverse kinematics solver. From Figure 4, the results from python model exactly match the results measured in SolidWorks. This is a validation of the inverse kinematics in Section 2.3.
For forward kinematics, the input variables are $\theta _{1}$ and $\theta _{4}$ . For each given pair $[\theta _{1}, \theta _{4}]$ , posture of chain $S_{1}K_{1}Q_{1}$ and chain $S_{4}K_{4}Q_{4}$ are then determined. As stated in Section 2.4, for each given pair $[\theta _{1}, \theta _{4}]$ with the condition $\theta _{1}\neq \theta _{4}$ , we expect 8 solutions (4 under $\gamma =\beta$ and 4 under $\gamma =-\beta$ ). Here, we directly used the results of $\theta _{1}$ and $\theta _{4}$ from the inverse kinematics shown in Figure 4-(IV) and sent these to forward kinematics solver. Results are shown in Figure 4-(V) with the input pair $[152.09^{\circ},131.12^{\circ}]$ marked by dashed rectangle. The output posture of the forward kinematics in Figure 4-(V) matches the posture of the inverse kinematics within a small computation error. This is a numerical validation of the kinematics in Section 2.3 and 2.4.
Since the proposed robot will be attached on the human within the head-neck area, the chain $S_{i}K_{i}Q_{i}$ will be unsafe due to potential interference with the human neck if the $\theta _{i}\lt 90^{\circ}$ (as shown in Figure 5). Thus, we expect the robot to be assembled and operated in the mode $\theta _{i}\gt 90^{\circ}$ .
2.6. Workspace comparison
We plotted the workspace with the horizontal axis as the z-translation ${}^{\mathcal{F}_{O}}{P}{}_{z}$ and the vertical axis as the lateral bending angle $\gamma$ . If a point in this 2D workspace of $[{}^{\mathcal{F}_{O}}{P_{z}}{}, \gamma ]$ is reachable when computing the inverse kinematics, we mark this pair as reachable. The workspaces for both the 4-chain-RPUR and 4-chain-RRUR mechanisms are shown in Figure 6. Both these mechanisms have the same end-effector constraints on the motion. Since one would benefit by a larger workspace of the end-effector, we compared its workspace with that of a 4-chain-RPUR mechanism. Both designs have the same 2DOF of the end-effector. As mentioned in Figure 1 of Introduction, we only change the Prismatic joint to a Revolute joint, while keeping the other structures within the chains.
In Figure 6, we chose the limits of the workspace to be lateral bending $\gamma =[-\!20^{\circ},20^{\circ}]$ and z-translation ${}^{\mathcal{F}_{O}}{P_{z}}{}=$ [120 mm, 221 mm]. The workspace of 4-chain-RPUR mechanism has a diamond shape shown in blue. The workspace of 4-chain-RRUR mechanism has a pentagon shape shown in black which includes the workspace obtained with the 4-chain-RPUR. These workspaces do not account for any geometric collision between the links of the chains or with the human head.
3. Validation of the prototype
We fabricated a benchtop prototype of the mechanism and have used LX-16A bus servos as motors to activate the mechanism. The SolidWorks model (left) and fabricated prototype (right) are shown in Figure 7.
The prototype was built to test the motion of the mechanism using a Vicon Nexus motion capture system. We used a flat platform base. Figure 7 shows the Vicon markers placed on the prototype. The important dimensions of the prototype are shown in Table II.
The control system is composed of a battery with 12V output, a DC converter, and a bus linker controller. The DC converter is used to convert the battery output of 12V to the bus servo input of 7V. The servo motors are connected to the ports of the controller. Before validation, Vicon markers are attached to points on the component rigid bodies to measure the locations of $E_{1},\ldots, E_{4}$ and $S_{1},\ldots, S_{4}$ . Extra Vicon markers were placed on the rigid bodies to prevent cameras from losing images of Vicon markers. In our current validation experiment, an extra Vicon marker is placed on the base frame. The workflow of the validation experiment is described in Figure 8.
For discrete position control, a pair $[{}^{\mathcal{F}_{O}}{P_{z}}{}, \gamma ]$ is sent to motors by the Python console. The joint variables of two rotary motors are computed by the inverse kinematics algorithm. These commands are sent to the motors and Vicon markers on the end-effector and base frame are recorded. From these data, the z-translation and lateral bending values of the end-effector are calculated.
For the continuous motion of the end-effector, sequences of pure z-translation and z-translation with lateral bending were sent as commands for the motors. The results of the desired motion sequence and captured motion sequence are processed with Vicon Nexus software and shown in Figure 9.
Figure 9 shows the plots of the measured z-translation and lateral bending angles along with the commanded values. The red lines are the commanded data to the mathematical model, whereas black dashed lines are the measured data. The errors between the desired commands and the measurement from Vicon are presented in Table III.
Potential Errors in Fabrication and Testing: We have made the assumption that the points $A_{1}$ and $A_{4}$ stay in the same plane fixed to the base frame in all configurations. This assumption may not be fully met due to fabrication errors and link flexibility of 3D-printed parts used to construct the mechanism. Several related works have studied how to reduce position errors within a design [Reference Brahmia, Kelaiaia, Company and Chemori21–Reference Brahmia, Kerboua, Kelaiaia and Latreche23]. In these studies, error models were made to identify the most crucial geometric error and develop a method to control this error and improve the performance of position control.
In the fabricated mechanism, there are also potential interference of the links, and as a result, the motion of the end-effector is smaller than the theoretically computed range. Furthermore, it is hard to measure the passive angles in the universal joints in the current experiment. Hence, the errors in the universal joints cannot be determined. Despite these errors, the continuous motion of the end-effector shows a close match between the motion of the physical prototype and the mathematical kinematics model.
4. Conclusion
The article describes a 4-RRUR parallel mechanism that provides 2 DOF motion to the end-effector. The vertical z-translation of the end-effector can be used to provide traction on the human head, while the orientation DOF can be applied to orient the head appropriately during traction. The detailed analysis of this 4-chain architecture is unique and different from all previous designs of head-neck braces that allow rotations to the head-neck. We characterized the inverse and forward kinematics of this parallel mechanism in this article. The workspace of this 4-RRUR parallel mechanism is larger in both lateral bending and vertical z-translation compared to 4-RPUR parallel mechanism. The prototype is validated using VICON as the end-effector performed lateral bending and vertical z-translation. Overall, the fabricated prototype mimics the mathematical model well, despite potential errors in fabrication. Future work will focus on force control and human evaluations with this design. This design opens up new possibilities for its use in medical applications to relieve neck pain.
Acknowledgments
We acknowledge the use of 3D printers available in Columbia University Maker Space and the research support from the ALS Association (Grant #21-MALS-568) and Columbia University School of Engineering seed funding through the STAR program, the New York State Spinal Cord Injury Research Board (NYS SCIRB) Institutional Grant (C38336GG), the NYS SCIRB Pre doctoral Fellowship (C39062GG), and the National Institutes of Health (1 R21HD110868 - 01A1).
Author contributions
Sunil K. Agrawal conceived and designed the structure of the RRUR mechanism. Jingzong Zhou conducted the fabrication with 3D printer and the assembly of the mechanism. Priya Kulkarni and Jingzong Zhou conducted the data gathering for VICON validation. Jingzong Zhou programmed to plot the workspace analysis and designed a sequence for motor control to drive the end-effector of the mechanism. Jingzong Zhou, Priya Kulkarni, Xincheng Zhao and Sunil K. Agrawal wrote the article.
Financial support
This work was supported from the ALS Association (Grant #21-MALS-568); Columbia University School of Engineering seed funding through the STAR program, and NIH R21HD110868 grant.
Competing interests
The authors declare no competing interests exist.
Data availability statement
The library program used for driving LX-16A motors can be found on Github contributed by Ethan Lipson.
Ethical approval
Not applicable.
Appendix
The following equations are the expressions for $a_{i}$ and $a_{i}^{\prime}$ symbols mentioned in the article. $r_{E}$ is the radius of the end-effector headband circle, $r_{S}$ represents the radius of the base frame circle, and $r_{A}$ represents the radius of the intermediate frame circle formed by $A_{1}, A_{2}, A_{3}, A_{4}$ .