Palletizing method, apparatus, electronic device, machine readable storage medium, and system

By identifying and analyzing the label positions and free space of the objects to be stacked, the system automatically adjusts their placement to ensure the correct label orientation, solving the problem of manual label orientation adjustment and achieving a highly efficient automated palletizing process.

CN117361063BActive Publication Date: 2026-08-25HANGZHOU HIKROBOT TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202311528345.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-15
Publication Date
2026-08-25
Estimated Expiration
2043-11-15

AI Technical Summary

Technical Problem

When stacking packages after the labels have been affixed, manual intervention is required to adjust the package orientation so that the labels face outwards from the stack, resulting in low efficiency.

Method used

By identifying the label position, size information, and available space of the object to be stacked, candidate placement positions that meet the label orientation requirements are determined, and the actual placement position is determined based on the candidate position to ensure that the label orientation meets the requirements.

Benefits of technology

Without requiring manual intervention, the orientation of the labels on the stacked objects meets the application requirements, improving the efficiency and accuracy of automated palletizing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117361063B_ABST
    Figure CN117361063B_ABST
Patent Text Reader

Abstract

The application provides a stacking method, device, electronic equipment, machine readable storage medium and system. The method comprises: in the case of identifying a label-pasted object to be stacked, determining a candidate placement position for the label of the object to be stacked to face a condition according to the label position of the object to be stacked, the size information of the object to be stacked, and the position information of the current idle space; determining the actual placement position of the object to be stacked according to the candidate placement position; wherein the actual placement position is used for placing the object to be stacked. The method can ensure that the label orientation of the stacked object can meet the application requirements in the case of stacking the label-pasted object without manual intervention.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of image recognition and motion control technology for industrial robots, and in particular to a palletizing method, apparatus, electronic device, machine-readable storage medium and system. Background Technology

[0002] Palletizing refers to the process of picking up packages one by one from a conveyor belt or other process location and placing them onto carriers such as pallets or stacks according to rules.

[0003] In traditional palletizing solutions, packages are typically labeled after they are stacked. However, in real-world scenarios, there are still instances where packages are labeled before being stacked. In such cases, manual intervention is often required to adjust the orientation of the stacked packages so that the labels face outwards from the stack, and then the labels are scanned. Summary of the Invention

[0004] In view of this, this application provides a palletizing method, apparatus, electronic device, machine-readable storage medium, and system.

[0005] According to a first aspect of the embodiments of this application, a palletizing method is provided, comprising:

[0006] When a labeled object to be placed is identified, a candidate placement position is determined based on the label position of the object to be placed, the size information of the object to be placed, and the position information of the current free space, so that the label of the object to be placed faces the condition.

[0007] Based on the candidate placement positions, the actual placement position of the object to be stacked is determined; wherein, the actual placement position is used to place the object to be stacked.

[0008] According to a second aspect of the embodiments of this application, a palletizing device is provided, comprising:

[0009] The first determining unit is used to determine, when a labeled object to be placed is identified, a candidate placement position that makes the label of the object to be placed face the conditions based on the label position of the object to be placed, the size information of the object to be placed, and the position information of the current free space.

[0010] The second determining unit is used to determine the actual placement position of the object to be stacked based on the candidate placement positions; wherein the actual placement position is used to place the object to be stacked.

[0011] According to a third aspect of the present application, an electronic device is provided, including a processor and a memory, the memory storing machine-executable instructions executable by the processor, the processor being configured to execute the machine-executable instructions to implement the method provided in the first aspect.

[0012] According to a fourth aspect of the embodiments of this application, a machine-readable storage medium is provided, wherein machine-executable instructions are stored therein, and when the machine-executable instructions are executed by a processor, the method provided in the first aspect is implemented.

[0013] According to a fifth aspect of the embodiments of this application, a palletizing system is provided, comprising: a camera, a robotic arm, and a control device; wherein:

[0014] The camera is used to capture images of objects to be stacked, identify whether the objects to be stacked have labels based on the captured images, and identify the size information of the objects to be stacked.

[0015] The control device is used to, upon recognizing a labeled object to be stacked, determine a candidate placement position that allows the label of the object to be stacked to face a condition based on the label position of the object to be stacked, the size information of the object to be stacked, and the position information of the current free space; and determine the actual placement position of the object to be stacked based on the candidate placement position.

[0016] The robotic arm is used to place the object to be stacked at the actual placement position according to the actual placement position.

[0017] The palletizing method of this application, when recognizing a labeled object to be palletized, determines candidate placement positions where the label orientation of the object meets the conditions based on the label position, the size information of the object, and the position information of the current free space. Based on the determined candidate placement positions, the actual placement position of the object is determined. By introducing label constraints during the object palletizing process, the label orientation of the palletized objects can meet the application requirements without manual intervention. Attached Figure Description

[0018] Figure 1 This is a schematic flowchart of a palletizing method provided in an embodiment of this application;

[0019] Figure 2 This is a schematic diagram illustrating the spatial description of a palletizing space provided in an embodiment of this application;

[0020] Figure 3 This is a schematic diagram of a space update rule provided in an embodiment of this application;

[0021] Figure 4 This is a schematic diagram of a spatial update calculation method provided in an embodiment of this application;

[0022] Figure 5 This is a schematic diagram of a process for determining the palletizing position provided in an embodiment of this application;

[0023] Figure 6 This is a schematic diagram illustrating the relative relationship between a package and a pallet, provided in an embodiment of this application.

[0024] Figure 7 This is a schematic diagram of the structure of a palletizing device provided in an embodiment of this application;

[0025] Figure 8 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0026] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0027] The terminology used in this application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. The singular forms “a,” “the,” and “the” used in this application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.

