1 Introduction

Providing haptic feedback is known to improve the performance of robot-assisted surgery (RAS), e.g., improved suturing [1] and path following [2]. However, no commercial telesurgical robot system equipped with full haptic feedback yet exists due to the lack of safety [3] caused by the presence of haptic feedback. This lack of safety is mainly due to control stability issues that result from the integration of the haptic feedback directly into the leader (master) device that is used by the operator to command the surgical robot. In such a setup, any occurrence of false force feedback caused by inevitable time delays and modeling errors can directly affect the master device and consequently the operation of the robot since the robot is affected by the false feedback before the operator can sense/prevent it.

While extensive work has been done on the control loop stability of haptic-enabled telesurgical robotics, the problem is still not fully resolved [3]. As a result, the method of providing haptic feedback using a haptic-enabled master device remains incompatible with the high level of safety required for RAS. To address the above-mentioned safety issue and avoid dealing with the control loop instabilities, we propose to separate the two functionalities of (i) providing haptic feedback to the user and (ii) receiving commands from the user and use a dedicated device for each [4]. In other words, the user will receive the required haptic feedback through a wearable hand-grounded device, while the leader—follower control is implemented using a separate device. Being hand-grounded is expected to increase the teleoperation safety as the user can easily counter any irregular forces (caused by control instabilities) before the forces could affect the input of the surgical robot. This is not possible with world-grounded devices, which provide both the haptic and driver functions.

Recently, there has been an intensive focus on the field of wearable devices. However, most of these devices do not meet the requirements of RAS as they are mostly designed for virtual reality (VR) interactions; many of them are tactile in nature and can only provide cutaneous feedback to the fingertip. Although tactile feedback is capable of providing directional cues and aiding users in completing various tasks, compared to kinesthetic feedback, it may not be sufficient to perform certain tasks, such as suture knot-tying in RAS [5] or manipulating objects in virtual reality [6], due to the lack of transparency. In addition, most of the kinesthetic wearable devices are not fully compatible with RAS requirements due to issues, such as insufficient degrees of freedom at the operator’s fingertips [7, 8] and reduction in hand function, especially grasping, due to a partially or fully covered palm [9,10,11]. Furthermore, due to the low wearability and heavy/bulky designs [6, 12], the operator’s ability to interact with the surgical robot through the master device is limited [13, 14].

To address the above-mentioned issues, this paper presents a new hand-grounded wearable kinesthetic haptic device based on the flexible continuum-arm concept (Fig. 1), previously reported as a work-in-progress [15]. The device provides 3-D force feedback (flexion–extension, abduction–adduction, and along the finger axis) to the user’s fingertip. It is designed to keep the palmar side of the user’s hand free, which enables them to handle a master device concurrently. The semi-flexible structure results in higher backdrivability which allows the operator to more easily counter false force feedbacks. Moreover, the wearable and lightweight design allows the user to approach the surgical site/master device from any desired direction and/or posture. These human-centered design features are expected to further increase teleoperation safety and performance.

Fig. 1
figure 1

Device overview: a top and side views of the device on the index finger. b CAD model of the proposed design. c A realized prototype to confirm the device movements. Three tendons (\(t_{1-3}\); green, brown, red) are independently actuated with a separate opisthenar-mounted DC motors. The thick arrows show the direction of the generated force/movement. The cantilevered structure is held just above the finger by the combined effect of spring-backbone and tendon tension

2 Device design and control

2.1 Wearable device design

Extensive work has been done to use the concept of a continuum-arm, which is inspired by organisms and biological structures, such as snakes, elephant trunks, and octopus arms [16, 17]. The similarity between the continuum-arm structures and constant curvature model of human fingers (e.g., [18]) makes the continuum-arm a suitable option for providing haptic feedback to the fingertips. Using this concept for the first time to provide wearable haptics, we design a device that can provide 3-D force, while all the structure remains on the dorsal side of the hand (except for the contact point with the fingertip; Fig. 1). Leaving the palmar side completely free allows the user to operate other devices and, if needed, receive other tactile-type feedbacks.

