Robot navigation method, robot navigation device, electronic equipment and storage medium
By constructing a local grid map in the logistics sorting scenario and combining it with global local positioning technology, the problem of inaccurate robot navigation was solved, enabling the robot to complete tasks with high accuracy in logistics scenarios.
Patent Information
- Application Number
- CN202511591213.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-31
- Publication Date
- 2026-02-24
AI Technical Summary
In logistics scenarios, robots may experience inaccurate navigation due to the target being invisible or its location changing on the map, which affects the accuracy of task completion.
By acquiring target task data from logistics sorting scenarios, a local grid map is constructed to determine the relative position of the target location. The robot's movement is controlled based on the local grid path. By combining global and local positioning technologies, the robot can be ensured to accurately reach the target location.
It improves the accuracy of robot navigation, ensures the accuracy of task completion, and solves the navigation error problem caused by invisible or changing targets.
Smart Images

Figure CN121558013A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of logistics equipment control technology, and in particular to a robot navigation method, a robot navigation device, an electronic device, and a storage medium. Background Technology
[0002] Robot navigation is the core capability for robots to achieve autonomous movement. It refers to the process by which a robot, in a complex environment, perceives its surroundings, determines its own position, plans the optimal path, and executes movement to safely and efficiently move from its starting point to its destination. In the logistics sorting process, by controlling a robot to move to the target location, tasks such as picking up, scanning, delivering, transporting, and exchanging boxes can be accomplished. For example, a robot can move boxes full of sorting cabinet slots to a shelf to perform the task of exchanging boxes.
[0003] However, due to the movement of robots across areas or the movement of target locations, the target (such as sorting cabinets) may become invisible or its location on the map may change, making it impossible to distinguish the target location. This makes it impossible to accurately navigate the robot, which in turn affects the accuracy of the robot in completing tasks in logistics scenarios. Summary of the Invention
[0004] The main objective of this application is to propose a robot navigation method, robot navigation device, electronic device, and storage medium, which can improve the accuracy of robot navigation and thus improve the accuracy of robot task completion in logistics scenarios.
[0005] To achieve the above objectives, a first aspect of this application proposes a robot navigation method, which includes: acquiring target task data of a target task in a logistics sorting scenario, and controlling a target robot to move to a target robot position based on the target task data, wherein the target task data includes a target position and a target landmark model associated with the target position, and the target robot position is the position of the target landmark model that the target robot can observe; constructing a local grid map corresponding to the target task based on the target robot position, and determining a first target relative position corresponding to the target position based on the local grid map, wherein the first target relative position is the position in the local grid map where the target robot can operate on the target task; constructing a local grid path based on the first target relative position, the target robot position, and the local grid map, wherein the local grid path is used to indicate the path trajectory of the target robot moving from the target robot position to the first target relative position; and controlling the target robot to move based on the local grid path.
[0006] To achieve the above objectives, a second aspect of this application provides a robot navigation device, comprising: an acquisition module, configured to acquire target task data of a target task in a logistics sorting scenario, and control a target robot to move to a target robot position based on the target task data, wherein the target task data includes a target position and a target landmark model associated with the target position, and the target robot position is the position where the target robot can observe the target landmark model; a position determination module, configured to construct a local grid map corresponding to the target task based on the target robot position, and determine a first target relative position corresponding to the target position based on the local grid map, wherein the first target relative position is the position in the local grid map where the target robot can operate on the target task; a path construction module, configured to construct a local grid path based on the first target relative position, the target robot position, and the local grid map, wherein the local grid path is used to indicate the path trajectory of the target robot moving from the target robot position to the first target relative position; and a movement module, configured to control the target robot to move based on the local grid path.
[0007] To achieve the above objectives, a third aspect of the present application provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the method described in any one of the embodiments of the first aspect.
[0008] To achieve the above objectives, a fourth aspect of the present application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in any one of the embodiments of the first aspect.
[0009] The robot navigation method, robot navigation device, electronic device, and storage medium proposed in this application, when navigating a robot in a logistics sorting scenario, can first acquire target task data of the target task in the logistics sorting scenario, and control the target robot to move to the target robot position based on the target task data. At this point, the target robot's position is a position where the target landmark model can be observed. Under this condition, a local mesh map corresponding to the target task can be constructed based on the target robot's position, and a first target relative position corresponding to the target position can be determined based on the local mesh map to ensure that the robot can operate on the target task. Furthermore, a local mesh path is constructed based on the first target relative position, the target robot position, and the local mesh map to guide the target robot to reach the target position more accurately, thereby performing the operation on the target task. Therefore, this application embodiment can determine the movement trajectory of the target robot while ensuring the visibility of the target landmark model associated with the target position, which can better improve the accuracy of robot navigation, thereby improving the accuracy of robot task completion in logistics scenarios. Attached Figure Description
[0010] Figure 1 This is a first flowchart of the robot navigation method provided in the embodiments of this application; Figure 2 This is a flowchart illustrating the control of a target robot to move to a target robot position, as provided in an embodiment of this application. Figure 3 This is a flowchart provided in an embodiment of the present application for data matching between current landmark feature data and target landmark model; Figure 4 yes Figure 2 A flowchart of step S230 in the process; Figure 5 This is a flowchart illustrating the control of a target robot's movement based on a global grid path, provided in an embodiment of this application. Figure 6 This is a flowchart illustrating the updating of the current robot position provided in an embodiment of this application; Figure 7 This is a flowchart illustrating a control target robot performing a task, as provided in an embodiment of this application. Figure 8 This is a schematic diagram of an algorithm process for a robot navigation method provided in an embodiment of this application; Figure 9 This is a schematic diagram of a robot navigation device provided in an embodiment of this application; Figure 10 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0011] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0012] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., used in the specification, claims, and the foregoing drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0013] First, let's analyze some of the terms used in this application: Landmark models are key models used for precise positioning, path planning, and navigation in logistics scenarios. They refer to fixed or semi-fixed objects in the logistics environment that have unique identifiers, stable characteristics, and can be identified by sensors (such as LiDAR, cameras, IMUs, etc.), such as shelves and sorting cabinets. These objects serve as "reference points" in the environment, helping logistics equipment such as robots, automated guided vehicles (AGVs), and delivery vehicles determine their own positions, plan optimal paths, and avoid dynamic obstacles. They are one of the core infrastructures of autonomous navigation systems in logistics.
[0014] Flat items: This refers to a general term for "small and thin" items in logistics scenarios, specifically including: documents and invoices (such as contracts and invoices), materials (such as books and archives), certificates (such as ID cards and passports), cards, etc. In practice, these items are usually packaged in document envelopes (such as courier bags and envelopes) for easy sorting and transportation.
[0015] In logistics company operations, flat items are often bundled and transported with other small items, frequently resulting in wrinkles, punctures, tears, moisture damage, and soiling, leading to customer complaints and claims. Therefore, separately packaging flat items throughout the entire process can effectively address these issues, but additional personnel are required for the sorting stage. Since the sorting process involves picking up, scanning, delivering, transporting, and replacing boxes, traditional robotic arms struggle to meet the requirements of flexible production. With the emergence of humanoid robots, their mobility, precision manipulation capabilities, and multi-degree-of-freedom control perfectly match the requirements of this scenario.
[0016] Robot navigation is the core capability for robots to achieve autonomous movement. It refers to the process by which a robot, in a complex environment, perceives its surroundings, determines its own position, plans the optimal path, and executes movement to safely and efficiently move from its starting point to its destination. In the logistics sorting process, by controlling a robot to move to the target location, tasks such as picking up, scanning, delivering, transporting, and exchanging boxes can be accomplished. For example, a robot can move boxes full of sorting cabinet slots to a shelf to perform the task of exchanging boxes.
[0017] However, within logistics sorting transfer areas, the movement of robots across areas or the movement of targets can lead to situations where targets (such as sorting cabinets) become invisible, their map positions change, or repetitive targets (multiple sorting cabinet layouts) cause the destination to be indistinguishable (i.e., target identification alone cannot determine whether it is a navigation target). Specifically, the invisibility of a target (such as a sorting cabinet) means that when a robot moves from one area to another, the sorting cabinet may be too far away, have an angular deviation, or be obstructed by shelves, equipment, personnel, or other obstacles, exceeding the effective detection range of the robot's sensors (e.g., the effective detection range of LiDAR is generally 20-50 meters, and the field of view of a vision camera is limited). In this case, the robot cannot obtain the real-time location information of the sorting cabinet, making the target invisible. The change in the target's map position means that because the maps of logistics sorting transfer areas need to be updated periodically (e.g., adding / removing shelves, adjusting sorting cabinet positions), if the map is not updated with the latest environmental information before the robot moves across areas, the robot will search for the sorting cabinet according to the old map, causing the target's location to change. As a result, the robot navigation methods used in related technologies are prone to failing to navigate robots accurately, which in turn affects the accuracy of robot task completion in logistics scenarios.
[0018] Based on this, embodiments of this application provide a robot navigation method, a robot navigation device, an electronic device, and a storage medium, which can improve the accuracy of robot navigation, thereby improving the accuracy of robot task completion in logistics scenarios.
[0019] This application's embodiments can acquire and process relevant data based on artificial intelligence (AI) technology. AI is the theory, methods, technology, and application system that uses digital computers or computers-controlled machines to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results. Basic AI technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, big data processing technology, operating / interactive systems, and mechatronics. AI software technologies mainly include computer vision, robotics, biometrics, speech processing, natural language processing, and machine learning / deep learning.
[0020] The robot navigation method provided in this application relates to the field of logistics equipment control technology. The robot navigation method provided in this application can be applied to a terminal, a server, or software running on either a terminal or a server. In some embodiments, the terminal can be a smartphone, tablet, laptop, desktop computer, etc.; the server can be configured as an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms; the software can be an application implementing the robot navigation method, but is not limited to the above forms.
[0021] This application can be used in a wide variety of general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics devices, network personal computers (PCs), minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices. This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform specific tasks or implement specific abstract data types. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.
[0022] Please see Figure 1 , Figure 1 This is an optional flowchart of the robot navigation method provided in the embodiments of this application. In some embodiments of this application, Figure 1 The method described above is applied to logistics transportation equipment used to lift and move cargo-carrying equipment in a logistics scenario. Specifically, this method may include, but is not limited to, steps S110 to S140. The following section combines... Figure 1 These four steps will be explained in detail.
[0023] Step S110: Obtain the target task data of the target task in the logistics sorting scenario, and control the target robot to move to the target robot position according to the target task data; Step S120: Construct a local mesh map corresponding to the target task based on the target robot's position, and determine the first target relative position corresponding to the target position based on the local mesh map; Step S130: Construct a local mesh path based on the relative position of the first target, the position of the target robot, and the local mesh map; Step S140: Control the target robot to move according to the local grid path.
[0024] In step S110 of some embodiments, the logistics sorting scenario refers to the operational environment in the logistics industry where packages and express parcels are classified and allocated. It typically includes elements such as conveying equipment, sorting devices, and robots, and is the physical space where the robot performs its tasks. The target task refers to the specific task that needs to be completed in logistics sorting (such as moving a package from the sorting entrance to a designated slot in the sorting cabinet, moving a full box from the sorting cabinet slot to a shelf, or moving an empty box from the shelf to the corresponding sorting cabinet slot for subsequent transportation), and is the trigger for the robot's actions. Target task data refers to structured information related to the target task, including the target location and the target landmark model associated with the target location. The target location refers to the final location that the target robot needs to reach to perform the target task, such as the coordinates of the sorting slot or the shelf. The target landmark model refers to fixed reference objects around the target location used for positioning, such as shelf CAD, sorting cabinet CAD, ground QR codes, and markers of specific colors. A target robot refers to a robot that performs sorting tasks (such as AGVs, collaborative robots, humanoid robots, etc.) and has autonomous navigation, localization, and environmental perception capabilities. The target robot position refers to any position of the target landmark model that the robot can observe in the logistics scenario. It is the starting point for the robot to perform subsequent operations and must meet the condition of "observable" (such as the landmark model being within the robot's sensor field of view).
[0025] It should be noted that, in this embodiment, an open-source radar camera calibration scheme can be used to calibrate the sensor extrinsic parameters of the target robot. Then, an open-source LIO can be used to construct a scene map corresponding to the logistics sorting scenario. Based on this scene map, the positions of structures such as sorting cabinets and shelves in the scene relative to the scene map are marked to obtain an offline grid map (static map) of the logistics sorting scenario. In addition, this application can also mark the relative positions of the operation station and sorting cabinet slot information in the coordinate system based on the coordinate system of the sorting cabinet and shelf.
[0026] It should be noted that the target robot can scan the surrounding environment using its onboard LiDAR to determine whether it can identify the location of the target landmark model (e.g., the coordinates of the red triangle marker are X=10.2m and Y=5.1m).
[0027] The robot control system can calculate the optimal movement path (e.g., moving 2m along the positive X-axis, then 0.1m along the positive Y-axis) based on the target robot's current position (e.g., currently at X=8m, Y=4m) and the position of the target landmark model. The robot is then driven by motors to move along this path to the target robot's location. Once the robot reaches the target location, the position of the target landmark model can be reconfirmed using the target robot's sensors (e.g., a vision camera) (e.g., the red triangle marker is in the center of the robot's field of vision), verifying whether the "observable" condition is met.
[0028] It should be noted that the embodiments of this application include two localization processes when navigating the robot. The first is to control the target robot to move to its current position, which is equivalent to coarse localization, allowing the target robot to observe the target landmark model corresponding to the target position. The second is to control the target robot to move from its current position to the target position, enabling the target robot to perform the target task, which is fine localization based on the target robot's current position. In this way, this application can better achieve fine-tuning of the robot's position when it cannot complete the action due to localization errors, achieve accurate matching between the robot's position and the target task, and improve the accuracy of robot navigation.
[0029] Please refer to Figure 2 , Figure 2 This is a flowchart illustrating the process of controlling a target robot to move to a target robot position, as provided in an embodiment of this application. In some embodiments, the specific process of controlling the target robot to move to the target robot position may include, but is not limited to, steps S210 to S230, which are described below in conjunction with... Figure 2 These three steps will be explained in detail.
[0030] Step S210: Obtain the current robot position of the target robot and the current landmark feature data identified by the target robot at the current robot position; Step S220: Perform data matching between the current landmark feature data and the target landmark model to obtain the data matching result; Step S230: Determine the target recognition status of the target robot based on the data matching results, and control the target robot to move to the target robot position based on the target recognition status and the current robot position.
[0031] In step S210 of some embodiments, the current robot position refers to the specific coordinates of the target robot in the logistics scenario, which are acquired in real time by the target robot through its own sensors (such as LiDAR, odometer, and vision camera). The current landmark feature data refers to the surrounding environmental features (such as the pattern of the QR code on the ground, the wheel features of the shelf, the outline features of the sorting cabinet, etc.) identified by the target robot at its current position through sensors, which are used to match with the target landmark model to verify the robot position or assist in localization.
[0032] In step S220 of some embodiments, data matching refers to comparing the first landmark feature data (currently identified landmark features) with the target landmark model (pre-stored landmark features) using algorithms such as feature point matching, shape similarity calculation, and encoding information verification to determine whether the two are consistent. In this application embodiment, it can first determine whether the target robot can observe the target landmark model. After the target becomes visible, dynamic mapping and localization are used to identify the target's position relative to the robot, guiding the robot closer to achieve accurate task execution.
[0033] Please refer to Figure 3 , Figure 3 This is a flowchart illustrating data matching between current landmark feature data and a target landmark model, provided in an embodiment of this application. In some embodiments, the specific process of data matching between current landmark feature data and a target landmark model may include, but is not limited to, steps S310 to S320, as described below. Figure 3 These two steps will be explained in detail.
[0034] Step S310: Extract target point cloud data from the target landmark model and extract landmark point cloud data from the current landmark feature data; Step S320: Perform point cloud data matching based on the target point cloud data and the landmark point cloud data to obtain the data matching result.
[0035] In steps S310 and S320 of some embodiments, the target point cloud data refers to a set of three-dimensional point clouds extracted from the target landmark model (such as the vertex coordinates of the red triangle markers, the border point cloud of the shelf number plate, etc.), which is a digital representation of the model and is used to match the current landmark feature data. The current landmark point cloud data refers to the real-time three-dimensional point cloud corresponding to the target landmark extracted from the current landmark feature data (such as the point cloud of the red triangle markers scanned by the robot in real time, the real-time contour point cloud of the shelf number plate), which is the current state of the target landmark perceived by the robot. Specifically, this application can align the target point cloud data (the reference point cloud of the target landmark model) with the landmark point cloud data (the target landmark point cloud perceived by the robot in real time), calculate the spatial transformation relationship between the two (such as translation, rotation, scaling), and determine whether the two match (such as whether the positional deviation is within the allowable range). Data matching results refer to the output results after point cloud matching, which may include matching scores (such as similarity and error values, reflecting the accuracy of matching), transformation matrices (such as rotation matrices and translation vectors, describing the spatial transformation from the target point cloud to the landmark point cloud), or matching status (such as successful matching or failed matching, used for subsequent decision-making).
[0036] It should be noted that this application can employ either 2D or 3D data matching methods when determining the relative position between the target robot and the target calibration model. The target landmark model is analogous to a salient target in a logistics sorting scenario, aiding the target robot in achieving coarse localization (i.e., static localization). The 2D matching method utilizes RGBD camera data collected by the target robot to identify shelf feature points (such as outer contours and grid openings), using the shelf front as a calibration board (where the physical distances of key points are known), iteratively optimizing the 6D pose to determine the data matching result. The 3D matching method involves extracting point cloud data from a pre-acquired shelf CAD (i.e., the target landmark model) to obtain target point cloud data, then performing point cloud matching with the landmark point cloud data extracted from the current landmark feature data identified by the RGBD camera to determine the data matching result.
[0037] In step S230 of some embodiments, the target recognition status refers to the recognition status of the target robot on the target landmark model, as determined by the data matching results. The target recognition status can include successful recognition and failed recognition. Successful recognition means that the target landmark model can be observed from the current position of the target robot, while failed recognition means that the target landmark model cannot be observed from the current position of the target robot.
[0038] It should be noted that after determining the target recognition status, this application can control the target robot to move to the target robot position based on the target recognition status and the current robot position. Specifically, when the target recognition status is successful, the current position of the target robot can be used as the target robot position. When target recognition fails, the target robot can be controlled to move to the target robot position through dynamic positioning. This application's embodiments can quickly determine whether the robot position is correct based on the data matching results, avoiding invalid movements, such as the robot continuing to move even after reaching the target position; if recognition fails, the path can be replanned and adjusted to ensure the robot accurately reaches the target position, improving the reliability of task execution.
[0039] Please refer to Figure 4 , Figure 4 This is a flowchart of step S230 provided in an embodiment of this application. In some embodiments, the specific process of step S230 may include, but is not limited to, steps S410 to S440, as described below. Figure 4 These four steps will be explained in detail.
[0040] Step S410: When the target recognition status indicates that the target robot cannot observe the target landmark model, obtain an offline grid map of the logistics sorting scenario; Step S420: Determine the relative position of the second target corresponding to the target position based on the offline grid map; Step S430: Construct a global grid path based on the current robot position, the relative position of the second target, and the offline grid map; Step S440: Control the movement of the target robot according to the global grid path, and take the path position of the observable target landmark model during the movement as the target robot position.
[0041] In step S410 of some embodiments, when the target recognition status indicates that the target robot cannot observe the target landmark model, i.e., the target recognition status is a recognition failure, the current logistics sorting scenario can be regarded as a relatively static scenario (i.e., the "salient target" will not move in the scenario), and the salient target can be attempted to be located by combining an offline grid map. If the location is successful, the relative position planning is performed using an online map; otherwise, the planning is performed according to the offline grid map until the salient target is located, and then the relative position planning is performed using the online map. In other words, this application can use an offline grid map for navigation when the target landmark model cannot be located.
[0042] In this context, the grid represents unknown, discrete data. To accelerate computation, positional values in continuous space can be transformed into discrete points on the grid map. An offline grid map refers to a pre-built global map stored locally on the robot or in the cloud. It divides the logistics sorting scenario into fixed-size grid units (e.g., 0.5m × 0.5m), with each grid labeled with attributes such as "accessible" (e.g., aisles), "obstacles" (e.g., shelves), and "target location" (e.g., sorting slots). This is used for robot path planning when real-time landmarks are unavailable; in this case, the offline grid map is built based on a standard coordinate system.
[0043] In step S420 of some embodiments, the second target relative position refers to the operable local coordinates of the target position relative to the target robot in the offline grid map (e.g., grid coordinates where the target position is 3m in front of the robot and 1m to the left). There may be an error between the second target relative position and the target position.
[0044] In step S430 of some embodiments, the current robot position refers to the current global grid coordinates estimated by the target robot using a reference point on the offline grid map or its last known position. The global grid path, composed of a series of continuous grid cells, indicates the optimal path trajectory for the target robot to move from its current position to a relative position to the second target. Specifically, after obtaining the position coordinates p_0 corresponding to the current robot position, it can be mapped onto the offline grid map to obtain the corresponding current robot grid position g_0. Then, the global grid path can be constructed.<g_0 ,..., g_N> Where p_0 is in grid g_0, the task marker position.<x, y> (This refers to the relative position of the second target) It falls within grid g_N and needs to avoid obstacle grids. It should be noted that the embodiments of this application construct a global grid path in order to discover the target landmark model in the offline grid map.
[0045] It should be noted that the embodiments of this application can also smooth the generated path (such as removing redundant turning points) to make the robot's movement smoother and reduce energy consumption and wear. For example, the path can be optimized from a "right-angle turn" to an "arc turn".
[0046] In step S440 of some embodiments, controlled movement refers to the process by which the robot control system sends motion commands (such as speed, direction, and acceleration) to the target robot according to the global grid path, adjusting the target robot's motion state (such as speed and direction) to make it move along the planned path. Observable target landmark model refers to the state of the target robot recognizing the target landmark model (such as a red triangle marker) through sensors (such as a vision camera or LiDAR). When the robot moves into the visible range of the target landmark model, a position update is triggered. That is, in this embodiment, when moving the target robot using the global grid path, a loop algorithm can be set to check in real time whether the current position can find the target landmark model. If found, autonomous fine-tuning mode navigation can be used (i.e., the process of adjusting position errors using a local grid map).
[0047] In the above embodiments, this application can use Simultaneous Localization and Mapping (SLAM) for coarse robot localization, outputting the robot's absolute position on a static map. When the scene is relatively static or salient targets are not visible, an attempt is made to locate the salient target. If the location is successful, relative position planning is performed using an online map; otherwise, planning is performed according to the static map until the salient target is located, and then relative position planning is performed using an online map. In this way, the problems that may arise in logistics transfer centers, where robot movement across areas or target movement may cause targets (such as sorting cabinets) to become invisible or their map positions to change; or where repetitive targets (multiple sorting cabinet layouts) may make it impossible to distinguish the destination (target identification alone cannot determine whether it is a navigation target) can be obtained.
[0048] Please refer to Figure 5 , Figure 5 This is a flowchart illustrating the control of a target robot's movement based on a global grid path, provided in an embodiment of this application. In some embodiments, the specific process of controlling the target robot's movement based on a global grid path may include, but is not limited to, steps S510 to S540, as described below. Figure 5 These four steps will be explained in detail.
[0049] Step S510: Obtain the first real-time movement position of the target robot according to the global grid path; Step S520: When the first real-time moving position does not belong to the path position contained in the global grid path, update the current robot position according to the global grid path; Step S530: Construct a path based on the updated current robot position, the relative position of the second target, and the offline grid map, and update the global grid path; Step S540: Control the movement of the target robot according to the updated global grid path.
[0050] In step S510 of some embodiments, the first real-time movement position refers to the real-time changing position of the target robot as it moves along the global grid path. This position can be acquired in real time by sensors such as LiDAR and odometry. Specifically, this application can use a SLAM (Simultaneous Localization and Mapping) algorithm to fuse sensor data and calculate the robot's first real-time movement position (i.e., its coordinates in the coordinate system of the offline grid map). For example, the odometry provides a preliminary displacement estimate, and the LiDAR corrects for errors caused by wheel slippage, resulting in a precise real-time position.
[0051] In step S520 of some embodiments, when the first real-time movement position does not belong to a path position included in the global grid path, that is, when the path currently taken by the target robot deviates from the set global grid path, the embodiments of this application can perform path correction by updating the current robot position according to the global grid path to ensure the accuracy of path execution. In this way, the present application can adjust the real-time position of the target robot (such as correcting deviations or repositioning) through the constraints of the global grid path, so that it returns to the correct path.
[0052] Please refer to Figure 6 , Figure 6 This is a flowchart illustrating the updating of the current robot position according to an embodiment of this application. In some embodiments, the specific process of updating the current robot position may include, but is not limited to, steps S610 to S620, as described below. Figure 6 These two steps will be explained in detail.
[0053] Step S610: Obtain the end position of the path from the global grid path; Step S620: Update the current robot position based on the end position of the path.
[0054] In steps S610 and S620 of some embodiments, the path end position refers to the center coordinates of the last grid cell of the global grid path, representing the final position the robot needs to reach. In this embodiment, when performing path position correction, the path end position can be used as the new current robot position to correct position deviations caused by sensor errors and environmental interference, ensuring the robot's position aligns with the target path.
[0055] In steps S530 and S540 of some embodiments, similar to step S430 described above, this application can further recalculate the global grid path based on the updated current robot position, the relative position of the second target, and the offline grid map. The newly constructed path replaces the original global grid path, avoiding deviations from the path or collisions with obstacles, ensuring the real-time performance and accuracy of the path, thereby better adapting to dynamic changes in logistics scenarios. Furthermore, this application can re-control the target robot to move based on the updated global grid path.
[0056] In step S120 of some embodiments, the local mesh map refers to a gridded environment model centered on the target robot's position (which can be the origin of the coordinate system) and covering the area surrounding the target position. It includes the location information of obstacles (such as shelves or equipment), passable areas (such as passageways), and landmark models, and serves as a local environmental representation for the robot's path planning. The first target relative position refers to the local coordinates of the target position relative to the target robot's position. It is the reference position for the robot to perform operations in the local mesh map and must satisfy the requirement of being "operable" (e.g., the robot arm can reach the target position).
[0057] It should be noted that after a salient target becomes visible (i.e., the target robot is located at the position of an observable landmark model), this application can implement a dynamic navigation mode by constructing a local mesh map. This can be used to fine-tune the position when the robot cannot complete a movement due to positioning errors. In other words, this application can use a long path (i.e., a global mesh path) as a basis and a short path (i.e., a local mesh path) for local obstacle avoidance. The short path must be constrained by the long path and cannot get lost due to obstacle avoidance.
[0058] In step S130 of some embodiments, the local mesh path refers to a sequence of mesh cells (e.g., a path from mesh (0,0) to mesh (4,1)) in a local mesh map from the target robot's position to the relative position of the first target. The local mesh path can indicate the specific trajectory of the target robot moving to the relative position of the first target, and must avoid obstacles. The method for generating the mesh path may include a heuristic algorithm.
[0059] In step S140 of some embodiments, after determining the local grid path, the robot control system of this application embodiment can send motion commands (such as speed, direction, and acceleration) to the target robot according to the local grid path, adjust the robot's motion state (such as speed and direction), and make it move along the planned path and execute the corresponding target task. Specifically, this application can use a closed-loop control algorithm (such as PID control) to adjust the robot's motion state in real time to ensure its movement along the local grid path.
[0060] Please refer to Figure 7 , Figure 7 This is a flowchart illustrating a control method for a target robot to perform a task, as provided in an embodiment of this application. In some embodiments, the specific process of updating the current robot position may include, but is not limited to, steps S710 to S730, which are described below in conjunction with... Figure 7 These three steps will be explained in detail.
[0061] Step S710: Obtain the second real-time movement position of the target robot based on the local grid path; Step S720: Obtain the positional distance difference between the second real-time moving position and the relative position of the first target; Step S730: When the position distance difference is less than a preset distance threshold, generate control instructions for the target robot based on the target task and the second real-time moving position, and control the target robot to execute the target task according to the control instructions.
[0062] In step S710 of some embodiments, the second real-time movement position refers to the actual position of the target robot as it moves along the local grid path (which can be acquired in real time by sensors). The second real-time movement position is the specific coordinate of the target robot in the local grid path, used to reflect the robot's real-time position state.
[0063] In step S720 of some embodiments, the position distance difference refers to the distance difference between the second real-time moving position and the relative position of the first target. It can reflect the gap between the current position of the target robot and the target position, and is used to determine whether it is necessary to continue moving. By quantitatively reflecting the gap between the robot's current position and the target position, this application can provide a numerical basis for subsequent judgment on whether it is necessary to continue moving, ensuring that the target robot can accurately determine whether it has reached the target position, and avoiding premature stopping or excessive movement due to subjective judgment.
[0064] In step S730 of some embodiments, the preset distance threshold refers to a pre-set allowable error range used to determine whether the robot has reached the target position. If the position distance difference is less than the threshold, it indicates that the robot has approached the target position and can perform the task; if it is greater than the threshold, it indicates that the robot needs to continue moving to adjust its position. The target task refers to the specific operation in the logistics sorting process (such as placing a package into the sorting slot, picking up goods from the shelf, etc.), which is the ultimate purpose of the robot's movement. The control command refers to the motion command sent by the robot control system to control the current execution action of the target robot, enabling the target robot to accurately execute the target task.
[0065] For example, such as Figure 8 As shown, Figure 8This is a schematic diagram of an algorithm process for a robot navigation method provided in an embodiment of this application. The embodiment achieves robot navigation through a combination of coarse localization (i.e., global localization) and fine localization. Specifically, the embodiment first inputs target task data based on upper-level task planning. This target task data includes the target location and a target landmark model associated with the target location. Simultaneously, the embodiment constructs an offline grid map using location information from a calibrated logistics sorting scenario and converts the corresponding location information to the corresponding grid position in the offline grid map. Further, the embodiment controls the target robot to move to its target location using coarse localization, i.e., first enabling the target robot to detect the target landmark model, and then fine-tuning the target robot's position using fine localization, allowing the target robot to reach the target location more accurately for corresponding operations on the target task. Thus, the embodiment first determines the target robot's navigation orientation in global localization through trajectory planning corresponding to the global grid path, and then determines the target robot's navigation orientation in local localization through trajectory planning corresponding to the local grid path.
[0066] The robot navigation method provided in this application combines global and local positioning to address issues in logistics sorting and transfer areas where the robot's movement across areas or the target's movement may lead to invisible targets (such as sorting cabinets), changes in the target's location on the map, or indistinguishable destinations due to repetitive targets (multiple sorting cabinet layouts) (target identification alone cannot determine whether it is a navigation target). This method better enables fine-tuning of the robot's position when it cannot complete actions due to positioning errors, achieving precise matching between the robot's position and the target task, improving the accuracy of robot navigation, and thus improving the accuracy of robot task completion in logistics scenarios.
[0067] Please see Figure 9 This application also provides a robot navigation device 900, which includes: The acquisition module 910 is used to acquire target task data of the target task in the logistics sorting scenario, and control the target robot to move to the target robot position according to the target task data. The target task data includes the target position and the target landmark model associated with the target position. The target robot position is the position of the target landmark model that the target robot can observe. The position determination module 920 is used to construct a local grid map corresponding to the target task based on the target robot's position, and determine the first target relative position corresponding to the target position according to the local grid map. The first target relative position is the position in the local grid map where the target robot can operate on the target task. The path construction module 930 is used to construct a local grid path based on the relative position of the first target, the position of the target robot, and the local grid map. The local grid path is used to indicate the path trajectory of the target robot moving from the target robot position to the relative position of the first target. The movement module 940 is used to control the movement of the target robot according to the local grid path.
[0068] It should be noted that the robot navigation device provided in this application embodiment is used to implement the robot navigation method provided in the above embodiment, and the specific implementation process corresponds to the robot navigation method in the above embodiment. It can be referred to the aforementioned robot navigation method, and will not be repeated here.
[0069] This application also provides an electronic device (i.e., a computer device), which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement any of the robot navigation methods described in the above embodiments. This electronic device can be any smart terminal, including tablet computers, in-vehicle computers, etc.
[0070] Please see Figure 10 , Figure 10 This illustration shows the hardware structure of an electronic device according to another embodiment, the electronic device comprising: The processor 1010 can be implemented using a general-purpose central processing unit (CPU), microprocessor, application specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this application. The memory 1020 can be implemented as a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM). The memory 1020 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1020 and is called and executed by the processor 1010 using the robot navigation method of the embodiments of this application. The input / output interface 1030 is used to implement information input and output; The communication interface 1040 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.). Bus 1050 transmits information between various components of the device (e.g., processor 1010, memory 1020, input / output interface 1030, and communication interface 1040); The processor 1010, memory 1020, input / output interface 1030 and communication interface 1040 are connected to each other within the device via bus 1050.
[0071] This application also provides a computer-readable storage medium storing a computer program for causing a computer to execute the robot navigation method described in the above embodiments.
[0072] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0073] This invention also provides a computer program product that stores program instructions, which, when executed by a computer, cause the computer to implement the robot navigation method described in any of the above embodiments.
[0074] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0075] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.
[0076] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0077] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.
[0078] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0079] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0080] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0081] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0082] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0083] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0084] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.
Claims
1. A robot navigation method, characterized in that, The method includes: Acquire target task data for a target task in a logistics sorting scenario, and control a target robot to move to a target robot position based on the target task data. The target task data includes a target position and a target landmark model associated with the target position. The target robot position is the position where the target robot can observe the target landmark model. Based on the target robot's location, a local grid map corresponding to the target task is constructed, and a first target relative position corresponding to the target location is determined according to the local grid map. The first target relative position is the position in the local grid map where the target robot can operate on the target task. A local grid path is constructed based on the first target relative position, the target robot position, and the local grid map. The local grid path is used to indicate the path trajectory of the target robot moving from the target robot position to the first target relative position. The target robot is moved according to the local grid path.
2. The method according to claim 1, characterized in that, The step of controlling the target robot to move to the target robot position based on the target task data includes: The current robot position of the target robot and the current landmark feature data identified by the target robot at the current robot position are obtained; The current landmark feature data and the target landmark model are matched to obtain the data matching result; The target recognition status of the target robot is determined based on the data matching results, and the target robot is controlled to move to the target robot position based on the target recognition status and the current robot position.
3. The method according to claim 2, characterized in that, The step of performing data matching between the current landmark feature data and the target landmark model to obtain the data matching result includes: Extract target point cloud data from the target landmark model, and extract landmark point cloud data from the current landmark feature data; Point cloud data matching is performed based on the target point cloud data and the landmark point cloud data to obtain the data matching result.
4. The method according to claim 2, characterized in that, The step of controlling the target robot to move to the target robot position based on the target recognition status and the current robot position includes: When the target recognition status indicates that the target robot cannot observe the target landmark model, an offline grid map of the logistics sorting scenario is obtained; The second relative position of the target is determined based on the offline grid map, and the second relative position of the target is the position in the offline grid map where the target robot can operate on the target task; A global grid path is constructed based on the current robot position, the relative position of the second target, and the offline grid map. The global grid path is used to indicate the path trajectory of the target robot as it moves from the current robot position to the relative position of the second target. The target robot moves according to the global grid path, and the path position of the target landmark model that can be observed during the movement is taken as the target robot's position.
5. The method according to claim 4, characterized in that, The step of controlling the movement of the target robot according to the global grid path includes: Obtain the first real-time position of the target robot as it moves according to the global grid path; When the first real-time moving position does not belong to the path position contained in the global grid path, the current robot position is updated according to the global grid path; Based on the updated current robot position, the relative position of the second target, and the offline grid map, a path is constructed, and the global grid path is updated. The target robot moves according to the updated global grid path.
6. The method according to claim 5, characterized in that, Updating the current robot position based on the global grid path includes: Obtain the end position of the path from the global grid path; The current robot position is updated based on the position at the end of the path.
7. The method according to any one of claims 1 to 6, characterized in that, After controlling the target robot to move according to the local mesh path, the method further includes: Obtain the second real-time movement position of the target robot based on the local grid path; Obtain the positional distance difference between the second real-time moving position and the relative position of the first target; When the difference in position distance is less than a preset distance threshold, control instructions for the target robot are generated based on the target task and the second real-time moving position, and the target robot is controlled to execute the target task according to the control instructions.
8. A robot navigation device, characterized in that, The device includes: The acquisition module is used to acquire target task data of the target task in the logistics sorting scenario, and control the target robot to move to the target robot position according to the target task data. The target task data includes the target position and the target landmark model associated with the target position. The target robot position is the position where the target robot can observe the target landmark model. The location determination module is used to construct a local grid map corresponding to the target task based on the target robot's location, and determine a first target relative position corresponding to the target position according to the local grid map. The first target relative position is the position in the local grid map where the target robot can operate on the target task. A path construction module is used to construct a local grid path based on the first target relative position, the target robot position, and the local grid map. The local grid path is used to indicate the path trajectory of the target robot moving from the target robot position to the first target relative position. A movement module is used to control the target robot to move according to the local grid path.
9. An electronic device, characterized in that, The electronic device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the method according to any one of claims 1 to 7.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method of any one of claims 1 to 7.
Citation Information
Patent Citations
Sorting and carrying method, sorting and carrying robot and storage medium
CN114714357A
Path planning method, path planning device, robot and storage medium
CN114740835A
Navigation method and system for mobile logistics robot
CN118489095A
Positioning and navigation method for a robot, and computing device thereof
US20200164513A1
Order processing method, apparatus and device, and storage medium
WO2020244202A1