A palletizing dynamic adjustment method, device and medium based on the placement position of an object

Through dynamic palletizing adjustment method based on the placement position of objects, the side slip and landing point offset caused by unfixed suitcase size and soft wrap type in the civil aviation field are solved, and a more stable and safe palletizing process is achieved.

CN119750157BActive Publication Date: 2025-05-30MOBILE TECH COMPANY CHINA TRAVELSKY HLDG
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510253447.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-05
Publication Date
2025-05-30
Estimated Expiration
2045-03-05

AI Technical Summary

Technical Problem

In the civil aviation field, the size of passenger suitcases is not fixed and some suitcases are soft-wrapped, which makes it difficult to effectively place existing palletizing algorithms, which easily leads to problems of side slippage and offset of landing points of objects to be palletized.

Method used

The dynamic palletizing adjustment method based on the placement of the object is adopted to determine the initial placement position of the object to be palletized through image information, determine whether there are palletized objects below, calculate the predicted sliding distance and volley rate, and adjust the initial placement position to avoid the risk of side slippage.

Benefits of technology

The problems of side slippage and landing point deviation during the palletization process are effectively avoided, and the stability and safety of palletization are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119750157B_ABST
    Figure CN119750157B_ABST
Patent Text Reader

Abstract

The present invention provides a palletizing dynamic adjustment method, device and medium based on the placement position of an object. The method includes: if there is a palletized object below the initial placement position of the object to be palletized, determining the predicted sliding distance of the object to be palletized; if the predicted sliding distance of the object to be palletized is less than the distance between the palletized object located below the initial placement position and the palletized object adjacent to the front of the palletized object, determining the first airspace rate of the object to be palletized according to the area of the palletized object located below the initial placement position; if the first airspace rate of the object to be palletized is less than the preset airspace rate threshold, determining the second airspace rate of the object to be palletized according to the area of the object to be palletized within the target area at the initial placement position; determining the target placement position of the object to be palletized according to the first airspace rate and the second airspace rate, so that the stability of the object to be palletized when placed at the target placement position is better and the risk of side slip is not likely to occur.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] Palletizing algorithms are widely used in logistics, warehousing, and automated production, as well as in the process of transporting and arranging passengers' luggage in the civil aviation field. The current palletizing algorithm first calculates the size of the objects to be palletized and the set spacing between the objects to determine the corresponding placement positions of the objects to be palletized, and then controls the robotic arm with a conveyor belt to move the objects to be palletized to their corresponding placement positions. Since the robotic arm moves the objects to be palletized to the placement positions through the conveyor belt, when the end of the robotic arm reaches the placement position, the conveyor belt will drive the objects to be palletized to move to the end of the robotic arm, causing the objects to be palletized to fall to their corresponding placement positions to complete the stacking and placement of the objects to be palletized.

[0003] However, in the civil aviation field, since the sizes of passengers' luggage are not fixed and uniform, and some luggage is soft-wrapped and other luggage cannot be stacked on it, if the current palletizing algorithm is used to place this type of object to be palletized, there will be a gap between two adjacent objects to be palletized in the pallet pattern. If other objects to be palletized are placed on these adjacent objects to be palletized, there will be a risk of the upper objects to be palletized slipping sideways, resulting in damage to the slipping objects to be palletized and the objects placed in the slipping landing area. Moreover, during the process of the conveyor belt dropping the objects to be palletized to the placement positions, one side of the object to be palletized will first fall to the placement position. Due to the power of the conveyor belt and the gravity of the object to be palletized, there will be kinetic energy during the falling process of the object to be palletized. Therefore, during the falling process of the object to be palletized, the landing point of the object to be palletized will not accurately be located at the determined placement position due to the kinetic energy, and may shift, causing the object to be palletized to slip sideways, which is not conducive to the stable placement of the pallet pattern. Summary of the Invention

[0004] For the above technical problems, the technical solution adopted by the present invention is as follows:

[0005] According to one aspect of the present application, a palletizing dynamic adjustment method based on the placement position of an object is provided, including the following steps:

[0006] Step S100: Determine the initial placement position of the object to be palletized according to the image information of the object to be palletized placed at the original position;

[0007] Step S200: If there are palletized objects below the initial placement position, determine the predicted sliding distance of the object to be palletized according to the mass of the object to be palletized and the height of the palletized objects located below the initial placement position;

[0008] Step S300: If the predicted sliding distance of the object to be palletized is less than the distance between the palletized object located below the initial placement position and the palletized object adjacent to the front of the palletized object, then determine the first airborne rate L of the object to be palletized according to the area of the palletized object located below the initial placement position and the area of the object to be palletized. 1 ;

[0009] The front of the palletized object is the reverse direction of the moving direction for moving the object to be palletized from the original position to the initial placement position;

[0010] The first airborne rate represents the ratio of the overlapping area between the initial placement position and the surface of the palletized object located below the initial placement position to the total floor area of the object to be palletized;

[0011] Step S400: If the first airborne rate of the object to be palletized is less than the preset airborne rate threshold, then determine the second airborne rate L of the object to be palletized according to the area of the object to be palletized within the target area at the initial placement position. 2 ; The target area is the area in the initial placement position before the front surface of the palletized object located below the initial placement position; The second airborne rate represents the ratio of the area of the target area to the total floor area of the object to be palletized;

[0012] Step S500: If L 2 / (1 - L 1 ) is greater than the preset airborne rate ratio threshold, then translate the initial placement position of the object to be palletized backward by a preset adjustment distance with respect to the palletized object to obtain the target placement position of the object to be palletized.

[0013] In an exemplary embodiment of the present application, Step S100 includes:

[0014] Step S110: Obtain the captured images of the object to be palletized at a plurality of shooting angles; The object to be palletized is a box with a regular shape;

[0015] Step S120: Extract image features from each captured image to obtain a plurality of image features of the object to be palletized;

