Palletizing planning method and device

By automatically generating and planning the palletizing type and robotic arm path, the problems of cumbersome and low efficiency of palletizing planning in the existing technology are solved, and the effect of simplifying operations and improving efficiency is achieved.

CN117842712BActive Publication Date: 2024-12-17AOBO (JIANGSU) ROBOT CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311838562.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-28
Publication Date
2024-12-17
Estimated Expiration
2043-12-28

AI Technical Summary

Technical Problem

The existing palletizing planning scheme requires manual editing of users. Each operation is cumbersome, low efficiency, high professionalism and proficiency requirements, and time-consuming.

Method used

By obtaining the palletizing and robotic arm parameters, a variety of single-layer stacking types are automatically generated, and multi-layer stacking types are generated according to user selection, and the robotic arm stacking path is planned to simplify the operation process, reduce user operations, and improve efficiency.

Benefits of technology

Reduces user operations, reduces professionalism and proficiency requirements, saves time, and improves the efficiency of palletization planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117842712B_ABST
    Figure CN117842712B_ABST
Patent Text Reader

Abstract

The present invention provides a palletizing planning method and device, the method comprising the following steps: obtaining palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of pallets used for stacking and box parameters of boxes; automatically generating multiple single-layer pallet types according to the palletizing parameters, so that users can select preset single-layer pallet types according to needs; generating multi-layer pallet types according to the preset single-layer pallet types selected by the user; and planning the stacking path of all boxes in the multi-layer pallet types stacked by the robot arm according to the multi-layer pallet types and the robot arm parameters. The present invention can reduce user operations, simplify the pallet type generation process, has low requirements on the user's professionalism and proficiency, saves time, and improves the efficiency of palletizing planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of transportation and storage, and in particular to a palletizing planning method and device. Background Art

[0002] With the popularization of automated equipment in the field of transportation and storage technology, setting up a palletizing planning plan before palletizing is crucial for the smooth implementation of palletizing.

[0003] Currently, most of the palletizing planning schemes require users to manually edit the pallet type, which is mostly generated by manually dragging the box model, and each dragging is performed on a single box model. By dragging and placing the boxes one by one to modify their positions, it takes a lot of time to generate multi-layer pallet types according to needs. Adjusting the pallet type is cumbersome, which requires high professionalism and proficiency of the user, is time-consuming, and has low efficiency. Summary of the invention

[0004] In order to solve the above technical problems, the present invention provides a palletizing planning method and device, which can reduce user operations, simplify the pallet type generation process, have low requirements on user expertise and proficiency, save time, and improve the efficiency of palletizing planning.

[0005] The technical solution adopted by the present invention is as follows:

[0006] A palletizing planning method comprises the following steps: obtaining palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of pallets used for stacking and box parameters of boxes; automatically generating a plurality of single-layer pallet types according to the palletizing parameters, so that a user can select a preset single-layer pallet type according to needs; generating a multi-layer pallet type according to the preset single-layer pallet type selected by the user; and planning a stacking path for a robot arm to stack all boxes in the multi-layer pallet type according to the multi-layer pallet type and the robot arm parameters.

[0007] In addition, the palletizing planning method proposed above according to the present invention may also have the following additional technical features:

[0008] According to one embodiment of the present invention, a plurality of single-layer stacking types with the center of gravity at the center of the pallet are automatically generated according to the palletizing parameters based on a preset pallet generation algorithm.

[0009] According to one embodiment of the present invention, generating a multi-layer stacking type according to the preset single-layer stacking type specifically includes: performing a geometric transformation on the preset single-layer stacking type to generate a preset single-layer transformed stacking type different from the preset single-layer stacking type; generating a multi-layer stacking type with different odd-numbered layers and even-numbered layers according to the preset single-layer stacking type and the preset single-layer transformed stacking type.

[0010] According to one embodiment of the present invention, a stacking path for a robot arm to stack all boxes in the multi-layer stack is planned based on the multi-layer stacking type and the robot arm parameters, specifically including: obtaining the stacking order of each box in the stacking type of the single layer where the box is located based on the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type and the box parameters of all boxes in the single layer; planning the stacking path for the robot arm to stack all boxes in the multi-layer stacking type based on the robot arm parameters, the box parameters of each box and the stacking order.

[0011] According to one embodiment of the present invention, the stacking weight of each box in the single layer of the multi-layer stacking is obtained based on the robot arm parameters, the stacking type of each single layer in the multi-layer stacking and the box parameters of all boxes in the single layer, and the stacking order of each box in the single layer of the stacking type is obtained based on the stacking weight of each box in the single layer of the stacking type.

[0012] According to one embodiment of the present invention, the stacking path of all boxes in a multi-layer pallet stacked by the robot arm is planned based on the preset posture of the material picking component of the robot arm before palletizing, the preset material picking posture and the preset material placing posture during palletizing, the stacking position of each box in the multi-layer pallet and the stacking order in the single-layer pallet where the box is located.