In this device, pre-compressed springs are used to generate the required forces in different directions. Three motors and three tendons are used to control the magnitude and direction of the force applied to the fingertip of the user. Considering the springs to be initially pre-compressed, the direction in which the springs apply force can be controlled by changing the tension of the tendons. As shown in Fig. 1 when tendon \(t_1\) is pulled and the two tendons \(t_2\) and \(t_3\) are released equally, force/movement in the extension direction is achieved since the compressed spring can only increase its length in the direction of extension (the springs will slightly bend in the extension direction). Similarly, flexion is achieved when tendons \(t_2\) and \(t_3\) are pulled simultaneously and \(t_1\) is released.

Through the specially designed elliptical shape of the bottom of the tendon guides, \(t_2\) and \(t_3\) run closer to the finger axis to reduce the unwanted torque around the finger axis during flexion (more details are provided in Sect. 2.2.4). Releasing/pulling these tendons individually results in abduction–adduction movement. Simultaneously pulling all three tendons generates the force along the finger axis.

In addition to generating force with pre-compressed springs, using the springs as the backbone of the device makes it more flexible. Importantly, this flexibility allows the user to resist the unwanted haptic feedback (e.g., caused by instability) more easily and prevent the induced movements of the master device and the surgical robot.

The constant curvature model of human fingers can account for most of the potential configurations of the users’ fingers. However, for some configurations, such as a pencil grip, the fingers might not exhibit a constant-curvature profile. Considering the proposed device design (Fig. 1), this may cause the proximal interphalangeal (PIP) joint of the index finger to touch the backbone of the device and create sensory noise and an unpleasant feeling for the user. To avoid this unwanted touch, we used a revolute joint (Fig. 1) inspired by the volar plate structure of the index finger.

To deal with the redundancy caused by the flexible backbone of the device, we considered the stiffness of the springs \(s_1-s_3\) to be much higher than \(s_4\). As a result, it can be considered that the bending and compression of the springs \(s_1-s_3\) are negligible compared to the ones of \(s_4\) (Fig. 1). In addition, since the torque is fully applied to the fingertip, the desired abduction–adduction force can be more easily achieved. Figure 2 shows the case, where springs \(s_3\) and \(s_4\) are of the same stiffness and thus the bending and compression of \(s_1-s_3\) are not negligible. In this case, the device can have different configurations, while the tendons have the same tension forces and length. In other words, the device is underactuated if \(s_1-s_3\) are not much stiffer than \(s_4\). However, since the springs have different stiffnesses, the underactuated system can be controlled.

Fig. 2
figure 2

Top view of the device in two different configurations when the tendons have the same tension and lengths. The stiffness of the springs \(s_3\) and \(s_4\) are the same. \(s_1-s_4\) show different springs used in the backbone of the device

Another important point is that an unwanted force along the finger axis is generated when the device is intended to apply force in other directions. Due to the nature of glove-type devices attached to the dorsal side of the hand, they cannot generate forces purely in the directions of flexion/extension and abduction–adduction. To minimize this effect, we decided to use a pin joint at the fingertip contact point (Figs. 1, 3a). The joint partially cancels the negative coupling effect while letting the device apply force in the intended directions. This is achieved by introducing the angle \(\alpha \) shown in Fig. 3 (see Sect. 2.2 for more elaboration). A potentiometer-based sensor measures the position of the pin joint. The rotation of the pin joint is limited to maximize the force exerted in the flexion direction, which is the most difficult direction in which to generate force. More details are provided in Sects. 2.2.1 and 2.2.4.

2.2 Static force analysis

The device applies forces to the user’s index fingertip by controlling the force applied by the springs. This is done by controlling the tensions and the lengths of the tendons, which is achieved by controlling the current (torque) and the position of each motor individually.

2.2.1 Flexion–extension direction

As discussed, it is the most difficult to generate force in the flexion direction. In this subsection, analysis is performed for forces in the flexion direction; however, the principle remains the same for extension, where the compression force of the springs are not used.