[0016] Step S130: Match each image feature of the object to be palletized with a plurality of historical image features to obtain the target historical image feature corresponding to each image feature of the object to be palletized; The target historical image feature is the historical image feature with the highest matching degree among the plurality of historical image features for the image feature corresponding to the target historical image feature;

[0017] Step S140: Process a plurality of target historical image features according to the preset palletizing rules to obtain the initial placement position corresponding to the object to be palletized.

[0018] In an exemplary embodiment of the present application, step S200 includes:

[0019] Step S210, if there is a palletized object below the initial placement position, determine the palletized object as the target palletized object;

[0020] Step S220, obtain the mass g 1 of the object to be palletized and the height h 1 of the target palletized object;

[0021] Step S230, determine the predicted sliding distance of the object to be palletized as g 1 ×a 1 +h 1 ×a 2 ; where a 1 is a preset mass sliding coefficient, and a 2 is a preset height sliding coefficient.

[0022] In an exemplary embodiment of the present application, step S300 includes:

[0023] Step S310, if there are other palletized objects in front of the target palletized object, execute step S320; otherwise, execute step S340;

[0024] Step S320, determine the palletized object adjacent to and in front of the target palletized object as the adjacent palletized object;

[0025] Step S330, if the distance between the target palletized object and the adjacent palletized object is greater than or equal to the predicted sliding distance of the object to be palletized, execute step S340;

[0026] Step S340, obtain the floor area B 1 of the object to be palletized and the area B 2 of the overlapping area between the initial placement position and the upper surface of the target palletized object;

[0027] Step S350, determine the first-time air rate L 1 =B 2 / B 1 .

[0028] In an exemplary embodiment of the present application, step S400 includes:

[0029] Step S410, if L 1 is less than the preset air rate threshold, establish a two-dimensional coordinate system with the placement surface of the target palletized object as the base plane, any vertex of the target palletized object as the origin, the front of the target palletized object as the positive direction of the horizontal axis, and the wide side of the target palletized object as the vertical axis;

[0030] Step S420: Determine the two common vertices of the upper surface and the front surface of the target palletizing object as the first vertex and the second vertex in sequence according to the decreasing order of the ordinates of their coordinates in the two-dimensional coordinate system;

[0031] Step S430: Obtain the coordinates (A 1 , C 1 ) of the first vertex in the two-dimensional coordinate system and the coordinates (A 2 , C 2 ) of the second vertex in the two-dimensional coordinate system; where A 1 is the abscissa of the first vertex in the two-dimensional coordinate system, and C 1 is the ordinate of the first vertex in the two-dimensional coordinate system; A 2 is the abscissa of the second vertex in the two-dimensional coordinate system, and C 2 is the ordinate of the second vertex in the two-dimensional coordinate system;

[0032] Step S440: Determine the two common vertices of the upper surface and the front surface of the object to be palletized as the third vertex and the fourth vertex in sequence according to the decreasing order of the ordinates of their coordinates in the two-dimensional coordinate system;

[0033] Step S450: Obtain the coordinates (A 3 , C 3 ) of the third vertex at the initial placement position in the two-dimensional coordinate system and the coordinates (A 4 , C 4 ) of the fourth vertex at the initial placement position in the two-dimensional coordinate system; where A 3 is the abscissa of the third vertex at the initial placement position in the two-dimensional coordinate system, and C 3 is the ordinate of the third vertex at the initial placement position in the two-dimensional coordinate system;

[0034] Step S460: Determine the area enclosed by (A 1 , C 3 ), (A 2 , C 4 ), (A 3 , C 3 ), (A 4 , C 4 ) as the target area;

[0035] Step S470: Determine the area B 3 = |A 3 - A 1 | × |C 3 - C 4 |;

[0036] Step S480: Determine the secondary airborne rate L of the object to be palletized2 =B 3 / B 1 .

[0037] In an exemplary embodiment of the present application, step S500 includes:

[0038] Step S510: If L 2 / (1-L 1 ) is greater than a preset volley rate ratio threshold, the adjustment distance is determined according to the width of the target area;

[0039] Step S520, the initial placement position of the object to be stacked is translated to the rear of the stacked object by an adjusted distance to obtain an adjusted placement position of the object to be stacked;

[0040] Step S530: Obtain the area B of the overlapped area between the adjusted placement position and the upper surface of the target stacking object. 4 ;

[0041] Step S540: Determine the adjusted empty rate L of the objects to be stacked 3 =B 4 / B 1 ;

[0042] Step S550: If L 3 If the value is greater than or equal to a preset empty rate threshold, the adjusted placement position of the object to be stacked is determined as the target placement position of the object to be stacked.

[0043] In an exemplary embodiment of the present application, step S550 further includes:

[0044] Step S551: If L 3 If the empty rate is less than a preset threshold, the stacked object with the lowest layer and no stacked object in front of it is determined as the first stacked object;

[0045] Step S552: Obtain the height J of the objects to be stacked 0 and the height J of each first stacked object 1 ,J 2 ,...,J r ,...,J s ; where r=1,2,...,s; s is the number of the first stacked objects; J r is the height of the first r-th stacked object;

[0046] Step S553: ​​determine the height difference between the object to be palletized and each first palletized object, and obtain a height difference list K=(K 1 ,K 2 ,...,K r ,...,Ks ); K r = |J r -J 0 |; where K r is the height difference between the object to be palletized and the r-th first palletized object;

[0047] Step S554, obtain the coordinates of several vertices of the projection area of the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system to obtain the vertex coordinate list D = (D 1 , D 2 ,..., D i ,..., D t ); D i = (D i1 , D i2 ); where i = 1, 2,..., t; t is the number of vertices of the projection area of the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system; D i is the coordinate of the i-th vertex of the projection area of the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system; D i1 is D i corresponding abscissa; D i2 is D i corresponding ordinate; MIN() is a preset minimum value determination function;

