1. Introduction
The word “haptic” comes from the Greek word “haptesthai,” which means “to touch,” and indicates the ability to touch or manipulate objects. The haptic joystick is useful for an efficient remote control because it can generate operator commands and feedback the forces of the remote environment to the operator [Reference Takemoto and Yano1, Reference Qin and Yutaka2]. In addition, it is necessary to design different types of haptic devices to meet the requirements of different control systems. Krishnan and Ganesh proposed a RRR three degree-of-freedom (DOF) parallel joystick that uses the motion constraint equation and the dynamic modeling of the motion platform to obtain the overall system dynamics equation of a parallel manipulator [Reference Krishnan and Ganesh3]. A haptic interface algorithm for a joystick to control a remote, unmanned vehicle was proposed [Reference Cho and Jin4]. The algorithm achieves effective remote control of unmanned vehicles. However, the accuracy of the output position of the joystick is insufficient since the feedback data are not accurate and fast enough for unmanned vehicles.
A 6-DOF haptic joystick structure was proposed to solve the problem of the accuracy of the joystick position output in 3D space [Reference Lee and Lee5]. However, the complicated structure causes the mechanical quality to be heavy, resulting in operator fatigue during long periods of operation and reducing work efficiency. To be an efficient human–computer interaction control, it is necessary to accurately identify the human body’s motion intentions [Reference Huang and Huo6].
A bioelectrical signal can directly reflect human’s motion intentions [Reference Tong and Hou7, Reference Ngeo and Tamei8]. For example, a surface electromyogram (SEMG) directly reflects the patient’s muscle state, and an electroencephalogram (EEG) visually reflects the condition of the cerebral cortex-related area [Reference Hashemi and Morin9–Reference Scheme and Englehart12]. However, the analysis of bioelectrical signals requires a heavy computational burden and finally takes a long time to extract the human’s motion intentions, which limits the approach to a slow and static working environment of a mobile robot.
To quantify human’s motion intention, this paper proposes a strategy that uses dynamic modeling of the human arm, as well as F/T (force/torque) sensor measurements, to calculate the motion vector for the joystick. Notice that it is difficult to obtain an accurate arm dynamic owing to the nonlinearity of the human arm itself. Various nonlinear controllers, compensation controllers, and neural network adaptive robust controllers can be used to compensate for nonlinear and uncertain factors of the dynamics.
Impedance control algorithms are widely used in human-in-loop human robot interaction systems (HIL-HRIS) [Reference Ibarra and Siqueira13–Reference Napper and Seaman15]. The concept of this control algorithm was first proposed by Hogan [Reference Hogan16], which is a generalization of damping control and rigid control. It was first implemented on the lower limb rehabilitation robot named “Lokomat” [Reference Bernhardt and Frey17]. This algorithm can adaptively adjust the robot’s assisting force according to the residual muscle control ability of a patient’s central nervous system, so that the interaction between the robot and the patient is more coordinated and flexible. Ficuciello [Reference Ficuciello and Romano18] proposed a variable impedance control algorithm based on a redundant manipulator, which improved the HRI performance and system stability through the fusion of a Cartesian impedance control regulator (CICR) and the redundant analysis method (RAM). This approach requires an expensive sensor and a complex redundant manipulator, which is limited to a very safe system with a compromise between better precision and execution efficiency [Reference Ficuciello and Romano19].
Wang [Reference Wang20] proposed a new force position impedance controller for suppressing the position uncertainty during robot machining. This is applicable for cases in which the operator controls the manipulator through the joystick by impedance control, but the impedance of the human arm causes a loss in control accuracy. Artemiadis [Reference Artemiadis and Katsiaris21] proposed a 3D modeling method to estimate the impedance of a human arm. However, this method needs a strictly maintained experimental environment which requires expensive machinery. Li and Song [Reference Li and Song22] roughly estimated the human arm’s impedance using a least squares method, and the present study has optimized this method.
This paper proposes an impedance control strategy that matches the impedance of the operator’s arm to that of the joystick for more efficient and effortless long-term task execution. The composition of this paper is as follows: Section 2 introduces the basic structure of the impedance control system, Section 3 introduces the rationality of the human arm’s impedance modeling proposed in this paper from a physiological perspective. Section 4 presents the algorithm for estimation of the human arm’s impedance and impedance control strategy of the joystick to help the operator work efficiently and effortlessly. Section 5 presents the experimental results, and Section 6 concludes the paper.
2. Force feedback system based on impedance control
The overall schematic diagram of the force feedback system based on impedance control is shown in Fig. 1. ${F_h}$ is the human arm’s force, ${F_m}$ is the force exerted by the master on the human arm, ${F_s}$ and ${F_e}$ are the interaction forces between slave and external environment, ${K_h}$ , ${B_h}$ , and ${M_h}$ are the human arm’s mass, damping, and stiffness coefficients, respectively. ${K_m}$ , ${B_m}$ , and ${M_m}$ are the master’s mass, damping, and stiffness coefficients, respectively. ${K_s}$ and ${B_s}$ are the slave’s damping and stiffness. ${K_e}$ , ${B_e}$ , and ${M_e}$ are the external environment’s mass, damping, and stiffness coefficients, respectively.
The operator manipulates the joystick (master) to control the manipulator or to generate the commands for a mobile robot (slave), and the interaction force generated when the manipulator touches the external environment is fed back to the operator through the joystick. This paper focuses on the efficiency of the operator’s manipulation of the joystick and thus only discusses the control strategy of the joystick. The goal is efficient and effortless joystick manipulation by the operator during long-term operation. To achieve this goal, it is necessary for the joystick to generate a compensation force to help the operator. By the impedance matching control between the impedance of the human arm and the joystick, the human operator becomes very comfortable operating the joystick.
In Fig. 2, $\Delta F$ is the interaction force between the human arm and the joystick. The F/T sensor has been used to measure the human operator’s force, ${F_h}$ , which can be used to represent the human intention. $\Delta X$ is the position increment calculated from the human arm’s impedance modeling defined as $\Delta F$ / $\Delta X$ . ${F_c}$ and $G$ are the force generated by PD controller and the gravity compensation force, respectively. With this gravity compensation, the fatigue of human operators for long-term teleoperation can be reduced.
3. Dynamic modeling of human arm
The operator receives a variety of sensory stimuli during manipulation of the joystick, and the feedback information can be classified into two information types: force feedback and position feedback. This is a complex process by which the operator perceives the environment to make decisions based on the force and position feedback information provided by the multisensory stimulus. However, according to the results of the operator’s decision, this decision process can be classified into two modes: force command mode and position command mode. The force command mode can be used when the operator wants to keep a constant force. The position command mode includes majority of human commands to move to the desired position.
To establish dynamic modeling of the human arm, it is necessary to deeply understand the characteristics of the human arm from the brain’s decision to the arm muscle’s motion. For the convenience of research, this study established the operator’s layered dynamics modeling from a physiological point of view. This modeling consists of the decision, fusion, and conduction layers, as well as the arm [Reference Kook and Kota23].
Figure 3 shows the whole process from a human’s decision to act, and the action has been divided into 2 modes: force command mode and position command mode. ${k_p}$ and ${k_f}$ are the zero-frequency gains of position and force, respectively. ${T_p}$ and ${T_{pl}}$ represent the prediction and lag factors, respectively, in the operator’s position command process. ${T_f}$ and ${T_{fl}}$ represent the operator’s prediction and lag factors, respectively, in the force command process. ${r_p}(n)$ , ${r_f}(n)$ , and $r(n)$ are the white noises and ${Z_h}$ represents the impedance modeling of the human arm.
3.1. Decision layer
There are two command modes generated by the decision layer for the control of the mobile robot: force and position commands modes. Force command mode: This mode corresponds to a completely restricted mode, that is, the human brain converts the task into a certain desired force output according to the situation of the object in the environment. The desired position is set to be equal to the actual position of the human hand, that is,
where ${X_d}$ and ${X_h}$ are the desired and current human hand’s positions, respectively.
Position command mode: This mode corresponds to the free motion mode, that is, the human brain converts the task into a certain desired position output according to the situation of the object in the environment, and the expected force is equal to the actual force of the human hand, that is,
where ${F_d}$ and ${F_h}$ are the desired and actual human hand’s forces, respectively.
3.2. Fusion layer
In the fusion layer, the operator’s positioning process and force determination process are fused. The output force at the fusion layer, ${F_s}$ c, can be obtained in s domain as follows:
where ${e_p}(s) = {X_d}(s) - {X_h}(s) + {r_p}(n)$ , ${e_f}(s) = {F_d}(s) - {F_h}(s) + {r_f}(n)$ , ${r_p}(n)$ and ${r_f}(n)$ are the white noises generated from the contacted object’s position and force errors, respectively, which are very small to be eliminated without any problem [Reference Talukdar and Barman24].
3.3. Conductive layer
In the conductive layer, a value obtained by applying the delay time of nerve transmission is transmitted to the movement of the human arm. The output force at the conductive layer, $F$ c, can be described as
where $\sigma $ [second] represents the time delay of the transmission nerves.
3.4. Human arm’s motion
The human arm’s motion after the gravity compensation in Fig. 2 can be described using the impedance modeling as follows:
where $r(n)$ is the white noise caused by muscle fatigue, which can be negligible; ${M_h},{B_h},$ and ${K_h}$ care the mass, damping, and stiffness coefficients of the human arm, respectively.
From Fig. 3, $F(s)$ can be obtained after the blocks of ${G_p}(s)$ and ${G_f}(s)$ . As a result Equation (5) can be represented as follows:
where ${G_p}(s)$ and ${G_f}(s)$ are obtained from Fig. 3 as follows:
${G_P}(s)$ is a position factor and ${G_f}(s)$ is a force factor. When the operator works in position command mode, the position prediction factor becomes the dominant factor in determining human motion and other factors can be eliminated. That is, ${G_P}(s)$ and ${G_f}(s)$ can be simplified ignoring the delay time and the lag factors, ${T_{pl}}$ and ${T_{fl}}$ , which can be approximated to be zero. Also the force prediction factor, ${T_f}$ , can be eliminated. Equations (7) and (8) can be simplified as follows:
As the result, the Eq. (6) can be presented as follows:
According to the neurophysiology research results [Reference Merfeld and Clark25], the response time distribution of the operator in the processes of perception, decision, and control is as follows: the process by which the receptor transforms the stimulus into a nerve impulse needs 1 to 38 ms, and the nerve-conduction process needs 2 to 100 ms. The neural decision-making process requires 70 to 300 ms, and the process by which the efferent nerve transmits the command to the neuro muscle requires 10 to 20 ms.
As the operating frequency of the human robot interaction system is affected by the operating bandwidth of the actuator, it generally works in the low frequency region. Some factors can be ignored to simplify the operator arm’s dynamic modeling and the modeling can be represented as follows:
This modeling can also be called an impedance modeling. The joystick occupies a 3D space, and thus ${F_h}$ and $\Delta X \in\square^{3\times 1}$ , ${Z_h},{M_h},{B_h},$ and $K_h \in\square^{3\times 3}$ .
4. Joystick impedance control
4.1. Human arm impedance estimation
To determine the impedance coefficients of the human arm, the operator works in the position command mode. At this time, ${X_d}$ is a preset reference path and only the operator arm’s impedance coefficients in this reference path can be estimated because the arm’s impedance changes with muscle contractions [Reference Atsushi and Shohei26]. F/T sensor is used to measure the interaction force between the human hand and the joystick. Based on the interaction force between the hand and joystick measured by the F/T sensor and the position increment calculated by the angles measured by the encoders, the impedance coefficients of the human arm can be obtained as follows:
If ${F_h}(x,y,z)$ can be expressed as a differentiable nonlinear function of the position of the end point of the human arm as follows:
where i = $x,y,$ and $z$ which are the coordinates of the end point of the human arm in a 3D space. Notice that the human arm’s impedance can be expressed as a differential operator and is associated with infinitesimal force changes and infinitesimal displacements.
Equation (14) is correct only in the case of infinitesimal displacements. Therefore, a reliable method is measuring the force of many discontinuous points and then estimating the coefficients of the human arm’s impedance modeling by processing the obtained data.
The impedance modeling proposed in the previous section is represented as follows:
where ${X_d}$ and ${X_c}$ represent the desired and actual positions, respectively; ${\dot X_c}$ and ${\ddot X_c}$ are the actual velocity and acceleration of the arm, respectively; ${\dot X_d}$ and ${\ddot X_c}$ are the desired velocity and acceleration of the arm, respectively.
Assuming that the operator’s hand applies a force $d{F_h}$ to the joystick over a very short time, which causes the joystick to move a very short distance $d{X_h}$ , the impedance modeling can be defined as follows:
where $dX_h, d\dot{X}_h$ , and $d\ddot{X}_h$ are the distance, velocity, and acceleration of the arm’s motion over a short time, respectively. By subtracting Eq. (15) from Eq. (16), $d{F_h}$ can be expressed as follows:
Assuming that ${\hat F_h}$ is the estimated force output of the human hand, ${\hat M_h},{\hat B_h}, $ and ${\hat K_h}$ are the estimated values of the arm’s mass, damping, and stiffness coefficients, respectively. The human arm’s force, ${\hat F_h}$ , can be represented as follows:
By using the least squares method, square error S can be expressed as follows:
Notice that $\frac{{\partial S}}{{\partial {{\hat M}_h}}}$ , $\frac{{\partial S}}{{\partial {{\hat B}_h}}}$ , and $\frac{{\partial S}}{{\partial {{\hat K}_h}}}$ can be approximated as zeros [Reference Li and Song22]. Using the Eq. (18) and (19), impedance coefficients of human arm can be estimated as follows:
where n is the number of sampling points and t is the sampling time.
To estimate the time-varying impedance coefficients of the human arm in a short time, the impedance can be represented as follows:
where $\left( t \right) = \left[ {\begin{array}{c@{\quad}c@{\quad}c}{\mathop \sum _{p = t - n + 1}^n {{\ddot X}^2}\left( p \right)} & {\mathop \sum _{p = t - n + 1}^n \ddot X\left( p \right)\dot X\left( p \right)} & {\mathop \sum _{p = t - n + 1}^n \ddot X\left( p \right)X\left( p \right)}\\[5pt]{ \sum _{p = t - n + 1}^n \dot X\left( p \right)\ddot X\left( p \right)} & { \sum _{p = t - n + 1}^n {{\dot X}^2}\left( p \right)} & { \sum _{p = t - n + 1}^n \dot X\left( p \right)X\left( p \right)}\\[5pt]{ \sum _{p = t - n + 1}^n X\left( p \right)\ddot X\left( p \right)} & { \sum _{p = t - n + 1}^n X\left( p \right)\ddot X\left( p \right)} & { \sum _{p = t - n + 1}^n {X^2}\left( p \right)}\end{array}} \right]$ and $W\left( t \right) = \left[ {\begin{array}{c}{ \sum _{p = t - n + 1}^n \ddot X\left( p \right){F_h}\left( p \right)}\\[5pt]{ \sum _{p = t - n + 1}^n \dot X\left( p \right){F_h}\left( p \right)}\\[5pt]{ \sum _{p = t - n + 1}^n X\left( p \right){F_h}\left( p \right)}\end{array}} \right]$ .
Notice that n is the number of samples and is set to 150 experimentally considering the control cycle. The elements of $V(t)$ and $W(t)$ can be estimated by the simulated annealing (SA) method as follows [Reference Song, Pan, Xu and Li27]:
where $p = 1,2,3$ and $q = 1,2,3$ .
where $p = 1,2,3$ .
The resulting matrix can be approximated to a diagonal matrix to observe the changes in the human arm’s impedance.
4.2. Impedance control of joystick
The estimated human arm’s impedance has been matched to that of the joystick during the control of the joystick. This joystick used in this research is a parallel structure consisting of three serial manipulators, as shown in Fig. 4.
Each serial manipulator consists of two active joints and one passive joint; the gray joints are the active joints and the white joint is the passive joint. Three serial manipulators with 3-DOF are connected to the upper plate by passive spherical joints, and the motions of the serial manipulators generate the motion of the upper plate relative to the lower plate.
Figure 5 shows related angles in kinematic analysis of one of the serial manipulators. Because the joystick consists of three serial manipulators in parallel, the position of each joint point on the upper plate is identical to the position of the end effector of each serial manipulator. Therefore, if the positions of the end effectors of the three series manipulators are obtained, the coordinates of the central position can be obtained by finding the average of the coordinates of the three points. Thereafter, the position and direction of movement of the upper plate can be derived.
Table I shows the link parameter table for the serial manipulator in Fig. 5. The $a$ value of the DH parameter is length of the common normal, $d$ is offset along previous $z$ to the common normal, $\alpha $ is angle about common normal, from ${z_{i - 1}}$ c to ${z_i}$ and $\theta $ is angle about previous $z$ , from ${x_{i - 1}}$ to ${x_i}$ . The position kinematic equations for the manipulator can be obtained as follows:
The position of the haptic joystick’s end effector is considered to be the center of the upper plate and is marked as X. The prediction of the target position is based on the force in the x-y-z directions sensed by the F/T sensor and the previously estimated human arm’s impedance coefficients. The differential equation is solved and the required position increments in the x-y-z directions are obtained. This joystick can be controlled by dynamic modeling as follows:
With the definition of $\Delta X = {X_c} - {X_d}$ , which represents the position increment caused by human’s motion intention, Eq. (25) can be represented as
The analytical solution of differential Eq. (26) can be obtained ignoring the initial conditions as follows:
where ${\lambda _1}$ and ${\lambda _2}$ are the general solutions of the following characteristic equation:
To manipulate this joystick to follow the human hand compliantly, a PD control with the gravity compensation algorithm has been adopted to drive all the motor parameters in the joystick. The designed controller can be represented as
where ${K_P}$ and ${K_D}$ are the controller gains, $\Delta X$ is the position increment, and $G(\theta )$ is the gravity compensation force.
To obtain the gravity term, it is crucial to determine the mapping relationship between the gravity force and joint configuration. Considering that all joints of the joystick are revolute joints, if link $p$ ’s center of mass is located at a point in link $p$ , gravity $G(\theta )$ can be expressed as
where $g(\theta )$ is the gravity acceleration on each link, which can be expressed as follows:
Each element in matrix $g(\theta )$ can be calculated by
where $g = {[0,0,9.8]^T}m/{s^2},$ $R_0^p$ is the rotation matrix of coordinate system $p$ with respect to coordinate system $0$ , ${u_p}$ is the coordinate system $p$ ’s directional unit vector that points to link $p$ ’s mass center.
In Eq. (30), $A$ , a constant matrix, which is represented as follows:
where $l_p^c$ is the distance between coordinate system $p$ ’s origin and link $p$ ’s mass center, ${m_i}$ is the mass of link i, and ${l_p}$ is the distance between coordinate system $p$ ’s origin and coordinate system $p + 1$ ’s origin.
5. Impedance matching and tracking experiments
5.1. Human arm’s impedance estimation experiment
The following experiment is conducted to obtain the coefficients of the human arm’s impedance modeling. A subject is a 25-year-old man with no disabilities. The subject sits on the chair and holds the handle and moves the joystick along the target trajectory with only gravity compensation. The target trajectory is a square with a side length of 0.3 m, centered on the initial position of the handle. The four vertices of the square are A, B, C, and D, respectively. The data collected are used to estimate the impedance of the human arm.
The data are sampled and stored for offline analysis. The data include the joystick joint angles and the forces in the x–y–z directions. The position of the joystick’s end effector is calculated by considering the joint angles in the kinematic equation of the joystick. Details regarding the kinematics of the joystick are described in Section 5. The impedance coefficients obtained by the least squares method are shown in Fig. 6.
These figures show that the impedance of the human arm changes with the movement of the arm. Therefore, it is necessary to perform a real time impedance control to accurately match the desired impedance to the human arm’s impedance during the joystick control.
5.2. Human motion prediction and reaction experiment
The estimated human arm’s impedance coefficient is applied to the joystick impedance control to confirm the efficiency. The operator holds the handle and moves the joystick along the target trajectory. During this process, the force applied by the operator to the joystick is included in the impedance modeling to determine the target position, which is the target position at which the human brain sends a motion command to the arm through the nerve. The target position is a motion vector indicating the position increments in the x, y, and z directions. The designed PD controller with gravity compensation drives the motor settings in the joystick to allow the end effector to follow the guidance or traction of the operator’s hand. The F/T sensor disposed at the end effector of the joystick senses the interaction force between the operator’s hand and the joystick. The position of the joystick’s end effector is transmitted to the mobile robot through the communication module to control the movement of the mobile robot. The position of the joystick’s end effector has been calculated using the encoder recording angle and the link length, which has been used to calculate the trajectory tracking error against the reference trajectory.
Figure 7 shows the interaction forces between the operator’s hand and the joystick before and after applying the impedance matching algorithm. It can be observed that the average values of the interaction force in the x, y, z directions become very small after applying the impedance matching algorithm. The specific values are shown as follows:
Table II shows the average interaction forces in x, y, z directions after applying the impedance matching algorithm, respectively. Notice that the interaction force becomes almost 7 times smaller by applying the impedance matching algorithm. The maximum forces in x, y, z directions after applying the impedance matching algorithm become 4 to 5 times smaller than before.
Figure 8 shows the desired trajectory calculated from the estimated human arm’s impedance modeling and the actual trajectory in the impedance matching algorithm. It can be quantified that the average values of the trajectory tracking error are shown in Table III. In the experiment, there are three paths: square reference path (represented by A, B, C and D points), desired trajectory calculated by impedance model and force and real trajectory actuated by motors in the joystick. Through Figure 8 and Table III, the error values between the desired trajectory and the reference path occurred as much as 0.015 m, 0.012 m, and 0.011 m.
By the impedance matching control, the interaction force between the human and the joystick becomes 5 times smaller with the tracking error of 0.02 m compared to the PD control without impedance matching. This proves the effectiveness of the human arm’s impedance matching algorithm proposed in this research.
6. Conclusion
An impedance matching control strategy has been proposed and implemented to help operators in manipulating joysticks efficiently and effortlessly for long-term teleoperation. An impedance modeling of the human arm was obtained by estimating its impedance coefficients. The human arm’s impedance modeling has been utilized under the control of the joystick to generate a force that conforms to the human’s motion intention which completes the task. By this process, the impedances of the joystick and human arm are matched to each other. The effectiveness of the proposed algorithm has been demonstrated by the teleoperated trajectory following the operation of a mobile robot. By the impedance matching control, the interaction force between the human and the joystick becomes 5 times smaller with the tracking error of 0.02 m compared to the PD control without impedance matching. As future research, a machine learning algorithm can be adopted for identifying the human arm impedance coefficients, which improves the efficiency of the proposed control further.
Acknowledgments
This work has supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (No. 2021R1C1C1009989). This work was supported by BK21PLUS, Creative Human Resource Education and Research Programs for ICT Convergence in the 4th industrial Revolution. This research was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (No. 2020R1A6A3A13072460).