Fig. 3
figure 3

Body diagram of the device. a Side view: The forces shown in the figure are: \(F_1\), the tension force of the tendon \(t_1\); \(F_2\), the summation of the tension forces of tendons \(t_2\) and \(t_3\); \(F_s\), the spring force applied perpendicular to the rotating part of the pin joint; and \(F_x\) and \(F_y\), the forces applied to the fingertip in x and y directions, respectively. \(l_1\), \(l_2\), and \(l_s\) are the distances between the rotation point of the joint and tendon \(t_1\), tendon \(t_2\) (or \(t_3\)), and the contact point of the spring, respectively. b Side view: The forces shown are \(F_{t_{1,2,3}}\): tension force of the tendon \(t_{1,2,3}\); \(F_x\) and \(F_z\) are the forces applied to the fingertip in x and z directions, respectively. \(r_{\text {f}}\) is the radius of the finger and \(l_{\text {c}}\) is the length of the spring when pre-compressed. The counterclockwise direction is defined as the positive direction of torque around the MCP joint

To calculate the force exerted in each direction on the user’s fingertip, we use simple static equilibrium equations. Figure 3a shows the case when the device is supposed to apply force in the flexion direction. It should be considered that the force \(F_2\) in the figure is generated by two motors equally (i.e., \(F_2=F_{t_{2}}+F_{t_{3}}\), \(F_{t_{2}}=F_{t_{3}}\)). Based on the figure, the equilibrium of the forces in the x direction [along the finger axis, Eq. (1)], and the y direction [flexion, Eq. (2)], and the equilibrium of the moments around the pin joint [Eq. (3)] can be represented as

$$\begin{aligned} F_x&=-F_{\text {s}}\cos \alpha +(F_1+F_2)\sin (\theta + \alpha ), \end{aligned}$$
(1)
$$\begin{aligned} F_y&=F_{\text {s}}\sin \alpha +(F_1+F_2)\cos (\theta + \alpha ), \end{aligned}$$
(2)
$$\begin{aligned} F_{\text {s}}l_{\text {s}}&=(F_1l_1-F_2l_2)\cos \alpha , \end{aligned}$$
(3)

respectively.

Due to the design of the device, it is safe to assume that the tendons remain mostly parallel to the distal and middle phalanx of the finger. As a result, \(\alpha +\theta =90^{\circ }\). Using this, Eqs. (1) and (2) can be simplified as Eqs. (4) and (5), respectively.

$$\begin{aligned} F_x=-F_{\text {s}}\cos \alpha +(F_1+F_2), \end{aligned}$$
(4)
$$\begin{aligned} F_y=F_{\text {s}}\sin \alpha . \end{aligned}$$
(5)

Substituting \(F_{\text {s}}\) from Eq. (3) into Eqs. (4) and (5) yields

$$\begin{aligned} F_x= F_1(1-A\cos ^2 \alpha )+F_2(1+B\cos ^2 \alpha ), \end{aligned}$$
(6)
$$\begin{aligned} F_y&=F_1A\sin \alpha \cos \alpha -F_2B\sin \alpha \cos \alpha \nonumber \\&=(F_1A-F_2B)\sin \alpha \cos \alpha , \end{aligned}$$
(7)

where \(A=l_1/l_{\text {s}}\) and \(B=l_2/l_{\text {s}}\).

Extension movement of the finger is done by rotation of the whole finger around the metacarpophalangeal (MCP) joint (Fig. 3). As discussed in Sect. 2.2.4, the resulting torque of \(F_2\), in the case that \(l_1>l_{\text {s}} \gg l_2\), is negligible for extension. There are two remaining forces resulting in the torque that causes the extension movement: \(F_1\) and \(F_{\text {s}}\). To apply torque in the extension direction, \(F_2\) is set to be 0 N. Considering the diagrams shown in Fig. 3, the torque will be in the extension direction if \(F_1>F_{\text {s}}\). This results in \(\alpha =0^{\circ }\), the designed limit of the pin joint rotation range. The torque around the pin joint can be written as