[0028] To enable those skilled in the art to better understand the technical solutions provided in the embodiments of this application, and to make the above-mentioned objectives, features and advantages of the embodiments of this application more apparent and understandable, the technical solutions in the embodiments of this application will be further described in detail below with reference to the accompanying drawings.

[0029] It should be noted that the sequence number of each step in the embodiments of this application does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0030] Please see Figure 1 This is a flowchart illustrating a palletizing method provided in an embodiment of this application, as shown below. Figure 1 As shown, the palletizing method may include the following steps:

[0031] Step S100: When a labeled object to be placed is identified, the label of the object to be placed is oriented towards a candidate placement position that meets the conditions, based on the label position of the object to be placed, the size information of the object to be placed, and the position information of the current free space.

[0032] In this embodiment of the application, during the stacking of labeled objects, a constraint on the labels is introduced. This means that not only the size of the objects themselves and the location information of the free space are considered, but also that the orientation of the labels on the objects must meet certain conditions. For example, the labels on the objects to be stacked should face outwards.

[0033] Accordingly, during the automatic palletizing process, when a labeled object to be stacked is identified, the system can determine a candidate placement position that allows the label of the object to be stacked to face the conditions based on the label position, the size information of the object, and the position information of the current free space.

[0034] For example, based on the size information of the object to be stacked and the current available position information, the position where the object to be stacked can be determined. Then, based on the label orientation of the object to be stacked in the corresponding position, candidate placement positions that make the label orientation of the object to be stacked meet the conditions can be determined.

[0035] For example, the number of tagged objects identified above may include one or more.

[0036] Step S110: Determine the actual placement position of the object to be stacked based on the candidate placement positions; wherein, the actual placement position is used to place the object to be stacked.

[0037] In this embodiment of the application, after determining a candidate placement position that ensures the label of the object to be stacked faces the desired orientation as described above, the actual placement position for placing the object can be determined based on the candidate placement position. This actual placement position ensures the label of the object to be stacked faces the desired orientation.

[0038] For example, from the candidate placement locations, the actual placement location for placing the object to be stacked is determined.

[0039] For example, when there are multiple candidate placement locations, one location can be selected from the multiple candidate placement locations as the actual placement location. For example, one location can be randomly selected from the multiple candidate placement locations as the actual placement location; or, the optimal candidate placement location can be selected from the multiple candidate placement locations according to a preset strategy, and the optimal candidate placement location can be determined as the actual placement location.

[0040] It should be noted that, in the embodiments of this application, if there is only one candidate placement position, the candidate placement position can be determined as the actual placement position.

[0041] If no candidate placement location exists, a placement failure message can be displayed, and the relevant personnel will handle the situation.

[0042] For example, once the actual placement location of the object to be stacked is determined, the object can be stacked based on that actual placement location.

[0043] For example, the determined actual placement position can be sent to the robotic arm, which will then place the object to be stacked at that actual placement position.

[0044] It can be seen that, in Figure 1 In the method flow shown, when a labeled object to be stacked is identified, the candidate placement positions of the label orientation of the object to be stacked are determined based on the label position, the size information of the object to be stacked, and the position information of the current free space. Based on the determined candidate placement positions, the actual placement position of the object to be stacked is determined. By introducing label constraints in the process of stacking objects, it is ensured that the label orientation of the stacked objects meets the application requirements in the scenario of stacking labeled objects without manual intervention.

[0045] In some embodiments, determining the actual placement position of the object to be stacked based on the candidate placement positions may include:

[0046] When there are multiple candidate placement locations, the matching score of each candidate placement location is determined based on the state parameters of the object to be placed at each candidate placement location.

[0047] The candidate placement position with the highest matching score is determined as the actual placement position of the object to be placed.

[0048] For example, if the candidate placement positions are determined in accordance with the method described in step S100 and there are multiple candidate placement positions, the matching score of each candidate placement position can be determined based on the state parameters of the object to be placed at each candidate placement position, so as to select the actual placement position from the candidate placement positions based on the matching score of each candidate placement position.

[0049] For example, for any candidate placement location, the state parameters of the object to be placed at that candidate placement location may include, but are not limited to: the distance between the label side (i.e. the side of the object to be placed with the label) and the edge of the carrier (such as a pallet, stack, or cage), the support ratio of the object to be placed (i.e., the ratio of the area of ​​the supported part of the bottom surface of the object to the area of ​​the bottom surface), and the height of the upper surface of the object to be placed.

[0050] Having determined the matching score for each candidate placement location, the actual placement location of the object to be stacked can be determined based on the candidate placement location with the highest matching score.

[0051] In some embodiments, determining the matching score of each candidate placement position based on the state parameters of the object to be placed at each candidate placement position may include:

[0052] Iterate through the preset scoring parameters in descending order of priority;

[0053] For the scoring parameters currently being traversed, the matching score of the object to be placed at each candidate placement position is determined based on the state parameters of the object at each candidate placement position.

[0054] If there is only one candidate placement position with the highest matching score for the corresponding scoring parameter, the matching score for the corresponding scoring parameter is determined as the matching score for each candidate placement position, and the iteration of the preset scoring parameters ends.

[0055] If there are multiple candidate placement positions with the highest matching score for the corresponding rating parameter, delete the candidate placement positions with a lower matching score for the corresponding rating parameter and continue to traverse the preset rating parameters.

[0056] For example, in order to determine the optimal placement position of the object to be stacked more accurately and reasonably, multiple scoring parameters with different priorities can be preset, and the optimal placement position (i.e. the actual placement position mentioned above) can be selected according to the set scoring parameters in descending order of priority.

[0057] For example, in determining the actual placement location, preset scoring parameters can be traversed in order of priority from high to low.