[0013] According to one embodiment of the present invention, after planning the stacking path for the robot arm to stack all the boxes in the multi-layer pallet according to the multi-layer pallet type and the robot arm parameters, it also includes: performing collision detection on the process of the robot arm stacking all the boxes in the multi-layer pallet according to the planned stacking path.

[0014] According to one embodiment of the present invention, the palletizing planning method further includes: calibrating the position and posture of the robot arm and the pallet; and performing calibration verification on the calibrated robot arm and the pallet.

[0015] According to one embodiment of the present invention, the calibrated robotic arm and pallet are calibrated and verified, specifically including: obtaining a posture compensation value of the calibrated pallet; compensating the posture of the pallet according to the posture compensation value; simulating the movement of the material picking component of the robotic arm to the target posture on the compensated pallet; and verifying the accuracy of the calibration based on the relative posture of the material picking component and the compensated pallet.

[0016] In addition, to achieve the above-mentioned purpose, the present invention also proposes a palletizing planning device.

[0017] A palletizing planning device comprises: a parameter acquisition module, the parameter acquisition module is used to acquire palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of pallets used for stacking and box parameters of boxes; a single-layer pallet type generation module, the single-layer pallet type generation module is used to automatically generate a variety of single-layer pallet types according to the palletizing parameters, so that a user can select a preset single-layer pallet type according to needs; a multi-layer pallet type generation module, the multi-layer pallet type generation module is used to generate a multi-layer pallet type according to the preset single-layer pallet type selected by the user; and a stacking path planning module, the stacking path planning module is used to plan a stacking path for a robot arm to stack all boxes in the multi-layer pallet type according to the multi-layer pallet type and the robot arm parameters.

[0018] Beneficial effects of the present invention:

[0019] The palletizing planning method of the present invention can reduce user operations, simplify the palletizing generation process, lower the requirements on user expertise and proficiency, save time, and improve the efficiency of palletizing planning by automatically generating multiple single-layer pallet types according to palletizing parameters, generating multi-layer pallet types according to a preset single-layer pallet type selected by a user, and planning the stacking path of all boxes in the multi-layer pallet type stacked by a robotic arm according to the multi-layer pallet type and robotic arm parameters. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 is a flow chart of a palletizing planning method according to an embodiment of the present invention;

[0021] Figure 2 A stacking diagram is generated by a stacking algorithm for placing boxes in a horizontal and vertical matching manner according to an embodiment of the present invention;

[0022] Figure 3 A schematic diagram of a stacking pattern generated by a stacking pattern generation algorithm for crisscross arrangement of boxes according to an embodiment of the present invention;

[0023] Figure 4 A schematic diagram of a stacking pattern generated by a stacking pattern generation algorithm for a box with external expansion and internal filling according to an embodiment of the present invention;

[0024] Figure 5 A schematic diagram of a stacking pattern generated by a stacking pattern generation algorithm for placing boxes in the middle of two sides of a pallet in a horizontal and vertical matching manner according to an embodiment of the present invention;

[0025] Figure 6 A schematic diagram of a stacking pattern generated by a stacking pattern generation algorithm for aligning boxes on the edge of a pallet according to an embodiment of the present invention;

[0026] Figure 7 Schematic diagram of a block diagram of a palletizing planning device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0027] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0028] like Figure 1 As shown, the palletizing planning method of the embodiment of the present invention includes the following steps:

[0029] S1, obtaining palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of a pallet used for stacking and box parameters of a box.

[0030] It should be noted that the pallet parameters may include the length, width, height and related parameters of the pallet coordinate system, the box parameters may include the length, width, height and weight of the box, and the robot arm parameters may include the related parameters of the robot arm coordinate system and the preset position of the robot arm's material picking parts before palletizing.

[0031] S2, automatically generates multiple single-layer pallet types according to palletizing parameters, so that users can select preset single-layer pallet types according to their needs.

[0032] In one embodiment of the present invention, in order to avoid collisions between different boxes during stacking of single-layer pallets, the box spacing can be set based on experience so that the spacing between every two adjacent boxes is greater than or equal to the box spacing, thereby ensuring smooth stacking.

[0033] In one embodiment of the present invention, a plurality of single-layer stacking types with the center of gravity at the center of the pallet can be automatically generated according to the palletizing parameters based on a preset pallet generation algorithm.

[0034] It should be noted that the preset pallet type generation algorithm includes a variety of pallet type generation algorithms for generating different preset pallet types, such as a pallet type generation algorithm in which boxes are placed horizontally and vertically in a matching manner, a pallet type generation algorithm in which boxes are placed in a criss-cross manner, a pallet type generation algorithm in which boxes are placed with outward expansion and inward filling, a pallet type generation algorithm in which boxes are placed horizontally and vertically in the middle of both sides of the pallet, and a pallet type generation algorithm in which boxes are aligned at the edges of the pallet.