[0048] Step S555, determine the target abscissa E = MAX(D 11 , D 21 ,..., D i1 ,..., D t1 ); where MAX() is a preset maximum value determination function;

[0049] Step S556, determine the first target ordinate F 1 = MAX(D 12 , D 22 ,..., D i2 ,..., D t2 ) and the second target ordinate F 2 = MIN(D 12 , D 22 ,..., D i2 ,..., D t2 );

[0050] Step S557, obtain the length G 1 of the object to be palletized and the width G 2 of the object to be palletized;

[0051] Step S558, with (E, (F 1 + F 2+G 2 )) / 2), (E, (F 1 +F 2 -G 2 )) / 2), (E + G 1 , (F 1 +F 2 +G 2 )) / 2), (E + G 1 , (F 1 +F 2 -G 2 ) / 2) encloses the area determined as the target placement position of the object to be palletized.

[0052] In an exemplary embodiment of the present application, the adjustment distance is determined through the following steps:

[0053] Step S511, obtain the maximum abscissa H of several vertices of the target palletizing object in the two-dimensional coordinate system 1 and the minimum abscissa H 2 ;

[0054] Step S512, obtain the maximum abscissa H of several vertices of the initial placement position in the two-dimensional coordinate system 3 and the minimum abscissa H 4 ;

[0055] Step S513, if |H 3 - H 1 | ≥ |H 4 - H 2 |, then determine |H 4 - H 2 | as the adjustment distance; otherwise, determine (|H 4 - H 2 | + |H 3 - H 1 |) / 2 as the adjustment distance.

[0056] According to one aspect of the present application, there is provided a non-transitory computer-readable storage medium, in which at least one instruction or at least one program segment is stored, and the at least one instruction or the at least one program segment is loaded and executed by a processor to implement the foregoing palletizing dynamic adjustment method based on the object placement position.

[0057] According to one aspect of the present application, there is provided an electronic device, including a processor and the foregoing non-transitory computer-readable storage medium.

[0058] The present invention has at least the following beneficial effects:

[0059] The palletizing dynamic adjustment method based on the object placement position of the present invention first determines the initial placement position of the object to be palletized according to the image information of the object to be palletized placed at the original position. The initial placement position is the placement position of the object to be palletized determined according to the existing palletizing algorithm. Then, it is judged whether there is a palletized object below the initial placement position. If there is a palletized object below the initial placement position, it means that the palletizing layer at the initial placement position is at least two layers. Then, according to the mass of the object to be palletized and the height of the palletized object located below the initial placement position, the predicted sliding distance of the object to be palletized is determined. The predicted sliding distance represents the possible sliding distance of the object to be palletized if it slips laterally at the initial placement position. If the predicted sliding distance of the object to be palletized is less than the distance between the palletized object located below the initial placement position and the palletized object adjacent to the front of the palletized object, it means that if the object to be palletized slips laterally at the initial placement position, the object to be palletized will slide to the palletizing layer below it, which will cause damage to the object to be palletized. Therefore, according to the area of the palletized object located below the initial placement position and the area of the object to be palletized, the first-time air ratio L of the object to be palletized is determined. 1 , The first-time air ratio represents the ratio of the overlapping area of the surface of the initial placement position and the palletized object located below the initial placement position to the total floor area of the object to be palletized. If L 1 is less than the preset air ratio threshold, it means that if the object to be palletized is placed at the initial placement position, there are more unsupported parts below it, so there is a risk of lateral sliding. Then, according to the area of the object to be palletized within the target area at the initial placement position, the second-time air ratio L of the object to be palletized is determined. 2 , The second-time air ratio represents the ratio of the unsupported part at the front of the object to be palletized to the total floor area of the object to be palletized at the initial placement position of the object to be palletized. If L 2 / (1 - L 1 ) is greater than the preset air ratio occupancy threshold, it means that the proportion of the unsupported part at the front of the object to be palletized to the overall unsupported part of the object to be palletized at the initial placement position is relatively large, indicating that the possibility of the object to be palletized tipping and slipping laterally at the initial placement position is relatively large. Therefore, the initial placement position of the object to be palletized is translated backward by a preset adjustment distance with respect to the palletized object to obtain the target placement position of the object to be palletized. The target placement position is the final position where the object to be palletized needs to be placed on the existing pallet pattern, so that the stability of the object to be palletized when placed at the target placement position is better and the risk of lateral sliding is not likely to occur. Description of the Drawings

[0060] To more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the accompanying drawings required for the description of the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.

[0061] Figure 1 It is a flowchart of a palletizing dynamic adjustment method based on the object placement position provided by the embodiments of the present invention. Specific embodiments

[0062] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts fall within the scope of protection of the present invention.

[0063] A palletizing dynamic adjustment method based on the object placement position described in this application, as Figure 1 shown, includes the following steps:

[0064] Step S100: Determine the initial placement position of the object to be palletized according to the image information of the object to be palletized placed at the original position;

[0065] The original position is the placement position of the object to be palletized before stacking, and the initial placement position is the placement position determined according to the existing palletizing algorithm for the object to be palletized.

[0066] Further, step S100 includes steps S110 - S140:

[0067] Step S110: Obtain the captured images of the object to be palletized at several shooting angles;

[0068] Among them, the object to be palletized is a box with a regular shape, which can be a cubic suitcase.

[0069] Step S120: Extract image features from each captured image to obtain several image features of the object to be palletized;

[0070] Extract image features from the captured images, and the image features of the object to be palletized in each captured image are extracted. The image features can be the size features of the object to be palletized (such as the lengths of length, width, and height), type features (such as whether it is a material that can be stacked. If the material of the object to be palletized is a hard specification, other objects can be stacked on this object to be palletized; if the material of the object to be palletized is a soft specification, other objects cannot be stacked on this object to be palletized), etc.