[0058] For the scoring parameters currently being traversed, the matching degree score of the object to be placed at each candidate placement position can be used to determine the candidate placement position with the highest matching degree score for the corresponding state parameter.

[0059] If there is only one candidate placement position with the highest matching score for the corresponding scoring parameter, the matching score for the corresponding scoring parameter can be determined as the matching score for each candidate placement position, and the traversal of the preset scoring parameter can be ended.

[0060] If there are multiple candidate placement positions with the highest matching score for the corresponding scoring parameter, that is, if the optimal candidate placement position cannot be determined based on the current scoring parameter, the traversal of the preset scoring parameter can continue until the matching score of each candidate placement position is determined, or the traversal ends when all preset scoring parameters have been traversed.

[0061] For example, for the current package, iterate through all candidate locations and calculate the corresponding scores, and then compare the matching scores of each priority score parameter in turn.

[0062] Assume candidate positions include position A and position B. First, compare the matching score of the first priority rating parameter of position A (hereinafter referred to as the first priority score) with the first priority score of position B. If the first priority score of position A and the first priority score of position B are the same, then further compare the second priority scores; if the first priority score of position A is greater than the first priority score of position B, then position A is considered superior to position B, and the scores of subsequent priorities are no longer compared.

[0063] It should be noted that when all scoring parameters have been traversed (i.e., the optimal candidate placement position has not been determined according to the matching degree score corresponding to the scoring parameter with non-lowest priority), and for the lowest priority scoring parameter, there are still multiple candidate placement positions with the highest matching degree score for that scoring parameter, the matching degree score of the object to be placed at each of the current candidate placement positions corresponding to the scoring parameter (the lowest priority scoring parameter) can be determined as the matching degree score of each candidate placement position, and the candidate placement position with the highest matching degree score can be randomly selected from the current candidate placement positions as the actual placement position.

[0064] For example, assuming the candidate placement positions include placement positions 1 to 4, and the scoring parameters in descending order of priority include scoring parameters A and B, we can first determine the matching degree score of the object to be placed in placement positions 1 to 4 corresponding to scoring parameter A.

[0065] Suppose that the candidate placement positions with the highest matching score for the corresponding rating parameter A include placement positions 1 to 3, meaning there are multiple candidate placement positions with the highest matching score for the corresponding rating parameter A. In this case, the candidate placement position with a non-highest matching score for the corresponding rating parameter A (i.e., placement position 4) can be deleted (i.e., the current candidate placement positions include placement positions 1 to 3). That is, after filtering based on the high-priority rating parameter A, the current candidate placement positions include placement positions 1 to 3.

[0066] Since there are still untraversed scoring parameters, we can continue to traverse the preset scoring parameters to determine the matching degree score of the object to be placed in position 1 to 3 corresponding to the scoring parameter B.

