Truck loading robot control method and truck loading robot
By acquiring depth images in real time to calculate the direction angle difference and adaptive safety centerline position, the problem of inaccurate positioning of the loading robot in deformable carriages is solved, achieving high-precision and safe loading operations.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HEBEI UNIV OF ENG
- Filing Date
- 2025-12-30
- Publication Date
- 2026-05-29
AI Technical Summary
Existing loading robots lack real-time deformation detection and adaptive adjustment capabilities in deformable cargo compartments, resulting in insufficient positioning accuracy and safety, making them prone to collisions or scratches and unable to cope with complex and ever-changing actual working conditions.
By acquiring depth images in real time and calculating the azimuth difference, the target azimuth and safety centerline position are adaptively determined. By combining dynamic azimuth and adaptive safety centerline dual control, the robot's forward direction deviation is captured in real time, and the target azimuth is adaptively corrected to avoid collisions.
It improves the positioning accuracy and safety of the loading robot, reduces the risk of collision with walls, ensures stable operation, and adapts to various complex working conditions.
Smart Images

Figure CN121573473B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robotics, and in particular to a control method for a loading robot and a loading robot. Background Technology
[0002] A loading robot is a mobile robot used to automatically load goods inside truck compartments or containers. It significantly improves efficiency, reduces costs and safety risks, and is widely used in logistics, manufacturing, and fast-moving consumer goods industries. During long-term use, the inner walls of truck compartments and containers often deform due to collisions and compression (dents of 5-30 cm are common). Loading robots operate within the confined space of these compartments, requiring extremely high positioning accuracy and safety.
[0003] In existing technologies, loading robots typically use simple geometric center positioning without considering the deformation of the inner wall. This causes the robot to easily deviate to the deformable side in deformable cargo compartments. In narrow spaces, even a deviation of a few centimeters can lead to collisions or scratches, causing equipment damage, cargo damage, and work interruption. The lack of real-time deformation detection and adaptive adjustment capabilities makes it unable to cope with complex and ever-changing actual working conditions. Furthermore, the lack of a passability prediction mechanism means that the robot may get stuck after entering an impassable area and be difficult to recover. Summary of the Invention
[0004] This invention provides a loading robot control method and a loading robot to solve the problem that the geometric center positioning method in the prior art lacks real-time deformation detection and adaptive adjustment capabilities, resulting in poor control performance.
[0005] In a first aspect, embodiments of the present invention provide a method for controlling a loading robot, comprising:
[0006] When the target robot is in the forward movement phase:
[0007] The first depth image detected by the front depth camera of the target robot is acquired in real time, and the real-time orientation angle is determined based on the first depth image;
[0008] Calculate the difference between the real-time heading angle and the reference heading angle, and adaptively determine the target heading angle based on the difference;
[0009] Based on the first depth image, determine the concave deformation of the left side wall, and determine the adaptive safety centerline position based on the concave deformation of the left side wall;
[0010] The target robot is controlled to move forward based on the target orientation angle and the adaptive safety centerline position.
[0011] In a second aspect, embodiments of the present invention provide a loading robot, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the loading robot control method as described in the first aspect or any possible implementation of the first aspect.
[0012] This invention provides a loading robot control method and a loading robot. The loading robot control method includes: when the target robot is moving forward: acquiring a first depth image detected by a depth camera at the front end of the target robot in real time, and determining a real-time direction angle based on the first depth image; calculating the difference between the real-time direction angle and a reference direction angle, and adaptively determining a target direction angle based on the difference; determining the concave deformation variable of the left side of the truck bed based on the first depth image, and determining an adaptive safety centerline position based on the concave deformation variable of the left side of the truck bed; and controlling the target robot to move forward based on the target direction angle and the adaptive safety centerline position. This invention adaptively determines the safety centerline position based on the concave deformation variable of the truck bed, adapting to non-standard planar truck beds, preventing collisions while maximizing space utilization; simultaneously, it captures the robot's forward direction deviation in real time and adaptively corrects the target direction angle; based on this, this application combines dynamic direction angle and adaptive safety centerline dual control to reduce the risk of robot collisions with walls, avoid forward movement failures caused by directional deviations and wall deformation, and ensure stable robot operation. Attached Figure Description
[0013] Figure 1 This is a flowchart illustrating the implementation of a vehicle loading robot control method provided in an embodiment of the present invention;
[0014] Figure 2 This is a schematic diagram of the structure of the loading robot control device provided in an embodiment of the present invention;
[0015] Figure 3 This is a schematic diagram of the loading robot provided in an embodiment of the present invention. Detailed Implementation
[0016] The embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0017] During long-term use, the inner walls of truck compartments and containers frequently deform due to collisions and compression (dents of 5-30 cm are common). Loading robots operate within these confined spaces, requiring extremely high positioning accuracy and safety. Existing navigation solutions generally employ simple geometric center positioning, neglecting to account for inner wall deformation. This causes the robot to easily deviate to the deformed side within the confined space. In such narrow areas, even a deviation of a few centimeters can lead to collisions or scrapes, causing equipment damage, cargo damage, and operational interruptions. Furthermore, the lack of real-time deformation detection and adaptive adjustment capabilities makes it unable to cope with complex and changing real-world working conditions. The absence of a passability prediction mechanism also means the robot may become stuck in impassable areas, making recovery difficult.
[0018] The inner walls of most truck compartments and containers are made of corrugated metal sheets with a periodic corrugated structure. This structure poses a serious challenge to the robot's environmental perception in actual operation.
[0019] Based on the above issues, see Figure 1 The diagram illustrates a flowchart of a vehicle loading robot control method according to an embodiment of the present invention, which is described in detail below:
[0020] The above-mentioned method for controlling a loading robot includes:
[0021] When the target robot is in the forward movement phase:
[0022] S101: Real-time acquisition of the first depth image detected by the front depth camera of the target robot, and determination of the real-time orientation angle based on the first depth image;
[0023] The target robot can be a tracked loading machine or other types of loading robots;
[0024] The depth camera can be an RGB-D depth camera, capable of simultaneously acquiring color images (RGB) and depth information. To keep the depth camera at its optimal working distance, only depth images within a preset distance are considered, such as 2 meters to 5 meters. This can improve fitting accuracy by keeping the depth camera at its optimal working distance.
[0025] In this application, the first depth image includes a color image (RGB) of the inner wall of the carriage and depth information. The first depth image is converted into 3D point cloud data, and the 3D point cloud data is downsampled by voxel filtering. Then, height filtering is performed. The left and right walls are separated according to their lateral positions, and high-pass filtering is performed on the left and right walls respectively. Based on the processed point cloud data, RANSAC (Random Sample Consensus Algorithm) is used for plane fitting to select the in-situ points that constitute the main structural plane of the inner wall of the carriage and exclude out-of-situ points such as sensor noise and cargo interference, and finally determine the real-time orientation angle.
[0026] Voxel grid filtering is a downsampling algorithm used for preprocessing 3D point cloud data. It divides the 3D space into a regular cubic grid and replaces all points falling within the same cube with their geometric center point. While preserving the macroscopic geometric features of the 3D point cloud data, it effectively reduces data volume, smooths high-frequency noise (such as corrugated board ripples), and significantly improves the efficiency and stability of subsequent processing algorithms (such as RANSAC).
[0027] Height filtering refers to a preprocessing method that filters 3D point cloud data by height range, removing point clouds from the top of the vehicle and the ground, and retaining only the effective point cloud data within the target robot's passage space.
[0028] RANSAC is used to estimate the parameters of a mathematical model with high accuracy from a set of observation data containing a large number of "outside points". This application defines inside points as 3D point cloud data that actually constitutes the main structural plane of the carriage interior wall or door frame. Outside points are 3D point cloud data that is disturbed by periodic ripples in the corrugated sheet, sensor noise, or other non-target objects (such as cargo or equipment).
[0029] S102: Calculate the difference between the real-time heading angle and the reference heading angle, and adaptively determine the target heading angle based on the difference;
[0030] The reference heading angle is a high-confidence global direction reference established based on the door frame of the carriage. The target heading angle is adaptively adjusted according to the magnitude of the difference to balance the dynamics of real-time environmental perception and the stability of the reference reference.
[0031] In one possible implementation, S102 may include:
[0032] S1021: If the absolute value of the difference is less than the first preset angle, the target direction angle is determined based on the real-time direction angle and the reference direction angle combined with the first formula;
[0033] S1022: If the absolute value of the difference is not less than the first preset angle and less than the second preset angle, then the target direction angle is determined based on the real-time direction angle and the reference direction angle combined with the second formula.
[0034] S1023: If the absolute value of the difference is not less than the second preset angle, then the reference direction angle shall be used as the target direction angle;
[0035] The first formula may include:
[0036]
[0037] The second formula may include:
[0038]
[0039] in, The target direction angle, This is the real-time direction angle. This is the reference direction angle.
[0040] If the absolute value of the difference is less than the first preset angle, it indicates that the real-time wall fitting result is highly reliable and more trustworthy. The weight coefficient can be larger. This weighted fusion strategy takes into account both real-time environmental feedback and benchmark stability.
[0041] If the absolute value of the difference is not less than the first preset angle and less than the second preset angle, it indicates that there is a certain deviation in the real-time fitting result, and the weight of the reference direction angle needs to be increased.
[0042] If the difference is larger, it proves that the real-time wall fitting result is unreliable (it may be affected by corrugated board interference or sensor malfunction). In this case, the reference orientation angle is directly used as the target orientation angle to avoid fitting errors causing the target robot's posture to deviate.
[0043] This application uses a reference orientation angle as a global reference anchor point to verify the real-time orientation angle, which can effectively suppress recognition errors caused by the periodic ripples of the corrugated board and improve the robustness of orientation recognition.
[0044] For example, the first preset angle can be 5 degrees and the second preset angle can be 15 degrees.
[0045] S103: Based on the first depth image, determine the concave deformation variable of the left side wall, and determine the adaptive safety centerline position based on the concave deformation variable of the left side wall;
[0046] In one possible implementation, S103 may include:
[0047] S1031: Obtain the actual available width at the current moment;
[0048] S1032: The adaptive safety centerline position is calculated based on the actual available width at the current moment, the concave variable of the left side wall, and the position of the left side wall, combined with the third formula.
[0049] The third formula may include:
[0050]
[0051] in, To adapt to the safe centerline position, This is the location of the left side wall. The variable is the concave shape of the left side wall. For safety margin, This represents the actual available width at the current moment.
[0052] This application determines the adaptive safety centerline position based on the concave deformation of the compartment wall. This position is located at the center of the actual usable space, rather than a simple geometric center, effectively avoiding collisions.
[0053] The actual usable width is the effective passage width of the carriage after removing the effects of the maximum deformation on both sides.
[0054] Furthermore, the adaptive safety centerline position can be determined by determining the concave variable of the right side wall. The principle is the same: the centerline position is determined by reserving a safety margin for the target robot based on the principle of symmetry.
[0055] S104: Control the target robot to move forward based on the target orientation angle and the adaptive safety centerline position.
[0056] To ensure the overall safety of the target robot is considered during path planning, an extended cost map is constructed based on the current environment to measure the perceived distance from the robot's rear end to the front. Based on the current position and the adaptive safety centerline position, the relative target pose is constructed, and the optimal speed command is output through the Local Path Planning (DWA) algorithm. This allows the robot's specific position in the carriage to be defined as (0, 0, 0) without considering the robot's specific position during operation. The relative target position (x, y, θ) is calculated through the adaptive safety centerline position, and the loading machine's posture is safely adjusted through the real-time cost map.
[0057] This application detects the deformation of the inner wall of the vehicle in real time during the forward movement phase and dynamically calculates the adaptive safety centerline position based on the actual available space; at the same time, it captures the deviation of the robot's forward direction in real time and adaptively corrects the target direction angle; combining dynamic direction angle and adaptive safety centerline dual control reduces the risk of robot collision with the wall, avoids forward movement failure caused by directional deviation and wall deformation, significantly reduces collision risk, and adapts to various complex working conditions.
[0058] The target robot moves at a first preset speed, repeating steps S101 to S104 during the movement until it is insufficient to complete a full process. Then it enters the final precision adjustment stage: slows down to a second preset speed (e.g., 0.1 m / s), moves slowly, continuously measures distances precisely, and fine-tunes its posture to align laterally with the adaptive safety centerline, align its attitude with the direction of the carriage, and position itself longitudinally to the target depth (e.g., 0.5 m ± 5 cm from the front end to the bottom). Once it is confirmed to be in place, it stops and prepares for loading operations.
[0059] For example, the target robot first acquires a first depth image within 3m, determines the target orientation angle and the adaptive safety centerline position, and moves according to these parameters. When it has moved to 2.4m, it reacquires a first depth image within 3m of the current position, redetermines the target orientation angle and the adaptive safety centerline position, and continues moving according to the newly determined parameters.
[0060] During the execution of the above method, the position, attitude, adaptive safety centerline position, concave variables of the left and right side walls, position of the left and right side walls, and actual available width are recorded in real time at each moment of forward movement for subsequent calculations.
[0061] In one possible implementation, the above method may further include:
[0062] S105: Obtain the concave deformation variables of the left and right side walls at the previous time and all time points before the previous time. Take the maximum value among the concave deformation variables of the left side walls as the maximum deformation variable of the left side walls at the previous time, and take the maximum value among the concave deformation variables of the right side walls as the maximum deformation variable of the right side walls at the previous time.
[0063] S106: The actual usable width at the current moment is calculated based on the width of the carriage, the maximum deformation of the left carriage wall at the previous moment, and the maximum deformation of the right carriage wall at the previous moment, combined with the fourth formula.
[0064] The fourth formula may include:
[0065]
[0066] in, For the width of the carriage, and These are the maximum deformation of the left side wall and the maximum deformation of the right side wall at the previous moment, respectively.
[0067] This application iterates through the historical records, taking the maximum value among the concave variables of each left side wall as the maximum deformation of the left side wall at the previous moment, and taking the maximum value among the concave variables of each right side wall as the maximum deformation of the right side wall at the previous moment, and adopts a conservative strategy to ensure safety throughout the process.
[0068] In the initial stage, there is a slight positional deviation between the truck bed and the target robot (because the truck driver is instructed to reverse the truck bed to the designated working area of the target robot, and due to the limitations of the overall loading system, the deviation will not be too large; roughly speaking, the main body of the target robot is facing the truck bed door). Therefore, before the target robot officially enters the truck bed or container, it is necessary to pre-align the target robot with the truck bed door to ensure that the target robot can enter smoothly.
[0069] Based on this, in one possible implementation, the above method may further include:
[0070] When the target robot starts working:
[0071] After starting work, the operator sets the operating parameters through the human-machine interface, including the target entry depth (the distance from the front end to the bottom of the carriage, not less than the width of the cargo, not less than 0.4 meters in this embodiment) and the reverse step length (to ensure space for the next loading, 0.5 meters in this embodiment). After the truck driver reverses the carriage to the designated working area, the robot starts the automatic navigation mode.
[0072] S201: Obtain the third depth image detected by the front-end depth camera;
[0073] S202: Based on the third depth image, determine the straight lines on both sides of the edge and the concave variables on both sides of the door frame;
[0074] The front-end depth camera detects the third depth image. Since there are significant changes in depth values between the door frame and the interior of the carriage, a depth abrupt change detection and RGB edge detection fusion algorithm (used for auxiliary localization) is used to accurately locate the approximate area of the door frame. The depth image of the door frame area is converted into 3D point cloud data. The RANSAC algorithm is used to fit the edges of the two door frames to obtain the straight lines of the two edges. By detecting the distance distribution from the point cloud of the two edges to the straight lines, the local maximum concavity position of the left and right edges of the door frame is determined, thus obtaining the concavity deformation of the two sides of the door frame.
[0075] S203: Determine the initial safety centerline position based on the straight lines on both sides and the concave deformation on both sides of the door frame, and control the target robot to move to the initial safety centerline position to achieve pre-alignment.
[0076] Similarly, using a method similar to the third formula, the initial safe centerline position is calculated as follows:
[0077]
[0078] in, and These are the concave variables on both sides of the door frame.
[0079] Calculate the lateral and angular offsets of the target robot from the initial safety centerline position, construct a real-time cost map, call the DWA local planner to generate an adjustment path, control the target robot to move to the initial safety centerline position, so that the target robot is directly facing the door of the carriage and almost parallel, achieving pre-alignment and ensuring smooth entry into the carriage.
[0080] This application employs a strategy of "aligning in open spaces and maintaining in narrow spaces" to achieve precise pre-alignment before entering the carriage and maintain the correct posture throughout the subsequent process. This enables stable operation in extremely narrow spaces, significantly improving the success rate and safety.
[0081] In one possible implementation, the above method may further include:
[0082] S204: Determine the plane equation of the door frame based on the straight lines of both sides;
[0083] S205: Determine the normal vector of the door frame plane based on the door frame plane equation, and obtain the reference direction angle based on the normal vector.
[0084] During the pre-alignment stage, the point cloud regions of the left and right edges of the door frame are extracted simultaneously. The RANSAC algorithm is used to fit the planes of the left and right borders respectively, and outliers are removed using rectangular geometric constraints to obtain the plane equation of the door frame. The plane normal vector is calculated based on the plane equation of the door frame. Combined with the top view perspective transformation, the overall orientation angle of the door frame in the longitudinal direction of the carriage is obtained as the reference orientation angle.
[0085] This application utilizes the door frame to determine the reference direction angle as the "anchor point" for the entire navigation process, thereby improving the accuracy of control.
[0086] It should be noted that a confidence level assessment can also be performed on the heading angle. When the confidence level is higher than 95%, it is used as the reference heading angle.
[0087] The loading robot adopts a cyclical operation mode of "loading-reverse-loading-reverse". After the target robot completes a single loading operation, it enters the reverse phase.
[0088] In light of the above problems, in one possible implementation, the method may further include:
[0089] When the target robot is in the backward phase:
[0090] S301: Real-time acquisition of the second depth image detected by the rear depth camera of the target robot, and determination of the target orientation angle and adaptive safety centerline position based on the second depth image;
[0091] S302: Real-time detection of the distance between the rear end of the target robot and the carriage door;
[0092] S303: Update the target direction angle and adaptive safety centerline position based on the distance to obtain a new target direction angle and a new adaptive safety centerline position.
[0093] Since the front-end depth camera was blocked by cargo and became ineffective, the system automatically switched to the back-end depth camera to acquire the second depth image detected by the back-end depth camera in real time.
[0094] The same point cloud preprocessing procedure (voxel filtering, height filtering, high-pass filtering) as the forward phase is performed on the second depth image. The RANSAC algorithm is used to fit the wall plane to determine the real-time orientation angle. At the same time, the concave variables of the left and right side walls are detected to calculate the target orientation angle and adaptive safety centerline position for the backward phase.
[0095] The robot uses a combination of wheeled odometer and IMU (Inertial Measurement Unit) for positioning, and detects the distance between the rear end of the target robot and the door of the vehicle in real time. Based on the distance, the fusion weight of real-time perception data and historical environmental map data is dynamically adjusted to update the target orientation angle and the adaptive safety centerline position, thereby obtaining a new target orientation angle and a new adaptive safety centerline position to ensure positioning accuracy during the backward movement.
[0096] In one possible implementation, S303 may include:
[0097] S3031: When the distance is greater than the first preset distance, the target direction angle and the historical target direction angle of the current position are weighted and summed using the first weighting coefficient to obtain a new target direction angle, and the adaptive safety centerline position and the historical adaptive safety centerline position of the current position are weighted and summed using the first weighting coefficient to obtain a new adaptive safety centerline position.
[0098] S3032: When the distance is not greater than the first preset distance and not less than the second preset distance, the target direction angle and the historical target direction angle of the current position are weighted and summed using the second weighting coefficient to obtain a new target direction angle, and the adaptive safety centerline position and the historical adaptive safety centerline position of the current position are weighted and summed using the second weighting coefficient to obtain a new adaptive safety centerline position.
[0099] S3033: When the distance is less than the second preset distance, the historical adaptive safety centerline position of the current position is used as the new adaptive safety centerline position, and the reference direction angle is used as the new target direction angle.
[0100] When the target robot is far from the carriage door, the depth camera at the back end has a clear field of view. A first weighting coefficient is used to weight both real-time and historical data, and a larger weighting coefficient can be set for the real-time data. For example, the weighting coefficient for the target orientation angle is 0.6, while the weighting coefficient for the historical target orientation angle at the current position is 0.4; the weighting coefficient for the adaptive safety centerline position is 0.6, while the weighting coefficient for the historical adaptive safety centerline position at the current position is 0.4.
[0101] As the target robot moves backward, the field of view of the rear depth camera becomes limited, so a second weighting coefficient is used, and historical data can be weighted with a larger coefficient. For example, the weighting coefficient for the target orientation angle is 0.2, while the weighting coefficient for the historical target orientation angle at the current position is 0.8; the weighting coefficient for the adaptive safety centerline position is 0.2, while the weighting coefficient for the historical adaptive safety centerline position at the current position is 0.8.
[0102] When the rear depth camera is about to leave the carriage, and both the front and rear depth cameras become ineffective, the historical adaptive safety centerline position of the current location is used as the new adaptive safety centerline position, and the reference direction angle is used as the new target direction angle, entering blind retreat navigation mode. During the blind retreat phase, a low-speed retreat of 0.1-0.15 meters per second is used to ensure safety while avoiding track slippage and odometer inaccuracies caused by excessively low speed. Odometer integration positioning is primarily relied upon during the blind retreat phase. Once the odometer determines that the vehicle has completely exited the carriage and the IMU attitude is stable, the retreat stops, and the loading machine successfully exits the carriage, completing the entire loading operation.
[0103] For example, the first preset distance can be 3 meters and the second preset distance can be 1 meter, but the specific distance can also be set according to the actual application requirements.
[0104] This application records environmental parameters when moving forward and integrates real-time perception and historical data when moving backward to achieve blind spot assisted navigation. It automatically adjusts information weights based on the quality of the field of view. Even in the completely blind retreat phase where both the front and rear depth cameras fail, it can safely exit by relying on historical data and reference orientation angles, thus achieving closed-loop navigation.
[0105] In one possible implementation, S303 may further include:
[0106] S3034: Real-time calculation of the first cumulative error between the target orientation angle at each location and the historical target orientation angle;
[0107] S3035: When the first cumulative error is greater than the first preset error, the new target direction angle is corrected;
[0108] S3036: Real-time calculation of the second cumulative error between the adaptive safety centerline position and the historical adaptive safety centerline position at each location;
[0109] S3037: When the second cumulative error is greater than the second preset error, the new adaptive safety centerline position is corrected.
[0110] This application detects cumulative error and corrects it when the cumulative error exceeds a threshold, thereby improving control accuracy.
[0111] For example, the first preset error can be 5 degrees.
[0112] The target robot performs backward navigation based on the fused orientation angle, adaptive safe centerline position, and backward speed. The real-time cost map is continuously updated for local obstacle avoidance. During the backward movement, the robot records its position, attitude, adaptive safe centerline position, concave variables of the left and right side walls, positions of the left and right side walls, and actual available width in real time at each moment, and adds these data to the historical map.
[0113] If there is a record of forward movement at this location, the information from the forward and backward observations is compared and integrated. This serves two purposes: firstly, the consistency of the two independent observations verifies data reliability (if the difference is large, a threshold can be set; if the difference exceeds this threshold, an alarm is triggered and operation immediately stops); secondly, it detects and corrects accumulated odometry errors, making positioning more accurate. Thus, when the target robot retreats to the carriage door and enters the completely blind retreat phase, the historical data relied upon has undergone double confirmation from both forward and backward movements, resulting in higher quality and stronger reliability, ensuring the target robot can safely and accurately exit the carriage. When a door frame feature is detected during the retreat, the odometry is reset using the door frame position to eliminate accumulated errors (because there are abrupt changes in depth at the carriage door, making it relatively easy to detect; this is equivalent to providing a precise location when the door frame is seen again). This retreat operation is repeated until the target robot retreats to the carriage door, at which point both the front and rear cameras of the target robot are disabled. At this point, the system enters blind retreat mode, constructing a virtual cost map based on historical data for obstacle avoidance and path planning. In terms of reverse speed control, a low reverse speed of 0.1-0.15 meters per second is adopted during the blind reverse phase. This ensures safety while avoiding track slippage and idling due to excessively low speed, which could cause odometer inaccuracy. During the blind reverse phase, odometer integration positioning is mainly relied upon. Once the odometer determines that the robot has completely exited the vehicle and the IMU attitude is stable, the reverse movement stops, and the target robot successfully exits the vehicle, completing the entire loading operation.
[0114] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0115] The following are device embodiments of the present invention. For details not described in detail, please refer to the corresponding method embodiments described above.
[0116] Figure 2 A schematic diagram of the loading robot control device provided in an embodiment of the present invention is shown. For ease of explanation, only the parts related to the embodiment of the present invention are shown, and are described in detail below:
[0117] like Figure 2 As shown, the loading robot control device includes:
[0118] Forward module 2121, used when the target robot is in the forward phase:
[0119] 1. Acquire the first depth image detected by the front depth camera of the target robot in real time, and determine the real-time orientation angle based on the first depth image;
[0120] 2. Calculate the difference between the real-time direction angle and the reference direction angle, and adaptively determine the target direction angle based on the difference;
[0121] 3. Based on the first depth image, determine the concave deformation of the left side wall, and determine the adaptive safety centerline position based on the concave deformation of the left side wall;
[0122] 4. Control the target robot to move forward based on the target orientation angle and the adaptive safety centerline position.
[0123] In one possible implementation, the forward module 2121 can be specifically used for:
[0124] (1) If the absolute value of the difference is less than the first preset angle, the target direction angle is determined by combining the real-time direction angle and the reference direction angle with the first formula;
[0125] (2) If the absolute value of the difference is not less than the first preset angle and less than the second preset angle, then the target direction angle is determined by combining the real-time direction angle and the reference direction angle with the second formula;
[0126] (3) If the absolute value of the difference is not less than the second preset angle, then the reference direction angle shall be taken as the target direction angle;
[0127] The first formula may include:
[0128]
[0129] The second formula may include:
[0130]
[0131] in, The target direction angle, This is the real-time direction angle. This is the reference direction angle.
[0132] In one possible implementation, the forward module 2121 can also be specifically used for:
[0133] (4) Obtain the actual available width at the current moment;
[0134] (5) The adaptive safety centerline position is calculated based on the actual available width at the current moment, the concave variable of the left side wall and the position of the left side wall, combined with the third formula;
[0135] The third formula may include:
[0136]
[0137] in, To adapt to the safe centerline position, This is the location of the left side wall. The variable is the concave shape of the left side wall. For safety margin, This represents the actual available width at the current moment.
[0138] In one possible implementation, the forward module 2121 can also be specifically used for:
[0139] (6) Obtain the concave variables of the left and right side walls at the previous time and each time before the previous time. Take the maximum value of each concave variable of the left side wall as the maximum deformation of the left side wall at the previous time, and take the maximum value of each concave variable of the right side wall as the maximum deformation of the right side wall at the previous time.
[0140] (7) The actual available width at the current moment is calculated based on the width of the carriage, the maximum deformation of the left carriage wall at the previous moment and the maximum deformation of the right carriage wall at the previous moment, combined with the fourth formula.
[0141] The fourth formula may include:
[0142]
[0143] in, For the width of the carriage, and These are the maximum deformation of the left side wall and the maximum deformation of the right side wall at the previous moment, respectively.
[0144] In one possible implementation, the above-described apparatus may further include:
[0145] Pre-alignment module 21 is used when the target robot starts working:
[0146] 1. Obtain the third depth image detected by the front-end depth camera;
[0147] 2. Based on the third depth image, determine the straight lines on both sides of the edge and the concave variables on both sides of the door frame;
[0148] 3. Determine the initial safe centerline position based on the straight lines on both sides and the concave deformation on both sides of the door frame, and control the target robot to move to the initial safe centerline position to achieve pre-alignment.
[0149] In one possible implementation, the pre-alignment module 21 can also be used for:
[0150] 4. Determine the plane equation of the door frame based on the straight lines on both sides;
[0151] 5. Determine the normal vector of the door frame plane based on the door frame plane equation, and obtain the reference direction angle based on the normal vector.
[0152] In one possible implementation, the above-described apparatus may further include:
[0153] Backward module 23 is used when the target robot is in the backward phase:
[0154] 1. Acquire the second depth image detected by the depth camera at the back end of the target robot in real time, and determine the target orientation angle and the position of the adaptive safety centerline based on the second depth image;
[0155] 2. Real-time detection of the distance between the rear end of the target robot and the carriage door;
[0156] 3. Update the target direction angle and the adaptive safety centerline position based on the distance to obtain the new target direction angle and the new adaptive safety centerline position.
[0157] In one possible implementation, the back-off module 23 can be specifically used for:
[0158] (1) When the distance is greater than the first preset distance, the target direction angle and the historical target direction angle of the current position are weighted and summed using the first weighting coefficient to obtain the new target direction angle, and the adaptive safety centerline position and the historical adaptive safety centerline position of the current position are weighted and summed using the first weighting coefficient to obtain the new adaptive safety centerline position;
[0159] (2) When the distance is not greater than the first preset distance and not less than the second preset distance, the target direction angle and the historical target direction angle of the current position are weighted and summed using the second weighting coefficient to obtain the new target direction angle, and the adaptive safety centerline position and the historical adaptive safety centerline position of the current position are weighted and summed using the second weighting coefficient to obtain the new adaptive safety centerline position;
[0160] (3) When the distance is less than the second preset distance, the historical adaptive safety centerline position of the current position is taken as the new adaptive safety centerline position, and the reference direction angle is taken as the new target direction angle.
[0161] In one possible implementation, the back-off module 23 can also be specifically used for:
[0162] (4) Calculate the first cumulative error between the target orientation angle at each location and the historical target orientation angle in real time;
[0163] (5) When the first cumulative error is greater than the first preset error, the new target orientation angle is corrected;
[0164] (6) Calculate the second cumulative error between the adaptive safety centerline position and the historical adaptive safety centerline position at each location in real time;
[0165] (7) When the second cumulative error is greater than the second preset error, the new adaptive safety centerline position is corrected.
[0166] Figure 3 This is a schematic diagram of the loading robot provided in an embodiment of the present invention. Figure 3 As shown, the loading robot 3 in this embodiment includes a processor 30 and a memory 31. The memory 31 stores a computer program 32. When the processor 30 executes the computer program 32, it implements the steps in the various method embodiments described above. Alternatively, when the processor 30 executes the computer program 32, it implements the functions of each module / unit in the various device embodiments described above.
[0167] For example, computer program 32 can be divided into one or more modules / units, which are stored in memory 31 and executed by processor 30 to complete the present invention. The one or more modules / units can be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of computer program 32 in loading robot 3.
[0168] The loading robot 3 may include, but is not limited to, a processor 30 and a memory 31. Those skilled in the art will understand that... Figure 3 This is merely an example of the loading robot 3 and does not constitute a limitation on the loading robot 3. It may include more or fewer parts than shown, or combine certain parts, or different parts. For example, the loading robot 3 may also include input / output devices, network access devices, buses, etc.
[0169] The processor 30 can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.
[0170] The memory 31 can be an internal storage unit of the loading robot 3, such as a hard drive or RAM. The memory 31 can also be an external storage device of the loading robot 3, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or FlashCard. Furthermore, the memory 31 can include both internal and external storage units of the loading robot 3. The memory 31 is used to store the computer program 32 and other programs and data required by the loading robot 3. The memory 31 can also be used to temporarily store data that has been output or will be output.
[0171] For the sake of simplicity and clarity, only the above-described functional modules / units are used as examples. In practical applications, the functions described above can be assigned to different functional modules / units as needed. These modules / units can be implemented in hardware, software, or a combination of both.
[0172] This invention also provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it implements the methods described in the above-described method embodiments.
[0173] This invention also provides a computer program product, including a computer program. When the computer program is executed by a processor, it implements the methods described in the above-described method embodiments.
[0174] Computer programs include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. Computer-readable media can include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.
[0175] In the above embodiments, the descriptions of each embodiment have their own emphasis. Parts not detailed or described in a particular embodiment can be referred to in the relevant descriptions of other embodiments. Unless otherwise specified or in conflict with logic, the terminology and / or descriptions between different embodiments are consistent and can be referenced interchangeably. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0176] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.
Claims
1. A control method for a loading robot, characterized in that, include: When the target robot is in the forward movement phase: The first depth image detected by the front depth camera of the target robot is acquired in real time, and the real-time orientation angle is determined based on the first depth image; Calculate the difference between the real-time orientation angle and the reference orientation angle, and adaptively determine the target orientation angle based on the difference; Based on the first depth image, the concave shape variable of the left side panel wall is determined, and the adaptive safety centerline position is determined based on the concave shape variable of the left side panel wall. The target robot is controlled to move forward based on the target orientation angle and the adaptive safety centerline position; The step of determining the adaptive safety centerline position based on the concave deformation of the left side wall includes: Get the actual available width at the current moment; The adaptive safety centerline position is calculated based on the actual available width at the current moment, the concave variable of the left side wall, and the position of the left side wall, combined with the third formula. The third formula includes: in, The adaptive safety centerline position is... The location of the left side wall, The concave deformation of the left side wall is the variable. For safety margin, The actual available width at the current moment.
2. The loading robot control method according to claim 1, characterized in that, The step of adaptively determining the target orientation angle based on the difference includes: If the absolute value of the difference is less than the first preset angle, the target direction angle is determined based on the real-time direction angle and the reference direction angle combined with the first formula. If the absolute value of the difference is not less than the first preset angle and less than the second preset angle, then the target direction angle is determined based on the real-time direction angle and the reference direction angle combined with the second formula. If the absolute value of the difference is not less than the second preset angle, then the reference direction angle is taken as the target direction angle; The first formula includes: The second formula includes: in, The target direction angle, The real-time orientation angle, The reference direction angle is denoted as .
3. The loading robot control method according to claim 1, characterized in that, The method further includes: Obtain the concave deformation variables of the left and right side walls at the previous time and each time before the previous time. Take the maximum value among the concave deformation variables of the left side walls as the maximum deformation variable of the left side walls at the previous time, and take the maximum value among the concave deformation variables of the right side walls as the maximum deformation variable of the right side walls at the previous time. The actual usable width at the current moment is calculated based on the width of the carriage, the maximum deformation of the left carriage wall at the previous moment, and the maximum deformation of the right carriage wall at the previous moment, combined with the fourth formula. The fourth formula includes: in, The width of the carriage is... and These are the maximum deformation of the left side wall and the maximum deformation of the right side wall at the previous moment, respectively.
4. The loading robot control method according to any one of claims 1 to 3, characterized in that, The method further includes: When the target robot starts working: Acquire the third depth image detected by the front-end depth camera; Based on the third depth image, determine the straight lines on both sides of the edge and the concave deformation on both sides of the door frame; Based on the straight lines of the two side edges and the concave deformation of the two sides of the door frame, the initial safety centerline position is determined, and the target robot is controlled to move to the initial safety centerline position to achieve pre-alignment.
5. The loading robot control method according to claim 4, characterized in that, The method further includes: Determine the plane equation of the door frame based on the straight lines of the two side edges; The normal vector of the door frame plane is determined based on the equation of the door frame plane, and the reference direction angle is obtained based on the normal vector.
6. The loading robot control method according to any one of claims 1 to 3, characterized in that, The method further includes: When the target robot is in the backward phase: The second depth image detected by the rear depth camera of the target robot is acquired in real time, and the target orientation angle and the position of the adaptive safety centerline are determined based on the second depth image. Real-time detection of the distance between the rear end of the target robot and the carriage door; The target orientation angle and the adaptive safety centerline position are updated based on the distance to obtain a new target orientation angle and a new adaptive safety centerline position.
7. The loading robot control method according to claim 6, characterized in that, The step of updating the target orientation angle and the adaptive safety centerline position based on the distance to obtain a new target orientation angle and a new adaptive safety centerline position includes: When the distance is greater than the first preset distance, the target direction angle and the historical target direction angle of the current position are weighted and summed using the first weighting coefficient to obtain the new target direction angle, and the adaptive safety centerline position and the historical adaptive safety centerline position of the current position are weighted and summed using the first weighting coefficient to obtain the new adaptive safety centerline position. When the distance is not greater than the first preset distance and not less than the second preset distance, the target direction angle and the historical target direction angle of the current position are weighted and summed using the second weighting coefficient to obtain the new target direction angle, and the adaptive safety centerline position and the historical adaptive safety centerline position of the current position are weighted and summed using the second weighting coefficient to obtain the new adaptive safety centerline position. When the distance is less than the second preset distance, the historical adaptive safety centerline position of the current position is used as the new adaptive safety centerline position, and the reference direction angle is used as the new target direction angle.
8. The loading robot control method according to claim 7, characterized in that, The step of updating the target orientation angle and the adaptive safety centerline position based on the distance to obtain a new target orientation angle and a new adaptive safety centerline position further includes: Calculate the first cumulative error between the target orientation angle at each location and the historical target orientation angle in real time; When the first accumulated error is greater than the first preset error, the new target orientation angle is corrected; The second cumulative error between the adaptive safety centerline position and the historical adaptive safety centerline position at each location is calculated in real time. When the second cumulative error is greater than the second preset error, the new adaptive safety centerline position is corrected.
9. A loading robot, characterized in that, It includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the loading robot control method as described in any one of claims 1 to 8.