[0035] The stacking algorithm for matching boxes horizontally and vertically generates a stacking pattern such as Figure 2As shown, the principle of the algorithm is: according to the range of the pallet, when the size of all boxes is the same, the length and width of the box are divided by the length of the pallet to obtain the maximum number of boxes that can be placed on the long side and wide side of the pallet when the boxes are placed horizontally (box angle 90°) and vertically (box angle 0°). According to this method, the length and width occupied by the entire stack type can be obtained (box size * number + box spacing * (number-1)). By subtracting the length and width of the entire stack type from the length and width of the pallet, the x-coordinate and y-coordinate information of the first box of the horizontal stack type in the pallet coordinate system can be obtained, and then the number of long sides that can be placed when all are placed horizontally and the number of wide sides that can be placed when all are placed horizontally are nested. The coordinate positions of other boxes are gradually obtained based on the coordinates of the first box, and they are filled into the array storing the postures of each box in the stack type (including the x-coordinate, y-coordinate and rotation angle of each box). Similarly, the coordinate information of the boxes when all are placed vertically and when they are matched horizontally and vertically can be obtained. During the calculation process, if the coordinates between the boxes can accommodate the short side of the box, the box coordinates are calculated through geometric operations and added to the stacking result.

[0036] The stacking algorithm for the boxes placed in a crisscross pattern generates a stacking pattern such as Figure 3 As shown in the figure, the principle of the algorithm is: when the size of all boxes is the same, the center position of the pallet (pallet length / 2, pallet width / 2) is used as the reference, and the number of boxes that can be placed vertically n is used as the loop condition. Through the geometric relationship: the x coordinate of the center of the pallet - the length of the box / 2 is the x coordinate of the first box, and the y coordinate of the first box is the y coordinate of the center of the pallet plus the width of the box + the spacing between boxes as the number of boxes placed vertically increases. In this way, the lower left part of the box can be generated, and the coordinates of the boxes on the other three sides can be obtained through geometric relationships based on this lower left box.

[0037] The stacking algorithm for the box expansion and internal filling generates the following stacking types: Figure 4 As shown in the figure, the principle of the algorithm is: first calculate the coordinates of the outer box, which is similar to the calculation method of the stacking algorithm for the boxes placed in a criss-cross pattern, and then the internal free space ( Figure 4 Select the area with the dotted line in the figure) and then fill in the box according to the geometric relationship.

[0038] The stacking algorithm generates the stacking pattern of boxes placed horizontally and vertically in the middle of the two sides of the pallet. Figure 5 As shown in the figure, the principle of the algorithm is: when the size of all boxes is the same, the range of the pallet is obtained according to the length and width of the pallet, and the short side of the pallet is taken as the calculation basis. If there is a box placed horizontally in the middle (box angle 90°), the length of one box is removed; if there is a box placed vertically in the middle (box angle 0°), the width of one box is removed, and then the number of boxes with different placement angles that can be accommodated on one side is calculated, and the coordinate information of each box is obtained in turn through geometric relationships.

[0039] The stacking algorithm generates a stacking pattern where the boxes are aligned on the edge of the pallet. Figure 6 As shown in the figure, the principle of the algorithm is: when the sizes of all boxes are the same, take the long side of the pallet as the reference, first calculate the maximum number of boxes that can be placed vertically (m), and obtain the length of the stack (that is, the long side of the box * m); subtract the stack length from the long side of the pallet to obtain where the horizontal boxes should be placed; then determine how many boxes can be placed within the stack range through the wide side of the box, and obtain the coordinate position of each box based on geometric relationship calculations.

[0040] Each pallet generation algorithm can automatically generate a single-layer pallet containing different numbers of boxes and with the center of gravity of the pallet at the center of the pallet according to the box parameters, so that users can make reasonable choices based on the number of boxes to be stacked as needed, simplifying the pallet generation process, with lower requirements on the user's professionalism and proficiency, saving time and improving the efficiency of palletizing planning.

[0041] In one embodiment of the present invention, in order to facilitate users to select preset single-layer pallet types according to their needs, the pallets can be sorted according to the number of boxes that can be stacked by each single-layer pallet type, and the single-layer pallet type that can stack the most boxes is displayed first to achieve effective use of the pallet space.

[0042] S3, generating a multi-layer stacking type according to the preset single-layer stacking type selected by the user.

[0043] In one embodiment of the present invention, step S3 may specifically include:

[0044] S31, performing geometric transformation on the preset single-layer stacking shape to generate a preset single-layer transformed stacking shape different from the preset single-layer stacking shape.

[0045] It should be noted that in order to ensure the stability and safety of the stack, the odd and even layers of the stack should be different. Therefore, when generating a multi-layer stack, at least two different single-layer stacks are required to make the odd and even layers of the multi-layer stack different.

[0046] In one embodiment of the present invention, the preset single-layer stacking type may be flipped or mirrored to generate a preset single-layer transformed stacking type that is different from the preset single-layer stacking type.

[0047] In another embodiment of the present invention, the user can adjust the posture of each box in the preset single-layer stacking type according to needs, or select a single-layer stacking type from other single-layer stacking types automatically generated by the preset stacking type generation algorithm as the preset single-layer transformation stacking type.

[0048] S32, generating a multi-layer stacking type with different odd-numbered layers and even-numbered layers according to a preset single-layer stacking type and a preset single-layer conversion stacking type.