[0067] If there is one candidate placement position with the highest matching score for the corresponding rating parameter B (let's say placement position 1), then placement position 1 can be determined as the actual placement position.

[0068] Assuming there are multiple candidate placement positions with the highest matching score for the corresponding rating parameter B (assuming placement position 1 and placement position 2 have the highest matching score for the corresponding rating parameter B and are the same), since all rating parameters have been traversed, the matching score for the corresponding rating parameter B can be determined as the matching score of the current candidate placement position (including placement positions 1 to 3), and a placement position can be randomly selected from the candidate placement positions with the highest matching score for the corresponding rating parameter B (including placement positions 1 to 2) as the actual placement position.

[0069] It should be noted that the above-described method for determining the matching score of candidate placement positions is merely a specific example in the embodiments of this application, and is not intended to limit the scope of protection of this application. In the embodiments of this application, the matching score of candidate placement positions can also be determined in other ways.

[0070] For example, for any candidate placement location, the matching score of the scoring parameters corresponding to different priorities for that candidate placement location can be determined sequentially, and the weighted sum of the matching scores of the scoring parameters corresponding to different priorities for that candidate placement location can be determined as the final matching score of that candidate placement location. Then, the actual placement location can be selected based on the final matching score of each candidate placement location, such as determining the candidate placement location with the highest final matching score as the actual placement location.

[0071] Among them, the higher the priority of the scoring parameter, the greater the weight of its corresponding matching score.

[0072] In one example, the label orientation conditions mentioned above include the label facing outwards and the label not being obscured by other objects;

[0073] The preset scoring parameters include at least one of the following types of scoring parameters, from highest to lowest priority: first type scoring parameters, second type scoring parameters, and third type scoring parameters.

[0074] The first type of scoring parameter includes the distance between the label side of the object to be placed and the edge of the vehicle;

[0075] The second type of scoring parameter includes the support ratio of the object to be stacked;

[0076] The third type of scoring parameter includes the height of the upper surface of the object to be stacked after it has been placed.

[0077] For example, when stacking labeled objects, in order to facilitate label scanning by staff, the labels of each object can be placed facing outwards and not obscured by other objects.

[0078] Considering that the distance between the label side of the object to be stacked and the edge of the carrier will affect the difficulty of the operator scanning the label, it is advisable to consider the distance between the label side of the object to be stacked and the edge of the carrier as one of the scoring parameters.

[0079] In addition, considering that when the support rate of the object to be stacked is less than 100%, there will be a suspended part of the object, which can easily make it difficult to utilize the space under the suspended position. The lower the support rate, the larger the suspended space will be, which may make it impossible to place goods. Therefore, the support rate of the object to be stacked can also be considered as one of the scoring parameters.

[0080] Furthermore, to avoid stacking too many or too high objects in some areas while stacking too few in others, objects should be stacked layer by layer upwards during automatic palletizing. Therefore, the height of the top surface of the object after it is placed can also be considered as one of the scoring parameters.

[0081] For example, the priority of the first type of rating parameter, the second type of rating parameter, and the third type of rating parameter can be decreased in that order.

[0082] First, ensure the distance between the label side of the object to be stacked and the edge of the carrier. Then, consider the support rate of the object to be stacked. Finally, consider the height of the upper surface of the object after it is placed.

[0083] As an example, for any candidate placement location, the distance between the label side of the object to be placed and the edge of the carrier is negatively correlated with the matching score of the candidate placement location; the support rate of the object to be placed is positively correlated with the matching score of the candidate placement location; and the height of the upper surface of the object after placement is negatively correlated with the matching score of the candidate placement location.

[0084] In some embodiments, when the identified labeled objects to be placed are a sequence of objects to be placed including multiple objects to be placed, the above-mentioned candidate placement positions include a sequence of candidate placement positions for placing each object in the sequence of objects to be placed.

[0085] The matching score for each candidate placement location includes the matching score for each candidate placement location sequence; wherein, for any candidate placement location sequence, the matching score of the candidate placement location sequence is determined based on the matching score of each candidate placement location in the candidate placement location sequence.

[0086] For example, when the identified labeled objects to be stacked are a sequence of multiple objects to be stacked, the actual stacking position for each object is no longer selected based on the stacking of a single object. Instead, the stacking position is selected based on the stacking of each object in the sequence to ensure the optimal stacking effect of the entire sequence.

[0087] For example, one can try to place each object in the sequence of objects to be placed separately, determine the candidate placement position corresponding to each object, and then determine the sequence of candidate placement positions corresponding to the sequence of objects to be placed.

[0088] In one example, if the order of the objects to be placed in the sequence is fixed, it is necessary to try to place each object according to its order to obtain a sequence of candidate placement positions corresponding to the sequence of objects to be placed.

[0089] In another example, when the order of the objects to be placed in the sequence is not fixed, it is necessary to try to place each object according to its possible order to obtain a sequence of candidate placement positions corresponding to the sequence of objects to be placed.

[0090] For example, assuming that the objects to be stacked include objects 1 to 3, and the stacking order is not fixed, the possible stacking orders of each object to be stacked may include object 1, object 2, object 3; object 1, object 3, object 2; object 2, object 3, object 1; object 2, object 1, object 2; object 3, object 2, object 1; object 3, object 1, object 2; object 3, object 2, object 1; object 3, object 1, object 2.

[0091] Accordingly, in determining the actual placement position, the matching score of the candidate placement position sequence can be determined in the manner described in the above embodiments, and the actual placement position of each object to be placed in the sequence of objects to be placed can be determined based on the matching score of the candidate placement position sequence.

[0092] For example, for any candidate placement position sequence, the matching score of the candidate placement position sequence is determined based on the matching score of each candidate placement position in the candidate placement position sequence.

[0093] For example, for any candidate placement position sequence, the matching score of the candidate placement position sequence can be the sum of the matching scores of each candidate placement position in the candidate placement position sequence.

[0094] For example, for any candidate placement position sequence, the matching score of the candidate placement position sequence can be the average of the matching scores of each candidate placement position in the candidate placement position sequence.

[0095] In some embodiments, after determining the actual placement position of the object to be stacked based on the candidate placement positions, the method may further include:

[0096] The location information of the remaining free space is updated based on the actual placement position of the object to be stacked; wherein, the remaining free space includes the target free space located around the object to be stacked after the object to be stacked is placed in the actual placement position. The surrounding area of ​​the object to be stacked includes at least one of the following directions: left, right, front, back and top of the object to be stacked. The length, width and height of the target free space are all greater than the corresponding threshold.

[0097] For example, after determining the actual placement position of the object to be stacked in the manner described above, the position information of the remaining free space can be updated based on the changes in the free space after the object is placed in the actual placement position.

[0098] If any of the length, width, or height of a free space is too small, then the free space is usually unusable for placing objects. In this case, the free space can be deleted.

[0099] For example, the remaining free space includes the target free space located around the object to be placed after the object to be placed has been placed in its actual placement position.

[0100] The perimeter of the object to be stacked includes at least one of the following directions: left, right, front, back, and top of the object.

[0101] The length, width, and height of the target free space are all greater than the corresponding threshold.

[0102] For example, the thresholds for length, width, and height can be the same or different.

[0103] For example, the specific implementation of updating the location information of remaining free space can be described in the following examples.

[0104] To enable those skilled in the art to better understand the technical solutions provided in the embodiments of this application, the technical solutions provided in the embodiments of this application are described below in conjunction with specific application scenarios.

[0105] In this embodiment, considering that the objects to be stacked (taking packages as an example) have labels attached, when stacking packages, it is usually necessary to ensure that the labels of the stacked packages face outwards, so as to facilitate the staff to scan the label information.

[0106] Based on this, this application uses vision-guided technology to obtain the size and label information of packages on the conveyor belt through a camera, determines the current package's placement posture with the label facing outward, and plans a collision-free and efficient placement path.

[0107] The following describes some implementation details of the technical solutions in the embodiments of this application.

[0108] 1. Stack type status

[0109] For example, the spatial description in the palletizing space can be achieved by using diagonal vectors to describe the space. This method is based on the assumption that the actual cuboid space is parallel to the three coordinate axes of the coordinate system, as illustrated in the diagram below. Figure 2 As shown.

[0110] like Figure 2 As shown, the six coordinate values ​​in this representation (the three-dimensional coordinate values ​​of the two vertices on the diagonal) can describe all the position and size information of the space.

[0111] For example, based on Figure 2 The spatial description method shown can be updated by defining a spatial subtraction rule, and its intuitive update rule is as follows: Figure 3 As shown, the calculation method can be as follows: Figure 4 As shown.

[0112] like Figure 3 and Figure 4 As shown, the update rules for three-dimensional space describe the remaining free space after an object occupies free space. After an object is placed in a space, a maximum of five free spaces will be generated, including four cuboid spaces in front of, behind, to the left and right of the object's placement space, and the space above the object. Figure 4 It is a description of the four surrounding spaces.

[0113] For example, after generating the remaining free space, it is necessary to further determine the space size and remove spaces that are too small in length / width / height and have no actual physical meaning.

[0114] 2. Calculate the matching degree

[0115] For example, based on the above three-dimensional spatial description and update method, spatial matching degree and scalability after placement can be calculated by virtual placement (place as low as possible and place as close to the same side as possible), or the fitness of each sequence can be calculated by virtual sequence placement (for the case of obtaining information from multiple packages).

[0116] For example, in a mixed palletizing planning scenario where only one package can be retrieved, the main consideration is describing the optimal matching rule and obtaining the palletizing position by comparing the matching degree between the package and each space. The specific process is as follows: Figure 5 As shown.

[0117] For example, without considering tags, the matching degree calculation can include parameters with at least three priorities: the first priority describes the support conditions of the package, the second priority includes height coordinate level type matching parameters, and the third priority includes three normalized description parameters: height padding, boundary padding, and remaining space.

[0118] When comparing matching scores, you can first compare the higher priority parameters, and then compare the next higher priority parameters if the higher priority parameters are the same.

[0119] For example, the parameters for the third priority may include, but are not limited to, similarity, the amount of remaining space where interference occurs, the amount of new remaining space, the volume of wasted remaining space, fit, alignment score, etc.

[0120] The parameters for each of the third priorities are briefly explained below.

[0121] 2.1 Similarity

[0122] Similarity refers to the similarity in shape and size between the placed package and the remaining space where it is placed. It can be represented by the formula as follows:

[0123]

[0124] Where l, w, and h are the length, width, and height of the package, respectively, and L, W, and H are the length, width, and height of the remaining space where it is placed.

[0125] For example, when the package just fills the remaining space, that is, when the length, width and height of the package are the same as the remaining space, the Similarity is set to the maximum value of 3;

[0126] When a certain side of the enclosure overlaps with and fills a certain side of the remaining space, the Similarity value is greater than 2.

[0127] When the length, width, and height of the package are all smaller than the length, width, and height of the remaining space, the value of Similarity ranges from 0 to 3. The larger the proportion of the remaining space occupied by the package, the larger the value of Similarity.

[0128] For example, when placing a package, priority should be given to placing it in a space that is similar in size to the package to avoid occupying a large amount of remaining space and disrupting the integrity of the remaining space.

[0129] 2.2 The amount of remaining space where interference occurs

[0130] For example, when a package is placed on a carrier such as a pallet, it will interfere with the current remaining space, occupying part or all of the space in a remaining space. Since the remaining space uses an overlapping representation (that is, different remaining spaces are allowed to overlap), when a package is placed in a certain remaining space, it may also interfere with other remaining spaces.

[0131] Ideally, after the goods are placed, they only interfere with one remaining space. For the parts that do not interfere with other remaining spaces, only the current remaining space is cut and calculated, maintaining the integrity of the other remaining spaces. This leaves the other remaining spaces for subsequent packages to fill, which is beneficial for the subsequent palletizing work.

[0132] 2.3 The amount of new remaining space

[0133] For example, the number of new remaining spaces refers to the total number of new remaining spaces generated after placing a package and dividing the remaining space that has interfered with the process.

[0134] If a package interferes with a certain remaining space, there are 6 possibilities for the number of new remaining spaces divided from that remaining space, ranging from 0 to 5.

[0135] For example, the less new remaining space there is, the neater the packages appear to be placed. Using the amount of new remaining space as an evaluation parameter, the placement method that generates the least amount of new remaining space is preferred.

[0136] 2.4 The volume of wasted remaining space

[0137] For example, after placing a package in the remaining space, the remaining space needs to be recalculated. If the remaining space obtained from the division is insufficient to place any package, or if the placement method makes it impossible to place a package in a certain remaining space, such as a hole-like space or an enclosed space, then the remaining space cannot be used, resulting in a waste of this space, which is not conducive to the utilization of space and also not conducive to placing more packages into the vehicle.

[0138] For example, the volume of wasted remaining space can be used as an evaluation parameter to prioritize the placement method that minimizes wasted remaining space, which is beneficial for the utilization of vehicle space and thus for the stacking of packages.

[0139] 2.5 Fit

[0140] Fit refers to the degree of fit between packages. It can be calculated using the contact area as the standard. It refers to the sum of the contact areas between the currently placed package and the packages already placed on the vehicle. The larger the contact area, the higher the fit. The contact surface can be any side of the currently placed package.

[0141] Choosing fit as an evaluation parameter allows packages to be tightly connected and prioritized for placement. This reduces the likelihood of excessive fragmentation of the remaining space and helps maintain its integrity.

[0142] 2.6 Aligning Score

[0143] For example, the spatial layout formed by the currently placed package and the already placed packages can be used to determine the alignment effect on the surface. The most intuitive way is to observe whether the currently placed package and the adjacent already placed packages have aligned surfaces, the size of the exposed area of ​​the aligned surfaces, which direction the surfaces are aligned, and how many pairs of such aligned surfaces there are.

[0144] For example, the aligned surface must be a surface that can be directly contacted within the vehicle. If the aligned surface is located on the perimeter and bottom of the vehicle space, or is completely obscured by other cargo, it is not counted.

[0145] If the aligned surface is partially obscured, the evaluation value is taken as a percentage based on the percentage of obscuration.

[0146] For example, suppose that package B is aligned on top with package A, but 60% of the top surface of package A is obscured by other goods, then the top surface alignment assessment of package B is 40% of the assessment value when the top surface is unobstructed.

[0147] For example, aligning different faces of a package will yield different results when placing it. Therefore, different alignment scores can be assigned based on the alignment faces. If the package placement method meets the corresponding alignment requirements, the corresponding alignment score can be obtained. All alignment scores obtained for a particular placement method are summed up to obtain the total alignment score for that method. Finally, the placement method with the highest total alignment score is selected for placement.

[0148] It should be noted that some or all of the above-mentioned different third priority parameters can be selected as scoring parameters for calculating the matching score of candidate placement positions. When the scoring parameters include multiple different third priority parameters, for any candidate placement position, the matching score corresponding to each third priority parameter can be calculated separately. Then, the matching score of the third priority scoring parameter corresponding to the candidate placement position can be determined based on the matching score corresponding to each third priority parameter.

[0149] For example, the sum or weighted sum of the matching scores corresponding to each third priority parameter can be used to determine the matching score of the third priority parameter corresponding to the candidate placement position.

[0150] 3. Principle of label facing outwards

[0151] In the scheme where the palletizing label faces outwards, the first priority is changed to the condition that the package label faces outwards, and the aforementioned first priority degenerates into the second priority, and so on.

[0152] It should be noted that in projects where palletizing labels need to face outwards, in order to improve the space utilization of the pallet, the labels are generally affixed to the short side.

[0153] The orientation of the label is identified by the camera, and the orientation of the package label is defined as the x-direction of the package's coordinate system. For example... Figure 6 As shown, the relative relationships between packages and pallets (taking pallets as an example of carriers) can be categorized into the following four types:

[0154] The package's x-axis direction is the same as the pallet's x-axis direction, and the package's center is near the pallet's origin (position 1).

[0155] The package's x-axis direction is the same as the pallet's x-axis direction, and the package's center is located away from the pallet's origin (position 2).

[0156] The package's x-axis direction is the same as the pallet's y-axis direction, and the package's center is near the pallet's origin (position 3).

[0157] The package's x-axis direction is the same as the pallet's y-axis direction, and the package's center is located away from the pallet's origin (position 4).

[0158] For positions 1 and 3, the package needs to be rotated 180 degrees clockwise or counterclockwise within the plane of the tray to ensure that the package label faces outwards; for positions 2 and 4, no adjustment is required.

[0159] For all the above locations, it is desirable to have the current package label side as close to the edge of the tray as possible. That is, let distance be the distance between the current package's x-direction edge and the edge of the nearest tray; the smaller this value, the better. In other words, when a package is placed at a candidate location, the distance between the package's x-direction edge and the edge of the nearest tray is negatively correlated with the matching score of that candidate location. Therefore, the following formula can be defined:

[0160]

[0161] It should be noted that the above formula has a prerequisite: the package must be unobstructed in the x-direction (i.e., the label faces outward and is not obstructed by other objects). Since the spatial position of the current package and the spatial positions of the already placed packages are known, the length of the package in the x-direction can be virtually extended to check for three-dimensional spatial interference. If interference occurs, the score for that position is -1, indicating that it cannot be placed. If no interference occurs, the score for that position is calculated using the above formula, and the position with the highest score is used.

[0162] The method provided in this application has been described above. The apparatus provided in this application is described below:

[0163] Please see Figure 7 This is a schematic diagram of the structure of a palletizing device provided in an embodiment of this application, as shown below. Figure 7 As shown, the palletizing device may include:

[0164] The first determining unit 710 is used to determine, when a labeled object to be placed is identified, a candidate placement position in which the label of the object to be placed faces a condition based on the label position of the object to be placed, the size information of the object to be placed, and the position information of the current free space.

[0165] The second determining unit 720 is used to determine the actual placement position of the object to be stacked based on the candidate placement position; wherein the actual placement position is used to place the object to be stacked.

[0166] In some embodiments, the second determining unit 720 determines the actual placement position of the object to be stacked based on the candidate placement positions, including:

[0167] When there are multiple candidate placement positions, the matching score of each candidate placement position is determined based on the state parameters of the object to be placed at each candidate placement position.

[0168] The candidate placement position with the highest matching score is determined as the actual placement position of the object to be placed.

[0169] In some embodiments, the second determining unit 720 determines a matching score for each candidate placement position based on the state parameters of the object to be placed at each candidate placement position, including:

[0170] Iterate through the preset scoring parameters in descending order of priority;

[0171] For the currently traversed scoring parameters, based on the state parameters of the object to be placed at each candidate placement position, determine the matching degree score of the object to be placed at each candidate placement position for the corresponding scoring parameter.

[0172] If there is only one candidate placement position with the highest matching score for the corresponding scoring parameter, the matching score for the corresponding scoring parameter is determined as the matching score for each candidate placement position, and the traversal of the preset scoring parameter ends.

[0173] If there are multiple candidate placement positions with the highest matching score for the corresponding scoring parameter, delete the candidate placement positions with a non-highest matching score for the corresponding scoring parameter, and continue to traverse the preset scoring parameters.

[0174] In some embodiments, the label orientation condition includes the label facing outwards and the label not being obscured by other objects;

[0175] The preset scoring parameters include at least one of the following: a first type of scoring parameter, a second type of scoring parameter, and a third type of scoring parameter, with priority from high to low.

[0176] The first type of scoring parameter includes the distance between the label side of the object to be stacked and the edge of the carrier;

[0177] The second type of scoring parameter includes the support ratio of the object to be stacked;

[0178] The third type of scoring parameter includes the height of the upper surface of the object to be stacked after it has been placed.

[0179] In some embodiments, for any candidate placement location, the distance between the label side of the object to be placed and the edge of the carrier is negatively correlated with the matching score of the candidate placement location; the support rate of the object to be placed is positively correlated with the matching score of the candidate placement location; and the height of the upper surface of the object to be placed after placement is negatively correlated with the matching score of the candidate placement location.

[0180] In some embodiments, when the identified labeled objects to be placed are a sequence of objects to be placed including multiple objects to be placed, the candidate placement positions include a sequence of candidate placement positions for placing each object in the sequence of objects to be placed.

[0181] The matching score of each candidate placement position includes the matching score of each candidate placement position sequence; wherein, for any candidate placement position sequence, the matching score of the candidate placement position sequence is determined based on the matching score of each candidate placement position in the candidate placement position sequence.

[0182] In some embodiments, after the second determining unit 720 determines the actual placement position of the object to be stacked based on the candidate placement positions, it further includes:

[0183] The position information of the remaining free space is updated according to the actual placement position of the object to be placed; wherein, the remaining free space includes the target free space located around the object to be placed after the object to be placed is placed at the actual placement position, and the surrounding area of ​​the object to be placed includes at least one of the left, right, front, rear and top of the object to be placed, and the length, width and height of the target free space are all greater than the corresponding threshold.

[0184] This application provides an electronic device including a processor and a memory, wherein the memory stores machine-executable instructions that can be executed by the processor, and the processor executes the machine-executable instructions to implement the palletizing method described above.

[0185] Please see Figure 8 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application. The electronic device may include a processor 801 and a memory 802 storing machine-executable instructions. The processor 801 and the memory 802 can communicate via a system bus 803. Furthermore, by reading and executing the machine-executable instructions corresponding to the palletizing logic in the memory 802, the processor 801 can execute the palletizing method described above.

[0186] The memory 802 mentioned in this document can be any electronic, magnetic, optical, or other physical storage device that can contain or store information such as executable instructions, data, etc. For example, machine-readable storage media can be: RAM (Random Access Memory), volatile memory, non-volatile memory, flash memory, storage drives (such as hard disk drives), solid-state drives, any type of storage disk (such as optical discs, DVDs, etc.), or similar storage media, or combinations thereof.

[0187] In some embodiments, a machine-readable storage medium, such as Figure 8 The memory 802 in the memory, which is a machine-readable storage medium, stores machine-executable instructions that, when executed by a processor, implement the palletizing method described above. For example, the storage medium may be ROM, RAM, CD-ROM, magnetic tape, floppy disk, or optical data storage device.

[0188] This application provides a palletizing system, which includes: a camera, a robotic arm, and a control device; wherein:

[0189] The camera is used to capture images of objects to be stacked, identify whether the objects to be stacked have labels based on the captured images, and identify the size information of the objects to be stacked.

[0190] The control device is used to, upon recognizing a labeled object to be stacked, determine a candidate placement position that allows the label of the object to be stacked to face a condition based on the label position of the object to be stacked, the size information of the object to be stacked, and the position information of the current free space; and determine the actual placement position of the object to be stacked based on the candidate placement position.

[0191] The robotic arm is used to place the object to be stacked at the actual placement position according to the actual placement position.

[0192] For example, the specific implementation of the control device determining the actual placement position of the object to be stacked can be found in the relevant descriptions in the above method embodiments or device embodiments, and will not be repeated here in the embodiments of this application.

[0193] It should be noted that, in this document, relational terms such as "objective" and "target" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0194] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.