$$\begin{aligned} \tau _{\text {extension}}={F_{1}l_{1}-F_{{\text {s}}}l_{{\text {s}}}\;\;\;\;(\alpha =0) }. \end{aligned}$$
(8)

2.2.2 Abduction–adduction direction

Due to the structure of a human finger, as shown in Fig. 3b, its motion in the abduction–adduction direction can be achieved by rotation around the MCP joint. The device provides this motion by applying torque around the joint. The torque is generated by the tension forces \(F_{t{_2}}\) and \(F_{t{_3}}\):

$$\begin{aligned} \tau =(F_{t_{3}}-F_{t_{2}})r_{{\text {f}}}, \end{aligned}$$
(9)

where \(r_{{\text {f}}}\) is the radius of the finger.

It is worth mentioning that the effect of the compression force of the spring on the torque is negligible since its axis in the neutral configuration (when it is not bent) passes the MCP joint and thus does not apply torque around the joint. With this design, a torque is successfully generated around the MCP joint. However, due to the structure of the device, this torque is coupled with an undesired force along the finger axis.

2.2.3 Along the finger axis

As mentioned in Sect. 2.1, the springs are pre-compressed, meaning that even when the device is not applying any force/torque to the finger, the motors are applying an initial equal force in order to compress the spring along the finger axis (x-axis in Fig. 3). Considering Fig. 3b and using Hooke’s law, we can calculate the total initial force applied by the motors:

$$\begin{aligned} F_{{\text {it}}}= k(l_{{\text {i}}}-l_{{\text {c}}}), \end{aligned}$$
(10)

where k is the spring constant and \(l_{{\text {i}}}\) and \(l_{{\text {c}}}\) are the initial and compressed lengths of the spring, respectively. The device can apply force along the finger axis simply if the total applied force by the motors (\(F_t=F_{t_{1}}+F_{t_{2}}+F_{t_{3}}\)) is larger than \(F_{{\text {it}}}\). To have the force purely along the finger axis, the motors need to apply equal tension forces (i.e., \(F_{t_{1}}=F_{t_{2}}=F_{t_{3}}=F_t/3\)). Finally, the force applied along the finger axis can be written as \(F_{x}=F_{{\text {t}}}-F_{{\text {it}}}\).

2.2.4 Design optimization

With all the actuation units above the finger axis, it is easier to generate motion in the extension direction compared to the flexion direction. This is because pulling the fingertip using the tension of any tendon results in a torque in the extension direction. Consequently, a few design parameters should be tuned and optimized to increase the ability of providing force in the flexion direction. To apply a pure flexion force and minimize the force in the unwanted directions, Eq. (7) should be maximized and Eq. (6) should be minimized. Equation (7) is a subtraction of two positive terms (\(F_1A\sin \alpha \cos \alpha \) and \(F_2B\sin \alpha \cos \alpha \), considering the device design in which \(0^{\circ } \le \alpha \le 90^{\circ }\)). The first term should be maximized and the second one should be minimized, where \(F_1\) and \(F_2\) are the control parameters and \(\sin \alpha \cos \alpha \) is present in both terms. For this purpose, we can increase A and decrease B, which also minimizes Eq. (6). This is a viable option, but, as shown in Fig. 3a, it should be considered that increasing A (\(l_1\)) would require a greater volume and mass of the device on the hand, resulting in lower wearability. To decrease B (\(l_2\)), the lower tendons need to be brought closer to the fingers to minimize the unwanted torque around the finger axis in the flexion direction. Furthermore, the device footprint should be kept reasonably small and possible contact between the finger and tendon guides (which is especially likely as \(\alpha \) increases) should be prevented. Therefore, in the first prototype (Fig. 1), we decided on the following values: \(l_1=16~\)mm, \(l_2=4~\)mm, and \(l_s=10~\)mm; thus \(A=1.6\) and \(B=0.4\). Furthermore, \(F_y\) in Eq. (7) should be kept positive which means that \(F_1>0.25F_2\) (\(\sin \alpha \cos \alpha \ge 0\) as previously explained in this subsection). Considering Eq. (7), we can see that the maximum force in the y direction is reached when \(\alpha =45^{\circ }\). Therefore, we select this value as the rotation limit. In addition, since \(F_x\) in Eq. (6) cannot be equal to 0 N, while \(F_y\) in Eq. (7) is greater than 0 N, we can conclude that generation of force in only the flexion direction is not possible while having the whole device above the finger axis. Furthermore, based on the maximum generated torque of the motors, a minimum limit should also be determined for \(\alpha \), which will be discussed in Sect. 3.1.

