Each excavator must recognize the others as obstacles for collision avoidance during cooperation to ensure safety in a broad workspace. As this method is dedicated to just multiple excavators, this section will details how one excavator can be expressed as an obstacle numerically with respect to another excavator’s side. A varied C-space including joint space was selected for obstacle generation with consideration for robotic application. A numerical computation based on a geometric approach with kinematics will be used throughout the overall phase of derivation.
The proposed method will be explained based on the conditions and assumptions as follows.
3.1. Obstacle Generation for Driving Guidance
Two excavators are on the ground arbitrarily in
Figure 1. When one excavator is working far away from the other one, trivially, they do not have to consider the posture of other. If not, the operator should control the excavator for collision avoidance by considering the posture of the other excavator.
When driving, one excavator ”B” must know the exact position area of the other excavator “A”, which could be involved in a collision situation. Therefore, the
is selected for expressing the generated obstacle in the
. The
means the C-space. The Universal Transverse Mercator (UTM) coordinate system is especially used to reflect construction environments and to watch the status of the excavators from a birds-eye view. The
is given as follows,
where the × means Cartesian product.
The obstacle image in is for driving guidance, which means the position set where the other excavator is going to cause a collision if the center of it is located without manipulation of the boom, stick, and bucket.
Eight parameters are needed for generating the obstacle. They are as follows.
Position of the center of the cabin.
The length from the center of the cabin to the end-point of the excavator when all the links are orthogonally projected onto .
The artificial range covering around the link for the safety factor.
The yaw angle of the links with respect to reference frame of UTM coordinate system, including cabin (body).
Figure 2 shows the link and joint parameters and coordinate system. In case of calculating the length from the center of the cabin to the end-point of the excavator, the roll and yaw angles of the body are excluded as they do not affect the orthogonally-projected length.
The first thing to be progressed is to begin the forward kinematics of Excavator A. The results are as follows,
where the
=
+
+
+
and
=cos(
),
=sin(
),
=cos() + cos( + ) + cos( + + ) + cos( + + + )
=sin() + sin( + ) + sin( + + ) + sin( + + + )
The length from the center of the cabin to the end-point of excavator A, which is orthogonally projected onto
, can be derived by the following,
where
is related with Excavator A and
,
,
, and
can be shown in
Figure 2.
Second, another parameter about the yaw angle of the links including the cabin must be defined so that all the ranges can be constructed. Equation (
4) regards the defined parameter as follows (this is also described in
Figure 1),
For example, if m is 10, then
,
and
. Equation (
3) needs to be defined again as does Equation (
4) for the obstacle generation. This is done in the following equation (it is also described in
Figure 1).
For example, if n is 10, then
,
, and
. The letter “A” in Equations (2–5) refer to Excavator A.
The next step is available on the assumption that all parameters to be used for generating Excavator A as an obstacle into
are given, which are from Equations (2)–(5). Excavator A is stationary. The mathematical set of the position of n-points on the link at a specific yaw angle can be expressed as
, Equation (
6).
where k ∈ m is a specific value of the yaw angle, and (
,
)
is the position of the center of the cabin, shown in
Figure 1.
To generate the Excavator A as an obstacle with respect to Excavator B for better collision avoidance, an additional parameter “
” was considered. The scalar “
” is related to a length parameter that could come from the width of the bucket or cabin. Thus, in order to convert “
” to vector for involving it into Cartesian space,
is redefined as translated points which are the result of shifting the points,
.
Figure 3 is made for a clear understanding. “
” is only related to width.
By applying the rotation matrix,
can be derived as follows,
where
is the rotation matrix, and + denotes when the translated point is on the left side of the link. The sign - denotes when the translated point is the right side.
Therefore, the end-point of another Excavator B should not be close to the point () to avoid collision with A.
Equations (1)–(6) can be also applied to Excavator B, which is recognizing Excavator A as an obstacle. The contact point between end-point of excavator B and the point (
,
) of Excavator A can be derived by Equation (
9).
To get a clearer idea of the concepts,
Figure 4 portrays this visually.
The point (
,
) computed from Equation (
9) is a position where a collision would occur between B and A at a specific posture, where the center of the cabin of Excavator B is located. By considering all the available postures of B which could be taken, the
is defined as Equation (
10).
means the generated obstacle in C-space.
Therefore, the collision free zone in C-space becomes Equation (
11).
3.2. Obstacle Generation for Guidance in the Manipulation of the Excavator’s Arm
In this section, another method to generate the obstacle for collision avoidance during the operation of the boom, stick, bucket, and swing during not driving will be explained.
In general, the operator directly controls the four hydraulic actuators of the excavator by manipulating the two joysticks with a two-hand grip. Therefore, it will be better for the operator to manage the excavator safely if the
was closer to the joint space. In contrast with
Section 3.1, another
described in
Section 3.2 means that the range of each joint angle that the excavator must avoid includes the boom, stick, bucket, and swing joints.
First, the phase of deriving the range of swing angle to avoid is as follows.
Go back to Equation (
10) for the specific yaw angle of Excavator A.
and
= =
The
related with the swing of Excavator B is defined by
. Therefore, the set of swing angles of Excavator B causing a collision is Equation (
12).
Next, the set of orthogonally-projected lengths onto
of Excavator B causing the collision with Excavator A can be derived by substituting Equation (
12) into
or
. The result is expressed as
as follows.
At this point, the obstacle image drawn by Equations (12) and (13) can be an index that the operator can use for reference. For instance, if the operator controls the joint of Excavator B for satisfying
, it is available for collision avoidance. In this case, when just two sets,
and
, are used, the
for generating the obstacle can be defined by Equation (
14).
Therefore, the first
related to the manipulation of the excavator’s arm is Equation (
15).
where
∈
In order to generate the obstacle with respect to the boom, stick, and bucket joint space for recognizing it in detail,
must be represented in the
. The
is defined as Equation (
16).
To generate the obstacle image in the , the inverse kinematics about must be derived. This is started from the specific coordinate value of the end-point of the excavator.
By applying Equation (
3),
becomes
. Generally, the operator is focusing on manipulating the boom, stick, and bucket links for excavation, not driving. Therefore, the slope of the body and the body link should be excluded in the inverse kinematics. As these parameters affect the
, the modified total length orthogonally projected onto
is defined as Equation (
17).
Next, for applying the general given solution about the inverse kinematics of simple planar three-link manipulator,
has to be modified one more time [
40]. Equation (
18) is about the modified parameter.
where
=
On the assumption that the specific point (
,
) is given, the results of the inverse kinematics about Excavator B are in the following equations,
where
,
. The minus sign is on when
.
where
and
.
The orientation,
, is set to zero. The
and
are marked in the
Figure 4.
Last, Equations (19)–(21) must be applied to
. However, it is not easy to derive the inverse kinematics, as
is not the given coordinate value but set of the orthogonally-projected length. Therefore, if all possible coordinate points could be transformed into
by orthogonal projection, the all inverse kinematics about given
will be derived. The value of
is constrained by defining it as in Equation (
23).
Therefore, the set point to be substituted into Equations (19) and (20) can be defined as Equation (
23).
For a clearer understanding,
is also illustrated in the
Figure 5.
The sets with which Excavator B must avoid the joint angle that cause the collision with Excavator A are expressed in the following equations,
where
where
and
The sets consisting of
,
, and
can be generated on the
. The obstacle image generated onto the
about the joint space is defined as Equation (
27):
where
∈
If the swing,
, is included, the
∈
can be changed like Equation (
28).
The i in must be lower or equal than in .