Claims

1. A palletizing method, characterized in that, include: When a labeled object to be placed is identified, a candidate placement position is determined based on the label position of the object to be placed, the size information of the object to be placed, and the position information of the current free space, so that the label orientation of the object to be placed meets the conditions; wherein, the label orientation meeting the conditions includes the label facing outward and the label not being obscured by other objects. Based on the candidate placement positions and preset scoring parameters, the actual placement position of the object to be stacked is determined. The preset scoring parameters include the distance between the label side of the object to be stacked and the edge of the carrier, the support rate of the object to be stacked, and the height of the upper surface of the object after placement. The matching score of the candidate placement positions is determined by traversing the preset scoring parameters in descending order of priority, with the priority of the distance between the label side of the object to be stacked and the edge of the carrier, the support rate of the object to be stacked, and the height of the upper surface of the object to be stacked decreasing sequentially. The actual placement position is used to place the object to be stacked.

2. The method according to claim 1, characterized in that, The step of determining the actual placement position of the object to be placed based on the candidate placement positions includes: when there are multiple candidate placement positions, determining the matching score of each candidate placement position based on the state parameters of the object to be placed at each candidate placement position; The candidate placement position with the highest matching score is determined as the actual placement position of the object to be placed.

3. The method according to claim 2, characterized in that, The step of determining the matching score of each candidate placement position based on the state parameters of the object to be placed at each candidate placement position includes: Iterate through the preset scoring parameters in descending order of priority; For the currently traversed scoring parameters, based on the state parameters of the object to be placed at each candidate placement position, determine the matching degree score of the object to be placed at each candidate placement position for the corresponding scoring parameter. If there is only one candidate placement position with the highest matching score for the corresponding scoring parameter, the matching score for the corresponding scoring parameter is determined as the matching score for each candidate placement position, and the traversal of the preset scoring parameter ends. If there are multiple candidate placement positions with the highest matching score for the corresponding scoring parameter, delete the candidate placement positions with a non-highest matching score for the corresponding scoring parameter, and continue to traverse the preset scoring parameters.