Fig. 4
figure 4

Block diagram of the controller used for rendering force on the user’s fingertip. The hand position (\(x_{\text {u}}\)) is tracked by a 3-DoF device (master device) and sent to the virtual/real environment as \(x_{\text {d}}\). The interaction forces between the real robot and the environment are calculated as the desired force (\(F_{\text {d}}\)). This force is then translated into the forces required from each tendon (and motor, \(F_{\text {m}}\)). For this translation, constant information about \(\alpha \) (the pin joint angle) is required. Then, \(F_{\text {m}}\) is translated to the motor torques and currents (the torque of the DC motors can be controlled using the characteristic current–torque diagram provided by the manufacturer). This is done using a closed loop current controller. \(F_{\text {o}}\) is the resultant force applied to the user

2.3 Device control

In this work, we considered an impedance control scheme for the haptic feedback due to its excellent rendition of free-space, low cost, and convenience [19]. In this proposed scheme of providing kinesthetic feedback (Fig. 4), the user’s finger position is sensed by a master device or a motion capture system. This motion is then translated to a desired haptic force feedback caused by the interactions between the robot and its surroundings, in a real or virtual environment.

An impedance scheme requires force control of the haptic device. However, implementing a closed loop force control is difficult due to the size and accuracy requirements and high cost [20] of the force sensors. Due to this challenge, some devices (e.g., [8, 18, 21]) map force into position and implement position-based control to give kinesthetic feedback to the users. While this method is easier to implement, motion of the device is required to apply the force feedback which results in decreased haptic transparency. In this design, we applied an open loop force control to avoid the challenges of using force sensors while having the benefit of controlling force (vs. controlling position).

In this control system, the applied forces on the fingertip are estimated by solving the equilibrium Eqs. (6) and (7) mentioned in Sect. 2.2. To generate the desired forces on the fingertip, we can solve this system of nonlinear equations and obtain the desired tension forces of the tendons and thus the required toques. Then, using the electrical current control of the motors, the required torque can be applied using the torque–current characteristic of the motor. Current control of the DC motors can be achieved using a simple voltage-controlled current source circuit in which the current is proportional to an input voltage. The input voltage is controlled using an Arduino Uno (Rev3, clock speed \(=16\) MHz) microcontroller.

To find the relation between the required tension force of a tendon attached to a motor and the input voltage, first, we need to calculate the relation between the control voltage \(V_{\text {C}}\) and the current \(I_{\text {M}}\). Considering a shunt resistor of \(3\Omega \) for the current source, the relation can be written as \(I_{{\text {M}}}=V_{\text {C}}/3\).

Then, it is necessary to know the relationship between the current and the torque, which is normally provided as part of the motor’s technical specifications. In this device, 75:1 Micro Metal HPCB Gearmotors (Pololu Inc, USA) are used, according to the data sheet,Footnote 1 the relation between the \(I_M\) and the torque \(\tau \) (in Nmm) at the nominal voltage is \(\tau =83.4I_{\text {M}} - 10.0.\)

Finally, considering a pulley radius \(r_{\text {p}}\) of 1.5 mm, the relation between \(V_{\text {C}}\) and the tension force \(F{\text {t}}\)(\(=\tau /r_{\text {p}}\)) of the tendon attached to each motor can be written as

$$\begin{aligned} F_{\text {t}} =18.5V_{\text {C}} - 8.5. \end{aligned}$$
(11)