[0049] In one embodiment of the present invention, only one preset single-layer conversion stacking type can be generated in step S31. At this time, the preset single-layer stacking type and the preset single-layer conversion stacking type are stacked alternately in sequence, so that the odd-numbered layers and the even-numbered layers of the multi-layer stacking type are different; multiple preset single-layer conversion stacking types can also be generated in step S31. At this time, the two adjacent layers of the multi-layer stacking type are different single-layer stacking types.

[0050] S4, planning a stacking path for the robot arm to stack all boxes in the multi-layer stacking type according to the multi-layer stacking type and robot arm parameters.

[0051] In one embodiment of the present invention, step S4 specifically includes:

[0052] S41, obtaining a stacking order of each box in the single layer of the stack where the box is located according to the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type, and the box parameters of all boxes in the single layer.

[0053] In one embodiment of the present invention, the stacking weight of each box in the single-layer stacking type where the box is located can be obtained based on the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type and the box parameters of all boxes in the single layer; the stacking order of each box in the preset single-layer stacking type where the box is located can be obtained based on the stacking weight of each box in the preset single-layer stacking type where the box is located.

[0054] Specifically, a stacking weight can be assigned to the box according to the stacking direction of the robot arm, the coordinates of each box in the single-layer stack, and the length, width, height and weight of the box. The boxes are sorted according to the size of their stacking weight to obtain the stacking order of each box on each layer.

[0055] S42, planning a stacking path for the robot arm to stack all boxes in the multi-layer pallet according to the robot arm parameters, box parameters of each box and the stacking sequence.

[0056] Specifically, the stacking path of all boxes in a multi-layer pallet of the robot arm can be planned based on the preset posture of the robot arm's picking part before palletizing, the preset picking posture and preset placing posture during palletizing, the stacking position of each box in the multi-layer pallet, and the stacking order of the box in the single-layer pallet.

[0057] Among them, the preset posture of the material picking component of the robot arm before palletizing can be a posture set according to experience, the preset material picking posture during palletizing can be the relative posture of the material picking component and the box to be picked up when picking up materials, and the preset material placing posture during palletizing can be the relative posture of the material picking component and the pallet or the box on the pallet when placing materials.

[0058] In one embodiment of the present invention, after step S4, the method may further include: performing collision detection on the process of the robot arm performing palletizing according to the planned stacking paths of all boxes in the multi-layer pallet type.

[0059] By performing collision detection on the palletizing process of the robot arm before stacking, collision of the robot arm during the actual palletizing process can be effectively avoided, ensuring the effectiveness of palletizing planning and improving production efficiency.

[0060] Due to mechanical errors in processing and assembly, the actual position of the pallet relative to the robot arm deviates from the theoretical value. If not calibrated, the actual palletizing will also deviate, for example, the stacking as a whole is biased toward one side of the pallet, the stacking as a whole is rotated at an angle, etc. In one embodiment of the present invention, the palletizing planning method may further include:

[0061] S5, calibrating the position and posture of the pallet relative to the robot arm.

[0062] It should be noted that by calibrating the posture of the pallet relative to the robot arm, a posture compensation value of the calibrated pallet can be obtained.

[0063] In one embodiment of the present invention, the posture compensation value may include a front-to-back distance compensation value, a left-to-right distance compensation value, a height compensation value, and an angle compensation value. The specific value of the posture compensation value can be obtained according to actual measurement during the calibration process.

[0064] S6, perform calibration verification on the calibrated pallet and robotic arm.

[0065] In one embodiment of the present invention, step S6 may specifically include:

[0066] S61, obtaining the calibrated posture compensation value of the pallet.

[0067] S62, compensating the posture of the pallet according to the posture compensation value.

[0068] S63, simulating the movement of the material-picking component of the robot arm to the target position on the compensated pallet.

[0069] In one embodiment of the present invention, when the pallet is the right pallet located on the right side of the robotic arm, the target posture can be a posture that makes the upper left corner point of the material picking component coincide with the upper left corner point of the right pallet, or it can be a fixed posture on the right pallet after specified compensation; when the pallet is the left pallet located on the left side of the robotic arm, the target posture can be a posture that makes the upper right corner point of the material picking component coincide with the upper right corner point of the left pallet, or it can be a fixed posture on the left pallet after specified compensation.

[0070] S64, verifying the accuracy of the calibration according to the relative posture of the picking component and the compensated pallet.

[0071] Taking the calibration verification of the right pallet as an example, when the target posture is to make the upper left corner of the material picking component coincide with the upper left corner of the pallet, if the calibration is accurate, the left side of the material picking component should be flush with the left side of the pallet, the upper side of the material picking component should be flush with the upper side of the pallet, and the distance between the lower surface of the material picking component and the upper surface of the pallet is the preset height spacing value, where the preset height spacing value is determined according to actual production needs, such as 2cm. If one of the three conditions is not met, it means that the calibration is inaccurate and the posture compensation value of the pallet needs to be further adjusted.

