1. Introduction
Since the 1970s, robots have been utilized in most common industrial applications such as pick-and-place tasks, packing, handling, palletizing, welding, assembling, and product inspection. The preference for robots over human workers is due to the robot’s high productivity, precision, endurance, and strength [Reference Sherwani, Asad and Ibrahim1], and also the use of robots has significant effects on the reduction of work-related injuries [Reference Gihleb2]. Despite these, the traditional industrial robots with a lack of adaptation and flexibility cannot meet the expectations of today’s industry such as dynamically changing products and complex manufacturing methods [Reference Perez, Rodríguez-Jiménez and Rodríguez3]. Thus, it has become a necessity for humans to take part in the production process with robots cooperatively. Working with robots and sharing the workspace may pose hazardous conditions to humans. To reduce the risk of human safety, applying at least one of the following operation modes is obligatory in collaborative human–robot operations according to international standards [4, 5].
Safety-rated Monitored Stop (SMS) is used to prevent human operator (HO) and collaborative robot (cobot) from working at the same time while sharing the same workspace. When the sensing systems detect the HO enter the workspace, the movement of the cobot is halted. The cobot maintains to complete the desired tasks after the HO leaves the workspace. The detection methods are generally studied in the literature [Reference Lešo, Žilková and Vacek6, Reference Vogel, Walter and Elkmann7, Reference Vogel, Walter and Elkmann8].
In Speed and Separation Monitoring (SSM), the sensing systems continuously monitor the position of the HO in the shared workspace. The motion of the cobot is modified according to the distance between the HO and the cobot. Similar to the SMS operational mode, the cobot is stopped when HO exceeds the predefined minimum protective distance. The detailed information about designing the minimum protective distance can be found in Ref. [Reference Marvel and Norcross9]. Dongqing et al. proposed a robot motion algorithm that decreases the speed of the cobot inversely proportional to the distance between the HO and the cobot [Reference Shi, Collins, Goldiez, Donate, Liu and Dunlap10]. In Ref. [Reference Kanazawa, Kinugawa and Kosuge11], an adaptive motion planning algorithm based on the estimation of the regular and irregular behavior of HO was designed to avoid interaction. Also, obstacle avoidance algorithms were used for SSM collaborative operation in Refs. [Reference Himmelsbach, Wendt and Lai12, Reference Andres, Hernandes and Baldelomar13].
Power and Force Limitation (PFL) approach limits the applied force/power by the cobot to not to harm the HO when accidental or undesired interaction appeared. The limit values of forces, which can be applied to body parts without causing any injuries, were defined in Ref. [14]. The exerted force of the cobot depends on the mechanical properties, actuation system as well as the motion of the robot. In Ref. [Reference Lämmle15], a novel mechanical coupling system with magnetorheological fluid was designed to decouple the masses of cobot and operational tools. In this way, the energy transfer was decreased when the collision occurs in human–robot collaboration. Kokkalis et al. proposed an approach to limit the force for industrial robots which do not have external sensors [Reference Kokkalis, Michalos, Aivaliotis and Makris16]. In Ref. [Reference Maaroof and Dede17], the cobot posture was changed to minimize exerted force applied to the HO during the interaction by using the kinematic redundancy of the robot.
Cobot with hand guiding (HG) operational mode cease the motion when the HO is detected in the shared workspace. Then, the approach allows the HO to control the cobot with an input device, generally located on the end effector of the cobot. In Ref. [18], the usage of HG in the industrial applications is mentioned, that is, using cobot as a manual lift assistance device for loading/unloading products, moving the collaborative welding robot easily for inspecting welds or correcting the position, moving the cobot during manually changing parts or tray, and teaching the position trajectory to cobot without requiring learning advanced programming. In the literature, the most common approach for HG is integrating force/torque sensor and designing a controller such as impedance/admittance controllers to regulate the interaction forces between the cobot and the HO [Reference Hogan19–Reference Tee, Yan and Li23]. Admittance and impedance controllers can be considered as duals of each other. Admittance controller receives input in terms of force/torque information and outputs motion demand, which is the opposite way in an impedance controller. Both controllers aim to establish a relation between motion and forces/torques by using virtual dynamic models. The determination of the model parameters identifies the behavior of the human–robot collaboration.
This paper discusses the determination of the virtual model parameters of an admittance controller for industrial human–robot collaboration in terms of positioning accuracy and the efforts of the HO. For this study, a large-scale 4-degree-of-freedom (DoF) manipulator with PRRR serial kinematic structure, named Shoulder HAptic Device (SHAD), is used as the cobot. The task assigned for this robot is, after adjusting its height, to control the end effector’s position in two-dimensional (2D) space, and hence, this manipulator becomes a redundant one with respect to its assigned task. As generally preferred in the literature for cobot with HG operational mode, a force/torque sensor is integrated at the end effector of the SHAD and the safe interaction forces exerted from the end effector of the SHAD are guaranteed by choosing the parameters of the controller properly. However, the relatively larger inertia of the links of this large-scale cobot poses a danger to the HO who shares the workspace with the cobot. To overcome this issue, the operational modes such as SSM and PFL in addition to HG can be applied to the cobot. For instance, flexible robot skins, consisting of soft material and a large number of proximity or force sensors, can be used to detect interaction, measure force/torque, and compensate impact forces on the links of the cobot [Reference Hughes, Lammie and Correll24–Reference Tsuji and Kohama27]. This solution relies on adding extra sensors to the robot and thus results in an increased cost of the robot. In Ref. [Reference Maaroof and Dede17], the exerted force capacity of the robot is limited by using kinematic redundancy of robot without adding an extra sensor; however, this method can be inappropriate for industrial applications where large-scale cobots are used for manipulating heavy loads. In this paper, we propose a novel approach as applying an obstacle avoidance algorithm in the null space of this redundant cobot in addition to the admittance controller to prevent unexpected collisions with the HO.
This paper is organized as follows: next chapter presents the system and its model, controller design is described in the following section, finally, the simulation and experimental results are presented, and the conclusions are driven to complete this paper.
2. Kinematic and dynamic model of SHAD
2.1. Kinematic model
SHAD is a serial robot arm with one prismatic and three revolute joints as shown in Fig. 1. The revolute joints are responsible for positioning the end effector of the robot in x–y plane, and hence, the robot arm’s kinematic architecture becomes redundant for this task. The motion in the z-direction is provided by the prismatic joint. The axes of the joints are chosen in the z-direction. In Fig. 1, the kinematic parameters such as the translational position of prismatic joint ${s_1}$ , the angular position of revolute joints ${\theta _{i:2,3,4}}$ , the distance between the joint axis and center of mass ${l_{i:2,3,4}}$ , mass ${m_{i:2,3,4}},$ and effective link length ${a_{i:2,3,4}}$ of the links are presented.
In velocity level, inverse kinematic equations are applied to calculate the joint velocities ${\dot s_1},{\dot \theta _2},{\dot \theta _3},$ and ${\dot \theta _4}$ from the task space velocities $\dot x,\dot y$ , and $\dot z$ by using the Jacobian matrix $\hat{\kern-1.7ptJ}$ . Since there are four joint variables and three task space parameters ( $x$ , $y$ , and $z$ ), the Jacobian matrix is not square. By using the pseudo-inverse method, the solutions which meet the minimum norm criteria can be found. The pseudo-inverse of the Jacobian matrix is calculated as shown below:
It is emphasized that the calculated joint velocities are not unique solutions, and the optimization of them for obstacle avoidance will be discussed in the next section. Since the position and velocity level equations for this manipulator are trivial, they are not presented in this paper. However, the detailed calculations of direct and inverse kinematic equations in position level and the Jacobian matrix of the robot can be found in Ref. [Reference Kanik28].
2.2. Dynamic model
The generalized coordinate of robot is chosen as the joint variables $\overline{q} = {[{s_1},{\theta _2},{\theta _3},{\theta _4}]^T}$ in joint space and the task space parameters are defined as $\overline{X} = {[x,y,z]^T}$ in task space. The representation of the manipulator’s dynamics in joint space by neglecting joint friction and elasticity of the links is indicated in (2):
where $\widehat{M} (\overline{q}) \in {\Re ^{4 \times 4}},\hat C(\overline{q},\dot{\overline{q}}) \in {\Re ^4}$ and $\bar G\left( {\overline{q}} \right) \in {\Re ^4}$ refer to generalized inertia matrix, Coriolis and centrifugal matrix, and gravitational torque/force vector, respectively. And $\bar T \in {\Re ^4}$ and ${\bar{\kern-1ptF}_e} \in {\Re ^3}$ describe the torque and external force vectors, respectively.
The properties of the actuation system are presented in Table I where P1 denotes the prismatic joint, R1, R2, and R3 represent first, second, and third revolute joints, respectively. To provide translational motion, the actuation system of P1 is coupled to a ball screw which has 10 $\frac{{mm}}{{rev}}$ pitch.
Since the axes of all joints are parallel to the gravitational acceleration vector, and thus it is expected that the computed force on prismatic joint is only due to gravitational effects. In the SHAD system, a counter mass is added for compensating the gravitational forces and by that way, $\bar G\left( {\overline{q}} \right)$ is equal to a zero-column matrix. The actuation systems of SHAD, presented in Table II, are composed of high-speed reduction ratio transmissions. Consequently, the nonlinearities in $\widehat{M}\left({\overline{q}} \right)$ and $\hat C(\overline{q},\dot{\overline{q}})$ , also external and friction forces/torques, have relatively low effects on SHAD’s dynamics when compared with the internal properties of the actuators. Due to this, independent joint control is implemented for the control of this robot arm.
3. Controller design
Two types of control algorithms are implemented and tested on the SHAD robot simultaneously, namely obstacle avoidance algorithm and an admittance controller. The human–robot interaction dynamics at the handle is regulated by an admittance controller. The admittance term of this controller is used as the mean of regulation of the performance. The safety of the HO working inside the workspace of the SHAD robot is handled by the obstacle avoidance algorithm. During the operation, SHAD robot’s links are moved away from the HO by treating the predetermined location of the HO as an obstacle.
In this section, before introducing the above-mentioned algorithms and their implementation on the SHAD robot hardware, firstly the data flow between the hardware of the SHAD robot is explained and secondly the low-level position controller implemented on this hardware is introduced.
3.1. Data flow between hardware components of SHAD
To provide safe collaborative tasks for the HO, the external force/torque information is processed and converted to position/velocity signal for driving the actuation systems of SHAD. This data flow between the components of SHAD is presented in Fig. 2.
SHAD interacts with the HO through an ATI Industrial Automation Nano 25 F/T sensor which is rigidly attached to the handle that is located at the end effector of the cobot. The ranges of the sensor are 3 $Nm$ for sensing the moments about all directions, 125 $N$ in $x$ and $y$ directions, and 500 $N$ in $z$ direction. In the control algorithm of SHAD, only force data is utilized and this information is read by a Quanser Q8 data acquisition card (DAQ). The main reason for using only the force data is that SHAD robot is aimed for positioning the end effector. In this way, SHAD robot becomes a redundant robot for the task, and the obstacle avoidance algorithm can be implemented. A data acquisition card, Q8 by Quanser, is used for transmitting velocity commands from a personal computer (PC) to the servo motor drivers (SD) and the measured position data received via the encoders from the SD to the PC. The SDs allow driving the actuation systems in torque and speed operation modes. The preliminary experimental studies in Ref. [Reference Kanik28] where speed and torque operation modes are applied on the SHAD system show that torque mode of the SDs results in non-repeatable and nonlinear behavior observed between the input and the resultant motion of the SHAD system. In contrast, fast response, repeatability, and linearity are observed when SDs are run with the speed operation mode. The speed operation mode has a built-in controller to regulate the speed of the servo motor with respect to the speed input. Consequently, the speed operation mode is selected as the operation mode of the SDs. The speed command for SDs is generated by using the control algorithm which runs with a sampling rate of 1 kHz.
3.2. Independent joint controller design
Since the inertial properties of the actuation system have relatively higher effects on the dynamics of SHAD when compared with inertias of links, external forces, and frictions, as mentioned in Section 2.2, an independent joint controller is designed by considering only the actuation dynamics. In the speed operation mode of SDs, an embedded PI controller is activated to regulate the speed of actuators according to the received speed commands ${\bar w_{CMD}}$ . The position tracking error $\bar e \in {\Re ^3}$ is defined as:
where ${\bar X_d} \in {\Re ^3}$ denotes the desired tasks space position of robot and ${\bar w_{CMD}} \in {\Re ^3}$ is designed as follows:
where ${\bar{\kern-1ptV}_d} \in {\Re ^3}$ is defined as the desired task space velocity of the robot and ${\widehat{\kern-1ptK}_p} \in {\Re ^{3{\rm{x}}3}}$ refers to a diagonal positive definite controller coefficient matrix. The stability of the tracking error defined in (3) is investigated under the design of (4) in the Appendix. By multiplying the task space position controller with $\,{\hat{\kern-1.5ptJ}{{}^{\ast}}}$ , speed commands for joints are obtained.
In the experimental studies, it was observed that the noise on the speed command results in an undesired motion of the SHAD robot. This noise is due to the relatively long range (about 1.5 m) transmission of the analog speed command signal and the AC power input inside the controller cabinet where the servomotor drivers are situated. To fix this problem, a P controller is designed for compensating the negative effects of the speed command noise. The designed controller scheme for the SHAD robot is shown in Fig. 3 where the “Velocity Command Calculation” block includes the equation in (4). $\bar \theta $ and ${\bar \theta _i}$ refer to measured and initial joint positions, respectively.
3.3. Obstacle avoidance algorithm design
By implementing the described controller in Section 3.2, the end effector of SHAD tracks the defined position trajectory. In this section, this controller will be extended to avoid the obstacles at known locations (specifically the HO inside the workspace). To realize this, a null-space-based [Reference Tatlicioglu, McIntyre, Dawson and Walker29] obstacle avoidance algorithm is implemented. As mentioned in Section 2.1, a kinematically redundant robot can perform a desired end effector motion with infinitely many possible configurations. This algorithm uses the null-space approach to change the configuration of the robot to move the robot’s links away from the obstacle. From (1), the useful properties are obtained as:
where $\hat 0 \in {\Re ^{3{\rm{x}}3}}$ and $\hat{\kern-1.5ptI} \in {\Re ^{3 \times 3}}$ refer to a matrix whose elements are equal to zero and an identity matrix, respectively. The controller in (4) is extended as:
where the auxiliary controller $\;\bar{\kern-1ptf}$ is designed as:
Therefore, when implementing the obstacle avoidance algorithm, the “Velocity Command Calculation” block in Fig. 3 is reformulated with respect to (6a). From (6a) and (6b), it is inferred that the subtask vector $\bar g$ , which is a function of a scalar subtask function ${y_a}$ , does not have an effect on the motion of cobot in its task space. The formulation of $\bar g$ and ${y_a}$ were proposed in Ref. [Reference Tatlicioglu, McIntyre, Dawson and Walker29]:
where $\,{\bar{\kern-1.5ptJ}_s} = \dfrac{{\delta {y_a}}}{{\delta \overline{q}}}$ and
Extended controller aims to optimize the joint configurations for decreasing ${y_a}$ and consequently increasing ${D_i}$ , which is the smallest distance between the defined obstacle and ${i^{th}}$ link of SHAD where $i = 1,2,3$ refers to first, second, and third link of SHAD. The stability of the subtask function is investigated via Lyapunov-based tools as presented in the Appendix.
The calculation of ${D_i}$ is presented in (8) where the radius of obstacle, the thickness of links, the coordinate of the center of obstacle, and the coordinate of the center of links in plane are defined as ${R_{obs}}$ , ${R_A}$ , ( ${x_{obs}}$ , ${y_{obs}}$ ) and ( ${x_i}$ , ${y_i}$ ), respectively. In (7b), the weight coefficient ${U_i}$ is used to select which links have a priority to stay the furthest from the obstacle. A positive scalar coefficient $\gamma $ determines the reduction rate of the exponent function and it multiplies with the sum of the elements of $D$ :
3.4. Admittance controller design
The motion controller in (6a) enforces the SHAD to track the reference trajectory by rejecting the external forces. In collaborative operations, this is an undesirable situation that may result in hazardous conditions for the HO. To avoid such situations, it is required to modify the motion trajectory of the cobot according to the interaction forces. In this way, the cobot shows compliance to its environment. In contrast to the motion controller, admittance controller ensures to reach a force set point by regulating the reaction of the cobot to an external interaction force by using an admittance term $A$ which is defined as:
where ${\rm{\Delta }}F = {F_D} - {F_S}$ and ${F_S}$ stands for measured interaction force from F/T sensor.
The first-order delay transfer function based on a mass damper system is preferred as an admittance term for the SHAD robot. The reason to exclude a possible spring term in the transfer function is that the spring term continuously tries to move the end effector to the initial position, which is not a desired effect for this operation. Consequently, the interaction between the cobot and the HO mimics the behavior of a mass damper system. In the Laplace domain, the admittance term is designed as:
where $M$ and $B$ refer to mass and damper, respectively.
The implementation of admittance controller scheme is shown in Fig. 4 where ${\bar{\kern-1ptF}_D} = {\left[ {\begin{array}{*{20}{l}}{{F_{Dx}}}\;\;\;\;{{F_{Dy}}}\;\;\;\;{{F_{Dz}}}\end{array}} \right]^T}$ and ${\bar{\kern-1ptF}_S} = {\left[ {\begin{array}{*{20}{l}}{{F_{Sx}}}\;\;\;\;{{F_{Sy}}}\;\;\;\;{{F_{Sz}}}\end{array}} \right]^T}$ are column vectors of force set points and measured forces along $x$ , $y$ , and $z$ directions, respectively. Therefore, the components of ${\bar V_d}$ is derived as in (11) for the calculation of ${\bar w_{CMD}}$ . ${\bar w_{CMD}}$ can be calculated by using (4) when obstacle avoidance algorithm is not required to be implemented or by using (6a) when obstacle avoidance algorithm is not required to be implemented. $\mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}}\over A} \in {\Re ^{3 \times 3}}$ stands for the diagonal admittance term matrix. The diagonal elements of the $\hat A$ are of the form ${A_i} = \dfrac{1}{{{M_i}s + {B_i}}}$ :
where $i = x,y,z$ .
The mass parameters in the admittance term regulate the acceleration/deceleration of the motion of SHAD and the damper terms establish the relation between velocity and external forces. Therefore, the motion of the cobot is less reactive when the mass parameters are chosen as relatively higher values and vice versa. In addition to that, the required interaction force to move the cobot is directly proportional to the magnitude of the admittance term.
4. Simulation and experimental results
The simulation tests are designed to show the effectiveness of the obstacle avoidance algorithm where the robot model is designed by using Multibody Library in Simulink/MATLAB in accordance with the kinematic parameters of SHAD. In Fig. 1, the kinematic diagram of SHAD is shown, and the kinematic parameters of SHAD are presented in Table II. The results of the simulation tests are also verified via experimental studies.
To evaluate the effect of the admittance term in the admittance control algorithm, an experimental test procedure is designed. By following the procedure, the experiments are accomplished with the participation of 10 test subjects.
4.1. Obstacle avoidance test and results
When the obstacle avoidance algorithms are implemented in the null space of the SHAD robot, it is expected that tracking the desired position trajectory in task space is not affected. To demonstrate this argument, tracking performances of the SHAD robot for the same task with and without obstacle avoidance algorithm are simulated. The reference trajectory in $x - y$ plane is shown in Fig. 5 and the motion of the SHAD robot in $z$ axis is kept constant during the simulations. The initial task space position of robot is selected as $x = 1300$ mm and 0 mm.
The obstacle is initially positioned at $x = 750$ ${\rm{mm}}$ and $y = 0\;{\rm{mm}}$ , and the diameter of the obstacle ${R_{obs}}$ is selected as $550$ ${\rm{mm}}$ . The area covered by the obstacle indicates the location of the HO who operates the SHAD robot. The width of the all links of SHAD are ${R_A} = 90\;{\rm{mm}}$ . The images of the simulation of SHAD with and without obstacle avoidance algorithm are presented in Fig. 6 where the images are captured at $0,2,4,6,8,10,12,{\rm{and}}14\;$ s.
As observed in Figs. 6 and 7, the robot collides with the obstacle when position controller without obstacle avoidance algorithm is implemented. For instance, ${D_2} = - 56.65\;{\rm{mm}}$ at $9.7$ ${\rm{s}},$ and this means that the second link of robot collides with the obstacle (i.e., the HO) and penetrates it by $56.65\;{\rm{mm}}$ . At $10.4\;s$ , the third link of the robot crashes and enters the obstacle by $106$ ${\rm{mm}}$ . In contrast, the ${D_i}$ gets positive values when the obstacle avoidance algorithm is implemented. It means that there is no collision between the links of the robot and the obstacle. As expected, the subtask function ${y_a}$ for for the case presented in Fig. 7b decreased exponentially. It should be noted that the boundaries of the obstacle in simulations are not modeled to apply any reaction force due to collisions.
During the tests without the obstacle avoidance algorithm, the nominal speed of the end effector is calculated to be around 18.7 mm/s and the maximum speed is calculated to be around 46.6 mm/s. During the tests with the obstacle avoidance algorithm, the nominal speed of the end effector is calculated to be around 20.4 mm/s and the maximum speed is calculated to be around 46.6 mm/s. The magnitudes of the end effector speed in both tests are at similar ranges and thus, the positioning errors obtained in both tests can be compared against each other. The maximum positioning errors in $x$ and $y$ directions are observed as ${1.95210^{ - 8}}$ ${\rm{mm}}$ and $1,{25610^{ - 8}}\;{\rm{mm}}$ when SHAD is controlled without obstacle avoidance algorithm and $4,{929610^{ - 9}}$ and $3,{739510^{ - 9}}$ when SHAD is controlled with obstacle avoidance algorithm. The results show that the obstacle avoidance algorithm implemented in null space does not have an adverse effect on the position tracking performance of the SHAD robot in task space.
To verify the obtained result of simulations, the independent joint controller with obstacle avoidance algorithm in (6a) is implemented on the SHAD robot by using the experimental setup described in Section 3.1. The virtual obstacle defined in the simulations is also used in the experimental study as a virtual obstacle. The reference trajectory presented in Fig. 5 is also used in this test. As can be observed in Fig. 8, the maximum position errors in $x$ and $y$ directions are obtained as $0.188$ ${\rm{mm}}$ and ${\rm{mm}}$ , respectively, at the initialization of the manipulator. However, after the initialization, this error is bounded between ±0.1 mm. Consequently, we can conclude that end effector trajectory tracking performance is not affected by the implementation of the obstacle avoidance algorithm during the experimental tests. The distance between the links and the obstacle is maintained to ensure ${D_i} \gt 0$ throughout the tests which means that the links of the SHAD do not collide with the obstacle. The task space errors are obtained by comparing the trajectory demand to the calculated task space position of the end effector. The task space position of the end effector is calculated by using the measured relative angular positions of the links in the forward kinematic model of the manipulator.
4.2. Admittance control test and results
The safe physical interaction with HO and a large-scale industrial cobot such as SHAD can be provided by implementing an admittance controller. Although safety is the prior condition in a collaborative work, the performance of the work done by the HO and the cobot together is another significant point. The desired performance can be obtained by regulating the modeled interaction between the HO and the cobot, which is in this case the admittance terms in (10). In this study, the performance is evaluated in terms of accuracy and efforts of the HO. To observe the effect of the admittance terms on the performance, mass and damper parameters are changed as shown in Table III and each admittance term is experimented by the 10 test subjects (HOs). The values that appear in Table III are selected so that these terms are in the vicinity of the actual robot’s mass and tuned experimentally to obtain different performances.
In these studies, besides the admittance controller, the obstacle avoidance algorithm is implemented in the null space of the SHAD to avoid unexpected collisions between the HO and the links of SHAD. The force set point is selected as $0$ along all axes to obtain full backdrivability without any resistive force induced on the HO.
To provide a visual feedback to subjects in experimental studies, a graphical user interface (GUI) is designed as shown in Fig. 9a where locations of the handle of the robot and the targets are indicated with a dark green sphere and pink circles, respectively. The color of the targets is changed to green when the dark green circle enters inside of the pink circles. Also, the timer located on the top left of GUI starts to run and resets when the experiment is terminated. The task space coordinate is indicated on the bottom left of GUI. It should be noted that the distance between the centers of the target circles and the diameter of the circles are selected as $300{\rm{mm}}$ and $6$ ${\rm{mm}}$ respectively. The physical location of the HO with respect to the robot manipulator is shown in Fig. 9b.
The following test procedure is developed to carry out the experimental studies with the HO test subjects:
Position the HO test subject at the predetermined location inside the workspace;
Orient the HO test subject to face toward the $ + x$ direction of the SHAD’s fixed coordinate frame;
Instruct the HO to maintain the handle of SHAD (green circle) inside the target circle at the bottom of the GUI for $4{\rm{s}}$ to complete the first task;
Instruct the HO to move handle in $ + x$ direction to reach the target circle at the top part of the GUI within $6\;{\rm{s}}$ ;
Instruct the HO to maintain the handle of the SHAD inside target circle at the top part of the GUI for $4\;{\rm{s}}$ to complete the second task;
Instruct the HO to move handle in $ - x$ direction to reach target circle at the bottom part of the GUI within $6\;{\rm{s}}$ ;
Instruct the HO to maintain the handle position inside target circle at the bottom part of the GUI for $4\;{\rm{s}}$ to complete third task.
To investigate the accuracy of the movements of the HO, the mean square error (MSE) is calculated based on the difference distance between the center of target circles and green circle indicating the handle’s position in $x$ direction. After obtaining MSEs for each test condition, their average is used as a metric to indicate the accuracy of the HO test subject in each experiment. The accuracy is inversely proportional to the calculated MSEs. The sum of the applied forces by each HO test subject during experiment is used to formulate the HO effort metric.
The average results obtained from 10 HO test subjects for each experiment are presented in Fig. 10. For observing the effect of the mass on the performance, the results of experiment 1–4 are compared when the mass is increased while the damper is kept constant. The mass parameter is related to acceleration/deceleration in the admittance term; therefore, the relatively higher mass values can make it difficult for HO test subjects to control SHAD. The accuracy of the HO test subjects is decreased when the mass parameter is increased as can be observed in the results.
In the experiment result duos 1–5, 2–6, 3–7 and 4–8, the mass parameter is kept constant and the damper value is changed. The results indicate that the increase in the value of damper makes subjects perform the tasks more accurately. Also, when the corner frequency is the same with mass and damper values being different, the accuracy is almost the same as observed in experiment result duos 1–6 and 2–8. In addition to these, it was observed that the subject applies higher forces to complete the tasks when the parameters of the admittance term are increased.
5. Conclusions
This paper is concerned with the safety and performance of the collaboration operation between large-scale industrial cobots and HO where the interaction with the HO takes place through the end effector of the cobot. The interaction and sharing the same workspace with a large-scale industrial cobot can cause hazardous situations for the HOs. Accordingly, this paper proposed a novel approach for redundant large-scale cobots such as SHAD robot where an admittance controller was implemented to reach desired safe interaction between the end effector of SHAD and the HO, and the desired performance in collaborative operation. In addition to this, an obstacle avoidance algorithm was applied to the null space of the SHAD to prevent any possible collision that may occur between the links of the cobot and the HO whose location is known by optimizing the positions of the joints.
The simulation and experimental studies demonstrated that SHAD can track the position trajectory in task space with relatively small errors, while the links of SHAD avoid the HO successfully by using the obstacle avoidance algorithm. Then, the admittance controller experiments were initiated to investigate the effects of the admittance terms on the performance of the HO in terms of accuracy and applied total effort during performing the given tasks. This study consists of 8 experiments with the participation of 10 people, and the effect of mass term on performance was observed by keeping the damper term constant and changing the mass term. Also, the effect of the damper term on the performance was obtained by keeping the mass term constant while changing the damper term. The results of the study show that the accuracy of the HO is decreased due to the increase in the mass term when performing the given tasks, in contrast, the increase in the damper term improved accuracy. Also, it is observed that the total effort of the HO is increased with increasing damper or mass term. Moreover, it was observed that the accuracy was approximately the same when admittance terms were designed with the same corner frequency where the mass and damper were different for these admittance terms. The corner frequency determines the speed of operation. Accordingly, if faster operations are required with such systems, the selected corner frequency should be increased. The limitation of such an increase is the bandwidth of the total system including the robot manipulator’s servomotors, controller, and the force sensor. These results provide a guide for developing safe human–robot collaboration systems while regulating the performance of this collaboration.
The limitations of the existing large-scale robot manipulators for the implementation of the approach presented in this paper are (1) the robot manipulator should be a kinematically redundant manipulator for the defined task, (2) a force sensor has to be used or an observer should be designed to estimate the HO applied forces on the end effector, and (3) the location of the HO should be known or measured at all times (e.g., by means of camera systems).
Finally, this work has contributions to physical human–robot interaction system on different levels: (1) at the system level, the major contribution is the description of a methodology for configuring safer physical human–robot interaction through the integration of obstacle avoidance algorithm and a compliance controller to the same system simultaneously. (2) At the controller level, the obstacle avoidance algorithm presented in this paper is implemented and experimented on an actual robot for the first time. (3) At the controller parameter selection level, this paper discloses the admittance controller parameter effects on the performance of the physical human–robot interaction systems.
Appendix A
In this appendix, first, the stability of the tracking error defined in (3) is investigated under the design of (4). Taking the time derivative of (3) and then substituting (4) yields
and utilizing (5a) results in
Since ${\widehat K_p}$ is a diagonal, positive definite gain matrix from the structure of (13) exponential stability of the tracking error is ensured.
Next, the stability of the tracking error in (3) is investigated under the controller design of (6a) and the auxiliary controller in (6b). In a similar manner, taking the time derivative of (3) and then substituting (6a) and (6b) results in
In view of (5a) and (5b), the same expression in (13) is obtained from which exponential stability is guaranteed.
Finally, the stability of the subtask function ${y_a}$ is investigated. Taking the time derivative of ${y_a}$ and then substituting (6a), (6b) and (7a) yields
which after straightforward manipulations is rewritten as:
The stability of the subtask function ${y_a}$ is investigated via Lyapunov-based tools. A nonnegative scalar function, denoted with ${V_a}\!\left( {{y_a}} \right) \in R$ , is defined as:
Taking the time derivative of ${V_a}$ and then substituting the dynamics of ${y_a}$ in (16) yields
The tracking error being exponentially stable and the boundedness of the desired task space velocity can be used to obtain the below upper bound:
for some positive constant ${{{\unicode{x03BA}}}_1}$ and considering that $\;{\bar{\kern-1.5ptJ}_s}$ not being in the null space of $\left( {\hat{\kern-1.5ptI} - \;{{\hat{\kern-1.5ptJ}}{}^{\ast}}\,\hat{\kern-1.5ptJ}} \right)$ allows us to form the below lower bound:
for some positive constant ${{{\unicode{x03BA}}}_2}.$ Utilizing the bounds of (19) and (20) along with the right-hand side of (18) results in
The second term of the right-hand side of (21) can be upper bounded as:
for some positive constant ${{{\unicode{x03BA}}}_3}$ . In view of (22), the right-hand side of (21) is further upper bounded as:
and provided that ${k_g}$ is selected to satisfy ${k_g} \gt \dfrac{1}{{4{{{\unicode{x03BA}}}_2}{{{\unicode{x03BA}}}_3}}}$ then following expression is in order
for some positive constant ${{{\unicode{x03BA}}}_4}.$ Substituting the definition of ${V_a}$ to the right-hand side of (24) results in
which can be solved to obtain
and utilizing (17) yields
thus proving ultimate boundedness of ${y_a}\!\left( t \right)$ .