The Discontinuous Loading AC consists of two interacting participants - a loading and a hauling machine. Goal of this Application Case is to position the hauling machine in a suitable way close to the loading machine to then load the hauling machine’s truck-bed with raw material. To support an autonomous, decentralized discontinuous loading process, the following Use Cases describe the required machine communication between the two participants for queueing, positioning, loading procedures and parameter sharing and are depicted in Figure 1.
Figure 1 – Use Case Diagram for the AC Discontinuous Loading
The UC Loading is the starting point of the Application Case Discontinuous Loading.
This UC starts once the hauling machine indicates to the loading machine, that it intends to initiate the UC Loading by calling the RequestForLoading-Method. In case the loading machines signals the hauling machine, that it can also start the UC Loading, it reads the current and maximum payload of the hauling machine.
Next, the Queueing and Positioning Use Cases for this Application Case take place. For those, please refer to Chapter 4.2.2 and Chapter 4.2.3 respectively. After this, the hauling machine should be positioned in the desired loading position close to the loading machine and be ready to have the truck bed filled with raw material.
For the loading machine to not miss the truck-bed of the hauling machine, it next reads the shape of the machine as well as its tail height.
Afterwards, the loading procedure can start. The loading machine must continuously check if an asymmetric loading has occurred or whether the trucks-bed is full. It can do so by read the appropriate variables from the hauling machine. At any point in time, the hauling machine can inform the loading machine to stop loading using the StopLoading-Method. This could be, for example, due to an internal error within the hauling machine.
Once the loading procedure has finished, the loading machine informs the hauling machine and also requests the hauling machine to leave the loading spot. A graphical representation of the UC is depicted in Figure 2.
Figure 2 – Sequence diagram of the Loading Use Case
The Queueing UC is part of the Loading Use Case. Therefore, it takes place after the loading machine has read the current and maximum payload of the hauling machine. As there could be multiple hauling machines queueing up for one or more loading machines, this UC determines the queueing position of the hauling machines. Thereby, the loading machine assignes a QueuePriority-Number to each hauling machine. The hauling machines can determine their respective queue position accordingly. Once the QueuePriority of a hauling machine is set to 1 this Use Case ends and the Positioning Use Case starts. A sequence diagram of this UC interaction is depicted in Figure 3.
Figure 3 – Sequence diagram of the Queueing (Loading) Use Case
The UC Positioning starts as soon as the hauling machine has been assigned a QueuePriority (see Chapter 4.2.2) of 1. The hauling machine shall then position itself next to the loading machine so that it can be loaded in the next process step.
First, the hauling machine waits for the loading machine to trigger its StartPositioning-Method, indicating, that the hauling machine can now start the positioning procedure. If the hauling machine is not yet ready to start the procedure, the loading machine may trigger the StartPositioning -Method again after a short period of time. In case the hauling machine is ready to start the positioning procedure, the hauling machine reads the area from the loading machine, it is not permitted to enter while positioning itself. After having received this information, the hauling machine can compute its trajectories and start the positioning procedure.
In case the loading machine has an internal error during the loading procedure, it can always inform the truck to stop its positioning using the StopPositioning-Method. In case the hauling machine has successfully positioned itself, it can inform the loading machine by calling the PositioningComplete-Method. A sequence diagram of this UC interaction is shown in Figure 4.
Figure 4 – Sequence diagram of the Positioning (Loading) Use Case
The ParameterSubscription UC allows any mobile machine to request meta-information, such as AssetId or DeviceClass of another mobile machine. As mobile mining machines, such as a hydraulic excavator or a dump truck, typically roam around freely, it becomes necessary, in the context of an autonomous, decentralized operation, for machines to inform each other about their current location and device type. Using the variables described in this UC, this information can be requested or subscribed. A sequence diagram of this UC is depicted in Figure 5.
Figure 5 – Sequence Diagram of the ParameterSubscription Use Case