Control methods, devices, robots, media, and program products for loading robots
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-08
- Publication Date
- 2026-08-11
AI Technical Summary
[0004]本发明提供了一种装车机器人的控制方法、装置、机器人、介质及程序产品,以解决固有装车方案难以保证装车作业的可靠性和安全性的问题
[0011] The control method for the loading robot provided in this invention dynamically adjusts the stacking height of objects based on the remaining length corresponding to the actual remaining loading space. This increases the stacking height when there is insufficient space at the rear and decreases it when there is ample space. This not only ensures that all objects can be completely loaded into the container but also eliminates large gaps at the rear of the container, preventing objects from swaying or tipping over during transport and improving transport stability. When it is determined that loading the remaining objects according to the third planning information is difficult, the number of objects transported to the loading robot is reduced to avoid forced stacking that could expose objects and make it difficult to close the rear door. This ensures that all objects are completely inside the container, balancing loading compliance and operational safety, and achieving coordinated operation between the loading robot and the conveying system.
Smart Images

Figure CN122540672A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of logistics loading operation technology, specifically to control methods, devices, robots, media, and program products for loading robots. Background Technology
[0002] In the loading process of warehousing and logistics, loading robots are gradually replacing manual labor. Current loading robot control methods typically employ an offline planning approach. This means that before loading begins, the internal space of the truck is acquired once using 3D vision devices or manual measurements. Then, an offline loading planning algorithm generates a complete and fixed loading plan, including the placement and order of all goods, as well as the robot's movement trajectory. During the subsequent loading process, the robot strictly follows this pre-set plan to perform its tasks.
[0003] However, in actual loading environments, the initial measured conditions may differ from the actual conditions during the loading process. Using a fixed loading scheme is insufficient to handle the dynamic changes in space during loading, resulting in poor operational safety, low task completion rates, and insufficient cargo transportation stability, severely impacting the reliability and safety of loading operations. Summary of the Invention
[0004] This invention provides a control method, device, robot, medium, and program product for a loading robot, to solve the problem that traditional loading solutions cannot guarantee the reliability and safety of loading operations.
[0005] In a first aspect, the present invention provides a control method for a loading robot, comprising: acquiring a first loading space corresponding to a cargo box and information about the object to be loaded; planning a loading task based on the first loading space and the information about the object to be loaded, thereby obtaining first planning information corresponding to the first loading space; responding to the loading robot executing the loading task according to the first planning information, acquiring a second loading space corresponding to the cargo box and the actual remaining loading space of the cargo box; determining the spatial deviation between the second loading space and the actual remaining loading space; if the spatial deviation exceeds a preset value, replanning the loading task of the cargo box based on the actual remaining loading space, thereby obtaining second planning information corresponding to the actual remaining loading space.
[0006] The control method for a loading robot provided in this invention plans a loading task based on the acquired first loading space and information about the object to be loaded, determines the corresponding first planning information, and, during the execution of the loading task according to the first planning information, acquires the second loading space of the truck body and the actual remaining loading space in real time. When the spatial deviation between the second loading space and the actual remaining loading space exceeds a preset value, the loading task is replanned based on the actual remaining loading space. This achieves dynamic loading operations from initial planning to online perception of spatial deviation and replanning, avoiding the limitations of offline fixed planning. Furthermore, by actively identifying spatial deviations during the loading process, the planning information can be adjusted in a timely manner when spatial conditions change, avoiding situations such as object jamming and loading task interruption, improving the safety of loading operations, and ensuring the stability of intelligent loading operations.
[0007] In one optional implementation, the loading task of the truck body is replanned based on the actual remaining loading space to obtain second planning information corresponding to the actual remaining loading space, including: in response to the spatial deviation being generated based on the obstacle size deviation, the current size and first current spatial position of the obstacle are obtained; based on the current size and the actual remaining loading space, a first stacking pattern corresponding to the first current spatial position is replanned; in response to the spatial deviation being generated based on the obstacle spatial position deviation, a second current spatial position of the obstacle is obtained; and the stacking path of the loading robot at the second current spatial position is replanned; wherein, the second planning information includes the first stacking pattern and the stacking path.
[0008] The control method for the loading robot provided in this invention addresses the situation where spatial deviation is caused by the size deviation of obstacles. It dynamically adjusts the stacking pattern inside the compartment, and can update the stacking pattern of objects near the obstacle in a timely manner when the obstacle becomes larger or its shape changes and occupies the original stacking space, so as to ensure that objects can be stacked normally in the limited space around the obstacle.
[0009] For situations where spatial deviation is caused by the spatial position deviation of obstacles, the stacking pattern of objects near obstacles and the stacking path of objects are planned according to the actual remaining loading space. This can simultaneously take into account the stacking safety of objects near obstacles and the movement safety of the robotic arm, avoid the dual impact of changes in the spatial position of obstacles, and facilitate the stacking planning under complex and abnormal working conditions.
[0010] In an optional implementation, the method further includes: obtaining the remaining length corresponding to the actual remaining loading space; if the remaining length is less than a preset length value, updating the second planning information to obtain the third planning information corresponding to the remaining length, the third planning information being used to increase the stacking height; detecting whether the loading of the current remaining objects can be completed according to the third planning information; if the loading of the current remaining objects cannot be completed according to the third planning information, reducing the number of objects to be loaded to the loading robot; if the remaining length is greater than the preset length value, updating the second planning information to obtain the fourth planning information corresponding to the remaining length, the fourth planning information being used to reduce the stacking height.
[0011] The control method for the loading robot provided in this invention dynamically adjusts the stacking height of objects based on the remaining length corresponding to the actual remaining loading space. This increases the stacking height when there is insufficient space at the rear and decreases it when there is ample space. This not only ensures that all objects can be completely loaded into the container but also eliminates large gaps at the rear of the container, preventing objects from swaying or tipping over during transport and improving transport stability. When it is determined that loading the remaining objects according to the third planning information is difficult, the number of objects transported to the loading robot is reduced to avoid forced stacking that could expose objects and make it difficult to close the rear door. This ensures that all objects are completely inside the container, balancing loading compliance and operational safety, and achieving coordinated operation between the loading robot and the conveying system.
[0012] In one optional implementation, in response to the loading robot executing the loading task according to the first planning information, obtaining the second loading space corresponding to the truck body and the actual remaining loading space of the truck body includes: in response to the loading robot executing the loading task according to the first planning information, obtaining the object stacking space corresponding to the loading task based on the first planning information; determining the second loading space based on the first loading space and the object stacking space; obtaining the current spatial point cloud data after executing the loading task; and determining the actual remaining loading space based on the current spatial point cloud data.
[0013] The control method for the loading robot provided in this embodiment of the invention, after executing the loading task according to the first planning information, determines the theoretical remaining space of the container (i.e., the second loading space) based on the first planning information. At the same time, it restores the actual remaining loading space of the container based on the collected current spatial point cloud data, providing reliable data support for subsequent spatial deviation judgment, avoiding misjudgment of deviation due to a single loading space calculation method, and further avoiding stacking planning errors.
[0014] In one optional implementation, a loading task is planned based on the first loading space and the information of the objects to be loaded, and the first planning information corresponding to the first loading space is obtained, including: obtaining the obstacles in the first loading space and the object height of each object to be loaded in the information of the objects to be loaded; dividing the first loading space and obstacles into layers based on the object height of the objects to be loaded, to obtain multiple layered spaces and the distribution of obstacles corresponding to each layered space; and performing layer-by-layer planning based on the layered spaces and the distribution of obstacles to obtain the first planning information.
[0015] The control method for the loading robot provided in this invention adopts a layered planning mode based on object height, which is suitable for the loading task characteristics of object stacking. By decomposing the first loading space into multiple independent layered spaces, the computational complexity of a single planning operation is reduced. At the same time, it can accurately adapt to areas with different layer heights and different obstacle distributions, making the first planning information more consistent with the actual loading conditions of object stacking and improving the rationality of the first planning information generation.
[0016] In one optional implementation, layer-by-layer planning is performed based on the hierarchical space and obstacle distribution to obtain first planning information, including: for any hierarchical space, obtaining the first and second walls of the compartment, where the first wall represents the width of the compartment wall and the second wall represents the length of the compartment wall; based on the first wall and obstacle distribution, determining a first type of space, which includes the space between obstacles and the first wall, and the space between different obstacles; based on the second wall and obstacle distribution, determining a second type of space, which includes the space between obstacles and the second wall; and based on the first width and first length of the first type of space, and the second width and second length of the second type of space, planning the stacking task of each object to be loaded to obtain the first planning information.
[0017] The control method for loading robots provided in this invention divides the layered space into a first type of space and a second type of space based on the position of the compartment wall and obstacles. Then, it plans the stacking according to the length and width of different types of spaces, which can make full use of various scattered spaces in the compartment, maximize the effective stacking space in the compartment, reduce space waste, improve loading rate, and ensure that the goods are arranged neatly.
[0018] In one optional implementation, based on the first width and first length of the first type of space, and the second width and second length of the second type of space, the stacking task of each object to be loaded is planned to obtain first planning information, including: determining the stacking position of each object to be loaded in the container based on the first width and first length of the first type of space, and the second width and second length of the second type of space; obtaining the current robotic arm pose of the loading robot; and planning the stacking path of the loading robot in the first type of space and the second type of space, with the current robotic arm pose as the starting point and the stacking position as the ending point; wherein, the first planning information includes the stacking position and the stacking path.
[0019] The control method for the loading robot provided in this invention determines the placement position of each object to be loaded based on the length and width of different types of spaces. By combining the placement position with the current posture of the loading robot's robotic arm, the method achieves integrated planning of the static placement position of each object to be loaded and the dynamic placement path of the robotic arm. This ensures both reasonable placement and safe robotic arm movement trajectory, avoiding the problem of the robotic arm scraping against obstacles (or already placed objects) or the wall of the loading compartment during operation, making the loading task of the loading robot safer.
[0020] Secondly, the present invention provides a control device for a loading robot, comprising: a first acquisition module for acquiring information on a first loading space corresponding to the cargo box and information on the object to be loaded; a first planning module for planning a loading task based on the first loading space and information on the object to be loaded, thereby obtaining first planning information corresponding to the first loading space; a second acquisition module for acquiring a second loading space corresponding to the cargo box and information on the actual remaining loading space of the cargo box in response to the loading robot executing the loading task according to the first planning information; a deviation determination module for determining the spatial deviation between the second loading space and the actual remaining loading space; and a planning update module for replanning the loading task of the cargo box based on the actual remaining loading space if the spatial deviation exceeds a preset value, thereby obtaining second planning information corresponding to the actual remaining loading space.
[0021] Thirdly, the present invention provides a robot, comprising: a memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the computer instructions to perform the control method of the loading robot described in the first aspect or any corresponding embodiment thereof.
[0022] Fourthly, the present invention provides a computer-readable storage medium storing computer instructions for causing a computer to execute the control method of the loading robot described in the first aspect or any corresponding embodiment thereof.
[0023] Fifthly, the present invention provides a computer program product, including computer instructions for causing a computer to execute the control method for a loading robot described in the first aspect or any corresponding embodiment thereof. Attached Figure Description
[0024] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0025] Figure 1 This is a schematic diagram of an application scenario according to an embodiment of the present invention; Figure 2 This is a schematic flowchart of a first method for controlling a loading robot according to an embodiment of the present invention; Figure 3 This is a schematic diagram of a vehicle-mounted digital model according to an embodiment of the present invention; Figure 4 This is a second flowchart illustrating the control method for a loading robot according to an embodiment of the present invention; Figure 5 This is a schematic diagram of the original stacking pattern around the obstacle according to an embodiment of the present invention; Figure 6 This is a schematic diagram of a first stacking pattern according to an embodiment of the present invention; Figure 7 This is a schematic diagram of a second stacking pattern according to an embodiment of the present invention; Figure 8 This is a schematic diagram illustrating that changes in the spatial position of obstacles do not affect the stacking pattern according to an embodiment of the present invention; Figure 9 This is a schematic diagram of the third process of the control method for the loading robot according to an embodiment of the present invention; Figure 10 This is a schematic diagram of spatial division according to an embodiment of the present invention; Figure 11 This is a structural block diagram of the control device for a loading robot according to an embodiment of the present invention; Figure 12 This is a schematic diagram of the hardware structure of an electronic device according to an embodiment of the present invention. Detailed Implementation
[0026] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0027] It is understood that before using the technical solutions disclosed in the various embodiments of the present invention, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in the present invention and their authorization should be obtained in accordance with relevant laws and regulations through appropriate means.
[0028] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified.
[0029] Currently, mainstream loading robot control solutions generally adopt an offline, one-time planning operation mode. Before the formal loading operation begins, workers use manual measurement or fixed 3D detection equipment to collect information on the overall outline of the truck body, the dimensions and positions of internal columns, tailgate frames, diagonal braces, and other fixed obstacles. Simultaneously, they input basic data such as the shape parameters and quantity of the goods to be loaded. Based on this static data, the control system completes the overall loading plan, pre-determining the placement position, stacking method, and stacking order of all goods, as well as the movement trajectory of the robot arm, generating fixed loading task instructions. Throughout the loading process, the loading robot strictly executes the stacking actions according to the initial plan, without requiring secondary detection or task adjustments to the internal space of the truck body or the state of obstacles.
[0030] However, in actual industrial loading scenarios, various uncontrollable disturbances exist, causing continuous deviations between the theoretically planned space and the actual usable space. For example, long-term use of freight wagons can easily lead to structural problems such as body deformation, side wall dents and dents, and door frame misalignment; existing obstacles may also shift in position and change in size due to vehicle bumps and cargo compression; the cargo itself has manufacturing tolerances, and the wagon body may deform under pressure. In addition, positioning errors during stacking and cargo tilting and tipping can further change the actual occupied space and remaining loading space inside the wagon. At the same time, there may also be unforeseen obstacles such as newly added miscellaneous items and tooling, further disrupting the initial spatial planning conditions.
[0031] Because static planning schemes lack real-time spatial perception and dynamic task correction mechanisms, they struggle to identify and respond to spatial deviations that occur during loading, leading to a series of practical application problems. For example, when available space is less than planned space, the loading robot's robotic arm is highly susceptible to collisions with the truck bed walls, obstacles, and already stacked goods. This not only damages the robot's mechanical structure and precision vision devices but also causes goods to be crushed and broken, the original stacking pattern and movement path to become unsuitable for the site space, and may even directly interrupt the loading task, significantly reducing operational continuity.
[0032] If the actual remaining length at the rear of the cargo compartment is less than the planned value, stacking the goods according to the original plan will result in the goods exceeding the rear of the compartment and the tailgate being unable to be closed. If there is ample remaining space at the rear and the longitudinal length is too large, large gaps will be formed after the goods are arranged, making the goods prone to shaking, tilting, or even collapsing during vehicle operation, seriously affecting the safety of cargo transportation. In addition, the fixed task planning mode is difficult to adapt to the complex and ever-changing on-site environment, which greatly limits the environmental adaptability and intelligence level of the loading robot.
[0033] Based on this, the technical solution of the present invention can identify and measure the spatial data and obstacle data inside the compartment in real time during the loading process, and update the loading planning task and the obstacle avoidance task planning of the robotic arm in real time, thereby improving the intelligence of the loading robot and the completion rate of the loading task. At the same time, it can improve the stability of the rear object stacking, avoid the risk between the loading robot and the compartment and the stacked objects, and improve the safety and reliability of the loading task.
[0034] Before providing a further detailed description of the embodiments of the present invention, some of the nouns and terms involved in the embodiments of the present invention will be explained, and the nouns and terms involved in the embodiments of the present invention shall be interpreted as follows.
[0035] Loading space: refers to the effective three-dimensional space inside the cargo box that can be used to stack goods. In the initial state, it refers to the total internal volume of the empty cargo box minus the space occupied by inherent permanent obstacles (such as internal columns, beams, etc.). During the loading process, it refers to the remaining usable space that has not yet been occupied by stacked goods at the current moment.
[0036] Planning information refers to a set of data and instructions generated by the control system to guide the loading robot in performing loading tasks. It may include, but is not limited to: the target placement position coordinates of each object to be loaded, the placement posture (e.g., horizontal or vertical), the placement order, and the complete motion trajectory path of the loading robot's robotic arm from grasping the object to placing the object.
[0037] Spatial deviation refers to the difference between the actual remaining loading space obtained through a real-time sensing system during the loading process and the theoretical remaining loading space calculated based on the initial plan. This difference can manifest as newly added obstacles, discrepancies between the position or posture of already stacked goods and expectations, or localized deformation of the truck body walls.
[0038] Actual remaining loading space: This refers to the real, physically usable remaining space inside the truck compartment at any given moment during the loading process, obtained through real-time scanning and measurement of the compartment's interior using sensors such as 3D vision devices. It reflects the current state of the compartment, including already stacked goods and any newly added temporary obstacles.
[0039] Object stacking space: refers to the three-dimensional space area that is pre-allocated for a certain object or a batch of objects to be loaded in the loading plan, which is theoretically the area that they will occupy after stacking.
[0040] Current spatial point cloud data refers to a set of three-dimensional coordinate points that describe the shape of the interior space surface of the loading compartment, collected at the current moment by a 3D vision device (such as LiDAR or depth camera) mounted on the loading robot. This data is the basis for calculating and modeling the actual remaining loading space.
[0041] Layered space: In stacking planning, to simplify calculations, the complex three-dimensional loading space is virtually divided into multiple relatively independent two-dimensional or quasi-two-dimensional planning layers along the vertical direction (height direction) according to the standard height of the objects to be loaded or a certain preset height. Each layer has its own boundaries and obstacle distribution.
[0042] As an optional application scenario of this invention, such as Figure 1 As shown, the optional application scenario may include a loading robot 1, a conveying system 2, a container 3, and a control system 4.
[0043] The loading robot 1 includes a robotic arm 11 and a 3D vision device 12. The robotic arm 11 is a mechanical device used by the loading robot 1 to stack objects to be loaded into the cargo box. The loading robot 1 can be an articulated multi-axis robot, a three-coordinate robot, a polar coordinate robot, etc. The 3D vision device 12 is used to measure and obtain spatial point cloud data inside the cargo box, and can be installed at the top, front, rear, and sides of the loading robot 1.
[0044] The conveying system 2 is located at the rear of the loading robot 1 and is connected to the loading robot 1. It is used to convey the objects to be loaded to the loading robot 1 according to the loading planning task of the control system 4.
[0045] The control system 4 calculates loading space data and obstacle data based on the spatial point cloud data measured by the three-dimensional vision device 12; and calculates the loading planning task of the loading robot 1 based on the loading space data.
[0046] Driven by the control system 4, the loading robot 1 travels and moves within the compartment 3. Its robotic arm places the objects to be loaded into the corresponding positions within the compartment 3 according to the loading plan of the control system 4.
[0047] According to an embodiment of the present invention, a control method for a loading robot is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0048] This embodiment provides a control method for a loading robot, which can be used in the control system of the loading robot. Figure 2 This is a flowchart of a control method for a loading robot according to an embodiment of the present invention, such as... Figure 2 As shown, the process includes the following steps: Step S201: Obtain the first loading space corresponding to the compartment and the information of the object to be loaded.
[0049] The first loading space is the available loading space currently available in the cargo box; the cargo box is the load-bearing structure for loading goods, such as a carriage or container; the information on the objects to be loaded is the information on the objects to be loaded into the cargo box, including the object's size, shape, and quantity.
[0050] Specifically, the loading robot is equipped with a 3D vision device, which performs a full-area scan of the interior of the loading compartment, collecting 3D spatial point cloud data such as point cloud data of the compartment space, point cloud data of obstacles, and point cloud data of the stacked goods. The 3D vision device consists of one or more 3D cameras, LiDAR, and other 3D measurement devices, and can be installed at the top, front, rear, and sides of the loading robot.
[0051] In a specific example, such as Figure 1 As shown, before the loading task begins, the loading robot 1 can be positioned outside the cargo compartment and use its onboard 3D vision device 12 to perform a comprehensive scan of the compartment, obtaining initial 3D spatial point cloud data. Of course, during the cargo loading process, the loading robot can also use the 3D vision device 12 to collect 3D spatial point cloud data of all surfaces inside the cargo compartment.
[0052] The 3D vision device sends the acquired 3D spatial point cloud data to the control system. Accordingly, the control system processes the 3D spatial point cloud data, such as removing noise and performing surface reconstruction, to accurately establish a digital model that includes the dimensions of the cargo box (e.g., length, width, and height), the position and shape of internal obstacles (e.g., reinforcing ribs, pillars), and the position and shape of already loaded objects. The available space defined by this digital model is the current first loading space of the cargo box. Figure 3 As shown.
[0053] The information about the objects to be loaded can be read by the control system from the storage system, or it can be manually pre-entered into the control system, or it can be obtained through other means. No specific limitation is made here.
[0054] Step S202: Based on the information of the first loading space and the object to be loaded, plan the loading task to obtain the first planning information corresponding to the first loading space.
[0055] The first planning information is the globally optimal object placement information planned with the first loading space and the information of the objects to be loaded as constraints.
[0056] Specifically, the control system performs two levels of planning based on the first loading space and the information of the object to be loaded: stacking task-level planning and obstacle avoidance trajectory-level planning.
[0057] Among them, the stacking task-level planning refers to planning how static objects to be loaded will fill the loading space in the compartment, such as the stacking order of various objects to be loaded, the number of objects to be loaded in each layer, row and column, the stacking position of each object to be loaded in the compartment, the stacking direction and combination pattern of the objects to be loaded, and the stacking method of the objects to be loaded near obstacles.
[0058] Obstacle avoidance trajectory planning refers to planning how the dynamic loading robot arm should grasp objects to be loaded and stack them in the cargo compartment, ensuring that its movement path does not conflict with the compartment walls, obstacles, or already stacked objects (i.e., collisions occur). For example, when an obstacle is near the current placement point of the object to be stacked, the robot arm's movement needs to place the object near the obstacle while ensuring that neither the robot arm nor the object collides with the obstacle. When the obstacle is not near the current placement point of the object, but is large (e.g., the door frame of the tailgate), the robot arm's movement path needs to avoid the obstacle when stacking the object.
[0059] Therefore, the placement positions of each object to be loaded are determined through task-level planning, and the obstacle avoidance path of the loading robot when loading the objects is determined through obstacle avoidance trajectory-level planning. Accordingly, the first planning information includes the placement positions of each object to be loaded and the obstacle avoidance path of the loading robot when loading each object.
[0060] Specifically, the control system of the loading robot plans the optimal stacking position of all the objects to be loaded in the compartment based on the first loading space and the information of the objects to be loaded, as well as the obstacle avoidance path for the loading robot to move from outside the compartment to the optimal stacking position, forming the first planning information corresponding to the first loading space. This first planning information is used as the standard instruction set for the loading robot to perform loading operations.
[0061] Step S203: In response to the loading robot executing the loading task according to the first planning information, the second loading space corresponding to the compartment and the actual remaining loading space of the compartment are obtained.
[0062] The control system issues loading operations to the loading robot according to the first planning information. The loading robot then starts the loading operation according to the first planning information. During the process of stacking objects in stages, the control system, in conjunction with the stacking positions of the objects to be loaded planned in the first planning information, determines the theoretical second loading space by subtracting the stacking space of these objects from the first loading space in the digital model. This second loading space is the theoretically remaining stackable space after the staged loading is completed according to the first planning information.
[0063] Meanwhile, the loading robot continuously uses a 3D vision device to collect real-time 3D spatial point cloud data of the interior of the truck compartment and feeds it back to the control system. Accordingly, the control system can use the 3D spatial point cloud data fed back by the loading robot to reconstruct the current real environment inside the truck compartment and calculate the actual remaining loading space, that is, the actual usable cargo stacking space in the truck compartment.
[0064] This approach combines theoretical calculations with actual measurements to provide a reliable data foundation for subsequent accurate calculations of spatial deviations. This enables the control system to clearly distinguish between normal results of planned execution and unexpected deviations, thereby achieving precise quantitative perception of environmental changes.
[0065] Step S204: Determine the spatial deviation between the second loading space and the actual remaining loading space.
[0066] Spatial deviation is used to characterize the difference between the theoretically planned space and the actual space of the vehicle body. Specifically, the control system compares the second loading space with the actual remaining loading space to obtain the spatial deviation between the two.
[0067] Step S205: If the space deviation exceeds the preset value, the loading task of the truck body is replanned based on the actual remaining loading space to obtain the second planning information corresponding to the actual remaining loading space.
[0068] The preset value is a pre-defined deviation threshold. The control system compares the spatial deviation with the preset value to determine whether the spatial deviation exceeds the preset value. If it is determined that the spatial deviation does not exceed the preset value, it can be determined that the actual remaining loading space of the truck body is basically consistent with the second loading space planned by the first planning information. At this time, the control system can issue a loading operation to the loading robot according to the first planning information so that the loading robot can perform subsequent object stacking actions.
[0069] If the spatial deviation is found to exceed a preset value, it can be determined that the actual remaining loading space of the truck body differs from the second loading space planned by the first planning information. This means that there may be abnormalities such as obstacle displacement, tilting of stacked goods, or local deformation within the truck body, and the original first planning information is no longer suitable for the current loading operation. At this time, the control system uses the detected actual remaining loading space as a benchmark and combines it with the remaining objects to be loaded to re-plan the loading task and generate second planning information corresponding to the actual working conditions.
[0070] Subsequently, the control system issues loading operation instructions to the loading robot according to the second planning information, and the loading robot can then perform the loading operation according to the second planning information.
[0071] The control method for the loading robot provided in this embodiment plans the loading task based on the acquired first loading space and the information of the object to be loaded, determines the corresponding first planning information, and during the execution of the loading task according to the first planning information, acquires the second loading space of the truck body and the actual remaining loading space in real time. When the spatial deviation between the second loading space and the actual remaining loading space exceeds a preset value, the loading task is replanned based on the actual remaining loading space. This realizes dynamic loading operation from initial planning to online perception of spatial deviation to replanning, avoiding the limitations of offline fixed planning. Moreover, by actively identifying spatial deviations during the loading process, the planning information can be adjusted in a timely manner when spatial conditions change, avoiding situations such as object jamming and loading task interruption, improving the safety of loading operations, and ensuring the stability of intelligent loading operations.
[0072] This embodiment provides a control method for a loading robot, which can be used in the control system of the loading robot described above. Figure 4 This is a flowchart of a control method for a loading robot according to an embodiment of the present invention, such as... Figure 4 As shown, the process includes the following steps: Step S301: Obtain the first loading space corresponding to the compartment and the information of the object to be loaded. For details, please refer to the relevant descriptions of the steps in the above-described embodiments; they will not be repeated here.
[0073] Step S302: Based on the first loading space and the information of the object to be loaded, a loading task is planned to obtain the first planning information corresponding to the first loading space. For details, please refer to the relevant descriptions of the corresponding steps in the embodiments shown above, which will not be repeated here.
[0074] Step S303: In response to the loading robot executing the loading task according to the first planning information, the second loading space corresponding to the cargo box and the actual remaining loading space of the cargo box are obtained. For details, please refer to the relevant descriptions of the corresponding steps in the above embodiments, which will not be repeated here.
[0075] Step S304: Determine the spatial deviation between the second loading space and the actual remaining loading space. For details, please refer to the relevant descriptions of the steps in the embodiments shown above; they will not be repeated here.
[0076] Step S305: If the space deviation exceeds the preset value, the loading task of the truck body is replanned based on the actual remaining loading space to obtain the second planning information corresponding to the actual remaining loading space.
[0077] Specifically, spatial deviations include obstacle size deviations and obstacle spatial position deviations. For example, obstacle size deviations are caused by the expansion of cardboard boxes due to moisture or the deformation of soft-packed goods; and obstacle spatial position deviations are caused by the overall translation of stacked objects.
[0078] Accordingly, step S305 above includes: Step S3051: In response to the fact that the spatial deviation is generated based on the obstacle size deviation, the current size of the obstacle and the first current spatial position are obtained.
[0079] After the control system determines that the spatial deviation exceeds a preset value, it first rescans the obstacles inside the loading compartment using the loading robot's 3D vision device, acquiring 3D point cloud data of the obstacles. The control system can then reconstruct the obstacles from this 3D point cloud data to determine whether the current obstacle size deviates from the original obstacle size. If the spatial deviation is based on the obstacle size deviation, the current size of the obstacle is obtained, and the first current spatial position of the obstacle within the compartment is located.
[0080] Step S3052: Based on the current dimensions and the actual remaining loading space, re-plan the first stacking pattern corresponding to the first current space position.
[0081] The first placement pattern represents the object placement pattern near the obstacle that has changed due to the spatial position deviation of the obstacle. The control system re-plans the local object placement around the first current spatial position based on the actual size of the obstacle and the current actual remaining loading space.
[0082] like Figure 5In the first planning information, a row of objects to be loaded can be placed next to the obstacle. However, due to the increase in the size of the obstacle, the spatial position of the obstacle changes. The deviation in the spatial position of the obstacle caused by the change in the size of the obstacle will affect the placement position of the objects to be loaded. Therefore, it is necessary to adjust the placement method of the objects to be loaded in the first current spatial position.
[0083] like Figure 6 As shown, the redesigned first stacking pattern is changed to no longer stack objects at the first spatial position, or the stacking direction of objects is changed to adapt to the change in the spatial position of obstacles caused by changes in obstacle size. This targeted approach allows the loading robot to flexibly cope with spatial deviations caused by changes in obstacle size, avoiding objects getting stuck or colliding due to spatial deviations.
[0084] like Figure 7 As shown, when the spatial position of an obstacle deviates due to changes in its size, the redesigned second stacking pattern can also be an adjustment of the stacking method of the objects to be loaded to adapt to the changes in the spatial position of the obstacle caused by the changes in its size.
[0085] In step S3053, in response to the fact that the spatial deviation is generated based on the spatial position deviation of the obstacle, the second current spatial position of the obstacle is obtained.
[0086] After the control system determines that the spatial position deviation of an obstacle exceeds a corresponding preset value, it re-scans the obstacle inside the loading compartment using the loading robot's 3D vision device, acquiring 3D point cloud data of the obstacle. The control system then reconstructs this 3D point cloud data to determine if the current spatial position of the obstacle has deviated from its original position. If the spatial deviation is based on the obstacle's spatial position deviation, it locates the obstacle's second current spatial position within the loading compartment.
[0087] Step S3054: Replan the stacking path of the loading robot at the second current spatial position.
[0088] The stacking path represents the movement path of the loading robot's robotic arm, which is replanned due to spatial deviations caused by obstacles.
[0089] If the change in the spatial position of an obstacle is not due to a change in the obstacle's size, but rather a change in its spatial location, and this change in obstacle's spatial position does not affect the stacking pattern of the objects to be loaded, but does affect the movement trajectory of the loading robot's robotic arm, then the control system maintains the stacking pattern of the objects to be loaded unchanged. Without altering the stacking pattern, it only replans the loading robot's stacking path at the second current spatial position to avoid the shifted obstacle. Figure 8 As shown.
[0090] If the spatial position of an obstacle changes and affects both the stacking pattern of the object to be loaded and the movement trajectory of the robotic arm, the control system will simultaneously replan the stacking pattern and the stacking path.
[0091] This dual adjustment strategy provides greater flexibility, allowing the control system to select the optimal planning scheme based on the severity and nature of the obstacle spatial deviation.
[0092] The control method for the loading robot provided in this embodiment dynamically adjusts the stacking pattern inside the compartment when the spatial deviation is caused by the size deviation of the obstacle. When the obstacle becomes larger or its shape changes and occupies the original stacking space, the stacking pattern of objects near the obstacle is updated in time to ensure that objects can be stacked normally in the limited space around the obstacle.
[0093] For situations where spatial deviation is caused by the spatial position deviation of obstacles, the stacking pattern of objects near obstacles and the stacking path of objects are planned according to the actual remaining loading space. This can simultaneously take into account the stacking safety of objects near obstacles and the movement safety of the robotic arm, avoid the dual impact of changes in the spatial position of obstacles, and facilitate the stacking planning under complex and abnormal working conditions.
[0094] In some optional implementations, the above method further includes: Step a1: Obtain the remaining length corresponding to the actual remaining loading space.
[0095] Step a2: If the remaining length is less than the preset length value, update the second planning information to obtain the third planning information corresponding to the remaining length. The third planning information is used to increase the stacking height.
[0096] Step a3: If the remaining length is greater than the preset length value, then update the second planning information to obtain the fourth planning information corresponding to the remaining length. The fourth planning information is used to reduce the stacking height.
[0097] During the process of controlling the loading robot to perform loading operations according to the second planning information, the control system will extract the length parameter of the actual remaining loading space of the current compartment in order to accurately obtain the remaining length corresponding to the actual remaining loading space.
[0098] The preset length value is a length threshold built into the control system. The control system compares the remaining length with this preset length value. If the remaining length is less than the preset length value, it indicates that there is insufficient longitudinal space available at the rear of the cargo box. If loading is still performed according to the second planning information, the objects at the rear of the cargo box will fall off the rear of the vehicle, or the door may not be able to be closed. At this time, the control system adjusts and optimizes the second planning information to generate third planning information. The core adjustment logic of this third planning information is to increase the stacking height of the objects, loading all the remaining objects within the limited longitudinal length by vertically stacking them.
[0099] If the remaining length is greater than the preset length value, it indicates that there is excess longitudinal space at the rear of the cargo compartment. If the loading operation is still carried out according to the second planning information, the last item placed at the rear will be far from the tailgate, making it prone to tilting and collapse during transportation. At this time, the control system will adjust the second planning information and generate the fourth planning information. The core adjustment logic of the fourth planning information is to reduce the stacking height of the goods and increase the number of goods arranged laterally to avoid a large area of empty space at the rear, which could lead to the tilting and collapse of the goods.
[0100] The control method for the loading robot provided in this embodiment dynamically adjusts the stacking height of objects according to the remaining length corresponding to the actual remaining loading space. This allows for increased stacking height when there is insufficient space at the rear and decreased stacking height when there is ample space. This not only ensures that all objects to be loaded can be completely placed into the container but also eliminates large gaps at the rear of the container, preventing objects from swaying and tipping over during transportation and improving transportation stability.
[0101] In some optional implementations, the above method further includes: Step b1: Check whether the loading of the remaining objects can be completed according to the third planning information.
[0102] Step b2: If the loading of the remaining objects cannot be completed according to the third planning information, then reduce the number of objects to be loaded to the loading robot.
[0103] Before controlling the loading robot to execute the loading operation corresponding to the third planning information, the control system first counts the remaining objects to be loaded, clarifying the total number and volume of objects still to be loaded. Then, based on the stacking method and space dimensions corresponding to the third planning information, it simulates and deduces whether the current actual remaining loading space can accommodate all the remaining objects to be loaded.
[0104] If the simulation results show that the stacking method according to the third planning information still cannot accommodate all the remaining objects to be loaded, it indicates that the actual remaining loading space of the truck body has reached its loading limit. At this time, the control system can issue a control command to the conveying system corresponding to the loading robot to reduce the number of objects to be loaded transferred from the conveying system to the loading robot, so as to match the actual loading capacity of the truck body.
[0105] The control method for the loading robot provided in this embodiment reduces the number of objects to be loaded when it is determined that loading the remaining objects according to the third planning information is difficult. This avoids the problem of objects being exposed due to forced stacking, making it difficult to close the tail door, and ensures that all objects are completely inside the compartment. This balances loading compliance and operational safety, and achieves coordinated cooperation between the loading robot and the conveying system.
[0106] This embodiment provides a control method for a loading robot, which can be used for the aforementioned loading robot. Figure 9 This is a flowchart of a control method for a loading robot according to an embodiment of the present invention, such as... Figure 9 As shown, the process includes the following steps: Step S401: Obtain the first loading space corresponding to the compartment and the information of the object to be loaded. For details, please refer to the relevant descriptions of the steps in the above-described embodiments; they will not be repeated here.
[0107] Step S402: Based on the information of the first loading space and the object to be loaded, plan the loading task to obtain the first planning information corresponding to the first loading space.
[0108] Specifically, step S402 includes: Step S4021: Obtain the height of each object to be loaded from the obstacles in the first loading space and the object information to be loaded.
[0109] After the data collection in the first loading space is completed, the three-dimensional vision device on the loading robot identifies and extracts the point cloud data of all obstacles in the first loading space. The control system can then reconstruct and restore the obstacles in the first loading space based on the obstacle point cloud data, such as the carriage pillars, tailgate frame, and carriage diagonal braces.
[0110] Meanwhile, the control system can analyze the information of the objects to be loaded, read the shape parameters of all the objects to be loaded contained in the information one by one, and determine the height of each object to be loaded.
[0111] Step S4022: Based on the height of the object to be loaded, the first loading space and obstacles are divided into layers to obtain multiple layered spaces and the distribution of obstacles corresponding to each layered space.
[0112] The control system uses the height of the goods to be loaded as the basis for layering, and uniformly divides the first loading space and the obstacles in the first loading space into multiple independent layered spaces in the height direction.
[0113] Obstacle distribution refers to the distribution of obstacles in each layered space. This distribution can include the location of obstacles and the spatial range they occupy. Specifically, due to the influence of the obstacle's own height and location, some obstacles may span multiple layers. The control system synchronously records the obstacle distribution within each layer, thus obtaining the correspondence between each layer and the obstacle distribution.
[0114] For example, for a batch of boxes 40 centimeters high, the control system virtually divides the initial loading space vertically (i.e., in the height direction) into multiple "layered spaces" each 40 centimeters high. For each layered space, the control system analyzes whether there are any obstacles within that layer (e.g., a beam may only exist in the highest few layers). In this way, complex three-dimensional loading can be simplified into multiple independent two-dimensional planar layouts.
[0115] Step S4023: Perform layer-by-layer planning based on the hierarchical space and obstacle distribution to obtain the first planning information.
[0116] The control system plans the placement of objects in each layered space from bottom to top according to the layering order corresponding to each layered space. It avoids obstacles by combining the distribution of obstacles in each layer, and determines the number of objects to be placed and the arrangement of objects in each layered space layer by layer. After the layered planning is completed, all the contents of all layered spaces are summarized to obtain complete first planning information.
[0117] This hierarchical planning strategy reduces the computational complexity of the planning algorithm and improves planning efficiency, making it possible to generate high-quality loading plans within a limited time.
[0118] In some optional implementations, step S4023 above includes: Step c1: For any layered space, obtain the first compartment wall and the second compartment wall of the compartment. The first compartment wall represents the compartment wall in the width direction, and the second compartment wall represents the compartment wall in the length direction.
[0119] Step c2: Based on the distribution of the first compartment wall and obstacles, determine the first type of space. The first type of space includes the space between the obstacles and the first compartment wall, as well as the space between different obstacles.
[0120] Step c3: Based on the distribution of the second compartment wall and obstacles, determine the second type of space, which includes the space between the obstacles and the second compartment wall.
[0121] Step c4: Based on the first width and first length of the first type of space, and the second width and second length of the second type of space, plan the stacking task of each object to be loaded, and obtain the first planning information.
[0122] When planning for any given layer of space, the control system extracts the first and second walls of the cargo compartment from the first loading space. Combining the first walls with the distribution of obstacles within the current layer, it divides the space into first-class and second-class spaces.
[0123] The first type of space can include two spatial areas: the empty space between the obstacle and the first compartment wall on the same side; and the intermediate empty space between two adjacent obstacles. The second type of space refers to the area behind the obstacle (along the loading direction) that is obstructed, specifically the empty space between the obstacle and the second compartment wall.
[0124] like Figure 10 As shown, if the length, width, and height of the container are (L, W, H), and the length, width, and height of the object to be loaded are (l, w, h), then the current local container space length is L. t Then the length, width, and height of the layered space are (L t Taking a certain layered space as an example, the obstacles in it are numbered 1, 2, ..., n from left to right, and the fixed boundaries between the compartment wall and the obstacles are numbered b0, b1, b2, ..., b from left to right. 2n-1 b 2n b 2n+1 Based on the left and right boundaries of the compartment walls and obstacles, the layered space is divided into multiple fragmented spaces: s1, s2, ..., s 2n s 2n+1 , where s i Represents boundary b n-1 With boundary b n The space between, s 2n+1 Let s represent the first type of space. 2n This represents the second type of space.
[0125] The first type of space has a corresponding first width and a first length, and the second type of space has a corresponding second width and a second length. The control system uses the first width and first length corresponding to the first type of space, and the second width and second length corresponding to the second type of space as constraints, to match objects of different shapes and sizes to be loaded, and sequentially plans the number and style of objects to be stacked in the first and second types of spaces. By integrating the planning results of all the first and second spaces, a complete first planning information is formed.
[0126] The control method for the loading robot provided in this embodiment decomposes the irregular first loading space into two relatively regular sub-spaces for object stacking. This facilitates the systematic handling of complex boundary problems caused by obstacles and enables refined utilization of the loading space. Based on the position of the cargo box walls and obstacles, the layered space is further divided into a first type of space and a second type of space. Then, stacking is planned according to the length and width of different types of spaces. This fully utilizes various scattered spaces within the cargo box, maximizes the effective stacking space, reduces space waste, increases loading efficiency, and ensures neat cargo arrangement.
[0127] In some alternative implementations, step c4 above includes: Step c41: Based on the first width and first length of the first type of space, and the second width and second length of the second type of space, determine the stacking position of each object to be loaded in the container.
[0128] The placement position refers to the location of the object to be loaded within the first or second type of space. This placement position can be characterized by the length, width, and height coordinates of the cargo box. Specifically, a combined optimization algorithm can be used to maximize the utilization of the loading space by combining the length and width parameters of all objects to be loaded with a combination of horizontal and vertical placement. This involves matching the spatial dimensions of each first and second type of space to determine the placement position of each object within the cargo box.
[0129] like Figure 10 As shown, when planning a certain hierarchical space, the control system divides the hierarchical plane into two types of fragmented subspaces: the first type and the second type. When using these fragmented subspaces for stacking planning, the following conditions must be met:
[0130] in, w i Indicates the first i Fragmented subspaces (i.e., spaces of the first or second kind) s i width, w i It is dynamically changing, and its initial value is determined by |b. i - b i-1 |Calculated; k W is a natural number, and W represents the width of the compartment.
[0131] For each fragment subspace s i The horizontal and vertical arrangement of objects to be loaded in the width direction can be denoted as: x i,1 A horizontal box, x i,2If there are vertical boxes, then: , in, l Indicates the length of the horizontal box. w This indicates the width of the vertical box.
[0132] The control system prioritizes the filling of the first type of space according to the above method to obtain the optimal box combination. After filling all the first type of space, the system then uses the remaining boxes and space to fill the irregularly shaped second type of space.
[0133] Specifically, based on the width of the first type of space, the calculation is obtained... x i,1 and x i,2 Then, the excess width of each first-class space can be obtained. Then, the excess width of each second-class space is calculated sequentially from left to right. x i,1 and x i,2 The first second-class space is s2. When calculating s2, all the excess width of s1 and part or all of the excess width of s3 can be used. The second second-class space is s4. When calculating s4, the remaining excess width of s3 and part or all of the excess width of s5 can be used, and so on, to calculate all the second-class spaces. x i,1 and x i,2 .
[0134] To ensure the layered space is as orderly as possible after the objects are stacked, the number of horizontal and vertical boxes in each fragment subspace along the length of the compartment can be adjusted. i ,1 and y i ,2 This ensures that the lengths of each fragment subspace are approximately equal, with the length of the second type of space needing to additionally account for the length of the corresponding obstacle. Thus, by combining the number of objects stacked in the width direction and the number of objects stacked in the length direction, the placement position of each object to be loaded within the container can be determined.
[0135] By employing refined spatial division and planning strategies, the space utilization rate of the container is significantly improved compared to simple grid-based object stacking.
[0136] Step c42: Obtain the current pose of the robotic arm of the loading robot.
[0137] Step c43: Starting from the current robotic arm pose and ending at the stacking position, plan the stacking path of the loading robot in the first type of space and the second type of space. The first planning information includes the stacking position and the stacking path.
[0138] After determining the placement position of each object to be loaded, the control system reads the operating parameters of the loading robot arm and obtains the current pose of the robot arm. This current pose is used to characterize the joint angles of the current robot arm and the spatial position and orientation of the end effector.
[0139] The control system uses the current pose of the robotic arm as the starting point and the predetermined stacking position as the ending point. It plans complete stacking paths for the robotic arm to grasp, transfer, and place goods in both the first and second types of spaces, avoiding obstacles and the container walls throughout the path. Finally, the stacking positions of all objects to be loaded and the robotic arm's stacking paths are integrated and summarized to generate the first planning information.
[0140] Specifically, a virtual container space environment is established in the local container space, and information such as the inherent boundaries of the container, obstacles, and the position and size of the stacked objects are recorded in real time. This information is then converted into the coordinate system of the robotic arm and used as the constraint boundary for the robotic arm's motion planning.
[0141] The control system reads the real-time angle information of each joint of the robotic arm and, combined with the forward kinematics model of the robotic arm, calculates the spatial pose of each link in the robotic arm coordinate system. Then, a multi-scale capsule body algorithm is used to perform geometric envelope modeling of each link of the robotic arm, the tooling, and the object being grasped, establishing a dynamic anti-collision bounding box for the robotic arm.
[0142] In a virtual train carriage environment, starting from the current pose of the robotic arm and ending at the placement position of the objects to be loaded, an improved fast expanding random tree algorithm is used. The robot continuously samples points randomly in both the first and second types of spaces, guiding a random tree rooted at the starting point to expand its nodes into the unknown region until a branch touches the endpoint, thus connecting a smooth, feasible path, which is the stacking path. In the sampling phase, the constraint boundaries of the robot arm's motion planning are set as prohibited sampling areas; in the node expansion phase, the constraint boundaries of the robot arm's motion planning are set as collision conditions, thereby constraining the stacking path to avoid obstacles.
[0143] The control method for the loading robot provided in this embodiment determines the placement position of each object to be loaded based on the length and width of different types of spaces. By combining the placement position with the current posture of the loading robot's robotic arm, it completes the integrated planning of the static placement position of each object to be loaded and the dynamic placement path of the robotic arm. This ensures both reasonable placement and safe robotic arm movement trajectory, avoiding the problem of the robotic arm scraping against obstacles (or already placed objects) or the wall of the container during operation, making the loading task of the loading robot safer.
[0144] Step S403: In response to the loading robot executing the loading task according to the first planning information, the second loading space corresponding to the compartment and the actual remaining loading space of the compartment are obtained.
[0145] Specifically, step S403 includes: In step S4031, in response to the loading robot executing the loading task according to the first planning information, the object stacking space corresponding to the loading task is obtained based on the first planning information.
[0146] The object stacking space is the space occupied by the object when the first loading space is planned, that is, the idealized space occupied by the object in the compartment.
[0147] Specifically, when the loading robot is performing the object placement task normally according to the first planning information, the control system can retrieve the placement operation of the first planning information, count the types, quantities and placement range of objects completed in the current stage, and accurately calculate the object placement space of each object to be loaded in this round of placement task.
[0148] Step S4032: Determine the second loading space based on the first loading space and the object stacking space.
[0149] By subtracting the object stacking space from the first loading space calculated above, we obtain the theoretical second loading space.
[0150] Step S4033: Obtain the current spatial point cloud data after the loading task is performed.
[0151] As described above, the 3D vision device mounted on the loading robot can scan the internal environment of the truck compartment, collect the current spatial point cloud data inside the compartment after the loading task is completed, and send the current spatial point cloud data to the control system. Accordingly, the control system can obtain the current spatial point cloud data.
[0152] Step S4034: Determine the actual remaining loading space based on the current spatial point cloud data.
[0153] The control system performs noise reduction, coordinate correction, and region segmentation on the current spatial point cloud data. After removing invalid noise points and irrelevant areas, it performs surface reconstruction to accurately establish a digital model that includes the dimensions of the compartment (such as length, width, and height), the position and shape of internal obstacles (such as reinforcing ribs and columns), and the position and shape of the loaded objects. The available space defined by this digital model is the actual remaining loading space of the compartment.
[0154] Understandably, the aforementioned digital model is used to characterize the state model of the available space in the truck compartment. This digital model is a digital twin model that is updated in real time. Each time the loading robot completes the current loading task at a new location, the control system will synchronously update the available space in the truck compartment.
[0155] Step S404: Determine the spatial deviation between the second loading space and the actual remaining loading space. For details, please refer to the relevant descriptions of the steps in the embodiments shown above; they will not be repeated here.
[0156] Step S405: If the spatial deviation exceeds a preset value, the loading task of the truck body is replanned based on the actual remaining loading space to obtain the second planning information corresponding to the actual remaining loading space. For details, please refer to the relevant descriptions of the steps in the embodiments shown above, which will not be repeated here.
[0157] The control method for the loading robot provided in this embodiment adopts a planning mode based on the height of the object, which is suitable for the loading task characteristics of object stacking. By decomposing the first loading space into multiple independent layered spaces, the computational complexity of a single planning is reduced, while it can accurately adapt to areas with different layer heights and different obstacle distributions, making the first planning information more consistent with the actual loading conditions of object stacking and improving the rationality of the first planning information generation.
[0158] After the loading task is carried out according to the first planning information, the theoretical remaining space of the compartment (i.e. the second loading space) is determined based on the first planning information. At the same time, the actual remaining loading space of the compartment is restored based on the collected current spatial point cloud data, which provides reliable data support for subsequent spatial deviation judgment, avoids deviation misjudgment due to the single loading space calculation method, and further avoids stacking planning errors.
[0159] To better illustrate the technical solution and beneficial effects of the present invention, the embodiments of the present invention are described below in conjunction with specific application scenarios. It should be noted that these specific application embodiments are only for helping to understand the present invention and are not intended to limit the scope of protection of the present invention; those skilled in the art can make appropriate adjustments or combinations to the embodiments without departing from the principles of the present invention.
[0160] In a specific example, the intelligent loading robot can be based on an omnidirectional AGV chassis, ensuring its flexibility within narrow truck compartments. It is equipped with an articulated robotic arm and a 3D vision device. An industrial computer is embedded within the intelligent loading robot as its control system, providing powerful computing support for real-time point cloud processing, dynamic planning, and motion control. The accompanying conveyor system is a retractable belt conveyor, whose extension length and conveying speed are controlled by the loading robot's control system according to the real-time loading cycle.
[0161] After triggering the loading task, the loading robot uses its 3D vision device to scan the empty truck bed and acquire the first loading space. The control system then divides the space into layers based on the height of the objects to be loaded, and further divides each layer into first-class and second-class spaces, planning a precise stacking position for each box, and utilizing an improved... The algorithm generates collision-free stacking paths, which together constitute the first planning information.
[0162] The loading robot entered the truck bed and began its work. After stacking the 20th box, a routine scan revealed that due to the uneven floor of the truck bed, a box that had just been placed had tilted by 5 degrees, with its apex exceeding the preset safety threshold. Since this tilt affected the stacking of adjacent boxes, the control system triggered an update to the stacking pattern, planning a new, slightly offset stacking position for the adjacent boxes, generating new second planning information, and continuing to execute the task.
[0163] The task continues. When approximately 3 meters of cargo remain in the truck bed, the rear length is checked. If the actual remaining length obtained after real-time scanning is 2.8 meters, and according to the second planning information mentioned above, the remaining cargo requires 3.1 meters of space to be stacked at the standard height, then the remaining length is determined to be less than the preset length value. This triggers an adjustment to the second planning information, generating third planning information to increase the stacking height of the remaining cargo from layer X to layer Y.
[0164] Before execution, the control system performs a rapid virtual loading verification to confirm that all remaining goods can be loaded under this new scheme. After the verification is passed, the loading robot continues to stack the goods according to the increased height scheme.
[0165] If, due to initial measurement errors, the actual remaining length is 3.5 meters, which is much greater than the planned 3.1 meters, then the remaining length is determined to be greater than the preset length value. This triggers an adjustment to the second planning information and generates the fourth planning information to reduce the stacking height from layer A to layer B, while adding a row in the width direction of the carriage, so that the goods can ultimately be tightly pressed against the rear door.
[0166] Throughout the process, if the control system finds that it still cannot accommodate all the goods after any replanning (such as increasing the stacking height), it will immediately send an instruction to the conveying system to reduce the amount of goods to be loaded and notify the warehouse management system to update the inventory.
[0167] This embodiment also provides a control device for a loading robot, which is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that performs a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.
[0168] This embodiment provides a control device for a loading robot, such as... Figure 11 As shown, it includes: The first acquisition module 501 is used to acquire the first loading space corresponding to the compartment and the information of the object to be loaded.
[0169] The first planning module 502 is used to plan the loading task based on the first loading space and the information of the object to be loaded, and to obtain the first planning information corresponding to the first loading space.
[0170] The second acquisition module 503 is used to respond to the loading robot executing the loading task according to the first planning information, and to acquire the second loading space corresponding to the compartment and the actual remaining loading space of the compartment.
[0171] The deviation determination module 504 is used to determine the spatial deviation between the second loading space and the actual remaining loading space.
[0172] The planning update module 505 is used to replan the loading task of the truck body based on the actual remaining loading space if the space deviation exceeds the preset value, so as to obtain the second planning information corresponding to the actual remaining loading space.
[0173] In some alternative implementations, spatial deviations include obstacle size deviations, and accordingly, the planning update module 505 includes: The first information acquisition unit is used to acquire the current size and first current spatial position of the obstacle.
[0174] The first planning and adjustment unit is used to replan the first stacking pattern corresponding to the first current space position based on the current size and the actual remaining loading space. The second planning information includes the first stacking pattern.
[0175] In some alternative implementations, the spatial deviation includes the spatial positional deviation of obstacles, and accordingly, the planning update module 505 includes: The second information acquisition unit is used to acquire the second current spatial position of the obstacle.
[0176] The second planning and adjustment unit is used to replan the second stacking pattern corresponding to the second current spatial position based on the actual remaining loading space, and / or to replan the stacking path of the loading robot at the second current spatial position. The second planning information includes the second stacking pattern and stacking path.
[0177] In some alternative implementations, the planning update module 505 includes: The length acquisition unit is used to obtain the remaining length corresponding to the actual remaining loading space.
[0178] The third planning adjustment unit is used to update the second planning information if the remaining length is less than the preset length value, and obtain the third planning information corresponding to the remaining length. The third planning information is used to increase the stacking height. The fourth planning adjustment unit is used to update the second planning information if the remaining length is greater than the preset length value, and obtain the fourth planning information corresponding to the remaining length. The fourth planning information is used to reduce the stacking height.
[0179] In some alternative implementations, the planning update module 505 includes: The object acquisition unit is used to acquire the remaining objects to be loaded.
[0180] The loading detection unit is used to detect whether the loading of the remaining objects to be loaded can be completed according to the third planning information.
[0181] The loading adjustment unit is used to reduce the number of objects to be loaded to the loading robot if the loading of the remaining objects to be loaded is not completed according to the third planning information.
[0182] In some optional implementations, the second acquisition module 503 includes: The stacking space acquisition unit is used to acquire the object stacking space corresponding to the loading task based on the first planning information when the loading robot performs the loading task according to the first planning information.
[0183] The loading space determination unit is used to determine the second loading space based on the first loading space and the object stacking space.
[0184] The point cloud data acquisition unit is used to acquire the current spatial point cloud data after the loading task is performed.
[0185] The remaining space determination unit is used to determine the actual remaining loading space based on the current spatial point cloud data.
[0186] In some alternative implementations, the first planning module 502 includes: The height information acquisition unit is used to acquire the height of obstacles in the first loading space and the height of each object to be loaded in the object information.
[0187] The obstacle distribution determination unit is used to divide the first loading space and obstacles into layers based on the height of the object to be loaded, so as to obtain multiple layered spaces and the obstacle distribution corresponding to each layered space.
[0188] The layer-by-layer planning unit is used to perform layer-by-layer planning based on the layered space and the distribution of obstacles to obtain the first planning information.
[0189] In some alternative implementations, the layer-by-layer planning unit includes: The compartment wall sub-unit is used to obtain the first compartment wall and the second compartment wall of the compartment for any layered space. The first compartment wall represents the compartment wall in the width direction, and the second compartment wall represents the compartment wall in the length direction.
[0190] The first type of space determination subunit is used to determine the first type of space based on the distribution of the first compartment wall and obstacles. The first type of space includes the space between the obstacles and the first compartment wall, as well as the space between different obstacles.
[0191] The second type of space determination sub-unit is used to determine the second type of space based on the distribution of the second compartment wall and obstacles. The second type of space includes the space between the obstacles and the second compartment wall.
[0192] The stacking planning subunit is used to plan the stacking task of each object to be loaded based on the first width and first length of the first type of space, and the second width and second length of the second type of space, and to obtain the first planning information.
[0193] In some optional implementations, the stacking planning subunit is further configured to: determine the stacking position of each object to be loaded in the container based on the first width and first length of the first type of space, and the second width and second length of the second type of space; obtain the current robotic arm pose of the loading robot; and plan the stacking path of the loading robot in the first type of space and the second type of space, starting from the current robotic arm pose and ending at the stacking position; wherein the first planning information includes the stacking position and the stacking path.
[0194] The control device for the loading robot provided in this embodiment of the invention can execute the control method for the loading robot provided in any embodiment of the invention, and has the corresponding functional modules and beneficial effects of the method.
[0195] Further functional descriptions of the above modules and units are the same as those in the corresponding embodiments described above, and will not be repeated here.
[0196] Figure 12 This is a structural schematic diagram of a loading robot provided in an embodiment of the present invention.
[0197] The following is a detailed reference. Figure 12The diagram illustrates a structural schematic suitable for implementing a loading robot according to an embodiment of the present invention. The loading robot may include a controller, which includes a processor (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from memory 608 into random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of the electronic device. The processor 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0198] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; memory devices 608 including, for example, magnetic tapes, hard disks, etc.; and communication devices 609. Communication device 609 allows electronic devices to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 12 Electronic devices with various devices are shown, but it should be understood that it is not required to implement or have all of the devices shown, and more or fewer devices may be implemented or have instead.
[0199] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or installed from a memory 608, or installed from a ROM 602. When the computer program is executed by the processor 601, it performs the functions defined in the control method for the loading robot of the embodiments of the present invention.
[0200] Figure 12 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.
[0201] This invention also provides a computer-readable storage medium. The methods described above according to embodiments of the invention can be implemented in hardware or firmware, or implemented as computer code that can be recorded on a storage medium, or implemented as computer code downloaded via a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and then stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the control method for the loading robot shown in the above embodiments is implemented.
[0202] A portion of this invention can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to the invention through the operation of the computer. Those skilled in the art will understand that the forms in which computer program instructions exist in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways in which computer program instructions are executed by a computer include, but are not limited to: the computer directly executing the instructions, or the computer compiling the instructions and then executing the corresponding compiled program, or the computer reading and executing the instructions, or the computer reading and installing the instructions and then executing the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to a computer.
[0203] Although embodiments of the invention have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the invention, and such modifications and variations all fall within the scope defined by the appended claims.
Claims
1. A control method of a truck loading robot, characterized by, The method includes: Obtain information about the first loading space corresponding to the cargo box and the object to be loaded; Based on the first loading space and the information of the object to be loaded, a loading task is planned to obtain the first planning information corresponding to the first loading space; In response to the loading robot executing the loading task according to the first planning information, the second loading space corresponding to the compartment and the actual remaining loading space of the compartment are obtained; Determine the spatial deviation between the second loading space and the actual remaining loading space; If the spatial deviation exceeds a preset value, the loading task of the truck body is replanned based on the actual remaining loading space to obtain the second planning information corresponding to the actual remaining loading space.
2. The method of claim 1, wherein, The process of replanning the loading task of the truck body based on the actual remaining loading space, and obtaining the second planning information corresponding to the actual remaining loading space, includes: In response to the spatial deviation being generated based on obstacle size deviation, the current size of the obstacle and the first current spatial position are obtained; Based on the current dimensions and the actual remaining loading space, the first stacking pattern corresponding to the first current space position is replanned; In response to the spatial deviation being generated based on the spatial position deviation of the obstacle, the second current spatial position of the obstacle is obtained; The loading robot's placement path at the second current spatial position is replanned; The second planning information includes the first stacking pattern and the stacking path.
3. The method of claim 2, wherein, Also includes: Obtain the remaining length corresponding to the actual remaining loading space; If the remaining length is less than the preset length value, the second planning information is updated to obtain the third planning information corresponding to the remaining length. The third planning information is used to increase the stacking height. Detect whether the loading of the remaining objects can be completed according to the third planning information; If the loading of the remaining objects cannot be completed according to the third planning information, the number of objects to be loaded and delivered to the loading robot will be reduced. If the remaining length is greater than the preset length value, the second planning information is updated to obtain the fourth planning information corresponding to the remaining length. The fourth planning information is used to reduce the stacking height.
4. The method of claim 1, wherein, The step of responding to the loading robot executing the loading task according to the first planning information, and obtaining the second loading space corresponding to the compartment and the actual remaining loading space of the compartment, includes: In response to the loading robot executing the loading task according to the first planning information, the object stacking space corresponding to the loading task is obtained based on the first planning information; The second loading space is determined based on the first loading space and the object stacking space; Obtain the current spatial point cloud data after executing the loading task; Based on the current spatial point cloud data, the actual remaining loading space is determined.
5. The method of claim 1, wherein, The step of planning the loading task based on the first loading space and the information of the object to be loaded, and obtaining the first planning information corresponding to the first loading space, includes: Obtain the obstacles in the first loading space and the height of each object to be loaded from the information of the objects to be loaded; Based on the height of the object to be loaded, the first loading space and the obstacles are divided into layers to obtain multiple layered spaces and the distribution of obstacles corresponding to each layered space; Based on the layered space and the distribution of obstacles, layer-by-layer planning is performed to obtain the first planning information.
6. The method of claim 5, wherein, The step-by-step planning based on the hierarchical space and the distribution of obstacles to obtain the first planning information includes: For any of the aforementioned layered spaces, obtain the first compartment wall and the second compartment wall of the compartment, where the first compartment wall represents the compartment wall in the width direction and the second compartment wall represents the compartment wall in the length direction. Based on the distribution of the first compartment wall and the obstacles, a first type of space is determined. The first type of space includes the space between the obstacles and the first compartment wall, as well as the space between different obstacles. Based on the distribution of the second compartment wall and the obstacles, a second type of space is determined, which includes the space between the obstacles and the second compartment wall; Based on the first width and first length of the first type of space, and the second width and second length of the second type of space, the stacking task of each of the objects to be loaded is planned to obtain the first planning information.
7. The method of claim 6, wherein, The first planning information is obtained by planning the stacking task of each of the objects to be loaded based on the first width and first length of the first type of space, and the second width and second length of the second type of space, including: Based on the first width and first length of the first type of space, and the second width and second length of the second type of space, the stacking position of each of the objects to be loaded in the compartment is determined; Obtain the current pose of the robotic arm of the loading robot; Starting from the current robotic arm pose and ending at the stacking position, plan the stacking path of the loading robot in the first type of space and the second type of space; The first planning information includes the placement location and the placement path.
8. A control device for a truck robot, characterized in that The device includes: The first acquisition module is used to acquire the first loading space corresponding to the compartment and the information of the object to be loaded. The first planning module is used to plan the loading task based on the first loading space and the information of the object to be loaded, and to obtain the first planning information corresponding to the first loading space. The second acquisition module is used to acquire the second loading space corresponding to the compartment and the actual remaining loading space of the compartment in response to the loading robot executing the loading task according to the first planning information. The deviation determination module is used to determine the spatial deviation between the second loading space and the actual remaining loading space. The planning update module is used to replan the loading task of the truck body based on the actual remaining loading space if the spatial deviation exceeds a preset value, and obtain the second planning information corresponding to the actual remaining loading space.
9. A robot, characterized in that include: A controller, comprising a memory and a processor, wherein the memory and the processor are communicatively connected, the memory storing computer instructions, and the processor executing the computer instructions to perform the control method of the loading robot as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing the computer to execute the control method of the loading robot according to any one of claims 1 to 7.
11. A computer program product, characterised in that, It includes computer instructions for causing a computer to execute the control method for the loading robot according to any one of claims 1 to 7.