[0072] In one embodiment of the present invention, the movement of the picking component along one side of the compensated pallet can also be simulated to check whether the side of the picking component corresponding to the side of the pallet is flush with the side of the pallet, thereby verifying whether the compensated pallet angle is correct.

[0073] It should be noted that steps S5 and S6 can be performed after step S1 and before step S4. At this time, since the posture of the pallet has been compensated, the stacking path of all boxes obtained in step S4 does not need to be corrected; steps S5 and S6 can also be performed after step S4. At this time, the stacking path of all boxes obtained in step S4 needs to be corrected according to the posture compensation value of the pallet when the robot arm performs actual palletizing.

[0074] According to the palletizing planning method of the present invention, a variety of single-layer pallet types are automatically generated according to the palletizing parameters, a multi-layer pallet type is generated according to the preset single-layer pallet type selected by the user, and the stacking path of all boxes in the multi-layer pallet type stacked by the robotic arm is planned according to the multi-layer pallet type and the robotic arm parameters. This can reduce user operations, simplify the pallet type generation process, have lower requirements on the user's professionalism and proficiency, save time, and improve the efficiency of palletizing planning.

[0075] Corresponding to the above-mentioned embodiment, the present invention further proposes a palletizing planning device.

[0076] like Figure 7 As shown, the palletizing planning device of the embodiment of the present invention includes: a parameter acquisition module 10, a single-layer pallet type generation module 20, a multi-layer pallet type generation module 30 and a stacking path planning module 40. The parameter acquisition module 10 is used to acquire palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of pallets used for stacking and box parameters of boxes; the single-layer pallet type generation module 20 is used to automatically generate a variety of single-layer pallet types according to the palletizing parameters, so that the user can select a preset single-layer pallet type according to the needs; the multi-layer pallet type generation module 30 is used to generate a multi-layer pallet type according to the preset single-layer pallet type selected by the user; the stacking path planning module 40 is used to plan the stacking path of all boxes in the multi-layer pallet type stacked by the robot arm according to the multi-layer pallet type and robot arm parameters.

[0077] It should be noted that the pallet parameters may include the length, width, height and related parameters of the pallet coordinate system, the box parameters may include the length, width, height and weight of the box, and the robot arm parameters may include the related parameters of the robot arm coordinate system and the preset position of the robot arm's material picking parts before palletizing.

[0078] In one embodiment of the present invention, when the single-layer stacking type generation module 20 automatically generates multiple single-layer stacking types, in order to avoid collisions between different boxes during the process of stacking the single-layer stacking types, the box spacing can be set according to experience so that the spacing between every two adjacent boxes is greater than or equal to the box spacing, thereby ensuring smooth stacking.

[0079] In one embodiment of the present invention, the single-layer pallet type generation module 20 can be used to automatically generate a variety of single-layer pallet types with the center of gravity at the center of the pallet according to the palletizing parameters based on a preset pallet type generation algorithm.

[0080] It should be noted that the preset pallet type generation algorithm includes a variety of pallet type generation algorithms for generating different preset pallet types, such as a pallet type generation algorithm in which boxes are placed horizontally and vertically in a matching manner, a pallet type generation algorithm in which boxes are placed in a criss-cross manner, a pallet type generation algorithm in which boxes are placed with outward expansion and inward filling, a pallet type generation algorithm in which boxes are placed horizontally and vertically in the middle of both sides of the pallet, and a pallet type generation algorithm in which boxes are aligned at the edges of the pallet.

[0081] The stacking algorithm for matching boxes horizontally and vertically generates a stacking pattern such as Figure 2 As shown, the principle of the algorithm is: according to the range of the pallet, when the size of all boxes is the same, the length and width of the box are divided by the length of the pallet to obtain the maximum number of boxes that can be placed on the long side and wide side of the pallet when the boxes are placed horizontally (box angle 90°) and vertically (box angle 0°). According to this method, the length and width occupied by the entire stack type can be obtained (box size * number + box spacing * (number-1)). By subtracting the length and width of the entire stack type from the length and width of the pallet, the x-coordinate and y-coordinate information of the first box of the horizontal stack type in the pallet coordinate system can be obtained, and then the number of long sides that can be placed when all are placed horizontally and the number of wide sides that can be placed when all are placed horizontally are nested. The coordinate positions of other boxes are gradually obtained based on the coordinates of the first box, and they are filled into the array storing the postures of each box in the stack type (including the x-coordinate, y-coordinate and rotation angle of each box). Similarly, the coordinate information of the boxes when all are placed vertically and when they are matched horizontally and vertically can be obtained. During the calculation process, if the coordinates between the boxes can accommodate the short side of the box, the box coordinates are calculated through geometric operations and added to the stacking result.