[0071] Step S130: Match each image feature of the object to be palletized with a number of historical image features to obtain the target historical image feature corresponding to each image feature of the object to be palletized;

[0072] The target historical image feature is the historical image feature with the highest matching degree among a number of historical image features for the image feature corresponding to the target historical image feature.

[0073] After obtaining the image features of the object to be palletized, compare them with the historical image features, and determine the historical image feature with the highest matching degree for the image feature corresponding to any target historical image feature as the target historical image feature corresponding to the target historical image feature. The historical image features are the image features of a number of historical palletized objects collected during the historical period. Since the specifications of the historical palletized objects are known, by comparing the image features of the object to be palletized with the historical image features, the target historical image feature can be determined, and then the corresponding historical palletized object can be determined through the target historical image feature. The determined historical palletized object is the palletized object most similar to the object to be palletized.

[0074] Step S140: Process a number of target historical image features according to the preset palletizing rules to obtain the initial placement position corresponding to the object to be palletized.

[0075] The preset palletizing rules adopt existing palletizing algorithms, that is, according to the specification features of the object to be palletized and the current pallet pattern specifications, match an initial placement position suitable for its size for the object to be palletized. Among them, the specification features of the object to be palletized are the image features of the object to be palletized, which can be determined by the target historical image features, or data analysis can be performed on the image features of the object to be palletized to determine the size of the object to be palletized.

[0076] Step S200: If there is a palletized object below the initial placement position, determine the predicted sliding distance of the object to be palletized according to the mass of the object to be palletized and the height of the palletized object located below the initial placement position;

[0077] If there is a palletized object below the initial placement position, it means that the pallet layer corresponding to the initial placement position is not the bottom layer, at least the second layer of the current pallet pattern (the larger the value of the pallet layer, the higher the height corresponding to the pallet layer). The initial placement position is not at the bottom layer, which means that there may be a risk of side slip when the object to be palletized falls to the initial placement position on the conveyor belt. Then, further determine the predicted sliding distance when the object to be palletized undergoes side slip to judge whether the object to be palletized will slide down to the lower layer of the current pallet pattern if it undergoes side slip at the initial placement position. If it slides down to the lower layer of the current pallet pattern, it will cause damage to the object to be palletized and other objects located at the sliding point of the object to be palletized.

[0078] Further, step S200 includes steps S210 - S230:

[0079] Step S210, if there is a palletized object below the initial placement position, then determine this palletized object as the target palletized object;

[0080] Step S220, obtain the mass g of the object to be palletized 1 and the height h of the target palletized object 1 ;

[0081] Step S230, determine the predicted sliding distance of the object to be palletized as g 1 ×a 1 +h 1 ×a 2 ; where a 1 is the preset mass sliding coefficient, and a 2 is the preset height sliding coefficient.

[0082] a 1 and a 2 can be determined based on the statistics of the sliding distances of historical palletized objects by the staff.

[0083] Step S300, if the predicted sliding distance of the object to be palletized is less than the distance between the palletized object (i.e., the target palletized object) located below the initial placement position and the palletized object adjacent to the front of this palletized object, then determine the first-time airborne rate L of the object to be palletized according to the area of the palletized object located below the initial placement position and the area of the object to be palletized 1 ;

[0084] Further, step S300 includes steps S310 - S350:

[0085] Step S310, if there is another palletized object in front of the target palletized object, then execute step S320; otherwise, execute step S340;

[0086] Step S320, determine the palletized object adjacent to and in front of the target palletized object as the adjacent palletized object;

[0087] The front of the palletized object is the opposite direction of the moving direction for moving the object to be palletized from the original position to the initial placement position, that is, the opposite direction in which the conveyor belt transports the object to be palletized to the initial placement position.

[0088] Step S330, if the distance between the target palletized object and the adjacent palletized object is greater than or equal to the predicted sliding distance of the object to be palletized, then execute step S340;

[0089] If the predicted sliding distance of the object to be palletized is less than the distance between the target palletized object and the adjacent palletized object or there is no other palletized object in front of the target palletized object, it means that if the object to be palletized tilts and slides forward at the initial placement position, the object to be palletized will slide down to the lower layer of the pallet layer where the initial placement position is located, which will cause damage to the object to be palletized and other objects located at the sliding point of the object to be palletized. Therefore, it is necessary to continue to judge the probability of the object to be palletized tilting and sliding forward.

[0090] When the predicted sliding distance of the object to be palletized is greater than or equal to the distance between the target palletized object and the adjacent palletized object, it means that even if the object to be palletized tilts and slides forward at the initial placement position, the object to be palletized will slide to the interval between the target palletized object and the adjacent palletized object, and the object to be palletized will not slide to the lower layer of the pallet layer where the initial placement position is located, and the object to be palletized will not cause damage. Therefore, it is allowed to place the object to be palletized at the initial placement position, and the initial placement position is determined as the target placement position of the object to be palletized.

[0091] Step S340: Obtain the floor area B of the object to be palletized 1 and the area B of the overlapping region between the initial placement position and the upper surface of the target palletized object 2 ;

[0092] Step S350: Determine the first-time airborne rate L of the object to be palletized 1 = B 2 / B 1 .

[0093] The first-time airborne rate represents the ratio of the overlapping area between the initial placement position and the surface of the palletized object located below the initial placement position to the total floor area of the object to be palletized. The larger the first-time airborne rate, the larger the overlapping area between the object to be palletized and the upper surface of the target palletized object at the initial placement position, the less the unsupported part below the object to be palletized at the initial placement position, and the more stable the object to be palletized at the initial placement position.

[0094] Step S400: If the first-time airborne rate of the object to be palletized is less than the preset airborne rate threshold, then determine the second-time airborne rate L of the object to be palletized according to the area of the object to be palletized within the target area at the initial placement position 2 ;