4. The method according to claim 1, characterized in that, For any candidate placement location, the distance between the label side of the object to be placed and the edge of the carrier at that candidate placement location is negatively correlated with the matching score of that candidate placement location. The support rate of the object to be placed is positively correlated with the matching score of the candidate placement location; The height of the upper surface of the object to be stacked after placement is negatively correlated with the matching score of the candidate placement position.

5. The method according to any one of claims 1-4, characterized in that, When the identified labeled objects to be placed are a sequence of objects to be placed including multiple objects to be placed, the candidate placement positions include a sequence of candidate placement positions for placing each object in the sequence of objects to be placed. The matching score of each candidate placement position includes the matching score of each candidate placement position sequence; wherein, for any candidate placement position sequence, the matching score of the candidate placement position sequence is determined based on the matching score of each candidate placement position in the candidate placement position sequence.

6. The method according to any one of claims 1-4, characterized in that, After determining the actual placement position of the object to be stacked based on the candidate placement positions, the method further includes: The position information of the remaining free space is updated according to the actual placement position of the object to be placed; wherein, the remaining free space includes the target free space located around the object to be placed after the object to be placed is placed at the actual placement position, and the surrounding area of ​​the object to be placed includes at least one of the left, right, front, rear and top of the object to be placed, and the length, width and height of the target free space are all greater than the corresponding threshold.