[0082] The stacking algorithm for the boxes placed in a crisscross pattern generates a stacking pattern such as Figure 3As shown in the figure, the principle of the algorithm is: when the size of all boxes is the same, the center position of the pallet (pallet length / 2, pallet width / 2) is used as the reference, and the number of boxes that can be placed vertically n is used as the loop condition. Through the geometric relationship: the x coordinate of the center of the pallet - the length of the box / 2 is the x coordinate of the first box, and the y coordinate of the first box is the y coordinate of the center of the pallet plus the width of the box + the spacing between boxes as the number of boxes placed vertically increases. In this way, the lower left part of the box can be generated, and the coordinates of the boxes on the other three sides can be obtained through geometric relationships based on this lower left box.

[0083] The stacking algorithm for the box expansion and internal filling generates the following stacking types: Figure 4 As shown in the figure, the principle of the algorithm is: first calculate the coordinates of the outer box, which is similar to the calculation method of the stacking algorithm for the boxes placed in a criss-cross pattern, and then the internal free space ( Figure 4 Select the area with the dotted line in the figure) and then fill in the box according to the geometric relationship.

[0084] The stacking algorithm generates the stacking pattern of boxes placed horizontally and vertically in the middle of the two sides of the pallet. Figure 5 As shown in the figure, the principle of the algorithm is: when the size of all boxes is the same, the range of the pallet is obtained according to the length and width of the pallet, and the short side of the pallet is taken as the calculation basis. If there is a box placed horizontally in the middle (box angle 90°), the length of one box is removed; if there is a box placed vertically in the middle (box angle 0°), the width of one box is removed, and then the number of boxes with different placement angles that can be accommodated on one side is calculated, and the coordinate information of each box is obtained in turn through geometric relationships.

[0085] The stacking algorithm generates a stacking pattern where the boxes are aligned on the edge of the pallet. Figure 6 As shown in the figure, the principle of the algorithm is: when the sizes of all boxes are the same, take the long side of the pallet as the reference, first calculate the maximum number of boxes that can be placed vertically (m), and obtain the length of the stack (that is, the long side of the box * m); subtract the stack length from the long side of the pallet to obtain where the horizontal boxes should be placed; then determine how many boxes can be placed within the stack range through the wide side of the box, and obtain the coordinate position of each box based on geometric relationship calculations.

[0086] Each pallet generation algorithm can automatically generate a single-layer pallet containing different numbers of boxes and with the center of gravity of the pallet at the center of the pallet according to the box parameters, so that users can make reasonable choices based on the number of boxes to be stacked as needed, simplifying the pallet generation process, with lower requirements on the user's professionalism and proficiency, saving time and improving the efficiency of palletizing planning.

[0087] In one embodiment of the present invention, in order to facilitate users to select preset single-layer pallet types according to their needs, the pallets can be sorted according to the number of boxes that can be stacked by each single-layer pallet type, and the single-layer pallet type that can stack the most boxes is displayed first to achieve effective use of the pallet space.

[0088] In one embodiment of the present invention, the multi-layer stacking type generation module 30 can be specifically used to: perform geometric transformation on a preset single-layer stacking type to generate a preset single-layer transformed stacking type that is different from the preset single-layer stacking type; generate multi-layer stacking types with different odd-numbered layers and even-numbered layers according to the preset single-layer stacking type and the preset single-layer transformed stacking type.

[0089] It should be noted that in order to ensure the stability and safety of the stack, the odd and even layers of the stack should be different. Therefore, when the multi-layer stacking type generating module 30 generates the multi-layer stacking type, it needs at least two different single-layer stacking types so that the odd and even layers of the multi-layer stacking type are different.

[0090] In one embodiment of the present invention, the multi-layer stacking type generating module 30 can flip or mirror the preset single-layer stacking type to generate a preset single-layer transformed stacking type that is different from the preset single-layer stacking type.

[0091] In another embodiment of the present invention, the user can adjust the posture of each box in the preset single-layer stacking type according to needs, or select a single-layer stacking type from other single-layer stacking types automatically generated by the preset stacking type generation algorithm as the preset single-layer transformation stacking type.

[0092] In one embodiment of the present invention, the multi-layer stacking type generating module 30 can generate only one preset single-layer conversion stacking type. At this time, the preset single-layer stacking type and the preset single-layer conversion stacking type are stacked alternately in sequence, so that the odd-numbered layers and the even-numbered layers of the multi-layer stacking type are different; the multi-layer stacking type generating module 30 can also generate multiple preset single-layer conversion stacking types. At this time, the two adjacent layers of the multi-layer stacking type are different single-layer stacking types.

[0093] In one embodiment of the present invention, the stacking path planning module 40 can be specifically used to obtain the stacking order of each box in the single layer of the stack where the box is located based on the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type and the box parameters of all boxes in the single layer; and plan the stacking path of all boxes in the multi-layer stacking type by the robot arm based on the robot arm parameters, the box parameters of each box and the stacking order.

[0094] In one embodiment of the present invention, the stacking path planning module 40 can obtain the stacking weight of each box in the single layer of the stack where the box is located based on the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type and the box parameters of all boxes in the single layer, and obtain the stacking order of each box in the single layer of the stack where the box is located based on the stacking weight of each box in the single layer of the stack where the box is located.