[0095] The target area is the area in the initial placement position before the front surface of the palletized object located below the initial placement position.

[0096] If the primary air rate of the objects to be stacked is less than the preset air rate threshold, it means that there are more unsupported parts below the objects to be stacked at the initial placement position, and there may be a risk of slipping. In order to further judge the stability of the objects to be stacked at the initial placement position, the secondary air rate of the objects to be stacked is determined.

[0097] The secondary empty rate indicates the ratio of the area of ​​the target area to the total area occupied by the objects to be stacked. The larger the secondary empty rate is, the more parts of the unsupported parts below the objects to be stacked are located in front of the front surface of the stacked objects when the objects to be stacked are in the initial placement position. Since the arrangement rule of the objects to be stacked is to stack from back to front and stack rows first (that is, to stack the rear positions first, and when the rear row is stacked, the row in front is stacked), even if the objects to be stacked have more unsupported parts below at the initial placement position, if most of the unsupported parts are located on the sides or rear of the target stacking objects, the objects to be stacked are more likely to slide to the side and rear when they are in the initial placement position. There are other already stacked objects on the sides and rear of the stacked object. Therefore, the object to be stacked will not slide to the stacking layer where the target stacking object is located, but will only get stuck in the gap between the target stacking object and its adjacent already stacked objects, without causing damage to the object to be stacked. However, if, when the object to be stacked is in the initial placement position, the unsupported portion below it is more located in front of the front surface of the already stacked object, it means that when the object to be stacked is in the initial placement position, it is more likely to slide forward, and there are no other already stacked objects in front of the target stacking object. Therefore, when the object to be stacked tilts forward, it will slide to the stacking layer where the target stacking object is located or the stacking layer below the target stacking object, causing damage to the object to be stacked.

[0098] Further, step S400 includes steps S410 to S480:

[0099] Step S410: If L 1 If the empty rate is less than the preset threshold value, a two-dimensional coordinate system is established with the placement surface of the target stacking object as the base surface, any vertex of the target stacking object as the origin, the front of the target stacking object as the positive direction of the horizontal axis, and the wide side of the target stacking object as the vertical axis;

[0100] Step S420, determining two common vertices of the upper surface and the front surface of the target palletizing object as the first vertex and the second vertex in descending order of the ordinates of their respective coordinates in the two-dimensional coordinate system;

[0101] Step S430: Obtain the coordinates of the first vertex in the two-dimensional coordinate system (A 1 ,C 1 ) and the coordinates of the second vertex in the two-dimensional coordinate system (A 2, C 2 ); where, A 1 is the abscissa of the first vertex in the two-dimensional coordinate system, and C 1 is the ordinate of the first vertex in the two-dimensional coordinate system; A 2 is the abscissa of the second vertex in the two-dimensional coordinate system, and C 2 is the ordinate of the second vertex in the two-dimensional coordinate system;

[0102] Step S440: Sequentially determine the third vertex and the fourth vertex from the two common vertices of the upper surface and the front surface of the object to be palletized, in the order of decreasing ordinates of their respective coordinates in the two-dimensional coordinate system;

[0103] Step S450: Obtain the coordinates (A 3 , C 3 ) of the third vertex at its initial placement position in the two-dimensional coordinate system and the coordinates (A 4 , C 4 ) of the fourth vertex at its initial placement position in the two-dimensional coordinate system; where, A 3 is the abscissa of the third vertex at its initial placement position in the two-dimensional coordinate system, and C 3 is the ordinate of the third vertex at its initial placement position in the two-dimensional coordinate system;

[0104] Step S460: Determine the area surrounded by (A 1 , C 3 ), (A 2 , C 4 ), (A 3 , C 3 ), (A 4 , C 4 ) as the target area;

[0105] Step S470: Determine the area B 3 = |A 3 - A 1 | × |C 3 - C 4 |;

[0106] Step S480: Determine the secondary airborne rate L 2 = B 3 / B 1 .

[0107] Step S500: If L 2 / (1 - L 1 ) is greater than the preset airborne rate ratio threshold, then translate the initial placement position of the object to be palletized backward by a preset adjustment distance to obtain the target placement position of the object to be palletized.

[0108] Further, step S500 includes steps S510 to S558:

[0109] Step S510: If L 2 / (1-L 1 ) is greater than a preset volley rate ratio threshold, the adjustment distance is determined according to the width of the target area;

[0110] Specifically, the adjustment distance is determined through steps S511 to S513:

[0111] Step S511: Obtain the maximum horizontal coordinate H of several vertices of the target stacking object in the two-dimensional coordinate system. 1 and the smallest horizontal coordinate H 2 ;

[0112] Step S512: Obtain the maximum horizontal coordinate H of the vertices at the initial placement position in the two-dimensional coordinate system. 3 and the smallest horizontal coordinate H 4 ;

[0113] Step S513: If |H 3 -H 1 |≥|H 4 -H 2 |, then |H 4 -H 2 | confirm to adjust the distance; otherwise, (|H 4 -H 2 |+|H 3 -H 1 |) / 2 is determined as the adjustment distance.

[0114] Step S520, the initial placement position of the object to be stacked is translated to the rear of the stacked object by an adjusted distance to obtain an adjusted placement position of the object to be stacked;

[0115] Step S530: Obtain the area B of the overlapped area between the adjusted placement position and the upper surface of the target stacking object. 4 ;

[0116] Step S540: Determine the adjusted empty rate L of the objects to be stacked 3 =B 4 / B 1 ;

[0117] Step S550: If L 3 If the value of the adjusted placement position of the object to be palletized is greater than or equal to a preset empty rate threshold, the adjusted placement position of the object to be palletized is determined as the target placement position of the object to be palletized;