3 Results and discussion

Fig. 5
figure 5

Result of solving Eqs. (6) and (7) for \(F_1\) and \(F_2\) when \(F_y\) is set to 10 N. The system of nonlinear equations is solved for the whole range of \(5^{\circ } \le \alpha \le 45^{\circ }\) (with steps of \(0.1^{\circ }\)) and different desired values of \(F_x\): 1 N to 9 N with steps of 2 N

3.1 Static force simulation

To confirm the feasibility of the device and the control method, we consider a few pairs of \((F_x,F_y)\) when the device is in flexion mode. Here, the pin joint angle varies from \(5^{\circ }\) to \(45^{\circ }\) to see if there is a solution for different pairs in the range of pin joint rotation.

As kinesthetic glove-type devices may hurt the user’s fingers if there is a fault in the system, most of these devices limit the maximum output force to about 10 N [6].

Therefore, in our simulation, \(F_y\) is set to be 10 N (the most difficult scenario) and \(F_x\) is varied from 1 N to 9 N (with steps of 2 N) to see whether there is a solution to the system of nonlinear equations mentioned in Sect. 2.3. Furthermore, in the case that a solution exists, we investigate how achievable it would be considering physical limitations, for example, the condition obtained in Sect. 2.2.4 (\(F_1>0.25F_2\)) must be satisfied, tension forces must be positive, and torques must be within the capability of the motors. Figure 5 shows the result of this simulation, performed in the MATLAB R2019b environment using the “solve” command.

As shown in Fig. 5, there is a solution for \(F_1\) and \(F_2\) for the whole range of \(F_x\) considering a certain \(F_y\). However, there are two important points. First, in some cases (\(\alpha >40.6^{\circ }\)) when \(F_x\) is much smaller than \(F_y\), for example, when \(F_x=1~\)N, the solution cannot be implemented since \(F_2<0\) is needed; however, the tension force of a tendon cannot be negative as the tendons can only pull. Another important point is the amount of torque required from each motor. As shown in Fig. 5, when \(\alpha \) is around \(5^{\circ }\), both \(F_1\) and \(F_2\) are required to be relatively large. It may not be possible for small hand-grounded motors to generate such large forces (torques). This may lead to designing a lower rotation limit for the pin joint based on the maximum torque of the motors. For instance, considering \(15^{\circ }\le \alpha \le 45^{\circ }\), it can be observed that the required forces can be achieved using the DC motors used in the fabricated prototype since these motors (Sect. 2.3) can provide a maximum torque of 0.11 Nm.

3.2 Device evaluation

To investigate the feasibility of the device design and control, we conducted an experiment to measure the force applied by the device in the direction of flexion–extension and along the finger axis. Before that, to evaluate the force control of each motor individually, we conducted another preliminary test. All the force measurements in this study are done using a MCT-1150 table top force meter (A &D Ltd., Japan).

3.2.1 Preliminary test

Fig. 6
figure 6

Result of the preliminary test. The ideal current and force are calculated from Eq. (11)

In this test, we apply different control voltages \(V_{\text {C}}\) to the circuit and measured the current passing through (\(I_{\text {M}}\)) and the tension force generated in the tendon attached to the motor \(F_{\text {M}}\). The no-load current of the motor is around 0.13 A. The test is done for a control voltage range of 0.5 V to 1.9 V (with steps of 0.2 V), where the expected motor current \(I_{\text {M}}\) is 150 mA to 670 mA. Figure 6 shows the result of the test.

Fig. 7
figure 7

Resultant force in the flexion direction (see Fig. 3a) for different joint angles when \(F_x\) and \(F_y\) are set to 5 N and 10 N, respectively. \(F_1\) and \(F_2\) are applied according to Fig. 5

Fig. 8
figure 8

Resultant torque in the extension direction for variable ramp (left) and step (right) inputs. The ideal torque is calculated using Eq. (8) and the measured torque is determined by experiment. The measurement is done as explained in Sect. 3.2.3

