1. Introduction
Recently, appliance accuracy analysis and human–computer interaction have undergone rapid development in intelligent assembly machine factories, with typical examples including assembly, polishing, dual-arm coordination, or dexterous hand manipulations [
1,
2,
3]. In order to adapt to small-batch, customized, and short-cycle production, it is necessary for co-bots, a new type of industrial robot that can work with human beings in the same working environment, to develop a hierarchical control algorithm that enables safe and stable cooperative locomotion. With dynamic model and torque sensors, the robot is achieving the drag control by compensations of gravity and friction, which counteract external disturbances. However, it will inevitably lead to the complexity and uncertainty of environment [
4,
5]. Reaching the singular region makes it easy for a robot to cause various problems, such as instability, poor performance, and so on. Emphasis is placed on the co-bot singularity. Hence, the singularity avoidance is the basis to ensure co-bot stable operation in the man–machine cooperation.
The singular configuration is a phenomenon which hampers the motion of the robot end effector [
6,
7]. The freedom of the robot end will decrease in a singular configuration, so it cannot be controlled to move in directions. While the robot approaches the singular adjacent region, some joints calculated by the inverse kinematic tend to infinity, which will cause the decline of tracking expected trajectory [
8]. The singularity is the inherent characteristic of an articulated robot, which mainly appears in finding the inverse kinematics solution. The actual performance is that the calculated expected joint speed is much greater than the maximum joint speed which the actual motor can provide. Bohigas [
9] gave the general algorithm of robot singular configuration with different mechanical structures. Müller [
10] analyzed singular points by using Lie groups separated from the specific structure.
For more general singularity avoidance problems, Maciejewski [
11] proposed a damped least square method with a damping term near singular region to obtain approximate solution of joint velocity. The essence lies in limiting the joint velocity near the singularity by adding a damping coefficient. Serial robots conduct seam welding, sealant application, spray painting, polishing, deburring, or other tasks requiring uninterrupted continuous motion. Chiaverini [
12] introduced a continuous nonlinear function to characterize the damping factor, which is used to ensure the continuity of joint velocity near singular configuration. However, it will increase the tracking error of robot end in all directions. The damping factor is only added to the minimum singular value of a Jacobian matrix. In addition, Megalingam et al. [
13] proposed singular separation to determine the singular direction of Kinova robots, and then avoid joint movement to pass through singular points. References [
14,
15] also proposed similar analysis methods to analyze singular directions, while these methods are not universal. A large number of SVD decomposition operations are required in the above singular point avoidance methods. In order to reduce amount of computation, Xu et al. [
16] proposed the method of “singular separation + damping reciprocal” for PUMA robots. It was the first time to separate the singular problem into two parts of position and attitude. The redundant robots have infinite sets of inverse kinematics solutions, hence the optimal solution (i.e., the solution furthest away from the singular region) can be found by designing some optimization objective. Wang et al. [
17] summarized some methods of using redundancy to avoid the singular region with series robot. The ultimate goal is to find the solution of the singular configuration of the robot principle in countless redundant solutions. The optimization directions include the determinant and condition number of Jacobian matrixes. However, the calculation using Jacobian matrix is too complex, and an optimization is proposed in reference [
18,
19].
All the singularity avoidance methods above are at the cost of tracking accuracy. The parameters of most methods are closely related to experience, especially the determination of damping factor and singular region. In addition to singularity avoidance method satisfying trajectory tracking, Taki et al. [
20] proposed a method strictly tracking the desired path. Different from damping avoidance method, the avoidance algorithm proposed is to reduce running speed by reducing the expected speed when approaching the singular region, so as to avoid limiting the motion of the robot end effector caused by singular configuration. However, the strange avoidance method will only produce partial errors in tracking directions.
All these observations motivate the current study. In this paper, we concentrate on singular configuration analysis and singularity avoidance of co-bot, taking the JACO2 robot of Kinova Robotics company as an example [
4,
13]. It has seven DOF (degrees of freedom), with weight of 5.5 kg, a load of 1.5 kg, and a maximum arm span of 98.4 cm. Each joint motor is equipped with a torque sensor. The rotating potentiometer detects robot joint rotation, and the force sensor reflects ground reaction force information. The main contributions can be summarized as follows.
The D-H modeling method is utilized to build a joint coordinate system of the JACO2 robot. The inverse kinematics is solved by analytical method and numerical method, and the operation speed and accuracy of two schemes are compared.
The singularity caused by inverse kinematics is analyzed, and the robot singular configuration conditions are based on the block analysis of wrist Jacobian matrix, which are divided into three singular types: internal singularity, external singularity, and wrist singularity.
According to different task requirements, singularity avoidance schemes are utilized in robot redundancy, damped least squares, and singularity consistency. It is noted that these works focus on the working principle and control methods of robotic sensor system.
3. Theoretical Analysis
The main purpose of singularity avoidance is to keep the stable, continuous, and bounded running speed of each joint when the robot is in the singular region. The relationship between joint velocity and end velocity is described as
Since the Jacobian matrix of the JACO2 robot is a nonsquare matrix, (13) is turned into
where
represents the pseudo-inverse of the Jacobian matrix
,
is coefficient, and
is an arbitrary vector. In order to ensure that the joint velocity is bounded, it is necessary to change Jacobian matrix
or end running velocity
.
3.1. Avoidance Strategy with End Velocity Constant
To keep the end velocity constant, according to (15), only the Jacobian matrix
J needs to be changed. The cost function (10) is introduced to obtain the optimal solution. The function is designed:
where
respresents Jacobian matrix corresponding to each group of possible inverse kinematics solutions. Then,
will be maximized to avoid singularity. The cost function can be designed as
where
and
represent minimum and maximum singular value, respectively. The convergence direction can be controlled by selecting an appropriate vector
, which controls the gradient of cost function with respect to joint angle
. Hence, the equivalent effect of avoiding singularity with the analytical rule is
However, considering that all redundant solutions of the JACO2 robot make the manipulator elbow operate on a spatial circle, the above avoidance method can only have a good avoidance effect on the internal singularity and yet have nothing to do with external singularity and pose singularity.
- 2.
Other singular configurations
Other singular configurations cannot be simply avoided by redundant solutions. When the robot elbow is extended, which belongs to external singularity, the robot end is close to the workspace boundary. The robot cannot find the solution far away from the singularity (the fourth joint angle of all solutions approaches π). For six-DOF series industrial robots (most are PUMA type), the method of “singular separation + damping coefficient” adopted in literature [
16,
21] can obtain good results and analyze the corresponding errors, while it is not suitable for the JACO2 redundant robot, since singular separation effect cannot be realized directly. A damped least squares method is adopted for singular avoidance in this section, which combines the merit of Newton and steepest descent method. It not only ensures the convergence of iterative calculation, but also speeds up the convergence speed.
where
is the pseudo-inverse of damped Jacobian matrix,
Then, minimizing the cost function, and regularizing velocity term by coefficient,
Then, we regularize of velocity term by coefficient. The minimum singular value of the Jacobian matrix is used as the criterion to judge whether the robot enters the singular region. Equation (20) can be transformed into
3.2. Avoidance Strategy with End Velocity Changed
The external singularity and wrist singularity are mainly discussed here. The avoidance strategy of end speed change is to change the expected end speed in (15). A path parameter
p is introduced to describe the trajectory, and end operation trajectory can be expressed as
The tracking of desired trajectory is expressed by mathematical expression,
where
represents the forward kinematics solution process,
is the set of path parameters p and joint angles, i.e.,
. The tracking target will satisfy
where
is a unit vector, which satisfies
, and
direction,
S is the vector of the end running speed, and parameter
P is the end running speed. The general solution of (27) can be expressed as
where
b is constant,
,
where
. Equation (29) can be expanded to
As long as the trajectory parameters are designed to satisfy (32) and give the joint speed of formula (31), the robot end trajectory can be always followed. It can be found that when the robot approaches the singular configuration, the determinant of the Jacobian matrix approaches 0, and the given constant and joint velocity both tend to infinity. Therefore, the singular phenomenon can be avoided. The constant
b is determined by
Reprogramming end velocity based on (32),
In that the JACO2 robot has redundant joints, (31) is deformed as
where
and
are all constants,
is the Jacobian matrix removing cofactor of column 3,
,
. However, when internal singularity occurs, the symbol of
and
will change, making the expected trajectory reverse, which is equivalent to an obstacle.
where
is the Jacobian matrix removing the cofactor of column
, the
item of
is always 0, then remove
item, there is
. The
item of
is 1, and other items are 0.
Let , then , then the symbol will not change.
5. Results Discussion
From the simulation results in
Section 4.1, it is noted that both accuracies can meet the requirement of inverse kinematics. The average calculation time of using the numerical method to calculate the inverse kinematics solution is 0.0021 s, and using the analytical method is 0.0014 s. The calculation time of two methods is in the same order of magnitude. However, when the robot is in the singular configuration, the numerical method takes three times more time than the numerical method due to more iterations needed.
Figure 7,
Figure 8 and
Figure 9 show variation curves of joint position, velocity, and tracking error with time under no avoiding measures. It is obvious that the robot enters the singular region in about 4.65 s. At this time, the angle value of joint 4 is close to
and meets the condition of external singularity. Due to the ill condition of the Jacobian matrix, the obtained joint angle has a sudden change, and the joint speed is particularly huge, which is impossible for the motor to realize in practice. Meanwhile, the robot tracking error end pose becomes larger after entering the singular region, since the upper motor speed cannot be tracked in practical operation.
From
Figure 10,
Figure 11 and
Figure 12, it can be seen that with damping Jacobian matrix (21), the joint angle changes smoothly, and the whole joint speed can be below 1.5 rad/s. After entering the singular region at about 4.65 s, the pose tracking error will also increase to a certain extent. However, the avoidance method has a certain effect on limiting joint speeds, it is too sensitive to the selection of parameters. Hence, it is necessary to design and select appropriate control parameters for different task requirements.
Figure 13,
Figure 14,
Figure 15,
Figure 16 and
Figure 17 show variation curves of joint position, velocity, end position, and tracking error with singular consistency to avoid singularity. It can be seen that the robot enters the singular region at about 4.1 s. By changing constant value
, which makes the following det
Ji smaller, the desired robot end speed d
p are forced to change (
Figure 15), to limit the speed of each joint (
Figure 14). Compared with the singularity avoidance methods in
Section 3.1, the joint operation is more stable, and the operation speed of each joint can also transit smoothly when entering into singularity region. Moreover, it will not cause an error deviating from desired trajectory. Therefore, when the robot end velocity is constant, the damping least square avoidance method is selected, while the singular consistency avoidance method is more appropriate when the end velocity changes.
6. Conclusions
The emergence of co-bots is an important supplement to traditional industrial robots, especially for new potential users such as small and medium-sized enterprises and increasingly complex control tasks in 3C electronic products, which determines that co-bots should have characteristics of safe use, simple operation, and convenient deployment. Taking the JACO2 robot as a carrier, this paper provides research on singularity analysis and avoidance strategies to realize safe control and smooth operation of a co-bot in the increasingly complex working environment and man–machine intelligent interactive control. The research results are summarized as follows.
The instability and potential safety hazards of the robot in the singular region are analyzed in detail. The conditions for singularity of the robot are deduced by means of Jacobian matrix separation. Then, the singular configuration conditions are analyzed in detail by means of block analysis of robot wrist Jacobian matrix, which can be divided into three singular types: internal singularity, external singularity, and wrist singularity. For different types of singularity, three singularity avoidance schemes are realized based on robot redundancy and different control tasks. This will ensure safe and stable operation of the co-bot in the whole workspace, and it eliminates safety problems in the man–machine cooperation.
In the future work, it is necessary to study some security issues through other sensors to ensure safety from the perspective of smooth operation, for example, replanning tasks to avoid collision, and adjusting the robot running state according to the working state of the operator. In addition, compliance control can also be studied to improve the robot adaptability with complex industrial tasks.