[0118] Step S551: If L 3If it is less than the preset threshold of the airspace ratio, the palletized object with the placement layer being the bottom layer and no palletized object in front of it is determined as the first palletized object;

[0119] Step S552: Obtain the height J of the object to be palletized 0 and the height J of each first palletized object 1 , J 2 ,..., J r ,..., J s ; where r = 1, 2,..., s; s is the number of the first palletized objects; J r is the height of the r-th first palletized object;

[0120] Step S553: Determine the height difference between the object to be palletized and each first palletized object to obtain a height difference list K = (K 1 , K 2 ,..., K r ,..., K s ); K r = |J r - J 0 |; where K r is the height difference between the object to be palletized and the r-th first palletized object;

[0121] Step S554: Obtain the coordinates of several vertices of the projection area of the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system to obtain a vertex coordinate list D = (D 1 , D 2 ,..., D i ,..., D t ); D i = (D i1 , D i2 ); where i = 1, 2,..., t; t is the number of vertices of the projection area of the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system; D i is the coordinate of the i-th vertex of the projection area of the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system; D i1 is the abscissa corresponding to D i ; D i2 is the ordinate corresponding to D i ; MIN() is a preset minimum value determination function;

[0122] Step S555: Determine the target abscissa E = MAX(D 11 , D 21 ,..., D i1 ,..., D t1 ); where MAX() is a preset maximum value determination function;

[0123] Step S556: Determine the first target ordinate F 1 = MAX(D 12 , D 22 ,..., D i2 ,..., D t2 ) and the second target ordinate F 2 = MIN(D 12 , D 22 ,..., D i2 ,..., D t2 );

[0124] Step S557: Obtain the length G of the object to be palletized 1 and the width G of the object to be palletized 2 ;

[0125] Step S558: Determine the target placement position of the object to be palletized as the area enclosed by (E, (F 1 + F 2 + G 2 ) / 2), (E, (F 1 + F 2 - G 2 ) / 2), (E + G 1 , (F 1 + F 2 + G 2 ) / 2), (E + G 1 , (F 1 + F 2 - G 2 ) / 2).

[0126] The palletizing dynamic adjustment method based on the object placement position of the present invention first determines the initial placement position of the object to be palletized according to the image information of the object to be palletized placed at the original position. The initial placement position is the placement position of the object to be palletized determined according to the existing palletizing algorithm. Then, it is judged whether there is a palletized object below the initial placement position. If there is a palletized object below the initial placement position, it means that the palletizing layer at the initial placement position is at least two layers. Then, according to the mass of the object to be palletized and the height of the palletized object located below the initial placement position, the predicted sliding distance of the object to be palletized is determined. The predicted sliding distance represents the possible sliding distance of the object to be palletized if it slips laterally at the initial placement position. If the predicted sliding distance of the object to be palletized is less than the distance between the palletized object located below the initial placement position and the adjacent palletized object in front of this palletized object, it means that if the object to be palletized slips laterally at the initial placement position, the object to be palletized will slide to the palletizing layer below it, which will cause damage to the object to be palletized. Therefore, according to the area of the palletized object located below the initial placement position and the area of the object to be palletized, the first aerial ratio L of the object to be palletized is determined. 1 , the first aerial ratio represents the ratio of the overlapping area of the surface of the initial placement position and the palletized object located below the initial placement position to the total floor area of the object to be palletized. If L 1 is less than the preset aerial ratio threshold, it means that if the object to be palletized is placed at the initial placement position, there are more unsupported parts below it, and there is a risk of lateral sliding. Then, according to the area of the object to be palletized within the target area at the initial placement position, the second aerial ratio L of the object to be palletized is determined. 2 , the second aerial ratio represents the ratio of the unsupported part at the front of the object to be palletized to the total floor area of the object to be palletized at the initial placement position of the object to be palletized. If L 2 / (1 - L 1 ) is greater than the preset aerial ratio occupancy threshold, it means that the proportion of the unsupported part at the front of the object to be palletized in the overall unsupported part of the object to be palletized at the initial placement position is relatively large, indicating that the possibility of the object to be palletized tipping and sliding laterally at the initial placement position is relatively large. Therefore, the initial placement position of the object to be palletized is translated backward by a preset adjustment distance with respect to the palletized object to obtain the target placement position of the object to be palletized. The target placement position is the final position where the object to be palletized needs to be placed on the existing pallet pattern, so that the stability of the object to be palletized when placed at the target placement position is better and the risk of lateral sliding is not likely to occur.

[0127] An embodiment of the present invention also provides a computer program product, which includes program code. When the program product runs on an electronic device, the program code is used to cause the electronic device to execute the steps in the method according to various exemplary embodiments of the present invention described above in this specification.

[0128] In addition, although the steps of the methods in the present disclosure are described in a specific order in the accompanying drawings, this does not require or imply that these steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step for execution, and / or one step may be decomposed into multiple steps for execution, etc.

[0129] From the description of the above embodiments, those skilled in the art can easily understand that the exemplary embodiments described herein can be implemented by software, or by a combination of software and necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the methods according to the embodiments of the present disclosure.

[0130] In an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is further provided.

[0131] Those skilled in the art can understand that various aspects of the present invention can be implemented as a system, a method, or a program product. Therefore, various aspects of the present invention can be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or an implementation combining hardware and software aspects, which can be collectively referred to herein as "circuitry", "module", or "system".

[0132] The electronic device according to this embodiment of the present invention. The electronic device is merely an example and should not impose any limitation on the functions and usage scope of the embodiments of the present invention.

[0133] The electronic device is presented in the form of a general-purpose computing device. The components of the electronic device may include, but are not limited to: at least one of the above-mentioned processors, at least one of the above-mentioned memories, and a bus connecting different system components (including the memory and the processor).

[0134] Among them, the memory stores program code, and the program code can be executed by the processor, so that the processor executes the steps according to various exemplary embodiments of the present invention described in the above "Exemplary Method" section of this specification.

