WO2024175177A1 - Material unloading - Google Patents
Material unloading Download PDFInfo
- Publication number
- WO2024175177A1 WO2024175177A1 PCT/EP2023/054217 EP2023054217W WO2024175177A1 WO 2024175177 A1 WO2024175177 A1 WO 2024175177A1 EP 2023054217 W EP2023054217 W EP 2023054217W WO 2024175177 A1 WO2024175177 A1 WO 2024175177A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unloading
- computer
- area
- location
- load
- Prior art date
Links
- 239000000463 material Substances 0.000 title claims description 65
- 238000000034 method Methods 0.000 claims abstract description 89
- 239000013590 bulk material Substances 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 14
- -1 ore Substances 0.000 claims description 10
- 239000004576 sand Substances 0.000 claims description 6
- 229910052500 inorganic mineral Inorganic materials 0.000 claims description 4
- 239000011707 mineral Substances 0.000 claims description 4
- 239000002245 particle Substances 0.000 claims description 4
- 239000004575 stone Substances 0.000 claims description 4
- 239000002956 ash Substances 0.000 claims description 3
- 239000004568 cement Substances 0.000 claims description 3
- 239000004927 clay Substances 0.000 claims description 3
- 239000003245 coal Substances 0.000 claims description 3
- 238000013459 approach Methods 0.000 description 13
- 238000000151 deposition Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000001788 irregular Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 230000008021 deposition Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000004035 construction material Substances 0.000 description 1
- 230000000875 corresponding effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Definitions
- the disclosure relates generally to material unloading.
- the disclosure relates to determining an unloading location for a load of bulk material.
- the disclosure can be applied in construction equipment and vehicles, such as excavators, loaders, articulated haulers.
- construction equipment and vehicles such as excavators, loaders, articulated haulers.
- the disclosure may be described with respect to a particular vehicle, the disclosure is not restricted to any particular vehicle.
- unloading locations In construction environments and other settings, it is often required to transport loose bulk material, for example gravel, sand, rubble and the like, from one location to another.
- the material may be transported from one location to an unloading area where such material can be deposited, for example for storage or later collection.
- An unloading area may include a number of different places where the material can be deposited, referred to as unloading locations.
- the spacing between different unloading locations is important.
- the order of deposition can also be important in the case that unloading is executed by several vehicles.
- a known solution is to divide the unloading area into a grid of uniform cells (e.g. squares, triangles), each corresponding to an unloading location, and depositing the material in the cells in a given order.
- an unloading area can be divided into a number of cells that substantially fill the unloading area. Based on parameters of an unloading operation that is to be performed, for example properties of the material, properties of the vehicle delivering the load, and properties of the unloading area, one or more of the cells can be selected to determine an unloading location for a material load. This ensures that the most appropriate unloading location for a particular load is selected, which can be determined based on the individual load itself and/or a plurality of loads that are to be delivered to the unloading area.
- a computer-implemented method for determining an unloading location for a load of bulk material comprising receiving boundary data of an unloading area, determining a plurality of cells in the unloading area that substantially fill the unloading area, determining an unloading location to receive a load of bulk material based on one or more unloading area parameters and one or more unloading cycle parameters, and wherein the unloading location comprises one or more contiguous cells of the plurality of cells in the unloading area.
- This method improves the use of space in an unloading area, ensuring that as much of the unloading area is used as possible. This is achieved by considering the area as a whole, as well as considering individual unloading locations within the unloading area.
- the method also takes into account parameters of the material to be unloaded and/or the vehicles delivering the material, which further optimises the use of space and enables improved throughput of material deposition.
- determining the unloading location comprises determining a preliminary unloading location comprising at least one empty cell, determining if the size of the preliminary unloading location meets a size criterion of the load, and if the size of the preliminary unloading location meets the size criterion, selecting the preliminary unloading location as the unloading location, if the size of the preliminary unloading location does not meet the size criterion, adding an adjacent empty cell to the preliminary unloading location.
- the method comprises determining a plurality of unloading locations that substantially fill the unloading area. This ensures that unloading area is filled with unloading locations.
- determining the unloading location comprises determining a plurality of sets of unloading locations, determining an unused area of the unloading area associated with each set of unloading locations, selecting the set of unloading locations having the smallest unused area, and selecting a first unloading location of the selected set of unloading locations as the unloading location. This ensures a selected unloading location is the most suitable as it can be determined that it compares favourably with other unloading solutions.
- determining the unused area of the unloading area associated with each set of unloading locations comprises simulating a plurality of unloading cycles or using historical data describing a plurality of unloading cycles. This provides different approaches to enable selection of an optimal unloading location, either based on accurate simulations or real historical data.
- receiving boundary data of the unloading area comprises receiving or determining a discretisation of the boundary of the unloading area.
- a discretisation of the boundary of the unloading area By discretising the boundary of the unloading area, an allocation of cells within the area can be provided with less waste area, for example by ensuring the cell shape and the discretised boundary fit with each other.
- each of the plurality of cells comprises a tessellating shape. This minimizes the unused area and ensures that the unloading area is filled in the most efficient manner.
- the plurality of cells are each of the same shape and/or size. This ensures a simple allocation of cells in the unloading area. It is possible to use cells of different sizes to further optimise the area usage.
- the one or more unloading area parameters comprises at least one of: a topology of the unloading area, access point information of the unloading area, and data describing a number of filled cells of the unloading area.
- a topology of the unloading area e.g., a topology of the unloading area
- access point information of the unloading area e.g., a number of filled cells of the unloading area.
- data describing a number of filled cells of the unloading area e.g., a number of filled cells of the unloading area.
- the one or more unloading cycle parameters comprises at least one of: a volume of the load, a mass of the load, a material type of the load, a particle mobility of the load, one or more dimensions of a vehicle delivering the load, and an unloading method of a vehicle delivering the load.
- the unloading location can be determined based the size of the load and how the load will perform when it is deposited (for example if it will spread or remain in a compact heap). It also means that the size and performance of the unloading vehicle can be taken into account, for example ensuring all vehicles can reach their allocated unloading locations in a safe manner, for example based on vehicle motion calculations that consider the current vehicle configuration.
- the various parameters can be determined based on a particular use case, thus improving the applicability of the method.
- the load of bulk material comprises a loose material such as mineral, ore, coal, woodchips, sand, gravel, clay, cement, ash, or stone.
- the method can therefore be applied to deposition of a number of different construction materials or other materials.
- the computer-implemented method comprises determining an unloading location having a predefined shape, such as a substantially linear shape or a substantially square shape. This can enable an even simpler allocation of cells in the unloading area. Alternatively, the shape of the unloading area can be left free. It may also be possible to unload extra material between two unloading locations to further optimise the area usage.
- a predefined shape such as a substantially linear shape or a substantially square shape.
- the computer-implemented method comprises determining a plurality of unloading locations and an unloading order for the plurality of unloading locations. This may allow multiple vehicles to unload material at the same time, thus improving throughput.
- a vehicle comprising processing circuitry to perform the computer-implemented method.
- the vehicle is an autonomous vehicle.
- the method can therefore be applied to vehicles that do not need a human operator.
- the vehicle is an excavator, loader, articulated hauler, or dump truck.
- the method can therefore be applied to different types of unloading vehicle.
- control system comprising one or more control units configured to perform the computer-implemented method.
- a non-transitory computer-readable storage medium comprising instructions, which when executed by processing circuitry, cause the processing circuitry to perform the computer-implemented method.
- a computer system comprising processing circuitry configured to perform the computer-implemented method.
- FIGs. 1A and IB schematically shows a top-down view of an example unloading area according to the prior art.
- FIG. 2 is a flowchart of an example method for determining an unloading location for a load of bulk material.
- FIG. 3 schematically shows a top-down view of an example unloading area according to the present disclosure.
- FIGs. 4A and 4B show examples of different cell shapes for an unloading area.
- FIG. 5 is a flowchart of an example method for determining an unloading location.
- FIGs. 6A to 6C illustrate examples of different stages of determining an unloading location
- FIGs. 7A to 7C illustrate examples of unloading locations determined based on different shape constraints.
- FIG. 8 is a schematic diagram of an exemplary computer system for implementing examples disclosed herein, according to one example.
- FIG. 9 is a schematic drawing of a computer readable medium according to one example.
- FIG. 10 is a schematic block diagram of a control unit according to one example.
- Like reference numerals refer to like elements throughout the description. DETAILED DESCRIPTION
- an unloading area can be divided into a number of cells that substantially fill the unloading area.
- One or more of the cells can be selected as an unloading location based on parameters of the unloading area, the material to be unloaded and/or the vehicles delivering the material. This improves the use of space in an unloading area, ensuring that as much of the unloading area is used as possible.
- FIG. 1A schematically shows a top-down view of an example unloading area 100 used in a prior art approach to material unloading.
- the unloading area 100 is a site where material 110 can be deposited.
- the material 110 may be transported between sites by a vehicle 120.
- the act of collecting, delivering and depositing a load is referred to herein as an unloading cycle.
- the unloading area 100 is defined by a boundary 130.
- the boundary 130 is an irregular shape, although it will be appreciated that the boundary 130 may be of any suitable shape.
- the boundary may also define access points for the unloading area 100, for example entrances and exits for vehicles 120.
- the unloading area 100 comprises a plurality of unloading locations 140 in which material 110 may be deposited. That is to say, there are a number of places within the boundary 130 at which material 110 may be unloaded.
- the unloading locations 140 are marked in FIG. 1A with an X.
- the material 110 may be waste or debris, for example from a construction site.
- the material be a bulk material.
- Bulk materials are dry materials which are generally powdery, granular or lumpy in nature. Bulk materials are generally stored in heaps. Examples of such materials include loose materials such as mineral, ore, coal, woodchips, sand, gravel, clay, cement, ash, or stone. It will be appreciated that any other bulk material that can be moved from one location to another may be considered part of the present disclosure.
- the vehicle 120 may be any vehicle suitable for transporting bulk material from one location to another.
- the vehicle may be an excavator, loader, articulated hauler, dump truck, or any other suitable vehicle known in the art.
- the vehicle may be driven by an operator.
- the vehicle may be an autonomous vehicle that is controlled by a vehicle motion management (VMM) unit configured to individually control vehicle units and/or vehicle axles and/or wheels of the vehicle.
- VMM vehicle motion management
- the vehicle 120 may be loaded with material 110.
- the vehicle may be assigned an unloading location 140 in the unloading area 100.
- the vehicle 120 may then travel to the unloading location 140 and deposit the load of material 110. This process may be repeated, using one or more vehicles 120, until all the material 110 has been deposited or until the unloading area 100 is full.
- the unloading locations may be determined, positioned, or allocated in a number of ways. An example of this is shown in FIG. IB, where the unloading area 100 is divided into a number of cells 150. Each cell 150 corresponds to a possible unloading location 140.
- FIG. IB An example of this is shown in FIG. IB, where the unloading area 100 is divided into a number of cells 150. Each cell 150 corresponds to a possible unloading location 140.
- the approach outlined in respect of FIG. IB has a number of drawbacks.
- the use of the overall space in the unloading area 100 is not optimized. For example, several parts of the unloading area 100 are unused as they do not correspond to a full cell 150. These parts are illustrated by the hatched area 160 around the edge of the unloading area 100
- uniform cells 150 all having the same size and shape may not be optimal.
- different vehicles 120 may carry different amounts of material no, or a vehicle 120 may carry different amounts of material 110 in each journey.
- Uniform cells 150 are not able to take into account differing sizes of load, meaning space in each unloading location 140 may be wasted. This is indicated by the example load 170, where the hatched area in the associated cell 150 indicates unused space.
- an unloading area can be divided into a number of cells that more substantially fill the unloading area. Based on parameters of an unloading operation that is to be performed, for example properties of the material, properties of the vehicle delivering the load, and properties of the unloading area, one or more of the cells can be selected to determine an unloading location for a material load. This ensures that the most appropriate unloading location for a particular load is selected, which can be determined based on the individual load itself and/or a plurality of loads that are to be delivered to the unloading area.
- a first way to improve the approach in FIG. IB is to increase the amount of the unloading area 100 that can be used for an unloading location 140.
- a second way to improve the approach in FIG. IB is to improve the selection of unloading locations 140 from the cells 150 within the unloading area 100.
- FIG. 2 is a flow diagram of a method 200 for determining an unloading location for a load of bulk material.
- the method is a computer-implemented method, performed for example by a control system of a vehicle, a system for monitoring and managing an unloading area, or other suitable system.
- boundary data of an unloading area 100 is received.
- the boundary data may be data that describes the geometry of the boundary 130 of the unloading area 100.
- the boundary data may also describe access points for the unloading area 100.
- the boundary 130 is an irregular shape, although it will be appreciated that the boundary 130 may be of any suitable shape.
- the boundary data may represent a discretisation of the boundary 130 of the unloading area 100.
- the boundary data may be received already discretised, or such data may be determined using discretisation methods known in the art to represent the boundary 130 in an appropriate format.
- the discretisation methods function by dividing the unloading area 100 into smaller and smaller cells 150 until they follow the boundary 130 of the unloading area 100 to a sufficient degree of accuracy.
- the desired degree of accuracy may be achieved by setting a threshold for the minimum size of the cells 150.
- FIG. 3 schematically shows a top-down view of an example unloading area according to the present disclosure.
- An example discretisation of the boundary 130 is shown.
- the unloading area 100 shown in FIGs. 1A and IB is divided into a number of smaller cells 150, and has a discretised boundary 180.
- the unused parts of the unloading area 100 have been reduced. This is illustrated by the hatched area 160 around the edge of the unloading area 100, which is significantly smaller than that shown in FIG. IB. This minimizes the unused area and ensures that the unloading area is filled in the most efficient manner.
- a plurality of cells 150 are determined that substantially fill the unloading area 100.
- the cells 150 may be of any suitable size, shape and distribution based on the received boundary data.
- the plurality of cells 150 comprises a tessellating shape.
- the shape may provide a regular tessellation of cells 150, such as a triangle, square or hexagon, where all cells 150 have the same shape and size. This ensures a simple allocation of cells in the unloading area.
- square cells 150 have been used to fill the unloading area 100 within the boundary 180.
- the shape may provide an irregular tessellation of cells 150.
- the cells 150 may be of different shapes and/or different sizes to further optimise the area usage, as will be appreciated by the person skilled in the art.
- FIGs. 4A and 4B An example of different cell shapes is shown in FIGs. 4A and 4B.
- a square cell 150 is shown with an irregularly shaped load 170.
- the use of square cells 150 may provide a simple approach to the distribution of cells 150 in the unloading areas. However, as can be seen, there may be a significant amount of unused space in the cell 150, in particular the corners of the cell 150.
- a hexagonal cell 150 is shown with the same load 170. As can be seen, there is much less unused space in the cell 150. Different cell shapes may therefore be appropriate for different types of load in order to minimise unused space.
- the size and shape of the cells 150 may also be dependent on one or more unloading area parameters and/or one or more unloading cycle parameters comprises. These parameters are discussed in more detail in relation to step 230.
- the topology (e.g., size and shape) of the unloading area 100 may influence how the cells 150 are allocated. For example a square unloading area 100 is easily filled by square cells 150, whereas a circular unloading area 100 may be better filled by hexagonal cells 150. Parameters of the material may influence the shape and size of the cells 150, as different materials stack in different ways and form different shapes on the ground when unloaded.
- the size of the cells 150 may be correlated to the dimensions of the vehicle 120, for example the width of the unloading bucket.
- the method of delivery may also influence the shape of the cells 150, for example where hexagonal cells 150 are more suited to methods of delivery resulting in conical deposits. These parameters are discussed in further detail in relation to step 230.
- one or more cells 150 can be allocated to an unloading location 140 to ensure that the unloading location 140 is appropriately sized for a particular load. It will be appreciated that a threshold for the minimum size of the cells 150 may be set to provide a balance with the computing resources required to process the cells 150 and allocation of unloading locations 140.
- an unloading location 140 is a place within the unloading area 100 at which a load of bulk material 110 may be unloaded.
- an unloading location comprises one or more contiguous cells 150 of the plurality of cells 150 in the unloading area 100.
- the unloading location 140 is determined based on one or more unloading area parameters and one or more unloading cycle parameters. That is to say, properties of the unloading area 100, material 110, and the vehicle 120 are taken into account to determine a suitable unloading location 140 for a particular load. By taking these factors into account, the use of space, throughput of material deposition, and applicability of the method may be improved.
- the one or more unloading area parameters comprises at least one of a topology of the unloading area, access point information of the unloading area, and data describing a number of filled cells of the unloading area 100.
- the topology e.g., size and shape
- the topology may influence how the cells 150 are allocated. Knowing how many cells are filled and where they are located can provide information on how much more material can be deposited in total in the unloading area 100 and where it is best to perform the next unloading cycle.
- Access point information can include the number and location of access points, which can be used to determine routes for the vehicle 120 to reach an unloading location 140, and in some embodiment to split the unloading area 100 into sub-areas, each filled only by vehicles entering via a dedicated access point.
- the one or more unloading cycle parameters comprises, for example, load parameters and vehicle parameters.
- Load parameters may include at least one of a volume of the load, a material type of the load, a particle mobility of the load, a lump size of the material, a density of the material, a moisture content of the material, and an angle of repose of the material.
- the volume of the load can be used to determine the minimum required area for an unloading location 140 in a specific unloading cycle.
- the mass of the load may be used to determine how much material the vehicle 120 can deliver in a single loading cycle.
- the other parameters be used to determine the shape and size of the unloading location 140, as different materials stack in different ways and form different shapes on the ground when unloaded.
- Vehicle parameters may include one or more dimensions of a vehicle delivering the load, and/or an unloading method of a vehicle delivering the load.
- the dimensions of the vehicle 120 (in particular the width of the unloading bucket) plays a role in determining the size of the unloading location 140.
- a rectangular shaped unloading location 140 may have one of the two dimensions correlated to the width of the unloading bucket.
- the size of the vehicle 120 may also effect which routes are suitable for the vehicle 120 to reach the unloading location 140.
- the method of delivery can influence the shape of the unloading location 140.
- a vehicle 120 that unloads while at a standstill may form a conical shape of the unloaded material, whereas material unloaded by a moving vehicle will instead form a more elongate shape.
- each unloading location 140 may be comprised of a single cell 150, four cells 150 arranged in a square, or other suitable arrangements.
- Another approach is to determine an unloading location 140 by adding cells 150 sequentially. This approach will be described in relation to FIGs. 6 and 7.
- Step 230 can be repeated a number of times in order to determine a plurality of unloading locations 140.
- Each unloading location 140 may correspond to a load being delivered by a vehicle 120.
- a single vehicle 120 may deliver all loads to the unloading area 100, or a plurality of vehicles 120 may each deliver one or more loads to the unloading area 100.
- the determination of a plurality of unloading locations 140 can be performed in a number of ways. In some embodiments, unloading locations 140 can be determined sequentially, until no further unloading locations 140 can be determined in the unloading area 100. Each unloading location 140 may then be determined individually based on the unloading area parameters and unloading cycle parameters. This may be performed partially simultaneously, as described in relation to FIG. 5.
- the placement of unloading locations 140 may be optimised using a machine-learning algorithm.
- a neural network may be trained based on the resulting utilization of an unloading area 100 when it is full. This may be based on model or historical data of different combinations of unloading locations 140 and scored based on parameters such the resulting unused area, the total required unloading time, etc.
- the algorithm may also determine an unloading order for the unloading locations 140, as unloading locations orders resulting in poor performance (e.g. large unused areas is due to poor positioning or vehicles not being able to reach a unloading location 140) will be taken into account.
- the plurality of unloading locations 140 determined by repeating step 230 may be designated as a first set of unloading locations 140.
- An unused area of the resulting unloading area 100 can then be determined, and assigned a score.
- the score may be, for example, an absolute value of the unused area, a percentage of the total unloading area, or other value readily envisageable by the person skilled in the art.
- the total required unloading time for a set of unloading locations 140 may be used to determine the score.
- the score may be a weighted sum of unused area, unloading time, and other relevant parameters. This set of unloading locations 140 and its associated score may then be stored.
- the method 200 may then return to the end of step 220, and a new set of unloading locations 140 may be determined by repeating step 230. Similarly, an unused area and/or total unloading time of the unloading area 100 resulting from the new set of unloading locations 140 can then be determined, and assigned a score. The new set of unloading locations 140 and its associated score may then be stored. This process may be repeated to simulate a number of different sets of unloading locations 140. Alternatively, historical data describing a plurality of unloading cycles may be used to determine one or more sets of unloading locations.
- the scores of the different sets of unloading locations 140 may then be compared, and the set of unloading locations 140 having the best score may be selected. In this way, the allocation of unloading locations 140 can be validated to ensure that the solution providing the most efficient use of the unloading area 100 is used.
- an unloading order for the plurality of unloading locations 140 may also be determined. This can be achieved based on the method 500 described in relation to FIG. 5, using a machine learning approach that will determine an order for a resulting set of unloading locations 140, or using a rule-based approach such as always filling the unloading area 100 from a particular location.
- an unloading location 140 can be determined by adding cells 150 sequentially.
- FIG. 5 is a flow diagram of a method 500 for determining an unloading location 140 in this way. The steps of the method 500 are sub-steps of step 230 of the method 200.
- FIGs. 6A to 6C illustrate examples of different stages of step 230.
- a preliminary unloading location is determined.
- the preliminary unloading location may comprise at least one empty cell from the plurality of cells 150.
- the preliminary unloading location selected based on a number of different criteria.
- a cell 150-1 may be allocated to the preliminary unloading location based on unloading area parameters such as the access points of the unloading area 100 (for example the cell’s proximity to an access point) and data describing a number of filled cells of the unloading area 100 (for example the cell’s proximity to an existing load in the unloading area 100).
- the cell 150-1 may also be selected based on unloading cycle parameters such as dimensions of a vehicle 120 delivering the load, and/or an unloading method of a vehicle 120 delivering the load.
- a first cell 150-1 is selected as the preliminary unloading location 140-1, as indicated by the hatched area.
- the size criterion describes the area taken up by the deposited load. This can be based on parameters that describe how the material 110 will perform when unloaded into a heap, as discussed above. These may include unloading area parameters such as a topology of the unloading area, and unloading cycle parameters such as a volume of the load, a material type of the load, a particle mobility of the load, an angle of repose of the material, and/or an unloading method of a vehicle delivering the load. In this way, it can be determined if the area of the preliminary unloading location is sufficient to receive the load.
- unloading area parameters such as a topology of the unloading area
- unloading cycle parameters such as a volume of the load, a material type of the load, a particle mobility of the load, an angle of repose of the material, and/or an unloading method of a vehicle delivering the load.
- step 530 the preliminary unloading location is selected as the unloading location 140.
- the vehicle 120 can then transport the load to the unloading location 140 and deposit the material 110 at that location.
- the method 500 moves to step 540, where an empty cell adjacent to the preliminary unloading location is added to the preliminary unloading location.
- the next cell can be selected based on unloading area parameters such as the access points of the unloading area 100, and data describing a number of filled cells of the unloading area 100, and/or unloading cycle parameters such as dimensions of a vehicle delivering the load, and/or an unloading method of a vehicle delivering the load.
- the number and locations of filled cells 150 can be used to ensure contiguity between unloading locations 140 so to not leave any unreachable space between them.
- the location of access points can be used in determining that the new cell 150 will not block the path for the vehicle 120.
- the next cell can alternatively or additionally be selected based on a shape constraint for the unloading location 140, as will be described in relation to FIG. 7.
- a second cell 150-2 adjacent to the first cell 150-1, has been added to the preliminary unloading location 140-1, as indicated by the hatched area.
- a second preliminary unloading location 140-2 has begun to be assigned, as indicated by the spotted area.
- the second preliminary unloading location 140-2 may correspond to a load being delivered by a second vehicle, or to a future load to be delivered by the same vehicle.
- a first cell 150-1’ is selected as the second preliminary unloading location 140-2.
- the second preliminary unloading location 140-2 may be assigned after the first preliminary unloading location 140-1 has been completed, or may be assigned partially simultaneously to the first preliminary unloading location 140-1.
- the method 500 After the second cell 150-2 has been added to the preliminary unloading location 140-1, the method 500 returns to sub-step 520, where it is determined if the size of the new preliminary unloading location 140-1 meets the size criterion. Again, if the size of the preliminary unloading location 140-1 meets the size criterion, the method 500 moves to substep 530, where the preliminary unloading location 140-1 is selected as the unloading location 140.
- the method 500 returns to sub-step 540, where a further cell is added to the preliminary unloading location 140-1.
- a third cell 150-3 adjacent to the second cell 150-2, has been added to the preliminary unloading location 140-1, as indicated by the hatched area.
- the third cell 150-3 could be any of the cells adjacent to the preliminary unloading location 140-1 shown in FIG. 6B.
- a constraint has been added that the unloading location 140 must be linear in shape, and so only a single option is available for the third cell 150-3.
- This process is also performed for the second preliminary unloading location 140-2.
- a further cell 150-2’ has been added to the second preliminary unloading location 140-2, as indicated by the spotted area.
- the method 500 can be repeated a number of times in order to determine a plurality of unloading locations 140. In this way, substantially the entire unloading area 100 can be filled. As discussed above, the determination of unloading locations 140 may be subject to different constraints on the shape of the unloading locations 140.
- FIGs. 7A to 7C illustrate examples of unloading locations 140 determined according to the method 500.
- three unloading locations 140 are shown: a first unloading location 140-1 indicated by a hatched area, a second unloading location 140-2 indicated by a spotted area, and a third unloading location 140-3 indicated by a dashed area.
- Each set of unloading locations 140 is determined subject to different constraints on the shape of the unloading locations 140. It will be appreciated that other shape constraints beyond those shown in FIGs. 7A to 7C may be applied.
- each of unloading locations 140-1, 140-2 and 140-3 has a linear shape. This represents a continuation of the determination of the unloading locations 140 shown in FIG. 6. This may enable a simple allocation of unloading locations 140, and be suitable for vehicles 120 that unload material 110 when moving in a straight line.
- each of unloading locations 140-1, 140-2 and 140-3 has a rectangular shape. This may enable a simple allocation of unloading locations 140, and be suitable for vehicles 120 that unload material 110 in a broader manner.
- each of unloading locations 140-1, 140-2 and 140-3 has a shape determined based only on the unloading area parameters and one or more unloading cycle parameters. This enables a more free allocation of unloading locations 140.
- the dimensions of the vehicle 120 and its method of delivery can influence the choice of a next cell 150 in a sequential cell allocation process when a certain shape constraint should be fulfilled.
- the shape constraint may further constrain the method of delivery, or the method of delivery itself may constrain the shape of the unloading locations 140.
- FIG. 8 is a schematic diagram of a computer system 800 for implementing examples disclosed herein.
- the computer system 800 is adapted to execute instructions from a computer-readable medium to perform these and/or any of the functions or processing described herein.
- the computer system 800 may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, or the Internet. While only a single device is illustrated, the computer system 800 may include any collection of devices that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
- any reference in the disclosure and/or claims to a computer system, computing system, computer device, computing device, control system, control unit, electronic control unit (ECU), processor device, processing circuitry, etc. includes reference to one or more such devices to individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
- control system may include a single control unit or a plurality of control units connected or otherwise communicatively coupled to each other, such that any performed function may be distributed between the control units as desired.
- such devices may communicate with each other or other devices by various system architectures, such as directly or via a Controller Area Network (CAN) bus, etc.
- CAN Controller Area Network
- the computer system 800 may comprise at least one computing device or electronic device capable of including firmware, hardware, and/or executing software instructions to implement the functionality described herein.
- the computer system 800 may include processing circuitry 802 (e.g., processing circuitry including one or more processor devices or control units), a memory 804, and a system bus 806.
- the computer system 800 may include at least one computing device having the processing circuitry 802.
- the system bus 806 provides an interface for system components including, but not limited to, the memory 804 and the processing circuitry 802.
- the processing circuitry 802 may include any number of hardware components for conducting data or signal processing or for executing computer code stored in memory 804.
- the processing circuitry 802 may, for example, include a general-purpose processor, an application specific processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a circuit containing processing components, a group of distributed processing components, a group of distributed computers configured for processing, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
- the processing circuitry 802 may further include computer executable code that controls operation of the programmable device.
- the system bus 806 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and/or a local bus using any of a variety of bus architectures.
- the memory 804 may be one or more devices for storing data and/or computer code for completing or facilitating methods described herein.
- the memory 804 may include database components, object code components, script components, or other types of information structure for supporting the various activities herein. Any distributed or local memory device may be utilized with the systems and methods of this description.
- the memory 804 may be communicably connected to the processing circuitry 802 (e.g., via a circuit or any other wired, wireless, or network connection) and may include computer code for executing one or more processes described herein.
- the memory 804 may include non-volatile memory 808 (e.g., read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), etc.), and volatile memory 810 (e.g., random-access memory (RAM)), or any other medium which can be used to carry or store desired program code in the form of machineexecutable instructions or data structures and which can be accessed by a computer or other machine with processing circuitry 802.
- a basic input/output system (BIOS) 812 may be stored in the non-volatile memory 808 and can include the basic routines that help to transfer information between elements within the computer system 800.
- BIOS basic input/output system
- the computer system 800 may further include or be coupled to a non-transitory computer-readable storage medium such as the storage device 814, which may comprise, for example, an internal or external hard disk drive (HDD) (e.g., enhanced integrated drive electronics (EIDE) or serial advanced technology attachment (SATA)), HDD (e.g., EIDE or SATA) for storage, flash memory, or the like.
- HDD enhanced integrated drive electronics
- SATA serial advanced technology attachment
- the storage device 814 and other drives associated with computer-readable media and computer-usable media may provide nonvolatile storage of data, data structures, computer-executable instructions, and the like.
- Computer-code which is hard or soft coded may be provided in the form of one or more modules.
- the module(s) can be implemented as software and/or hard-coded in circuitry to implement the functionality described herein in whole or in part.
- the modules may be stored in the storage device 814 and/or in the volatile memory 810, which may include an operating system 816 and/or one or more program modules 818.
- All or a portion of the examples disclosed herein may be implemented as a computer program 820 stored on a transitory or non- transitory computer-usable or computer-readable storage medium (e.g., single medium or multiple media), such as the storage device 814, which includes complex programming instructions (e.g., complex computer-readable program code) to cause the processing circuitry 802 to carry out actions described herein.
- the computer-readable program code of the computer program 820 can comprise software instructions for implementing the functionality of the examples described herein when executed by the processing circuitry 802.
- the storage device 814 may be a computer program product (e.g., readable storage medium) storing the computer program 820 thereon, where at least a portion of a computer program 820 may be loadable (e.g., into a processor) for implementing the functionality of the examples described herein when executed by the processing circuitry 802.
- the processing circuitry 802 may serve as a controller or control system for the computer system 800 that is to implement the functionality described herein.
- the computer system 800 may include an input device interface 822 configured to receive input and selections to be communicated to the computer system 800 when executing instructions, such as from a keyboard, mouse, touch-sensitive surface, etc. Such input devices may be connected to the processing circuitry 802 through the input device interface 822 coupled to the system bus 806 but can be connected through other interfaces, such as a parallel port, an Institute of Electrical and Electronic Engineers (IEEE) 1394 serial port, a Universal Serial Bus (USB) port, an IR interface, and the like.
- the computer system 800 may include an output device interface 824 configured to forward output, such as to a display, a video display unit (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)).
- the computer system 800 may include a communications interface 826 suitable for communicating with a network as appropriate or desired.
- the described examples and their equivalents may be realized in software or hardware or a combination thereof.
- the examples may be performed by general purpose circuitry.
- general purpose circuitry include digital signal processors (DSP), central processing units (CPU), co-processor units, field programmable gate arrays (FPGA) and other programmable hardware.
- DSP digital signal processors
- CPU central processing units
- FPGA field programmable gate arrays
- the examples may be performed by specialized circuitry, such as application specific integrated circuits (ASIC).
- ASIC application specific integrated circuits
- the general purpose circuitry and/or the specialized circuitry may, for example, be associated with or comprised in an electronic apparatus such as a vehicle control unit.
- the electronic apparatus may comprise arrangements, circuitry, and/or logic according to any of the examples described herein. Alternatively or additionally, the electronic apparatus may be configured to perform method steps according to any of the examples described herein.
- a computer program product comprises a non- transitory computer readable medium such as, for example, a universal serial bus (USB) memory, a plug-in card, an embedded drive, or a read only memory (ROM).
- FIG. 9 illustrates an example computer readable medium in the form of a compact disc (CD) ROM 900.
- the computer readable medium has stored thereon a computer program 940 comprising program instructions.
- the computer program is loadable into a data processor (e.g., a data processing unit) 920, which may, for example, be comprised in a vehicle control unit 910.
- the computer program may be stored in a memory 930 associated with, or comprised in, the data processor.
- the computer program may, when loaded into, and run by, the data processor, cause execution of method steps according to, for example, any of the methods described herein.
- FIG. 10 schematically illustrates, in terms of a number of functional units, the components of a control unit 1000 according to some examples.
- the control unit may be comprised in a vehicle, e.g., in the form of a vehicle motion management (VMM) unit.
- VMM vehicle motion management
- a processor device in the form of processing circuitry 1010 is provided using any combination of one or more of a suitable central processing unit (CPU), multiprocessor, microcontroller, digital signal processor (DSP), or similar; capable of executing software instructions stored in a computer program product, e.g. in the form of a storage medium 1030.
- the processing circuitry 1010 may further be provided as at least one application specific integrated circuit ASIC, or field programmable gate array FPGA.
- the processing circuitry 1010 is configured to cause the control unit 1000 to perform a set of operations, or steps; for example, the methods discussed in connection with FIGs. 2 and 5.
- the storage medium 1030 may store a set of operations
- the processing circuitry 1010 may be configured to retrieve the set of operations from the storage medium 1030 to cause the control unit 1000 to perform the set of operations.
- the set of operations may be provided as a set of executable instructions.
- the processing circuitry 1010 is thereby arranged to execute methods as herein disclosed.
- the storage medium 1030 may comprise persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid state memory or even remotely mounted memory.
- the control unit 1000 may further comprise an interface 1020 for communication with at least one external device.
- the interface 1020 may comprise one or more transmitters and receivers, comprising analogue and digital components and a suitable number of ports for wireline or wireless communication.
- the processing circuitry 1010 controls the general operation of the control unit 1000, e.g., by sending data and control signals to the interface 1020 and the storage medium 1030, by receiving data and reports from the interface 1020, and by retrieving data and instructions from the storage medium 1030.
- Other components, as well as the related functionality, of the control node are omitted in order not to obscure the concepts presented herein.
- control unit 1000 may be seen as a control system, or may be comprised in a control system.
- the control system may be configured for vehicle motion management (VMM).
- VMM vehicle motion management
- Relative terms such as “below” or “above” or “upper” or “lower” or “horizontal” or “vertical” may be used herein to describe a relationship of one element to another element as illustrated in the Figures. It will be understood that these terms and those discussed above are intended to encompass different orientations of the device in addition to the orientation depicted in the Figures. It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element, or intervening elements may be present. In contrast, when an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present.
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A computer-implemented method for determining an unloading location for a load of bulk material, the method comprising receiving boundary data of an unloading area, determining a plurality of cells in the unloading area that substantially fill the unloading area, determining an unloading location to receive a load of bulk material based on one or more unloading area parameters and one or more unloading cycle parameters, and wherein the unloading location comprises one or more contiguous cells of the plurality of cells in the unloading area.
Description
MATERIAL UNLOADING
TECHNICAL FIELD
[0001] The disclosure relates generally to material unloading. In particular aspects, the disclosure relates to determining an unloading location for a load of bulk material. The disclosure can be applied in construction equipment and vehicles, such as excavators, loaders, articulated haulers. Although the disclosure may be described with respect to a particular vehicle, the disclosure is not restricted to any particular vehicle.
BACKGROUND
[0002] In construction environments and other settings, it is often required to transport loose bulk material, for example gravel, sand, rubble and the like, from one location to another. In particular, the material may be transported from one location to an unloading area where such material can be deposited, for example for storage or later collection. An unloading area may include a number of different places where the material can be deposited, referred to as unloading locations.
[0003] When determining at which unloading location a particular material load should be deposited, the spacing between different unloading locations is important. The order of deposition can also be important in the case that unloading is executed by several vehicles. A known solution is to divide the unloading area into a grid of uniform cells (e.g. squares, triangles), each corresponding to an unloading location, and depositing the material in the cells in a given order.
[0004] However, such an approach has several drawbacks. Firstly, if the unloading area does not have a regular shape, then the use of uniform cells may not fill the entire space, meaning usage of the unloading area is not optimized. Secondly, if unloading locations have cells of a uniform size, then the space within each cell may not be suitable for loads of different sizes (for example if the cell is too small or the load does not fill the entire cell), meaning usage of each unloading location is not optimized. Thirdly, the use of regular-shaped cells (e.g. squares, triangles) may not correspond to the actual shape of the unloaded material, which tends to be irregular, thus leaving gaps around the edges or comers of the cells when the material is deposited, again meaning usage of each unloading location is not optimized.
[0005] It is therefore desired to develop a solution for material unloading that addresses or at least mitigates some of these issues. i
SUMMARY
[0006] This disclosure attempts to address the problems noted above by providing methods for determining an unloading location for a load of bulk material. In particular, an unloading area can be divided into a number of cells that substantially fill the unloading area. Based on parameters of an unloading operation that is to be performed, for example properties of the material, properties of the vehicle delivering the load, and properties of the unloading area, one or more of the cells can be selected to determine an unloading location for a material load. This ensures that the most appropriate unloading location for a particular load is selected, which can be determined based on the individual load itself and/or a plurality of loads that are to be delivered to the unloading area.
[0007] According to an aspect of the disclosure, there is provided a computer-implemented method for determining an unloading location for a load of bulk material, the method comprising receiving boundary data of an unloading area, determining a plurality of cells in the unloading area that substantially fill the unloading area, determining an unloading location to receive a load of bulk material based on one or more unloading area parameters and one or more unloading cycle parameters, and wherein the unloading location comprises one or more contiguous cells of the plurality of cells in the unloading area.
[0008] This method improves the use of space in an unloading area, ensuring that as much of the unloading area is used as possible. This is achieved by considering the area as a whole, as well as considering individual unloading locations within the unloading area. The method also takes into account parameters of the material to be unloaded and/or the vehicles delivering the material, which further optimises the use of space and enables improved throughput of material deposition.
[0009] Optionally, determining the unloading location comprises determining a preliminary unloading location comprising at least one empty cell, determining if the size of the preliminary unloading location meets a size criterion of the load, and if the size of the preliminary unloading location meets the size criterion, selecting the preliminary unloading location as the unloading location, if the size of the preliminary unloading location does not meet the size criterion, adding an adjacent empty cell to the preliminary unloading location. This enables the use of space to be improved as cells are only added to an unloading location if the preliminary unloading location is not large enough, which reduces the amount of space that is unused.
[0010] Optionally, the method comprises determining a plurality of unloading locations that substantially fill the unloading area. This ensures that unloading area is filled with unloading locations.
[0011] Optionally, determining the unloading location comprises determining a plurality of sets of unloading locations, determining an unused area of the unloading area associated with each set of unloading locations, selecting the set of unloading locations having the smallest unused area, and selecting a first unloading location of the selected set of unloading locations as the unloading location. This ensures a selected unloading location is the most suitable as it can be determined that it compares favourably with other unloading solutions.
[0012] Optionally, determining the unused area of the unloading area associated with each set of unloading locations comprises simulating a plurality of unloading cycles or using historical data describing a plurality of unloading cycles. This provides different approaches to enable selection of an optimal unloading location, either based on accurate simulations or real historical data.
[0013] Optionally, receiving boundary data of the unloading area comprises receiving or determining a discretisation of the boundary of the unloading area. By discretising the boundary of the unloading area, an allocation of cells within the area can be provided with less waste area, for example by ensuring the cell shape and the discretised boundary fit with each other.
[0014] Optionally, each of the plurality of cells comprises a tessellating shape. This minimizes the unused area and ensures that the unloading area is filled in the most efficient manner.
[0015] Optionally, the plurality of cells are each of the same shape and/or size. This ensures a simple allocation of cells in the unloading area. It is possible to use cells of different sizes to further optimise the area usage.
[0016] Optionally, the one or more unloading area parameters comprises at least one of: a topology of the unloading area, access point information of the unloading area, and data describing a number of filled cells of the unloading area. This provides further context to how the load will perform when it is deposited, how a vehicle may access the unloading location, and how unused space can be minimized. The various parameters can be determined based on a particular use case, thus improving the applicability of the method.
[0017] Optionally, the one or more unloading cycle parameters comprises at least one of: a volume of the load, a mass of the load, a material type of the load, a particle mobility of the load, one or more dimensions of a vehicle delivering the load, and an unloading method of a
vehicle delivering the load. This means that the unloading location can be determined based the size of the load and how the load will perform when it is deposited (for example if it will spread or remain in a compact heap). It also means that the size and performance of the unloading vehicle can be taken into account, for example ensuring all vehicles can reach their allocated unloading locations in a safe manner, for example based on vehicle motion calculations that consider the current vehicle configuration. The various parameters can be determined based on a particular use case, thus improving the applicability of the method.
[0018] Optionally, the load of bulk material comprises a loose material such as mineral, ore, coal, woodchips, sand, gravel, clay, cement, ash, or stone. The method can therefore be applied to deposition of a number of different construction materials or other materials.
[0019] Optionally, the computer-implemented method comprises determining an unloading location having a predefined shape, such as a substantially linear shape or a substantially square shape. This can enable an even simpler allocation of cells in the unloading area. Alternatively, the shape of the unloading area can be left free. It may also be possible to unload extra material between two unloading locations to further optimise the area usage.
[0020] Optionally, the computer-implemented method comprises determining a plurality of unloading locations and an unloading order for the plurality of unloading locations. This may allow multiple vehicles to unload material at the same time, thus improving throughput.
[0021] According to another aspect of the disclosure, there is provided a vehicle comprising processing circuitry to perform the computer-implemented method.
[0022] Optionally, the vehicle is an autonomous vehicle. The method can therefore be applied to vehicles that do not need a human operator.
[0023] Optionally, the vehicle is an excavator, loader, articulated hauler, or dump truck. The method can therefore be applied to different types of unloading vehicle.
[0024] According to another aspect of the disclosure, there is provided a computer program product for performing, when executed by processing circuitry, the computer-implemented method.
[0025] According to another aspect of the disclosure, there is provided a control system comprising one or more control units configured to perform the computer-implemented method.
[0026] According to another aspect of the disclosure, there is provided a non-transitory computer-readable storage medium comprising instructions, which when executed by processing circuitry, cause the processing circuitry to perform the computer-implemented method.
[0027] According to another aspect of the disclosure, there is provided a computer system comprising processing circuitry configured to perform the computer-implemented method.
[0028] The above aspects, accompanying claims, and/or examples disclosed herein above and later below may be suitably combined with each other as would be apparent to anyone of ordinary skill in the art.
[0029] Additional features and advantages are disclosed in the following description, claims, and drawings, and in part will be readily apparent therefrom to those skilled in the art or recognized by practicing the disclosure as described herein. There are also disclosed herein control units, computer readable media, and computer program products associated with the above-discussed technical benefits.
BRIEF DESCRIPTION OF THE DRAWINGS
[0030] With reference to the appended drawings, below follows a more detailed description of aspects of the disclosure cited as examples.
[0031] FIGs. 1A and IB schematically shows a top-down view of an example unloading area according to the prior art.
[0032] FIG. 2 is a flowchart of an example method for determining an unloading location for a load of bulk material.
[0033] FIG. 3 schematically shows a top-down view of an example unloading area according to the present disclosure.
[0034] FIGs. 4A and 4B show examples of different cell shapes for an unloading area.
[0035] FIG. 5 is a flowchart of an example method for determining an unloading location.
[0036] FIGs. 6A to 6C illustrate examples of different stages of determining an unloading location
[0037] FIGs. 7A to 7C illustrate examples of unloading locations determined based on different shape constraints.
[0038] FIG. 8 is a schematic diagram of an exemplary computer system for implementing examples disclosed herein, according to one example.
[0039] FIG. 9 is a schematic drawing of a computer readable medium according to one example.
[0040] FIG. 10 is a schematic block diagram of a control unit according to one example. [0041] Like reference numerals refer to like elements throughout the description.
DETAILED DESCRIPTION
[0042] Aspects set forth below represent the necessary information to enable those skilled in the art to practice the disclosure.
[0043] When determining an unloading location for loose bulk material in an unloading area, for example in a construction environment, it is important to determine an efficient spacing of unloading in order to use the unloading area in an optimal manner. Current approaches, for example where the unloading area is divided into a grid of uniform cells, have several drawbacks. For example, the cells may not fill the entire unloading area, and the space within each cell may not be suitable for loads of different sizes and shapes. This means that the unloading locations, and the unloading area as a whole, can be left with significant unused areas.
[0044] To remedy this, the present disclosure provides methods for determining an unloading location for a load of bulk material in an improved manner. In particular, an unloading area can be divided into a number of cells that substantially fill the unloading area. One or more of the cells can be selected as an unloading location based on parameters of the unloading area, the material to be unloaded and/or the vehicles delivering the material. This improves the use of space in an unloading area, ensuring that as much of the unloading area is used as possible.
[0045] FIG. 1A schematically shows a top-down view of an example unloading area 100 used in a prior art approach to material unloading. The unloading area 100 is a site where material 110 can be deposited. The material 110 may be transported between sites by a vehicle 120. The act of collecting, delivering and depositing a load is referred to herein as an unloading cycle.
[0046] The unloading area 100 is defined by a boundary 130. In many situations, the boundary 130 is an irregular shape, although it will be appreciated that the boundary 130 may be of any suitable shape. The boundary may also define access points for the unloading area 100, for example entrances and exits for vehicles 120. The unloading area 100 comprises a plurality of unloading locations 140 in which material 110 may be deposited. That is to say, there are a number of places within the boundary 130 at which material 110 may be unloaded. The unloading locations 140 are marked in FIG. 1A with an X.
[0047] The material 110 may be waste or debris, for example from a construction site. The material be a bulk material. Bulk materials are dry materials which are generally powdery, granular or lumpy in nature. Bulk materials are generally stored in heaps. Examples of such
materials include loose materials such as mineral, ore, coal, woodchips, sand, gravel, clay, cement, ash, or stone. It will be appreciated that any other bulk material that can be moved from one location to another may be considered part of the present disclosure.
[0048] The vehicle 120 may be any vehicle suitable for transporting bulk material from one location to another. For example, the vehicle may be an excavator, loader, articulated hauler, dump truck, or any other suitable vehicle known in the art. In some embodiments, the vehicle may be driven by an operator. In other embodiments, the vehicle may be an autonomous vehicle that is controlled by a vehicle motion management (VMM) unit configured to individually control vehicle units and/or vehicle axles and/or wheels of the vehicle.
[0049] In the example of FIG. 1A, the vehicle 120 may be loaded with material 110. The vehicle may be assigned an unloading location 140 in the unloading area 100. The vehicle 120 may then travel to the unloading location 140 and deposit the load of material 110. This process may be repeated, using one or more vehicles 120, until all the material 110 has been deposited or until the unloading area 100 is full.
[0050] The unloading locations may be determined, positioned, or allocated in a number of ways. An example of this is shown in FIG. IB, where the unloading area 100 is divided into a number of cells 150. Each cell 150 corresponds to a possible unloading location 140. However, the approach outlined in respect of FIG. IB has a number of drawbacks.
[0051] Firstly, the use of the overall space in the unloading area 100 is not optimized. For example, several parts of the unloading area 100 are unused as they do not correspond to a full cell 150. These parts are illustrated by the hatched area 160 around the edge of the unloading area 100
[0052] Secondly, implementing uniform cells 150 all having the same size and shape may not be optimal. For example, different vehicles 120 may carry different amounts of material no, or a vehicle 120 may carry different amounts of material 110 in each journey. Uniform cells 150 are not able to take into account differing sizes of load, meaning space in each unloading location 140 may be wasted. This is indicated by the example load 170, where the hatched area in the associated cell 150 indicates unused space.
[0053] Thirdly, implementing square-shaped unloading locations 140 can be suboptimal, since the unloaded material 100 is likely to pile-up in a non-square shape. This means further space in each unloading location 140 may be wasted. This is also indicated by the example load 170
[0054] This disclosure attempts to address the problems noted above by providing methods for determining an unloading location for a load of bulk material. In particular, an unloading
area can be divided into a number of cells that more substantially fill the unloading area. Based on parameters of an unloading operation that is to be performed, for example properties of the material, properties of the vehicle delivering the load, and properties of the unloading area, one or more of the cells can be selected to determine an unloading location for a material load. This ensures that the most appropriate unloading location for a particular load is selected, which can be determined based on the individual load itself and/or a plurality of loads that are to be delivered to the unloading area.
[0055] A first way to improve the approach in FIG. IB is to increase the amount of the unloading area 100 that can be used for an unloading location 140. A second way to improve the approach in FIG. IB is to improve the selection of unloading locations 140 from the cells 150 within the unloading area 100.
[0056] FIG. 2 is a flow diagram of a method 200 for determining an unloading location for a load of bulk material. The method is a computer-implemented method, performed for example by a control system of a vehicle, a system for monitoring and managing an unloading area, or other suitable system.
[0057] At step 210, boundary data of an unloading area 100 is received. The boundary data may be data that describes the geometry of the boundary 130 of the unloading area 100. The boundary data may also describe access points for the unloading area 100. In many situations, the boundary 130 is an irregular shape, although it will be appreciated that the boundary 130 may be of any suitable shape.
[0058] In some embodiments, the boundary data may represent a discretisation of the boundary 130 of the unloading area 100. The boundary data may be received already discretised, or such data may be determined using discretisation methods known in the art to represent the boundary 130 in an appropriate format. The discretisation methods function by dividing the unloading area 100 into smaller and smaller cells 150 until they follow the boundary 130 of the unloading area 100 to a sufficient degree of accuracy. The desired degree of accuracy may be achieved by setting a threshold for the minimum size of the cells 150.
[0059] FIG. 3 schematically shows a top-down view of an example unloading area according to the present disclosure. An example discretisation of the boundary 130 is shown. As can be seen, the unloading area 100 shown in FIGs. 1A and IB is divided into a number of smaller cells 150, and has a discretised boundary 180. By doing this, the unused parts of the unloading area 100 have been reduced. This is illustrated by the hatched area 160 around the edge of the unloading area 100, which is significantly smaller than that shown in FIG. IB. This
minimizes the unused area and ensures that the unloading area is filled in the most efficient manner.
[0060] Returning to FIG. 2, at step 220, a plurality of cells 150 are determined that substantially fill the unloading area 100. The cells 150 may be of any suitable size, shape and distribution based on the received boundary data.
[0061] In some embodiments, the plurality of cells 150 comprises a tessellating shape. For example, the shape may provide a regular tessellation of cells 150, such as a triangle, square or hexagon, where all cells 150 have the same shape and size. This ensures a simple allocation of cells in the unloading area. In the example of FIG. 3, square cells 150 have been used to fill the unloading area 100 within the boundary 180. In other embodiments, the shape may provide an irregular tessellation of cells 150. In some examples, the cells 150 may be of different shapes and/or different sizes to further optimise the area usage, as will be appreciated by the person skilled in the art.
[0062] An example of different cell shapes is shown in FIGs. 4A and 4B. In FIG. 4A, a square cell 150 is shown with an irregularly shaped load 170. The use of square cells 150 may provide a simple approach to the distribution of cells 150 in the unloading areas. However, as can be seen, there may be a significant amount of unused space in the cell 150, in particular the corners of the cell 150. In FIG. 4B, a hexagonal cell 150 is shown with the same load 170. As can be seen, there is much less unused space in the cell 150. Different cell shapes may therefore be appropriate for different types of load in order to minimise unused space.
[0063] The size and shape of the cells 150 may also be dependent on one or more unloading area parameters and/or one or more unloading cycle parameters comprises. These parameters are discussed in more detail in relation to step 230. For example, the topology (e.g., size and shape) of the unloading area 100 may influence how the cells 150 are allocated. For example a square unloading area 100 is easily filled by square cells 150, whereas a circular unloading area 100 may be better filled by hexagonal cells 150. Parameters of the material may influence the shape and size of the cells 150, as different materials stack in different ways and form different shapes on the ground when unloaded. The size of the cells 150 may be correlated to the dimensions of the vehicle 120, for example the width of the unloading bucket. The method of delivery may also influence the shape of the cells 150, for example where hexagonal cells 150 are more suited to methods of delivery resulting in conical deposits. These parameters are discussed in further detail in relation to step 230.
[0064] By using smaller cells 150, it can be ensured that the entire cell area is used. That is to say, a larger cell may not be completely filled when a load is deposited, whereas a smaller
cell would be. As discussed below, one or more cells 150 can be allocated to an unloading location 140 to ensure that the unloading location 140 is appropriately sized for a particular load. It will be appreciated that a threshold for the minimum size of the cells 150 may be set to provide a balance with the computing resources required to process the cells 150 and allocation of unloading locations 140.
[0065] Returning to FIG. 2, at step 230, one or more unloading locations 140 are determined. As discussed above, an unloading location 140 is a place within the unloading area 100 at which a load of bulk material 110 may be unloaded. As will be described in relation to FIGs. 6 and 7, an unloading location comprises one or more contiguous cells 150 of the plurality of cells 150 in the unloading area 100.
[0066] In particular, the unloading location 140 is determined based on one or more unloading area parameters and one or more unloading cycle parameters. That is to say, properties of the unloading area 100, material 110, and the vehicle 120 are taken into account to determine a suitable unloading location 140 for a particular load. By taking these factors into account, the use of space, throughput of material deposition, and applicability of the method may be improved.
[0067] The one or more unloading area parameters comprises at least one of a topology of the unloading area, access point information of the unloading area, and data describing a number of filled cells of the unloading area 100. For example, the topology (e.g., size and shape) of the unloading area 100 may influence how the cells 150 are allocated. Knowing how many cells are filled and where they are located can provide information on how much more material can be deposited in total in the unloading area 100 and where it is best to perform the next unloading cycle. Access point information can include the number and location of access points, which can be used to determine routes for the vehicle 120 to reach an unloading location 140, and in some embodiment to split the unloading area 100 into sub-areas, each filled only by vehicles entering via a dedicated access point.
[0068] The one or more unloading cycle parameters comprises, for example, load parameters and vehicle parameters. Load parameters may include at least one of a volume of the load, a material type of the load, a particle mobility of the load, a lump size of the material, a density of the material, a moisture content of the material, and an angle of repose of the material. For example, the volume of the load can be used to determine the minimum required area for an unloading location 140 in a specific unloading cycle. The mass of the load may be used to determine how much material the vehicle 120 can deliver in a single loading cycle. The other parameters be used to determine the shape and size of the unloading location 140, as
different materials stack in different ways and form different shapes on the ground when unloaded. For example, sand will likely form a cone shape, with different types of sand (with different moisture or different grain sizes) having different angles of repose. Minerals or stone, for example, having larger lump sizes, will have more of an irregular shape when unloaded. Vehicle parameters may include one or more dimensions of a vehicle delivering the load, and/or an unloading method of a vehicle delivering the load. The dimensions of the vehicle 120 (in particular the width of the unloading bucket) plays a role in determining the size of the unloading location 140. For example, a rectangular shaped unloading location 140 may have one of the two dimensions correlated to the width of the unloading bucket. The size of the vehicle 120 may also effect which routes are suitable for the vehicle 120 to reach the unloading location 140. The method of delivery can influence the shape of the unloading location 140. For example, a vehicle 120 that unloads while at a standstill may form a conical shape of the unloaded material, whereas material unloaded by a moving vehicle will instead form a more elongate shape.
[0069] One approach to determining an unloading location 140 is to use a fixed cell size for each unloading location 140. For example, each unloading location 140 may be comprised of a single cell 150, four cells 150 arranged in a square, or other suitable arrangements. Another approach is to determine an unloading location 140 by adding cells 150 sequentially. This approach will be described in relation to FIGs. 6 and 7.
[0070] Step 230 can be repeated a number of times in order to determine a plurality of unloading locations 140. In this way, substantially the entire unloading area 100 can be filled. Each unloading location 140 may correspond to a load being delivered by a vehicle 120. For example, a single vehicle 120 may deliver all loads to the unloading area 100, or a plurality of vehicles 120 may each deliver one or more loads to the unloading area 100.
[0071] The determination of a plurality of unloading locations 140 can be performed in a number of ways. In some embodiments, unloading locations 140 can be determined sequentially, until no further unloading locations 140 can be determined in the unloading area 100. Each unloading location 140 may then be determined individually based on the unloading area parameters and unloading cycle parameters. This may be performed partially simultaneously, as described in relation to FIG. 5.
[0072] In some embodiments, the placement of unloading locations 140 may be optimised using a machine-learning algorithm. For example, a neural network may be trained based on the resulting utilization of an unloading area 100 when it is full. This may be based on model or historical data of different combinations of unloading locations 140 and scored based on
parameters such the resulting unused area, the total required unloading time, etc. The algorithm may also determine an unloading order for the unloading locations 140, as unloading locations orders resulting in poor performance (e.g. large unused areas is due to poor positioning or vehicles not being able to reach a unloading location 140) will be taken into account.
[0073] It may be additionally desired to validate that allocation of a plurality of unloading locations 140 to determine if there is a solution that may provide a more efficient use of the unloading area 100. To achieve this, a number of sets of unloading locations may be determined and compared.
[0074] For example, the plurality of unloading locations 140 determined by repeating step 230 may be designated as a first set of unloading locations 140. An unused area of the resulting unloading area 100 can then be determined, and assigned a score. The score may be, for example, an absolute value of the unused area, a percentage of the total unloading area, or other value readily envisageable by the person skilled in the art. Additionally or alternatively, the total required unloading time for a set of unloading locations 140 may be used to determine the score. The score may be a weighted sum of unused area, unloading time, and other relevant parameters. This set of unloading locations 140 and its associated score may then be stored.
[0075] The method 200 may then return to the end of step 220, and a new set of unloading locations 140 may be determined by repeating step 230. Similarly, an unused area and/or total unloading time of the unloading area 100 resulting from the new set of unloading locations 140 can then be determined, and assigned a score. The new set of unloading locations 140 and its associated score may then be stored. This process may be repeated to simulate a number of different sets of unloading locations 140. Alternatively, historical data describing a plurality of unloading cycles may be used to determine one or more sets of unloading locations.
[0076] The scores of the different sets of unloading locations 140 may then be compared, and the set of unloading locations 140 having the best score may be selected. In this way, the allocation of unloading locations 140 can be validated to ensure that the solution providing the most efficient use of the unloading area 100 is used.
[0077] At optional step 240, if a plurality of unloading locations 140 has been determined, an unloading order for the plurality of unloading locations 140 may also be determined. This can be achieved based on the method 500 described in relation to FIG. 5, using a machine learning approach that will determine an order for a resulting set of unloading locations 140, or using a rule-based approach such as always filling the unloading area 100 from a particular location.
[0078] As discussed above, an unloading location 140 can be determined by adding cells 150 sequentially. FIG. 5 is a flow diagram of a method 500 for determining an unloading location 140 in this way. The steps of the method 500 are sub-steps of step 230 of the method 200. FIGs. 6A to 6C illustrate examples of different stages of step 230.
[0079] At step 510, a preliminary unloading location is determined. The preliminary unloading location may comprise at least one empty cell from the plurality of cells 150. The preliminary unloading location selected based on a number of different criteria. For example, a cell 150-1 may be allocated to the preliminary unloading location based on unloading area parameters such as the access points of the unloading area 100 (for example the cell’s proximity to an access point) and data describing a number of filled cells of the unloading area 100 (for example the cell’s proximity to an existing load in the unloading area 100). The cell 150-1 may also be selected based on unloading cycle parameters such as dimensions of a vehicle 120 delivering the load, and/or an unloading method of a vehicle 120 delivering the load. This may include using vehicle motion calculations to ensure that the vehicle 120 can access the preliminary unloading location and manoeuvre to deposit its load. As shown in FIG. 6A, a first cell 150-1 is selected as the preliminary unloading location 140-1, as indicated by the hatched area.
[0080] At step 520, it is determined if the size of the preliminary unloading location meets a size criterion of the load to be deposited. In some embodiments, the size criterion describes the area taken up by the deposited load. This can be based on parameters that describe how the material 110 will perform when unloaded into a heap, as discussed above. These may include unloading area parameters such as a topology of the unloading area, and unloading cycle parameters such as a volume of the load, a material type of the load, a particle mobility of the load, an angle of repose of the material, and/or an unloading method of a vehicle delivering the load. In this way, it can be determined if the area of the preliminary unloading location is sufficient to receive the load.
[0081] If the size of the preliminary unloading location meets the size criterion, the method 500 moves to step 530, where the preliminary unloading location is selected as the unloading location 140. The vehicle 120 can then transport the load to the unloading location 140 and deposit the material 110 at that location.
[0082] If the size of the preliminary unloading location does not meet the size criterion, the method 500 moves to step 540, where an empty cell adjacent to the preliminary unloading location is added to the preliminary unloading location. The next cell can be selected based on unloading area parameters such as the access points of the unloading area 100, and data
describing a number of filled cells of the unloading area 100, and/or unloading cycle parameters such as dimensions of a vehicle delivering the load, and/or an unloading method of a vehicle delivering the load. For example, the number and locations of filled cells 150 can be used to ensure contiguity between unloading locations 140 so to not leave any unreachable space between them. The location of access points can be used in determining that the new cell 150 will not block the path for the vehicle 120. The next cell can alternatively or additionally be selected based on a shape constraint for the unloading location 140, as will be described in relation to FIG. 7. As shown in FIG. 6B, a second cell 150-2, adjacent to the first cell 150-1, has been added to the preliminary unloading location 140-1, as indicated by the hatched area. [0083] As also shown in FIG. 6B, a second preliminary unloading location 140-2 has begun to be assigned, as indicated by the spotted area. The second preliminary unloading location 140-2 may correspond to a load being delivered by a second vehicle, or to a future load to be delivered by the same vehicle. In this case, a first cell 150-1’ is selected as the second preliminary unloading location 140-2. The second preliminary unloading location 140-2 may be assigned after the first preliminary unloading location 140-1 has been completed, or may be assigned partially simultaneously to the first preliminary unloading location 140-1.
[0084] After the second cell 150-2 has been added to the preliminary unloading location 140-1, the method 500 returns to sub-step 520, where it is determined if the size of the new preliminary unloading location 140-1 meets the size criterion. Again, if the size of the preliminary unloading location 140-1 meets the size criterion, the method 500 moves to substep 530, where the preliminary unloading location 140-1 is selected as the unloading location 140.
[0085] However, if the size of the preliminary unloading location 140-1 still does not meet the size criterion, the method 500 returns to sub-step 540, where a further cell is added to the preliminary unloading location 140-1. As shown in FIG. 6C, a third cell 150-3, adjacent to the second cell 150-2, has been added to the preliminary unloading location 140-1, as indicated by the hatched area. It will be appreciated that the third cell 150-3 could be any of the cells adjacent to the preliminary unloading location 140-1 shown in FIG. 6B. In this case, a constraint has been added that the unloading location 140 must be linear in shape, and so only a single option is available for the third cell 150-3. This process is also performed for the second preliminary unloading location 140-2. As shown in FIG. 6C, a further cell 150-2’ has been added to the second preliminary unloading location 140-2, as indicated by the spotted area.
[0086] The method 500 can be repeated a number of times in order to determine a plurality of unloading locations 140. In this way, substantially the entire unloading area 100 can be
filled. As discussed above, the determination of unloading locations 140 may be subject to different constraints on the shape of the unloading locations 140.
[0087] FIGs. 7A to 7C illustrate examples of unloading locations 140 determined according to the method 500. In each case, three unloading locations 140 are shown: a first unloading location 140-1 indicated by a hatched area, a second unloading location 140-2 indicated by a spotted area, and a third unloading location 140-3 indicated by a dashed area. Each set of unloading locations 140 is determined subject to different constraints on the shape of the unloading locations 140. It will be appreciated that other shape constraints beyond those shown in FIGs. 7A to 7C may be applied.
[0088] In FIG. 7A, a linear constraint has been applied to the determination of unloading locations 140. As such, each of unloading locations 140-1, 140-2 and 140-3 has a linear shape. This represents a continuation of the determination of the unloading locations 140 shown in FIG. 6. This may enable a simple allocation of unloading locations 140, and be suitable for vehicles 120 that unload material 110 when moving in a straight line.
[0089] In FIG. 7B, a rectangular constraint has been applied to the determination of unloading locations 140. As such, each of unloading locations 140-1, 140-2 and 140-3 has a rectangular shape. This may enable a simple allocation of unloading locations 140, and be suitable for vehicles 120 that unload material 110 in a broader manner.
[0090] In FIG. 7C, no constraint has been applied to the determination of unloading locations 140. As such, each of unloading locations 140-1, 140-2 and 140-3 has a shape determined based only on the unloading area parameters and one or more unloading cycle parameters. This enables a more free allocation of unloading locations 140.
[0091] The dimensions of the vehicle 120 and its method of delivery can influence the choice of a next cell 150 in a sequential cell allocation process when a certain shape constraint should be fulfilled. Indeed, the shape constraint may further constrain the method of delivery, or the method of delivery itself may constrain the shape of the unloading locations 140.
[0092] FIG. 8 is a schematic diagram of a computer system 800 for implementing examples disclosed herein. The computer system 800 is adapted to execute instructions from a computer-readable medium to perform these and/or any of the functions or processing described herein. The computer system 800 may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, or the Internet. While only a single device is illustrated, the computer system 800 may include any collection of devices that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein. Accordingly, any reference in the disclosure and/or claims to
a computer system, computing system, computer device, computing device, control system, control unit, electronic control unit (ECU), processor device, processing circuitry, etc., includes reference to one or more such devices to individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein. For example, control system may include a single control unit or a plurality of control units connected or otherwise communicatively coupled to each other, such that any performed function may be distributed between the control units as desired. Further, such devices may communicate with each other or other devices by various system architectures, such as directly or via a Controller Area Network (CAN) bus, etc.
[0093] The computer system 800 may comprise at least one computing device or electronic device capable of including firmware, hardware, and/or executing software instructions to implement the functionality described herein. The computer system 800 may include processing circuitry 802 (e.g., processing circuitry including one or more processor devices or control units), a memory 804, and a system bus 806. The computer system 800 may include at least one computing device having the processing circuitry 802. The system bus 806 provides an interface for system components including, but not limited to, the memory 804 and the processing circuitry 802. The processing circuitry 802 may include any number of hardware components for conducting data or signal processing or for executing computer code stored in memory 804. The processing circuitry 802 may, for example, include a general-purpose processor, an application specific processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a circuit containing processing components, a group of distributed processing components, a group of distributed computers configured for processing, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. The processing circuitry 802 may further include computer executable code that controls operation of the programmable device.
[0094] The system bus 806 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and/or a local bus using any of a variety of bus architectures. The memory 804 may be one or more devices for storing data and/or computer code for completing or facilitating methods described herein. The memory 804 may include database components, object code components, script components, or other types of information structure for supporting the various activities herein. Any distributed or local memory device may be utilized with the systems and methods of this description. The memory 804 may be communicably connected to the processing circuitry 802
(e.g., via a circuit or any other wired, wireless, or network connection) and may include computer code for executing one or more processes described herein. The memory 804 may include non-volatile memory 808 (e.g., read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), etc.), and volatile memory 810 (e.g., random-access memory (RAM)), or any other medium which can be used to carry or store desired program code in the form of machineexecutable instructions or data structures and which can be accessed by a computer or other machine with processing circuitry 802. A basic input/output system (BIOS) 812 may be stored in the non-volatile memory 808 and can include the basic routines that help to transfer information between elements within the computer system 800.
[0095] The computer system 800 may further include or be coupled to a non-transitory computer-readable storage medium such as the storage device 814, which may comprise, for example, an internal or external hard disk drive (HDD) (e.g., enhanced integrated drive electronics (EIDE) or serial advanced technology attachment (SATA)), HDD (e.g., EIDE or SATA) for storage, flash memory, or the like. The storage device 814 and other drives associated with computer-readable media and computer-usable media may provide nonvolatile storage of data, data structures, computer-executable instructions, and the like.
[0096] Computer-code which is hard or soft coded may be provided in the form of one or more modules. The module(s) can be implemented as software and/or hard-coded in circuitry to implement the functionality described herein in whole or in part. The modules may be stored in the storage device 814 and/or in the volatile memory 810, which may include an operating system 816 and/or one or more program modules 818. All or a portion of the examples disclosed herein may be implemented as a computer program 820 stored on a transitory or non- transitory computer-usable or computer-readable storage medium (e.g., single medium or multiple media), such as the storage device 814, which includes complex programming instructions (e.g., complex computer-readable program code) to cause the processing circuitry 802 to carry out actions described herein. Thus, the computer-readable program code of the computer program 820 can comprise software instructions for implementing the functionality of the examples described herein when executed by the processing circuitry 802. In some examples, the storage device 814 may be a computer program product (e.g., readable storage medium) storing the computer program 820 thereon, where at least a portion of a computer program 820 may be loadable (e.g., into a processor) for implementing the functionality of the examples described herein when executed by the processing circuitry 802. The processing
circuitry 802 may serve as a controller or control system for the computer system 800 that is to implement the functionality described herein.
[0097] The computer system 800 may include an input device interface 822 configured to receive input and selections to be communicated to the computer system 800 when executing instructions, such as from a keyboard, mouse, touch-sensitive surface, etc. Such input devices may be connected to the processing circuitry 802 through the input device interface 822 coupled to the system bus 806 but can be connected through other interfaces, such as a parallel port, an Institute of Electrical and Electronic Engineers (IEEE) 1394 serial port, a Universal Serial Bus (USB) port, an IR interface, and the like. The computer system 800 may include an output device interface 824 configured to forward output, such as to a display, a video display unit (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 800 may include a communications interface 826 suitable for communicating with a network as appropriate or desired.
[0098] The operational actions described in any of the exemplary aspects herein are described to provide examples and discussion. The actions may be performed by hardware components, may be embodied in machine-executable instructions to cause a processor to perform the actions, or may be performed by a combination of hardware and software. Although a specific order of method actions may be shown or described, the order of the actions may differ. In addition, two or more actions may be performed concurrently or with partial concurrence.
[0099] The described examples and their equivalents may be realized in software or hardware or a combination thereof. The examples may be performed by general purpose circuitry. Examples of general purpose circuitry include digital signal processors (DSP), central processing units (CPU), co-processor units, field programmable gate arrays (FPGA) and other programmable hardware. Alternatively or additionally, the examples may be performed by specialized circuitry, such as application specific integrated circuits (ASIC). The general purpose circuitry and/or the specialized circuitry may, for example, be associated with or comprised in an electronic apparatus such as a vehicle control unit.
[00100] The electronic apparatus may comprise arrangements, circuitry, and/or logic according to any of the examples described herein. Alternatively or additionally, the electronic apparatus may be configured to perform method steps according to any of the examples described herein.
[00101] According to some examples, a computer program product comprises a non- transitory computer readable medium such as, for example, a universal serial bus (USB)
memory, a plug-in card, an embedded drive, or a read only memory (ROM). FIG. 9 illustrates an example computer readable medium in the form of a compact disc (CD) ROM 900. The computer readable medium has stored thereon a computer program 940 comprising program instructions. The computer program is loadable into a data processor (e.g., a data processing unit) 920, which may, for example, be comprised in a vehicle control unit 910. When loaded into the data processor, the computer program may be stored in a memory 930 associated with, or comprised in, the data processor. According to some examples, the computer program may, when loaded into, and run by, the data processor, cause execution of method steps according to, for example, any of the methods described herein.
[00102] FIG. 10 schematically illustrates, in terms of a number of functional units, the components of a control unit 1000 according to some examples. The control unit may be comprised in a vehicle, e.g., in the form of a vehicle motion management (VMM) unit. A processor device in the form of processing circuitry 1010 is provided using any combination of one or more of a suitable central processing unit (CPU), multiprocessor, microcontroller, digital signal processor (DSP), or similar; capable of executing software instructions stored in a computer program product, e.g. in the form of a storage medium 1030. The processing circuitry 1010 may further be provided as at least one application specific integrated circuit ASIC, or field programmable gate array FPGA.
[00103] Particularly, the processing circuitry 1010 is configured to cause the control unit 1000 to perform a set of operations, or steps; for example, the methods discussed in connection with FIGs. 2 and 5.
[00104] For example, the storage medium 1030 may store a set of operations, and the processing circuitry 1010 may be configured to retrieve the set of operations from the storage medium 1030 to cause the control unit 1000 to perform the set of operations. The set of operations may be provided as a set of executable instructions. Thus, the processing circuitry 1010 is thereby arranged to execute methods as herein disclosed.
[00105] The storage medium 1030 may comprise persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid state memory or even remotely mounted memory.
[00106] The control unit 1000 may further comprise an interface 1020 for communication with at least one external device. As such, the interface 1020 may comprise one or more transmitters and receivers, comprising analogue and digital components and a suitable number of ports for wireline or wireless communication.
[00107] The processing circuitry 1010 controls the general operation of the control unit 1000, e.g., by sending data and control signals to the interface 1020 and the storage medium 1030, by receiving data and reports from the interface 1020, and by retrieving data and instructions from the storage medium 1030. Other components, as well as the related functionality, of the control node are omitted in order not to obscure the concepts presented herein.
[00108] In some examples, the control unit 1000 may be seen as a control system, or may be comprised in a control system. The control system may be configured for vehicle motion management (VMM).
[00109] The terminology used herein is for the purpose of describing particular aspects only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items. It will be further understood that the terms "comprises," "comprising," "includes," and/or "including" when used herein specify the presence of stated features, integers, actions, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, actions, steps, operations, elements, components, and/or groups thereof.
[00110] It will be understood that, although the terms first, second, etc., may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element without departing from the scope of the present disclosure.
[00111] Relative terms such as "below" or "above" or "upper" or "lower" or "horizontal" or "vertical" may be used herein to describe a relationship of one element to another element as illustrated in the Figures. It will be understood that these terms and those discussed above are intended to encompass different orientations of the device in addition to the orientation depicted in the Figures. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element, or intervening elements may be present. In contrast, when an element is referred to as being "directly connected" or "directly coupled" to another element, there are no intervening elements present.
[00112] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to
which this disclosure belongs. It will be further understood that terms used herein should be interpreted as having a meaning consistent with their meaning in the context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein. [00113] It is to be understood that the present disclosure is not limited to the aspects described above and illustrated in the drawings; rather, the skilled person will recognize that many changes and modifications may be made within the scope of the present disclosure and appended claims. In the drawings and specification, there have been disclosed aspects for purposes of illustration only and not for purposes of limitation, the scope of the disclosure being set forth in the following claims.
Claims
1. A computer-implemented method (200) for determining an unloading location (140) for a load of bulk material (110), the method comprising: receiving boundary data of an unloading area (100); determining a plurality of cells (150) in the unloading area (100) that substantially fill the unloading area (100); determining an unloading location (140) to receive a load of bulk material (110) based on one or more unloading area parameters and one or more unloading cycle parameters; and wherein the unloading location (140) comprises one or more contiguous cells of the plurality of cells (150) in the unloading area (100).
2. The computer-implemented method (200) of claim 1, wherein determining the unloading location (140) comprises: determining a preliminary unloading location comprising at least one empty cell (150); determining if the size of the preliminary unloading location meets a size criterion of the load, and if the size of the preliminary unloading location meets the size criterion, selecting the preliminary unloading location as the unloading location (140), if the size of the preliminary unloading location does not meet the size criterion, adding an adjacent empty cell (150) to the preliminary unloading location.
3. The computer-implemented method (200) of claim 1 or 2, further comprising determining a set of unloading locations comprising a plurality of unloading locations (140) that substantially fill the unloading area (100).
4. The computer-implemented method (200) of claim 3, further comprising: determining a plurality of sets of unloading locations; determining an unused area of the unloading area (100) associated with each set of unloading locations;
selecting the set of unloading locations having the smallest unused area.
5. The computer-implemented method (200) of claim 4, wherein determining the unused area of the unloading area (100) associated with each set of unloading locations comprises simulating a plurality of unloading cycles or using historical data describing a plurality of unloading cycles.
6. The computer-implemented method (200) of any of claims 3 to 5, comprising determining an unloading order for the plurality of unloading locations (1 0).
7. The computer-implemented method (200) of any preceding claim, wherein receiving boundary data of the unloading area (100) comprises receiving or determining a discretisation of the boundary (130) of the unloading area (100).
8. The computer-implemented method (200) of any preceding claim, wherein each of the plurality of cells (150) comprises a tessellating shape.
9. The computer-implemented method (200) of any preceding claim, wherein the plurality of cells (150) are each of the same shape and/or size.
10. The computer-implemented method (200) of any preceding claim, wherein the one or more unloading area parameters comprises at least one of: a topology of the unloading area (100), access point information of the unloading area (100), and data describing a number of filled cells of the unloading area (100).
11. The computer-implemented method (200) of any preceding claim, wherein the one or more unloading cycle parameters comprises at least one of: a volume of the load, a mass of the load, a material type of the load, a particle mobility of the load, one or more dimensions of a vehicle (120) delivering the load, and an unloading method of a vehicle (120) delivering the load.
12. The computer-implemented method (200) of any preceding claim, wherein the load of bulk material (110) comprises a loose material such as mineral, ore, coal, woodchips, sand, gravel, clay, cement, ash, or stone.
13. The computer-implemented method (200) of any preceding claim, comprising determining an unloading location (140) having a predefined shape, such as a substantially linear shape or a substantially square shape.
14. A vehicle (120) comprising processing circuitry to perform the computer-implemented method (200) of any of claims 1 to 13.
15. The vehicle (120) of claim 14, wherein the vehicle (120) is an autonomous vehicle.
16. The vehicle of claim 14 or 15, wherein the vehicle (120) is an excavator, loader, articulated hauler, or dump truck.
17. A computer program product comprising program code for performing, when executed by processing circuitry, the computer-implemented method (200) of any of claims 1 to 13.
18. A control system comprising one or more control units configured to perform the computer-implemented method (200) of any of claims 1 to 13.
19. A non-transitory computer-readable storage medium comprising instructions, which when executed by processing circuitry, cause the processing circuitry to perform the computer-implemented method (200) of any of claims 1 to 13.
20. A computer system comprising processing circuitry configured to perform the computer-implemented method (200) of any of claims 1 to 13.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2023/054217 WO2024175177A1 (en) | 2023-02-20 | 2023-02-20 | Material unloading |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2023/054217 WO2024175177A1 (en) | 2023-02-20 | 2023-02-20 | Material unloading |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024175177A1 true WO2024175177A1 (en) | 2024-08-29 |
Family
ID=85285237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2023/054217 WO2024175177A1 (en) | 2023-02-20 | 2023-02-20 | Material unloading |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024175177A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070219759A1 (en) * | 2004-01-16 | 2007-09-20 | Ghazali Mazlin B | Method Of Subdividing A Plot Of Land For Housing And A Housing Subdivision So Formed |
US20210097458A1 (en) * | 2019-10-01 | 2021-04-01 | Caterpillar Inc. | Determination of a lift count metric |
AU2022100025A4 (en) * | 2021-08-25 | 2022-03-03 | Fortescue Metals Group Ltd | Tracking Method |
-
2023
- 2023-02-20 WO PCT/EP2023/054217 patent/WO2024175177A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070219759A1 (en) * | 2004-01-16 | 2007-09-20 | Ghazali Mazlin B | Method Of Subdividing A Plot Of Land For Housing And A Housing Subdivision So Formed |
US20210097458A1 (en) * | 2019-10-01 | 2021-04-01 | Caterpillar Inc. | Determination of a lift count metric |
AU2022100025A4 (en) * | 2021-08-25 | 2022-03-03 | Fortescue Metals Group Ltd | Tracking Method |
Non-Patent Citations (2)
Title |
---|
DUANSHUN LI ET AL: "Classical Planning Model-Based Approach to Automating Construction Planning on Earthwork Projects", COMPUTER-AIDED CIVIL AND INFRASTRUCTURE ENGINEERING, BLACKWELL PUBLISHERS, MALDEN, US, vol. 34, no. 4, 24 October 2018 (2018-10-24), pages 299 - 315, XP072008324, ISSN: 1093-9687, DOI: 10.1111/MICE.12420 * |
PRADHANANGA NIPESH ET AL: "Cell-based construction site simulation model for earthmoving operations using real-time equipment location data", VISUALIZATION IN ENGINEERING, vol. 3, no. 1, 1 December 2015 (2015-12-01), XP093041976, Retrieved from the Internet <URL:https://viejournal.springeropen.com/counter/pdf/10.1186/s40327-015-0025-3.pdf> DOI: 10.1186/s40327-015-0025-3 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112014005346B4 (en) | Temperature-based flash memory system maintenance | |
CN112299048B (en) | Train loading and distributing system and method based on unmanned grab bucket running mode | |
JP2018142308A (en) | Learner's online hierarchical ensemble for activity time prediction in open-pit mining | |
US10852707B2 (en) | Blend control truck assignment monitoring system and method | |
DE102020119190A1 (en) | Storage device and method of operation thereof | |
CN113129262B (en) | Method, device, storage medium and electronic device for automatic detection and supplement of soil dumping position | |
CN111324092B (en) | Managing site productivity using telemetry data | |
CN103541732A (en) | A system and method for monitoring mining machine efficiency | |
CN103708161A (en) | Gravity goods shelf parallel layout system and method | |
WO2024066104A1 (en) | Dumping site generation method and apparatus, electronic device, and storage medium | |
CN112381255A (en) | Digital mine mining and transporting equipment scheduling method and system, intelligent terminal and storage medium | |
CN112396362A (en) | Method and device for determining driving destination and storage medium | |
CN114164878B (en) | Method, processor, system and excavator for identifying working conditions | |
WO2024175177A1 (en) | Material unloading | |
CN111047545A (en) | Construction site data analysis system | |
CN107797938A (en) | Accelerate to go the method and storage device for distributing command process | |
CN208086493U (en) | A kind of cutting agency and material stocking device | |
CN210279431U (en) | Dual-purpose tower-type sand making equipment | |
CN102493522A (en) | Statistic method of output of mining excavator | |
CN111721374A (en) | Construction site data analysis terminal | |
WO2020224768A1 (en) | A method for estimating work cycles of a working operation for a working machine | |
CN108100688A (en) | A kind of feeding device and material stacking and fetching method | |
CN112650221B (en) | Flat ground path generation method, flat ground path generation device, processing equipment and storage medium | |
CN108128639A (en) | A kind of bridge-type feeding device and material stacking and fetching method | |
CN208439989U (en) | A kind of bridge-type feeding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23706345 Country of ref document: EP Kind code of ref document: A1 |