[0095] Specifically, a stacking weight can be assigned to the box according to the stacking direction of the robot arm, the coordinates of each box in the single-layer stack, and the length, width, height and weight of the box. The boxes are sorted according to the size of their stacking weight to obtain the stacking order of each box on each layer.

[0096] In one embodiment of the present invention, the stacking path planning module 40 can plan the stacking path of all boxes in a multi-layer pallet stacked by the robot arm based on the preset posture of the material picking component of the robot arm before palletizing, the preset material picking posture and preset material placing posture during palletizing, the stacking position of each box in the multi-layer pallet and the stacking order of the box in the single-layer pallet.

[0097] Among them, the preset posture of the material picking component of the robot arm before palletizing can be a posture set according to experience, the preset material picking posture during palletizing can be the relative posture of the material picking component and the box to be picked up when picking up materials, and the preset material placing posture during palletizing can be the relative posture of the material picking component and the pallet or the box on the pallet when placing materials.

[0098] In one embodiment of the present invention, the palletizing planning device may further include a collision detection module for performing collision detection on the process in which the robot arm palletizes according to the planned stacking paths of all boxes in the multi-layer pallet type.

[0099] The collision detection module can be used to perform collision detection on the palletizing process of the robot arm before stacking, which can effectively avoid collision of the robot arm during the actual palletizing process, ensure the effectiveness of palletizing planning, and improve production efficiency.

[0100] Due to mechanical errors in processing and assembly, the actual position of the pallet relative to the robot arm deviates from the theoretical value. If it is not calibrated, the actual palletizing will also deviate, such as the stack as a whole leaning to one side of the pallet, the stack as a whole rotating at an angle, etc.

[0101] In one embodiment of the present invention, the palletizing planning device further includes: a calibration module and a calibration verification module. The calibration module is used to calibrate the position of the pallet relative to the robot arm; the calibration verification module is used to calibrate and verify the calibrated pallet and robot arm.

[0102] It should be noted that by calibrating the posture of the pallet relative to the robot arm, a posture compensation value of the calibrated pallet can be obtained.

[0103] In one embodiment of the present invention, the posture compensation value may include a front-to-back distance compensation value, a left-to-right distance compensation value, a height compensation value, and an angle compensation value. The specific value of the posture compensation value can be obtained according to actual measurement during the calibration process.

[0104] In one embodiment of the present invention, the calibration verification module can be specifically used to: obtain the posture compensation value of the calibrated pallet; compensate the posture of the pallet according to the posture compensation value; simulate the movement of the material picking component of the robot arm to the target posture on the compensated pallet; and verify the accuracy of the calibration based on the relative posture of the material picking component and the compensated pallet.

[0105] In one embodiment of the present invention, when the pallet is the right pallet located on the right side of the robotic arm, the target posture can be a posture that makes the upper left corner point of the material picking component coincide with the upper left corner point of the right pallet, or it can be a fixed posture on the right pallet after specified compensation; when the pallet is the left pallet located on the left side of the robotic arm, the target posture can be a posture that makes the upper right corner point of the material picking component coincide with the upper right corner point of the left pallet, or it can be a fixed posture on the left pallet after specified compensation.

[0106] Taking the calibration verification of the right pallet as an example, when the target posture is to make the upper left corner of the material picking component coincide with the upper left corner of the pallet, if the calibration is accurate, the left side of the material picking component should be flush with the left side of the pallet, the upper side of the material picking component should be flush with the upper side of the pallet, and the distance between the lower surface of the material picking component and the upper surface of the pallet is the preset height spacing value, where the preset height spacing value is determined according to actual production needs, such as 2cm. If one of the three conditions is not met, it means that the calibration is inaccurate and the posture compensation value of the pallet needs to be further adjusted.

[0107] In one embodiment of the present invention, the movement of the picking component along one side of the compensated pallet can also be simulated to check whether the side of the picking component corresponding to the side of the pallet is flush with the side of the pallet, thereby verifying whether the compensated pallet angle is correct.

[0108] According to the palletizing planning device of the present invention, a variety of single-layer pallet types are automatically generated according to the palletizing parameters, a multi-layer pallet type is generated according to the preset single-layer pallet type selected by the user, and the stacking path of all boxes in the multi-layer pallet type stacked by the robot arm is planned according to the multi-layer pallet type and the robot arm parameters. This can reduce user operations, simplify the pallet type generation process, have low requirements on the user's professionalism and proficiency, save time, and improve the efficiency of palletizing planning.

[0109] In the description of the present invention, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. "Multiple" means two or more, unless otherwise clearly and specifically defined.

[0110] In the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", "connected", "fixed" and the like should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0111] In the present invention, unless otherwise clearly specified and limited, a first feature being "above" or "below" a second feature may mean that the first and second features are in direct contact, or the first and second features are in indirect contact through an intermediate medium. Moreover, a first feature being "above", "above" or "above" a second feature may mean that the first feature is directly above or obliquely above the second feature, or simply means that the first feature is higher in level than the second feature. A first feature being "below", "below" or "below" a second feature may mean that the first feature is directly below or obliquely below the second feature, or simply means that the first feature is lower in level than the second feature.