[0135] The memory may include a readable medium in the form of a volatile memory, such as a random access memory (RAM) and / or a cache memory, and may further include a read-only memory (ROM).

[0136] The storage may also include a program / utility having a set (at least one) of program modules, such program modules including but not limited to: an operating system, one or more application programs, other program modules, and program data, and the implementation of a network environment may be included in each or some combination of these examples.

[0137] The bus may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of the various bus structures.

[0138] The electronic device may also communicate with one or more external devices (such as a keyboard, a pointing device, a Bluetooth device, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device, and / or communicate with any device that enables the electronic device to communicate with one or more other computing devices (such as a router, a modem, etc.). Such communication may be through an input / output (I / O) interface. And, the electronic device may also communicate with one or more networks (such as a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through a network adapter.

[0139] In an exemplary embodiment of the present disclosure, there is also provided a computer-readable storage medium having stored thereon a program product capable of implementing the methods described above in this specification. In some possible implementation manners, various aspects of the present invention may also be implemented in the form of a program product, which includes program code that, when the program product runs on a terminal device, is used to cause the terminal device to execute the steps according to various exemplary embodiments of the present invention described in the "Exemplary Methods" section above in this specification.

[0140] The program product may adopt any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may, for example, be but not limited to an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0141] A computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which readable program code is carried. Such a propagated data signal may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing. The readable signal medium may also be any readable medium other than a readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device.

[0142] The program code contained on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, and the like, or any suitable combination of the foregoing.

[0143] The program code for performing the operations of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, etc., and also including conventional procedural programming languages such as the "C" language or similar programming languages. The program code may execute entirely on the user's computing device, partially on the user's device, as a stand-alone software package, partially on the user's computing device and partially on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user's computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., by using an Internet service provider to connect through the Internet).

[0144] In addition, the above-mentioned drawings are only schematic illustrations of the processes included in the method according to the exemplary embodiments of the present invention, rather than for limiting purposes. It is easy to understand that the processes shown in the above-mentioned drawings do not indicate or limit the chronological order of these processes. Additionally, it is also easy to understand that these processes may be executed synchronously or asynchronously, for example, in multiple modules.

[0145] It should be noted that although several modules or units of devices for action execution are mentioned in the above detailed description, such a division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more of the above-mentioned modules or units may be embodied in one module or unit. Conversely, the features and functions of one module or unit described above may be further divided and embodied by multiple modules or units.

[0146] As described above, it is only the specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed by the present invention should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims

1. A method for dynamic adjustment of palletizing based on the placement of objects, characterized in that: The steps include: Step S100, determining the initial placement position of the objects to be stacked according to the image information of the objects to be stacked placed at the original position; Step S200: If there is a stacked object below the initial placement position, the stacked object is determined as a target stacking object, and a predicted sliding distance of the object to be stacked is determined according to the mass of the object to be stacked and the height of the target stacking object; Step S300: if the predicted sliding distance of the object to be palletized is less than the distance between the target palletizing object and the adjacent palletized object in front of the target palletizing object, determine the one-time flying rate L1 of the object to be palletized according to the area of ​​the target palletizing object and the area of ​​the object to be palletized; The front of the stacked objects is in the opposite direction of the moving direction of the objects to be stacked from the original position to the initial placement position; The one-time empty rate represents the ratio of the surface overlap area of ​​the initial placement position and the target stacking object to the total area occupied by the objects to be stacked; Step S400: if the primary empty rate of the objects to be palletized is less than a preset empty rate threshold, then determine the secondary empty rate L2 of the objects to be palletized according to the area of ​​the objects to be palletized in the target area of ​​the initial placement position; the target area is the area before the front surface of the target palletizing object in the initial placement position; the secondary empty rate represents the ratio of the area of ​​the target area to the total area occupied by the objects to be palletized; Step S500: if L2 / (1-L1) is greater than a preset threshold value of the percentage of the empty space, the initial placement position of the object to be stacked is translated to the rear of the stacked object by a preset adjustment distance to obtain a target placement position of the object to be stacked; Wherein, the step S500 includes steps S510 to S550: Step S510: if L2 / (1-L1) is greater than a preset flying rate threshold, then determining an adjustment distance according to the width of the target area; Step S520, translating the initial placement position of the object to be palletized toward the rear of the palletized object by the adjustment distance to obtain the adjusted placement position of the object to be palletized; Step S530, obtaining an area B4 of an overlapping region between the adjusted placement position and the upper surface of the target stacking object; Step S540, determining the adjusted air rate L3 of the objects to be stacked = B4 / B1; wherein B1 is the floor area of ​​the objects to be stacked; Step S550: If L3 is greater than or equal to a preset empty rate threshold, the adjusted placement position of the object to be palletized is determined as the target placement position of the object to be palletized.

2. The method according to claim 1, characterized in that The step S100 includes: Step S110, obtaining photographic images of the objects to be stacked at several shooting angles; the objects to be stacked are boxes with regular shapes; Step S120, performing image feature extraction on each of the captured images to obtain a number of image features of the objects to be palletized; Step S130, matching each image feature of the object to be palletized with a plurality of historical image features to obtain a target historical image feature corresponding to each image feature of the object to be palletized; the target historical image feature is a historical image feature having the greatest matching degree with the image feature corresponding to the target historical image feature among the plurality of historical image features; Step S140: Processing a plurality of the target historical image features according to a preset palletizing rule to obtain an initial placement position corresponding to the object to be palletized.

3. The method according to claim 2, characterized in that The step S200 includes: Step S220, obtaining the mass g1 of the object to be stacked and the height h1 of the target stacking object; Step S230, determining the predicted sliding distance of the objects to be stacked as g1×a1+h1×a2; wherein a1 is a preset mass sliding coefficient, and a2 is a preset height sliding coefficient.