Increasing the voltage beyond 1.5 V did not result in an increase in current, demonstrating a non-linear behavior. This may be because the op-amp used here is not ideal. The results of the test confirm the successful control [i.e., linear behaviour complying with Eq. (11)] of the tension force of the motors in the range of 0–20 N with the controller circuit (Fig. 6).

3.2.2 Evaluation in the flexion direction

In this subsection, we evaluate the results obtained in Sect. 2.2.1. For simplification, this experiment is done by mechanically fixing the pin joint angle \(\alpha \) from \(30^{\circ }\) to \(45^{\circ }\) (with steps of \(5^{\circ }\)). We only considered the case of \(F_x=5~\)N (see Fig. 5) since we cannot control \(F_1\) with the required resolution that is shown in Fig. 5 (left). During the experiments, the finger holder of the device was attached to the force meter using a tendon and the base of the device was fixed. Therefore, the device configuration (i.e., the position of the tendon guides) was also unchanged. As a result, the device did not have any movement and applied force without having displacement. Figure 7 shows the result of the experiment.

It can be observed from Fig. 7 that there is an error for both \(F_x\) and \(F_y\). One of the reasons for this error is that the non-linearity of springs and, more importantly, the bending forces of the springs when they are bent perpendicular to their main axis are not considered. More accurate modeling and designing of the springs will further help increase the accuracy of the force control. Another source of error is that we considered the tendon to be always parallel to the finger (\(\beta =90^{\circ }\)). In addition, the inaccuracy in controlling the motors contributes to the error. A more accurate model of the motors can further reduce the error. This can be achieved by employing the exact values of coil inductance and resistance or the exact current–torque equation of the motor.

As the pin joint angle \(\alpha \) increases, \(F_y\) gets closer to the calculated value: the error decreased from \(21\%\) for \(30^{\circ }\) to \(9\%\) for \(45^{\circ }\). Considering Eq. (5), the reason can be concluded to be that the effect of \(F_{\text {s}}\) in flexion direction increases as the spring is bent in the direction (see Eq. (7)). However, this increase occurs in a non-linear way and is not modeled accurately. The same reason can explain the similar behavior of \(F_x\): the error decreased from \(28\%\) for \(30^{\circ }\) to \(14\%\) for \(45^{\circ }\). The mean absolute error (MAE) for the forces in the flexion direction (\(F_y\)) is calculated as 1.62 N (\(16\%\)).

3.2.3 Evaluation in the extension direction

Next, the force application performance of the device in the extension direction in the case of \(\alpha =0^{\circ }\) is evaluated by measuring the torque and comparing it to that calculated by Eq. (8) for a range of \(5{-}20~\)N for \(F_1\). In this evaluation, we used a dummy finger, a plastic cylinder with a radius of \(r_{\text {f}}=5~\)mm and a length of \(l_{\text {f}}=60~\)mm, attached to a pin joint similar to the finger MCP. The torque is calculated as \(F_{\text {extension}}l_{\text {f}}F_{\text {extension}}\) is obtained by measuring the force in the extension direction (\(-y\) in Fig. 3a). The spring constant of \(s_4\) (see Fig. 2) for this part is 0.3 N/mm; when \(\alpha =0^{\circ }\), \(s_4\) is compressed to around 2 mm. Therefore, the resultant \(F_{\text {s}}\) in Eq. (8) is 0.6 N. Figure 8 (left) shows the result of this evaluation. To evaluate the ability of the device to follow faster changes in input, the same experiment with a variable step input (increasing/decreasing with time steps of 1 s) is conducted. The result is shown in Fig. 8 (right). The MAE in this direction is calculated as 8.1 Nmm (\(4.0\%\)) for the variable ramp input and 8.9 Nmm (\(4.4\%\)) for the step input.

3.2.4 Evaluation in the abduction–adduction direction