7. A palletizing device, characterized in that, include: The first determining unit is used to, when a labeled object to be placed is identified, determine a candidate placement position in which the label orientation of the object to be placed meets certain conditions based on the label position of the object to be placed, the size information of the object to be placed, and the position information of the current free space; wherein, the label orientation meeting the conditions includes the label facing outward and the label not being obscured by other objects. The second determining unit is used to determine the actual placement position of the object to be stacked based on the candidate placement positions and preset scoring parameters. The preset scoring parameters include the distance between the label side of the object to be stacked and the edge of the carrier, the support rate of the object to be stacked, and the height of the upper surface of the object after placement. The matching score of the candidate placement positions is determined by traversing the preset scoring parameters in descending order of priority, with the priority of the distance between the label side of the object to be stacked and the edge of the carrier, the support rate of the object to be stacked, and the height of the upper surface of the object to be stacked decreasing sequentially. The actual placement position is used to place the object to be stacked.

8. The apparatus according to claim 7, characterized in that, The second determining unit determines the actual placement position of the object to be stacked based on the candidate placement positions, including: When there are multiple candidate placement positions, the matching score of each candidate placement position is determined based on the state parameters of the object to be placed at each candidate placement position. The candidate placement position with the highest matching score is determined as the actual placement position of the object to be placed. The second determining unit determines the matching score of each candidate placement position based on the state parameters of the object to be placed at each candidate placement position, including: Iterate through the preset scoring parameters in descending order of priority; For the currently traversed scoring parameters, based on the state parameters of the object to be placed at each candidate placement position, determine the matching degree score of the object to be placed at each candidate placement position for the corresponding scoring parameter. If there is only one candidate placement position with the highest matching score for the corresponding scoring parameter, the matching score for the corresponding scoring parameter is determined as the matching score for each candidate placement position, and the traversal of the preset scoring parameter ends. If there are multiple candidate placement positions with the highest matching score for the corresponding scoring parameter, delete the candidate placement positions with a non-highest matching score for the corresponding scoring parameter, and continue to traverse the preset scoring parameters. Among them, for any candidate placement position, the distance between the label side of the object to be placed and the edge of the carrier is negatively correlated with the matching score of the candidate placement position; the support rate of the object to be placed is positively correlated with the matching score of the candidate placement position; and the height of the upper surface of the object to be placed after placement is negatively correlated with the matching score of the candidate placement position. And / or, When the identified labeled objects to be placed are a sequence of objects to be placed including multiple objects to be placed, the candidate placement positions include a sequence of candidate placement positions for placing each object in the sequence of objects to be placed. The matching score of each candidate placement position includes the matching score of each candidate placement position sequence; wherein, for any candidate placement position sequence, the matching score of the candidate placement position sequence is determined based on the matching score of each candidate placement position in the candidate placement position sequence. And / or, After the second determining unit determines the actual placement position of the object to be stacked based on the candidate placement positions, it further includes: The position information of the remaining free space is updated according to the actual placement position of the object to be placed; wherein, the remaining free space includes the target free space located around the object to be placed after the object to be placed is placed at the actual placement position, and the surrounding area of ​​the object to be placed includes at least one of the left, right, front, rear and top of the object to be placed, and the length, width and height of the target free space are all greater than the corresponding threshold.

9. An electronic device, characterized in that, The method includes a processor and a memory, the memory storing machine-executable instructions that can be executed by the processor, the processor executing the machine-executable instructions to implement the method as described in any one of claims 1-6.

10. A machine-readable storage medium, characterized in that, The machine-readable storage medium stores machine-executable instructions, which, when executed by a processor, implement the method as described in any one of claims 1-6.

11. A palletizing system, characterized in that, include: Camera, robotic arm, and control equipment; among which: The camera is used to capture images of objects to be stacked, identify whether the objects to be stacked have labels based on the captured images, and identify the size information of the objects to be stacked. The control device is used to, upon recognizing a labeled object to be stacked, determine a candidate placement position that allows the label of the object to be stacked to face a condition based on the label position of the object to be stacked, the size information of the object to be stacked, and the position information of the current free space; and determine the actual placement position of the object to be stacked based on the candidate placement position. The robotic arm is used to place the object to be stacked at the actual placement position according to the actual placement position.

Citation Information

Patent Citations

  • Stacking method, stacking device, electronic equipment and computer readable storage medium

    CN111573292A

  • Online mixed stacking method and system, electronic device and storage medium

    CN114862063A

  • Carton processing method and system, electronic equipment and storage medium

    CN115973646A