4. The method according to claim 3, characterized in that The step S300 includes: Step S310: If there are other palletized objects in front of the target palletized object, execute step S320; otherwise, execute step S340; Step S320, determining a palletized object located in front of the target palletizing object and adjacent to the target palletizing object as an adjacent palletizing object; Step S330: If the distance between the target stacking object and the adjacent stacking object is greater than or equal to the predicted sliding distance of the to-be-stacked object, executing step S340; Step S340, obtaining an area B2 of an overlapping region between the initial placement position and the upper surface of the target stacking object; Step S350, determining the one-time empty rate L1=B2 / B1 of the objects to be stacked.

5. The method according to claim 4, characterized in that The step S400 includes: Step S410: If L1 is less than a preset empty rate threshold, a two-dimensional coordinate system is established with the placement surface of the target stacking object as the base surface, any vertex of the target stacking object as the origin, the front of the target stacking object as the positive direction of the horizontal axis, and the wide side of the target stacking object as the vertical axis; Step S420, determining two common vertices of the upper surface and the front surface of the target palletizing object as the first vertex and the second vertex in descending order of the ordinates of their respective coordinates in the two-dimensional coordinate system; Step S430, obtaining the coordinates (A1, C1) of the first vertex in the two-dimensional coordinate system and the coordinates (A2, C2) of the second vertex in the two-dimensional coordinate system; wherein A1 is the horizontal coordinate of the first vertex in the two-dimensional coordinate system, and C1 is the vertical coordinate of the first vertex in the two-dimensional coordinate system; A2 is the horizontal coordinate of the second vertex in the two-dimensional coordinate system, and C2 is the vertical coordinate of the second vertex in the two-dimensional coordinate system; Step S440, determining two common vertices of the upper surface and the front surface of the object to be palletized as the third vertex and the fourth vertex in descending order of the ordinates of their respective coordinates in the two-dimensional coordinate system; Step S450, obtaining the coordinates (A3, C3) of the third vertex at the initial placement position in the two-dimensional coordinate system and the coordinates (A4, C4) of the fourth vertex at the initial placement position in the two-dimensional coordinate system; wherein A3 is the horizontal coordinate of the third vertex at the initial placement position in the two-dimensional coordinate system, and C3 is the vertical coordinate of the third vertex at the initial placement position in the two-dimensional coordinate system; Step S460, determining the area enclosed by (A1, C3), (A2, C4), (A3, C3), and (A4, C4) as the target area; Step S470, determining the area B3 of the target area = |A3-A1|×|C3-C4|; Step S480, determining the secondary empty rate L2=B3 / B1 of the objects to be palletized.

6. The method according to claim 5, characterized in that The step S550 further includes: Step S551: if L3 is less than a preset empty rate threshold, the stacked object with the lowest layer and no stacked object in front of it is determined as the first stacked object; Step S552: Obtain the height J0 of the object to be palletized and the height J1, J2, ..., J of each of the first palletized objects. r ,...,J s ; wherein r=1,2,...,s; s is the number of the first stacked objects; J r is the height of the rth first stacked object; Step S553: ​​determine the height difference between the object to be palletized and each of the first palletized objects, and obtain a height difference list K=(K1, K2, ..., K r ,...,K s );K r =|J r -J0|; where K r is the height difference between the object to be palletized and the rth first palletized object; Step S554: Obtain the coordinates of several vertices of the projection area of ​​the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system to obtain a vertex coordinate list D=(D1, D2, ..., D i ,...,D t );D i =(D i1 ,D i2 ); wherein i=1,2,...,t; t is the number of vertices of the projection area of ​​the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system; D i D is the coordinate of the i-th vertex of the projection area of ​​the first palletized object corresponding to MIN(K) in the two-dimensional coordinate system; i1 D i The corresponding horizontal axis; D i2 D i The corresponding vertical coordinate; MIN() is the preset minimum value determination function; Step S555: Determine the target horizontal coordinate E=MAX(D 11 ,D 21 ,...,D i1 ,...,D t1 ); wherein MAX() is a preset maximum value determination function; Step S556: Determine the first target vertical coordinate F1=MAX(D 12 ,D 22 ,...,D i2 ,...,D t2 ) and the second target ordinate F2=MIN(D 12 ,D 22 ,...,D i2 ,...,D t2 ); Step S557, obtaining the length G1 and the width G2 of the objects to be stacked; Step S558: Determine the area enclosed by (E, (F1+F2+G2) / 2), (E, (F1+F2-G2) / 2), (E+G1, (F1+F2+G2) / 2), and (E+G1, (F1+F2-G2) / 2) as the target placement position for the objects to be stacked.

7. The method according to claim 6, characterized in that The adjustment distance is determined by the following steps: Step S511, obtaining the maximum horizontal coordinate H1 and the minimum horizontal coordinate H2 of a plurality of vertices of the target stacking object in the two-dimensional coordinate system; Step S512, obtaining the maximum horizontal coordinate H3 and the minimum horizontal coordinate H4 of a plurality of vertices at the initial placement position in the two-dimensional coordinate system; Step S513: If |H3-H1|≥|H4-H2|, |H4-H2| is determined as the adjustment distance; otherwise, (|H4-H2|+|H3-H1|) / 2 is determined as the adjustment distance.

8. A non-transitory computer-readable storage medium, wherein at least one instruction or at least one program is stored in the storage medium, and the at least one instruction or the at least one program is loaded and executed by a processor to implement the method as claimed in any one of claims 1 to 7.

9. An electronic device, characterized in that: The invention comprises a processor and the non-transitory computer-readable storage medium as claimed in claim 8.

Citation Information

Patent Citations

  • Robotic system for stacking packages by using real-time placement simulation

    CN111605938A

  • Rectangular material follow-up sorting, mixing and stacking method and system

    CN119237337A