Next, we did the evaluation for the abduction–adduction direction. For this evaluation, a dummy finger (the same as Sect. 3.2.3) was used and the force applied to its tip in abduction–adduction direction, \(F_{\text {am}}\), was measured. To evaluate the accuracy, we compared the resultant torque to the desired one calculated in Eq. (9), as shown in Fig. 9 (left). The resultant torque was calculated as \(\tau _{{\text {r}}}=F_{\text {am}}l_{{\text {f}}}\). This experiment is done for a range of \(5-20~\)N for \(F_{t_{2}}\) and \(F_{t_{3}}=0~\)N. Due to the symmetry in the design, the results of the abduction direction are similar to those of the adduction direction, so the experiment is done for abduction only. Similar to Sect. 3.2.3, the experiment is also done for a variable step input (Fig. 9 (right)). The MAE in this direction is calculated as 5.5 Nmm (\(7.3\%\)) for the variable ramp input and 6.2 Nmm (\(10.3\%\)) for the step input.

3.2.5 Evaluation along the finger axis

Finally, we evaluated the device while applying force along the finger axis. It was simply done by measuring the applied force, then comparing it with the desired value that was calculated in Sect. 2.2.3. Figure 10 (left) shows the result. The same spring as the one used in Sect. 3.2.3 is used here. Therefore, \(F_{{\text {it}}} = 0.6~\)N (see Sect. 2.2.3). The experiment is done for a range of 15–60 N for \(F_{{\text {t}}}\) mentioned in Sect. 2.2.3. A variable step input is also considered (similar to Sects. 3.2.3 and 3.2.4) and the result is shown in Fig. 10 (right). The MAE in this direction is calculated as 2.1 N (\(5.6\%\)) for the variable ramp input and 2.9 N (\(7.7\%\)) for the step input.

Fig. 9
figure 9

Resultant torque in the abduction direction for variable ramp (left) and step (right) inputs. The ideal torque is calculated using Eq. (9) and the measured torque is determined by experiment. The measurement is done as explained in Sect. 3.2.4

Fig. 10
figure 10

Resultant force along the finger axis for variable ramp (left) and step (right) inputs. The ideal force is calculated using Sect. 2.2.3 and the measured force is determined by experiment. The measurement is done as explained in Sect. 3.2.5

3.3 General discussion and future work

While the accuracy in the flexion direction seems to be low, it is worth noting that this direction is less important compared to extension (required in tasks, such as grasping) and along the finger axis (needed in tasks, such as stiffness discrimination and tissue investigation). In addition, as previously mentioned, desired forces in the flexion–extension and abduction–adduction directions are coupled with large forces along the finger axis which may result in an unpleasant feeling to the user. In addition, the obtained results are regarding the case in which the device is desired to apply force in a single direction (e.g., along the finger axis) and not a combination of two or more. When forces are combined together, there might be conflicting solutions for a force applied by a motor. This point should be considered in the future when the device is going to be used for doing a task, such as pick-and-place.

Considering the response of the device to the variable step inputs (Figs. 810 (right plots)), it can be observed that the device can follow relatively high frequency changes in input despite the analysis being static.

As mentioned in Sect. 2.3, the manufacturing and utilization of force sensors for wearable devices are challenging. However, the recent advancements in sensor fabrication have increased their suitability to be used with wearable devices. In this regard, a comprehensive review is provided in [22]. As a future direction, to improve the overall accuracy of the device, we plan to use force sensors (e.g., [23]) and implement a closed-loop force control using an algorithm that can deal with modeling inaccuracies. In addition, recently, machine learning methods are being used in the control and sensing of soft (and redundant) robotics [24, 25], which can be considered for further improvements.

4 Conclusions

This paper proposed the design of a 3-D lightweight wearable haptic device that is flexible and keeps the inner side of the operator’s hand free (i.e., has human-centered design) so they can concurrently interact with the master device of a surgical robot. The backdrivable design of the device and its ability to be used as an external haptic device increases the operator’s control over the surgical teleoperation in case of control instability. Static force analysis and design optimization were carried out. Using the force analysis, a controller scheme was then provided. The performance of the device to display force accurately in all three directions was confirmed experimentally. As discussed, in the future, we plan to improve the device design and force control and use it along with real and virtual surgical robots.