[0112] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, unless they are contradictory.

[0113] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.

[0114] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processor, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (electronic devices), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing in other suitable ways if necessary, and then stored in a computer memory.

[0115] It should be understood that the various parts of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, a plurality of steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0116] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiment.

[0117] In addition, each functional unit in each embodiment of the present invention may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.

[0118] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may change, modify, replace and vary the above embodiments within the scope of the present invention.

Claims

1. A palletizing planning method, characterized in that: The following steps are involved: Obtaining palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of pallets used for stacking and box parameters of boxes; Automatically generate a variety of single-layer pallet types according to the palletizing parameters, so that the user can select a preset single-layer pallet type according to needs; Generate a multi-layer stacking type according to the preset single-layer stacking type selected by the user; Planning a stacking path for the robot arm to stack all boxes in the multi-layer stacking type according to the multi-layer stacking type and the robot arm parameters; Calibrate the position of the pallet relative to the robotic arm; Calibrate and verify the calibrated pallet and robot arm. The calibration verification of the calibrated pallet and robot arm includes: Get the position compensation value of the calibrated pallet; Compensating the posture of the pallet according to the posture compensation value; Simulate the movement of the material-picking component of the robot arm to a target position on the compensated pallet; The accuracy of the calibration is verified based on the relative posture of the picking component and the compensated pallet.

2. The palletizing planning method according to claim 1, characterized in that: According to the palletizing parameters, a single-layer pallet with a center of gravity at the center of the pallet is automatically generated based on a preset pallet generation algorithm.

3. The palletizing planning method according to claim 1 or 2, characterized in that: Generating a multi-layer stacking type according to the preset single-layer stacking type specifically includes: Performing geometric transformation on the preset single-layer stacking type to generate a preset single-layer transformed stacking type that is different from the preset single-layer stacking type; A multi-layer stacking type with different odd-numbered layers and even-numbered layers is generated according to the preset single-layer stacking type and the preset single-layer conversion stacking type.

4. The palletizing planning method according to claim 1, characterized in that: Planning a stacking path for the robot arm to stack all boxes in the multi-layer stacking type according to the multi-layer stacking type and the robot arm parameters specifically includes: Obtaining a stacking order of each of the boxes in the single-layer stack where the box is located according to the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type, and the box parameters of all the boxes in the single layer; According to the robot arm parameters, the box parameters of each box and the stacking sequence, a stacking path for the robot arm to stack all the boxes in the multi-layer pallet is planned.

5. The palletizing planning method according to claim 4, characterized in that: According to the robot arm parameters, the stacking type of each single layer in the multi-layer stacking type and the box parameters of all boxes in the single layer, the stacking weight of each box in the stacking type of the single layer where the box is located is obtained; according to the stacking weight of each box in the stacking type of the single layer where the box is located, the stacking order of each box in the stacking type of the single layer where the box is located is obtained.

6. The palletizing planning method according to claim 4, characterized in that: According to the preset posture of the material picking part of the robot arm before palletizing, the preset material picking posture and the preset material placing posture during palletizing, the stacking position of each box in the multi-layer pallet and the stacking order in the single-layer pallet where the box is located, the stacking path of the robot arm for stacking all the boxes in the multi-layer pallet is planned.

7. The palletizing planning method according to claim 1, characterized in that: After planning the stacking path of the robot arm for stacking all boxes in the multi-layer stacking type according to the multi-layer stacking type and the robot arm parameters, the method further includes: The robot arm is subjected to collision detection during the palletizing process according to the planned palletizing path of all boxes in the multi-layer pallet type.

8. A palletizing planning device, characterized in that: include: A parameter acquisition module, the parameter acquisition module is used to acquire palletizing parameters and robot arm parameters, wherein the palletizing parameters include pallet parameters of pallets used for stacking and box parameters of boxes; A single-layer stacking type generating module, the single-layer stacking type generating module is used to automatically generate a plurality of single-layer stacking types according to the stacking parameters, so that the user can select a preset single-layer stacking type according to the needs; A multi-layer stacking type generating module, the multi-layer stacking type generating module is used to generate a multi-layer stacking type according to the preset single-layer stacking type selected by the user; A stacking path planning module, the stacking path planning module is used to plan a stacking path for a robotic arm to stack all boxes in the multi-layer stack according to the multi-layer stack type and the robotic arm parameters; A calibration module, wherein the calibration module is used to calibrate the position and posture of the pallet relative to the robot arm; A calibration verification module, which is used to perform calibration verification on the calibrated pallet and robotic arm. Among them, the calibration verification module is specifically used to: obtain the posture compensation value of the calibrated pallet; compensate the posture of the pallet according to the posture compensation value; simulate the movement of the material picking component of the robot arm to the target posture on the compensated pallet; verify the accuracy of the calibration according to the relative posture of the material picking component and the compensated pallet.

Citation Information

Patent Citations

  • Stacked piece stock layout method and device based on mechanical arm

    CN107512591A

  • Industrial robot and method for calibrating user coordinate systems by using vision

    CN110480642A