Positioning method and transfer apparatus

WO2026175117A1PCT designated stage Publication Date: 2026-08-27BEIJING GEEKPLUS TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2026/075401
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-02-19
Filing Date
2026-01-28
Publication Date
2026-08-27

Smart Images

  • Figure CN2026075401_27082026_PF_FP_ABST
    Figure CN2026075401_27082026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to the technical field of warehousing logistics. Disclosed are a positioning method and a transfer apparatus. The method comprises: acquiring a warehousing map corresponding to a warehousing system; during the movement of a transfer apparatus in a warehousing area, acquiring first detection information acquired by a first acquisition apparatus and second detection information acquired by a second acquisition apparatus, the first detection information being used for indicating displacement information of the transfer apparatus, the second detection information comprising initial point cloud data corresponding to an environment where the transfer apparatus is located, and the initial point cloud data comprising a plurality of point clouds; determining a first pose of the transfer apparatus on the basis of the first detection information and, on the basis of the first pose, the second detection information and the warehousing map, determining a second pose of the transfer apparatus; and, on the basis of the first pose and the second pose, determining a target pose of the transfer apparatus.
Need to check novelty before this filing date? Find Prior Art

Description

Positioning methods and handling equipment

[0001] This application claims priority to Chinese patent application No. 202510186706.X, filed on February 19, 2025, the entire contents of which are incorporated herein by reference. Technical Field

[0002] This disclosure relates to the field of warehousing and logistics technology, and in particular to a positioning method and handling equipment. Background Technology

[0003] Typically, when a robot travels through a warehouse following a task path assigned by a Robot Management System (RMS), it can use its onboard cameras to capture location QR codes affixed to the warehouse floor and determine its current location by recognizing these codes. However, in large warehouses, to ensure accurate robot positioning, a large number of location QR codes need to be affixed to the warehouse floor, increasing both labor and maintenance costs. Summary of the Invention

[0004] This disclosure presents a positioning method and a handling device.

[0005] The first aspect of this disclosure provides a positioning method applied to a handling device. The method includes: First, acquiring a warehouse map corresponding to a warehouse system; wherein the warehouse map includes location information of multiple identified objects in a warehouse area; the warehouse system includes a warehouse area, which is an area for storing vehicles, and the identified objects are used to identify the vehicles. Second, during the movement of the handling device in the warehouse area, acquiring first detection information collected by a first acquisition device and second detection information collected by a second acquisition device; wherein the first detection information includes displacement information of the handling device, and the second detection information includes initial point cloud data corresponding to the environment where the handling device is located, the initial point cloud data including multiple point clouds. Then, based on the first detection information, determining a first pose of the handling device, and based on the first pose, the second detection information, and the warehouse map, determining a second pose of the handling device. Finally, based on the first pose and the second pose, determining a target pose of the handling device.

[0006] A second aspect of this disclosure provides a handling device, including an acquisition module and a determination module. The acquisition module is configured to: acquire a warehouse map corresponding to a warehouse system; wherein the warehouse map includes location information of multiple identified objects in a warehouse area; the warehouse system includes a warehouse area, which is an area for storing vehicles, and the identified objects are used to identify the vehicles; during the movement of the handling device in the warehouse area, it acquires first detection information collected by a first acquisition device and second detection information collected by a second acquisition device; wherein the first detection information includes displacement information of the handling device, and the second detection information includes initial point cloud data corresponding to the environment where the handling device is located, the initial point cloud data including multiple point clouds. The determination module is configured to: determine a first pose of the handling device based on the first detection information, and determine a second pose of the handling device based on the first pose, the second detection information, and the warehouse map; and determine a target pose of the handling device based on the first pose and the second pose.

[0007] A third aspect of this disclosure provides an electronic device, including: a processor and a memory, the memory being used to store computer-executable instructions; the processor being used to read the instructions from the memory and execute the instructions to implement the positioning method described in the first aspect above.

[0008] A fourth aspect of this disclosure provides a computer-readable storage medium storing computer program instructions, which, when read by a computer, execute the positioning method described in the first aspect.

[0009] A fifth aspect of this disclosure provides a computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions that, when executed by a computer, cause the computer to perform the positioning method described in the first aspect.

[0010] A sixth aspect of this disclosure provides a computer program that, when executed by a processor, can implement the positioning method described in the first aspect. Attached Figure Description

[0011] Figure 1 is a schematic diagram of a warehousing system provided in an embodiment of this disclosure;

[0012] Figure 2 is a schematic diagram of a positioning method provided in an embodiment of this disclosure;

[0013] Figure 3 is a schematic diagram of another positioning method provided in an embodiment of this disclosure;

[0014] Figure 4 is a schematic diagram of a storage area provided in an embodiment of this disclosure;

[0015] Figure 5 is a schematic diagram of another positioning method provided in an embodiment of this disclosure;

[0016] Figure 6 is a schematic diagram of another storage area provided in an embodiment of this disclosure;

[0017] Figure 7 is a schematic diagram of a positioning process for a handling device provided in an embodiment of this disclosure;

[0018] Figure 8 is a schematic diagram of a handling device provided in an embodiment of this disclosure;

[0019] Figure 9 is a schematic diagram of an electronic device provided in an embodiment of this disclosure. Detailed Implementation

[0020] To enable those skilled in the art to better understand the technical solutions in the embodiments of the present invention, and to make the above-mentioned objectives, features and advantages of the embodiments of the present invention more apparent and understandable, the technical solutions in the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.

[0021] Typically, robots navigate warehouses according to task paths assigned by a Robot Management System (RMS) to perform corresponding tasks, such as material handling. To enable robot localization, corresponding positioning QR codes are affixed to the warehouse floor. As the robot follows its assigned path, cameras or other data acquisition devices on the floor capture images of these QR codes, allowing the robot to determine its current location. However, in large warehouses, a significant number of QR codes need to be affixed to ensure accurate positioning, thus increasing the labor costs associated with their use. Furthermore, the large number of QR codes in the warehouse necessitates manual maintenance if they become damaged or contaminated, further increasing maintenance costs.

[0022] To address the aforementioned issues, this disclosure proposes a positioning method and a handling device. This positioning method can determine the robot's current pose by combining the point cloud data corresponding to the shelf legs in the shelving area collected by the laser sensor on the handling device and the driving data of the handling device collected by the odometer. This eliminates the need for positioning QR codes, significantly reducing the number of positioning QR codes required in the warehouse shelving area, lowering the labor costs of implementing positioning QR codes, and reducing the maintenance costs of positioning QR codes.

[0023] The positioning method and handling equipment provided in this disclosure, during the movement of the handling equipment in a storage area, determine the first pose of the handling equipment by acquiring first detection information through a first acquisition device (such as an odometer), and determine the second pose of the handling equipment based on the first pose, second detection information acquired by a second acquisition device (such as a laser sensor), and a storage map. Finally, the target pose of the handling equipment is determined by combining the first and second poses. Since the first detection information is the location information of the handling equipment, and the second detection information is the point cloud data corresponding to the environment in which the handling equipment is located, this disclosure embodiment can achieve positioning of the handling equipment without the need for identification codes. Compared with related technologies that require identification codes for positioning, this disclosure embodiment, by achieving positioning of the handling equipment through the cooperation of the first and second acquisition devices, greatly reduces the number of identification codes, thereby reducing the labor and maintenance costs of identification code implementation.

[0024] Figure 1 is a schematic diagram of a warehousing system provided in an embodiment of this disclosure. As shown in Figure 1, the warehousing system 100 includes a warehousing area 110, a non-warehousing area 120, multiple handling devices 20, workstations 30, and a control device (not shown in Figure 1).

[0025] For example, the warehouse corresponding to the warehousing system 100 can be divided into a warehousing area 110 and a non-warehousing area 120. The warehousing area 110 is an area for placing vehicles, such as the warehousing area 110 including multiple vehicles.

[0026] For example, the carrier may include a shelf, which includes at least one partition dividing the shelf into at least two layers. Each partition has at least one storage location, and each location can accommodate at least one container. The container in each location can be a box or a pallet; this disclosure does not limit the specific type. It should be noted that the carriers placed in the storage area 110 include, but are not limited to, partitioned shelves, container shelves, picking shelves, etc. This disclosure uses shelves (such as immovable shelves) as an example to illustrate the carriers placed in the storage area 110.

[0027] In some examples, each shelf in storage area 110 may include multiple shelf legs, which are support structures for supporting shelf partitions. For example, each shelf may include four shelf legs. This disclosure does not limit this.

[0028] In some examples, multiple shelves in storage area 110 can be arranged according to a preset layout. For example, multiple shelves in storage area 110 can be arranged in a single column and multiple rows, or in a multi-column and multi-row layout; this embodiment of the present disclosure does not limit this arrangement. As shown in Figure 1, the multiple shelves in storage area 110 are arranged in two rows and four columns, with aisles between adjacent columns and between adjacent rows of shelves.

[0029] For example, the warehousing system 100 may also include multiple handling devices 20. The handling devices 20 may be handling robots, such as Automated Guided Vehicles (AGVs). The handling devices 20 may move within the warehousing area 110, between the warehousing area 110 and the non-warehousing area 120, or within the non-warehousing area 120, to perform corresponding handling tasks.

[0030] In some examples, non-warehouse area 120 is an area in the warehouse other than warehouse area 110. For example, non-warehouse area 120 may include an area where workstation 30 is set up or other work areas. For instance, non-warehouse area 120 may include at least one workstation 30, which can perform picking operations on the hit containers handled by handling equipment 20.

[0031] For example, a control device may be coupled to the handling equipment 20 for controlling the operation of the handling equipment 20. For instance, the control device may control the handling equipment 20 to move and handle the hit containers in the storage area 110.

[0032] In some examples, the control device can be a server or a terminal device, or a device deployed with a Warehouse Management System (WMS) and a Robot Management System (RMS). The terminal device can include at least one of a personal computer, laptop, smartphone, tablet, and portable wearable device; the server can include a standalone server or a server cluster consisting of multiple servers, which is not limited in this disclosure. For example, the control device communicates with the handling equipment 20 for data communication. For example, the control device can communicate with the handling equipment 20 via a Local Area Network (LAN), Wireless Local Area Network (WLAN), or other networks.

[0033] In some examples, the handling equipment 20 can receive handling tasks sent by the control device and execute those tasks. For instance, the handling equipment 20 can, according to the handling task, move containers with matching orders from shelves in storage area 110 to workstation 30 in non-storage area 120 for picking operations at workstation 30; alternatively, the handling equipment 20 can move containers between different shelves in storage area 110 according to the handling task; or, the handling equipment 20 can, according to the handling task, move containers picked at workstation 30 to shelves in storage area 110. During the execution of these handling tasks, the handling equipment 20 needs to locate its own position to accurately complete the handling tasks.

[0034] In some embodiments, the handling device 20 is configured to: acquire a warehouse map corresponding to the warehouse system, and acquire first detection information acquired by a first acquisition device and second detection information acquired by a second acquisition device during movement in the warehouse area 110; determine a first pose of the handling device based on the first detection information, and determine a second pose of the handling device based on the first pose, the second detection information and the warehouse map; and finally determine a target pose of the handling device based on the first pose and the second pose.

[0035] In some examples, the first acquisition device can be an odometer, and the first detection information includes the displacement information of the transport equipment; the second acquisition device can be a laser sensor, and the second detection information can include point cloud data (such as initial point cloud data) corresponding to the environment in which the transport equipment is located. It should be noted that the first acquisition device can also be other sensors capable of acquiring displacement information of the transport equipment, and the second acquisition device can also be other sensors used to acquire environmental information of the transport equipment. This disclosure does not limit the first and second acquisition devices; the following embodiments use an odometer as the first acquisition device and a laser sensor as the second acquisition device for illustrative purposes.

[0036] The handling equipment 20 in the warehousing system 100 provided in this embodiment can determine its current pose (i.e., target pose) during the execution of handling tasks by jointly using displacement information collected by the first acquisition device and initial point cloud data collected by the second acquisition device. In the above positioning process, since the handling equipment 20 can be positioned without needing to identify the positioning identifiers set in the warehousing area 110, this embodiment can reduce the number of identifiers set in the warehousing area 110, thereby reducing labor and maintenance costs.

[0037] In some embodiments, the storage area 110 may include at least one initial point, which is marked with an identification code, while other areas of the storage area 110, excluding the initial point, are not marked with identification codes. The identification code may be a QR code, a label, or other similar identifier; this disclosure does not limit the specific type of identification code.

[0038] In some examples, the initial point can also be called the restart point. The initial point is the starting position of the handling equipment 20 when it performs the handling task. In other words, the handling equipment moves in the storage area based on the initial point.

[0039] For example, the initial point can include the location at both ends of the aisle in the storage area 110. As shown in Figure 1, the initial point can be set at aisle port A, or it can be set at aisle port B. It should be noted that the initial point in the storage area 110 can be set according to requirements, and the location of the initial point is not limited in this embodiment.

[0040] For example, the initial location identifier (which can be called the initial identifier) ​​is used to determine the initial position of the handling equipment 20. After determining the initial position of the handling equipment, the handling equipment starts to perform the handling task from the initial location. During the handling task, it is not necessary to use the identifier for positioning again. Instead, positioning is performed using the first detection information collected by the first acquisition device and the second detection information collected by the second acquisition device. Therefore, in the storage area of ​​this embodiment, except for the initial location, no positioning QR codes need to be set in other areas. Compared with the related technology where the entire storage area needs to be set with positioning identifiers, the number of positioning identifiers is greatly reduced, thereby reducing labor costs and maintenance costs.

[0041] The positioning method provided in the embodiments of this disclosure will be described in detail below with reference to the accompanying drawings.

[0042] Figure 2 is a schematic diagram of a positioning method provided by an embodiment of this disclosure. It should be noted that the positioning method shown in Figure 2 can be implemented using the handling device 20 in the above embodiments. As shown in Figure 2, the positioning method includes steps 210 to 250 as follows.

[0043] Step 210: Obtain the warehouse map corresponding to the warehouse system.

[0044] In some examples, the warehouse map can be generated by the control device in the warehouse system. After generating the warehouse map, the control device can send the warehouse map to each handling device in the warehouse system, and each handling device stores and maintains the acquired warehouse map.

[0045] In other examples, the warehouse map can also be generated by the handling equipment. After generating the warehouse map, the handling equipment can send it to other handling equipment. This disclosure does not limit this approach. It should be noted that, to save the computing resources of the handling equipment, the warehouse map can be generated by the control device and sent to each handling device. This disclosure uses the generation of the warehouse map by the control device as an example for illustrative purposes.

[0046] For example, a warehouse map may include multiple marker objects and location information for each marker object. The marker objects may be identifiers indicating vehicles within the warehouse area. For instance, if the vehicle is a shelf, the marker object may be a shelf leg.

[0047] In some examples, the storage area includes multiple shelves, and each shelf includes multiple shelf legs. The control device can generate a storage map based on the position of each shelf leg in the storage area. This storage map, also known as a shelf leg map, indicates the position of each shelf leg in the storage area.

[0048] In some examples, changes may occur in the shelving within the storage area, such as an increase or decrease in the number of shelves, or a change in shelf location. The positions of the shelf legs may also change. Therefore, the control device can update the storage map based on these updates to the shelf legs. For instance, the control device can resend the updated storage map to the handling equipment, which can then store the updated map. It should be noted that the storage map stored in the handling equipment is the most up-to-date storage map.

[0049] Step 220: During the movement of the handling equipment in the storage area, the first detection information collected by the first acquisition device and the second detection information collected by the second acquisition device are obtained.

[0050] For example, the handling equipment may be equipped with a first acquisition device and a second acquisition device. The first acquisition device is used to acquire first detection information corresponding to the handling equipment, which includes displacement information of the handling equipment. The second acquisition device is used to acquire second detection information corresponding to the handling equipment, which includes initial point cloud data corresponding to the environment in which the handling equipment is located, wherein the initial point cloud data includes multiple point clouds.

[0051] In some examples, the first acquisition device can be an odometer, and the second acquisition device can be a laser sensor. It should be noted that the first acquisition device can also be other acquisition devices used to detect the displacement information of the handling equipment, and the second acquisition device can also be other acquisition devices used to collect environmental information of the handling equipment. This disclosure does not limit this; the following embodiments use an odometer as the first acquisition device and a laser sensor as the second acquisition device for illustrative purposes.

[0052] For example, an odometer can estimate the relative displacement of a handling device during movement by measuring the rotation, acceleration, angular velocity of its wheels, or visual images, and then determine the displacement of the handling device relative to its initial position by accumulating these measurements. A laser sensor can calculate the distance between the handling device and the target object by emitting a laser beam and measuring the time it takes for the laser beam to reflect back from the target object (such as a shelf leg). The laser sensor can acquire information about the environment in which the handling device is located and generate corresponding point cloud data, such as initial point cloud data. In other words, the initial point cloud data is the collection of all point clouds acquired by the laser sensor within one measurement cycle. These point clouds are represented in three-dimensional coordinates and can carry other relevant information, such as reflectivity and intensity.

[0053] For example, during the movement of handling equipment in a storage area, a laser sensor can scan the environment in which the handling equipment is located. Since the storage area includes multiple shelves, the laser sensor can scan for identified objects (such as shelf legs) within a preset range. That is, the initial point cloud data detected by the laser sensor includes multiple point clouds, and among the multiple point clouds are the point clouds corresponding to the identified objects (such as shelf legs).

[0054] In some embodiments, the storage area includes at least one initial point, which is marked with an identification code, while other areas in the storage area other than the initial point are not marked with identification codes.

[0055] In some examples, initial points can be set in the storage area. The number and location of the initial points can be preset according to requirements. This disclosure does not specifically limit the number and location of the initial points in the storage area. For example, the initial points can be set at the entrance of the alley in the storage area, or the initial points can be located in a specific area of ​​the storage area.

[0056] For example, the transport equipment can move to an initial point and begin performing the transport task from that point. This initial point can also be referred to as the restart point of the transport equipment. For instance, after completing the previous transport task, the transport equipment can move to the initial point to await the control device to issue the next transport task. Upon receiving the next transport task from the control device, the transport equipment can begin performing the transport task from the initial point, following the corresponding task path.

[0057] In some examples, after the handling equipment is restarted or initialized, it can also be scheduled to the initial location to perform initial positioning using the identifier at the initial location. It should be noted that the identifier at the initial location can be called the initial identifier.

[0058] In some embodiments, the positioning method further includes: when the transport equipment is located at the initial position, acquiring third detection information corresponding to the identification code set at the initial position by the third acquisition device; and determining the initial pose of the transport equipment based on the third detection information.

[0059] In some examples, a third detection device can also be installed on the handling equipment. This third detection device can be an image acquisition device, such as a camera, fisheye camera, panoramic camera, or other image acquisition device. The third detection device is used to acquire image information of the identification codes set in the warehouse and send the acquired image information of the identification codes to the handling equipment. The handling equipment identifies the image information of the identification codes to determine the location information of the identification codes, thereby determining the current position of the handling equipment.

[0060] In some examples, the transport equipment is located at an initial point. The third detection device can collect the identification code (which can be called the initial identification code) set at the initial point to obtain third detection information. This third detection information is the image information corresponding to the initial identification code. Based on the image information of the initial identification code, the transport equipment determines its initial pose at the initial point.

[0061] For example, the storage area also includes a non-storage area, which is equipped with multiple identification codes. For instance, the non-storage area can be divided into multiple cells, each with its own identification code. The handling equipment is located in the non-storage area, and the third data acquisition device can also collect image information from the identification codes in the non-storage area to locate the handling equipment there.

[0062] In some embodiments, the positioning method further includes: when the handling equipment moves from a storage area to a non-storage area, acquiring detection information corresponding to the target identification code in the non-storage area collected by the third acquisition device; and determining the current pose of the handling equipment in the non-storage area based on the detection information corresponding to the target identification code.

[0063] In some examples, while the handling equipment is moving within a non-warehousing area, a third detection device can collect detection information corresponding to each identification code in the non-warehousing area, and determine the current pose of the handling equipment based on the detection information of each identification code. The target identification code is any one of multiple identification codes in the non-warehousing area.

[0064] For example, when a handling device moves to a target cell in a non-warehousing area, it can acquire image information of the target identification code set on the target cell through a third acquisition device and send the image information of the target identification code to the handling device. The handling device can determine its current position in the non-warehousing area by recognizing the target identification code.

[0065] For example, the identification code corresponds to code value information, and different identification codes correspond to different code value information. The code value information is used to uniquely identify the identification code.

[0066] For example, the control device can pre-establish a mapping relationship between the code value information and the location information of each identification code, and send this mapping relationship to the handling equipment. After the handling equipment obtains the image information of the target identification code, it identifies the image information to determine the code value information of the target identification code, and then determines the location information of the target identification code based on the code value information and the mapping relationship.

[0067] For example, after establishing the mapping relationship, the control device may not need to send the mapping relationship to the transport equipment. After determining the code value information of the target identification code, the transport equipment can send the code value information to the control device. Based on the code value information and the mapping relationship, the control device determines the position information of the target identification code and sends the position information to the transport equipment, thereby further determining the position of the transport equipment.

[0068] In other words, whether the handling equipment is located at its initial position in the storage area or in a non-storage area, the equipment can be located using the detection information corresponding to the identification code collected by the third detection device.

[0069] The positioning method provided in this disclosure reduces the number of labels to be pasted by setting identification codes only at the initial location in the storage area and in non-storage areas, without setting identification codes at other locations (such as storage areas). Compared with related technologies where identification codes are set for the entire warehouse, this greatly reduces the number of identification codes that need to be pasted, thereby reducing labor and maintenance costs.

[0070] In some embodiments, after step 220 above, the method further includes: initializing the initial point cloud data in the second detection information to obtain filtered point cloud data.

[0071] For example, a second acquisition device (such as a laser sensor) acquires environmental information of the transport equipment to obtain initial point cloud data. After acquiring the initial point cloud data, the transport equipment can perform initialization processing on the initial point cloud data to obtain filtered point cloud data. The filtered point cloud data includes at least one candidate point cloud, and the multiple point clouds in the initial point cloud data include at least one candidate point cloud.

[0072] In some examples, the initial point cloud data acquired by the laser sensor may include not only the point cloud corresponding to the identified object (such as a shelf leg), but also noise point clouds corresponding to obstacles. In order to more accurately determine the pose of the handling equipment, after the laser sensor sends the initial point cloud data to the handling equipment, the handling equipment can perform initialization processing on the initial point cloud data to remove noise point clouds from multiple point clouds.

[0073] In some embodiments, initialization processing is performed on the initial point cloud data to obtain filtered point cloud data, including: performing motion distortion correction processing and / or laser plane mapping processing on the initial point cloud data to obtain processed point cloud data; and filtering processing is performed on the processed point cloud data to obtain filtered point cloud data.

[0074] For example, the conveying device can perform initialization processing on the initial point cloud data (which can also be called a frame of initial point cloud data) acquired by the laser sensor within a measurement cycle. The initialization processing may include motion distortion correction processing and filtering processing, or laser plane mapping processing and filtering processing, or it may include motion distortion correction processing, laser plane mapping processing, and filtering processing. This disclosure embodiment does not limit this; the embodiment uses an example where the initialization processing includes motion distortion correction processing, laser plane mapping processing, and filtering processing for illustrative purposes.

[0075] In some examples, motion distortion correction compensates for changes in the initial point cloud data caused by the displacement of the transport equipment within a measurement cycle. Because the laser sensor acquires the initial point cloud data as the transport equipment moves, the point clouds in the initial point cloud data acquired within a measurement cycle may not have been acquired at the same time. The different acquisition times of different point clouds result in inconsistent coordinate systems, leading to distortion. This distortion prevents the initial point cloud data from accurately reflecting the true 3D environment corresponding to the transport equipment. Motion distortion correction transforms multiple point clouds acquired within a measurement cycle into the same coordinate system, thereby eliminating the distortion caused by the transport equipment's movement. After motion distortion correction, the initial point cloud data yields distorted point cloud data.

[0076] For example, point cloud data after motion distortion correction can more accurately reflect the three-dimensional environment information corresponding to the handling equipment, providing a guarantee for subsequent determination of the handling equipment's pose. It should be noted that the motion distortion correction method can adopt conventional methods in related technologies, such as the Iterative Closest Point (ICP) algorithm and its variant, the Velocity Updating Iterative Closest Point (VICP) algorithm. Alternatively, motion information of the handling equipment provided by sensors such as Inertial Measurement Units (IMUs) or odometry can be used to perform motion compensation on the initial point cloud data. This disclosure does not limit the specific methods used.

[0077] In some examples, after obtaining the distorted point cloud data, laser plane mapping can be performed on the distorted point cloud data to obtain mapped point cloud data. Laser plane mapping maps the point cloud data to a planar coordinate system, that is, mapping the three-dimensional point cloud to a two-dimensional point cloud. Mapping the three-dimensional point cloud to a two-dimensional plane reduces data dimensionality and computational complexity, thereby facilitating subsequent image analysis and processing and improving computational efficiency. It should be noted that the laser plane mapping processing scheme can adopt conventional methods in related technologies, such as coordinate transformation and projection algorithms, etc., and this disclosure does not limit this approach.

[0078] In some examples, after obtaining the mapped point cloud data through laser plane mapping, the mapped point cloud data can be filtered to obtain filtered point cloud data. This filtering process removes noisy point clouds from the mapped point cloud data, retaining the point clouds corresponding to the identified objects, thereby improving positioning accuracy.

[0079] For example, the filtering process includes at least one of laser distance filtering, obstacle filtering, and dynamic obstacle filtering.

[0080] For example, laser distance filtering can pre-set reference points and remove noise and outliers from the point cloud by using the relationship between the distance between each point cloud and the reference point and a distance threshold. For instance, it can remove point clouds where the distance to the reference point exceeds the distance threshold. Obstacle dilation filtering is used to dilate obstacles in the point cloud, increasing their size to create an expanded obstacle region. This allows handling equipment to accurately avoid obstacles during operation, ensuring safe operation. Dynamic obstacle filtering is used to remove dynamic obstacles from the initial point cloud, such as pedestrians and other handling equipment.

[0081] In some examples, the above embodiments perform motion distortion correction and laser plane mapping on the initial point cloud data before performing filtering. Embodiments of this disclosure may also perform filtering on the initial point cloud data first, and then perform motion distortion correction and laser plane mapping on the filtered point cloud data. Embodiments of this disclosure do not limit the execution order of motion distortion correction, laser plane mapping, and filtering.

[0082] It should be noted that filtering can remove noisy point clouds, such as those of obstacles, pedestrians, and other handling equipment, from point cloud data (such as initial point cloud data or mapped point cloud data). This ensures that the filtered point cloud contains as many point clouds as possible that correspond to the identified objects, thereby improving the accuracy of subsequent localization.

[0083] Step 230: Based on the first detection information, determine the first position of the handling equipment.

[0084] In some embodiments, step 230 includes: determining the first pose of the conveying device based on the initial pose and the first detection information.

[0085] In some examples, as described in the above embodiments (such as step 220), the handling equipment can begin performing handling tasks in the storage area based on an initial position. When the handling equipment is located at the initial position, the initial pose of the handling equipment can be determined by the third detection information corresponding to the identifier code at the initial position, collected by the third device. The handling equipment starts from the initial position and performs the handling task in the storage area along the handling path corresponding to the handling task. The first acquisition device on the handling equipment (such as an odometer) can collect the relative displacement information of the handling equipment relative to the initial position; that is, the first detection information includes the relative displacement information of the handling equipment relative to the initial position. After determining the initial pose of the handling equipment and its displacement relative to the initial pose, the first pose of the handling equipment can be determined.

[0086] In other words, the handling equipment can determine its first pose based on the initial pose corresponding to the initial point and the displacement information between its current position (such as the first position) and the initial point. The first pose is the current pose of the handling equipment determined by the first acquisition device.

[0087] In some examples, the first pose may include the first position information and the first angle information of the conveying device. The first position information can be in coordinate form. After determining the position coordinates of the conveying device at the initial point, the current position coordinates (i.e., the first position information) and the current rotation angle (i.e., the first angle information) of the conveying device can be determined based on the initial position coordinates and the distance of the conveying device relative to the initial point.

[0088] It should be noted that due to the cumulative error of the odometer, the deviation between the first pose determined by the odometer and the actual pose of the handling equipment will gradually increase as the operating time of the equipment increases. To improve positioning accuracy, the target pose of the handling equipment can be determined by combining the first and second poses. The process of determining the second pose of the handling equipment is explained below.

[0089] Step 240: Based on the first pose, the second detection information, and the warehouse map, determine the second pose of the handling equipment.

[0090] In some embodiments, the initial point cloud data in the second detection information can be processed to obtain filtered point cloud data. In order to improve positioning accuracy, step 240 includes determining the second pose of the handling equipment based on the first pose, the filtered point cloud data and the warehouse map.

[0091] In some examples, after determining the first pose and the filtered point cloud data, the second pose of the handling equipment can be determined based on the first pose, the filtered point cloud data, and the warehouse map. The second pose is the current pose of the handling equipment determined by the second acquisition device, and it may include the second position information and second angle information of the handling equipment.

[0092] Figure 3 is a schematic diagram of another positioning method provided by an embodiment of the present disclosure. As shown in Figure 3, step 240 may include steps 241 to 242 as shown below.

[0093] Step 241: Based on the first pose, perform matching processing on at least one candidate point cloud in the filtered point cloud data and multiple identified objects in the warehouse map.

[0094] For example, after initializing the initial point cloud data and obtaining filtered point cloud data, the filtered point cloud data includes at least one candidate point cloud, and the at least one candidate point cloud includes a point cloud corresponding to an identified object (such as a shelf leg). Therefore, each candidate point cloud in the at least one candidate point cloud can be matched one-to-one with multiple identified objects in the warehouse map to determine the identified object corresponding to each candidate point cloud.

[0095] In some examples, in at least one candidate point cloud in the filtered point cloud data, all candidate point clouds may be point clouds corresponding to the identified object; or some candidate point clouds may be point clouds corresponding to the identified object, while other candidate point clouds may not be point clouds corresponding to the identified object.

[0096] For example, after determining the first pose of the handling equipment, a first position of the handling equipment can be determined in the warehouse map. The first position is the current position of the handling equipment estimated based on odometry. Based on the first position and the acquisition range of the laser sensor, candidate regions corresponding to at least one candidate point cloud and its corresponding identifier can be determined in the warehouse map. Each candidate object in the filtered point cloud data is then matched one-to-one with each identifier in the candidate region.

[0097] Figure 4 is a schematic diagram of a storage area provided in an embodiment of this disclosure.

[0098] As shown in Figure 4, the handling equipment 20 is located at the first position in the storage area 110. It can scan the environmental information within a preset range in front of it, thereby obtaining point cloud data corresponding to multiple shelf legs within the preset range. The preset range is the candidate area, and each shelf leg within the preset range is the identifier of the candidate area.

[0099] For example, at least one candidate point cloud and multiple identified objects can be matched based on the distribution of candidate point clouds and the distribution of identified objects within a preset range. Alternatively, at least one candidate point cloud and multiple identified objects can be matched based on the distance between each candidate point cloud and the conveying equipment at the first position, and the distance between each identified object within the preset range and the first position. For instance, candidate point clouds with the same or similar distances can be matched with identified objects. Again, at least one candidate point cloud and multiple identified objects can be matched based on both distribution and distance.

[0100] Step 242: Based on the matching results of at least one candidate point cloud with multiple identified objects, determine the second pose of the handling device.

[0101] For example, the matching results of at least one candidate point cloud with multiple labeled objects are used to indicate the matching status of each candidate point cloud with the multiple labeled objects. For instance, the matching results may include candidate point clouds that can be successfully matched with multiple labeled objects, and candidate point clouds that cannot be successfully matched with multiple labeled objects.

[0102] In some examples, the matching result may also include the number of candidate point clouds that can be successfully matched with multiple identified objects, and the number of candidate point clouds that cannot be successfully matched with multiple identified objects. For example, the candidate point clouds that can be successfully matched with multiple identified objects can be referred to as the target point cloud, and the candidate point clouds that cannot be successfully matched with multiple identified objects can be referred to as the remaining point clouds.

[0103] For example, if in at least one candidate point cloud, each candidate point cloud can match the identified object (i.e., every candidate point cloud corresponds to the identified object), then the number of target point clouds equals the number of candidate point clouds, and the number of remaining point clouds is zero. If in at least one candidate point cloud, not every candidate point cloud can match the identified object (i.e., only some candidate point clouds correspond to the identified object), then the number of target point clouds is less than the number of candidate point clouds, and the number of remaining point clouds is the number of candidate point clouds minus the number of target point clouds.

[0104] In some embodiments, step 242 may include: determining the position information of each candidate identifier object when the matching result indicates that each candidate point cloud in at least one candidate point cloud matches the corresponding candidate identifier object; and determining a second pose based on the position information of the candidate identifier objects.

[0105] For example, the identified objects matched by the candidate point cloud are called candidate identified objects. When each candidate point cloud in the filtered point cloud data is matched with a corresponding identified object, that is, when the number of target point clouds is equal to the number of candidate point clouds, the location information of each candidate identified object can be determined in the warehouse map. After determining the location information of each candidate identified object, the second pose of the handling equipment can be determined based on the location information of each candidate identified object.

[0106] In some examples, when there is only one candidate identifier, the second pose can be determined based on the position information of that candidate identifier.

[0107] In other examples, when there are multiple candidate identifiers, a target identifier can be determined from the multiple candidate identifiers, and a second pose can be determined based on the position information of the target identifier. For example, the target identifier can be a random identifier from multiple candidate identifiers, or it can be the identifier closest to the location of the handling equipment (such as the first position).

[0108] In some other examples, when there are multiple candidate identifier objects, at least two target identifier objects can be determined from these candidates, and a second pose can be determined based on the position information of these two target objects. The at least two target identifier objects can be all candidate identifier objects, or a subset of all candidate identifier objects; this disclosure does not limit this. For example, the second pose can be determined by weighted averaging based on the position information of each of the at least two target identifier objects.

[0109] In some embodiments, step 242 may further include: if the matching result indicates that there are candidate point clouds in at least one candidate point cloud that do not match the corresponding identifier object, determining the number of target point clouds in at least one candidate point cloud that can match the corresponding identifier object in multiple identifier objects; and determining a second pose based on the number of target point clouds.

[0110] In some examples, the target point cloud is a candidate point cloud that can be matched with a corresponding identifier among multiple identifier objects in the warehouse map. If there are candidate point clouds among the candidate point clouds that cannot be matched with a corresponding identifier object, it indicates that the number of target point clouds is less than the number of candidate point clouds, and the number of target point clouds is determined.

[0111] In some embodiments, when the number of target point clouds is greater than or equal to a preset number threshold, the position information of the identification object corresponding to each target point cloud is determined; and based on the position information of the identification object corresponding to each target point cloud, a second pose is determined.

[0112] In some examples, the preset quantity threshold can be set as needed, and this disclosure does not limit this. For example, the preset quantity threshold can be set to any integer greater than or equal to 1, such as setting the preset quantity threshold to 3. If the number of target point clouds is greater than or equal to the preset quantity threshold, it indicates that the initial point cloud data acquired by the laser sensor in the current measurement cycle is valid point cloud data.

[0113] For example, if the number of target point clouds is greater than or equal to a preset threshold, the second pose can be determined based on the position information of the corresponding target point cloud. In other words, from at least one candidate point cloud of the filtered point cloud data, candidate point clouds that cannot match the labeled object can be discarded, and the target point cloud that can match the labeled object can be retained. The second pose of the handling equipment can then be determined based on the position information of the labeled object corresponding to the target point cloud.

[0114] It should be noted that the process of determining the second pose based on the position information of the corresponding identifiers of each target point cloud is similar to the process of determining the second pose based on the position information of the candidate identifiers described above. To avoid repetition, it will not be described again here.

[0115] In some embodiments, the positioning method further includes: discarding the initial point cloud data in the second detection information when the number of target point clouds is less than a preset number threshold; acquiring the first detection information collected by the first acquisition device in the next measurement cycle and the second detection information collected by the second acquisition device in the next measurement cycle; when the number of target point clouds determined according to the second detection information corresponding to the next measurement cycle is greater than or equal to the preset number threshold, determining the third pose of the handling equipment in the next measurement cycle based on the first detection information corresponding to the next measurement cycle, and determining the fourth pose of the handling equipment based on the third pose, the second detection information corresponding to the next measurement cycle and the warehouse map; and determining the target pose of the handling equipment based on the third pose and the fourth pose.

[0116] For example, if the number of target point clouds is less than a preset threshold, the target point clouds determined based on the second detection information are discarded. The fact that the number of target point clouds is less than the preset threshold indicates that the initial point cloud data acquired by the laser sensor in the current measurement cycle is invalid. Therefore, the initial point cloud data detected in the current measurement cycle can be discarded, and the initial point cloud data corresponding to the next measurement cycle can be acquired. The second pose is then recalculated based on the initial point cloud data corresponding to the next measurement cycle.

[0117] It should be noted that, since the measurement cycle of a laser sensor is relatively short, if the point cloud data obtained in one measurement cycle is invalid, the set of point cloud data can be discarded and the next set of point cloud data can be obtained. This makes it easier to re-determine the second pose of the handling equipment based on the next set of point cloud data.

[0118] For example, if the target point cloud corresponding to the second detection information in the current measurement cycle is invalid, it is not necessary to further determine the pose corresponding to the current measurement cycle. Instead, the first and second detection information corresponding to the next measurement cycle can be acquired. After acquiring the second detection information corresponding to the next measurement cycle, the number of target point clouds is determined based on the second detection information corresponding to the next measurement cycle. If the number of target point clouds is greater than or equal to a preset threshold, the third pose of the handling equipment is re-determined based on the first detection information corresponding to the next measurement cycle. After determining the third pose, the fourth pose of the handling equipment is re-determined based on the third pose, the second detection information corresponding to the next measurement cycle, and the warehouse map. After determining the third and fourth poses, the current target pose of the handling equipment is determined based on the third and fourth poses. The process of determining the third pose is similar to the process of determining the first pose in the above embodiments, and the process of determining the fourth pose is similar to the process of determining the second pose in the above embodiments. To avoid repetition, it will not be described again here.

[0119] It should be noted that during the process of determining the fourth pose, if the number of target point clouds determined in the second detection information corresponding to the next measurement cycle is still less than the preset number threshold, the second detection information corresponding to the next measurement cycle can be discarded, and the second detection information corresponding to the next measurement cycle can be re-acquired, and the target pose of the handling equipment can be re-determined.

[0120] Step 250: Determine the target pose of the handling equipment based on the first pose and the second pose.

[0121] For example, after determining the first pose and the second pose through steps 230 to 240 above, the current pose of the handling equipment, i.e. the target pose, can be determined based on the first pose and the second pose.

[0122] In some embodiments, step 250 may include: determining the target pose of the handling device by means of a fusion positioning process based on the first pose and the second pose.

[0123] In some examples, the multiple first poses of the handling equipment determined by the odometer can form a smooth curve, but there is a certain error between the first pose determined by the odometer and the actual pose of the handling equipment. The second pose of the handling equipment determined by the laser sensor has high accuracy, but the multiple second poses form a curve with jagged edges, meaning the stability of the second pose is poor. To improve the accuracy of the handling equipment positioning, the first pose determined by the odometer and the second pose determined by the laser sensor can be fused to reduce the variation between the various second poses determined by the laser sensor, thereby improving the accuracy and stability of the positioning.

[0124] For example, odometers estimate the distance traveled and directional changes of a transport device by measuring the wheel speed or motor steps. However, due to cumulative error, the error increases over time. Laser sensors measure the distance between the transport device and its environment by emitting a laser beam and receiving the reflected light signal. Laser sensors offer high accuracy and resolution but can be affected by environmental factors (such as lighting conditions and obstacle shapes). Fusion localization processing can fully leverage the advantages of both odometers and laser sensors while compensating for their respective shortcomings. Through weighted processing and data fusion, more accurate robot position information can be obtained, thereby improving the robot's navigation accuracy and stability.

[0125] Figure 5 is a schematic diagram of another positioning method provided by an embodiment of this disclosure. As shown in Figure 5, step 250 includes steps 251 to 252 as shown below.

[0126] Step 251: Determine the first weight corresponding to the first pose and the second weight corresponding to the second pose.

[0127] In some embodiments, a first weight is determined based on the moving distance and / or motion angle of the conveying equipment within a preset time range.

[0128] In some examples, the preset time range can be a measurement cycle of the laser sensor, such as the time interval between two frames of laser light emitted by the laser sensor; or, the preset time range can be other time ranges set according to requirements, which are not limited in this embodiment.

[0129] In some examples, the distance traveled can be the displacement of the conveying device within a preset time range, and the angle of movement can be the change in the direction of movement of the conveying device within the preset time range. For example, the conveying device changes from a first direction to a second direction within the preset time range, such as when the conveying device performs a turning operation.

[0130] Figure 6 is a schematic diagram of another storage area provided in an embodiment of this disclosure.

[0131] As shown in Figure 6, taking the handling equipment 20 located at position a in the storage area 110 as an example, within a preset time range, the handling equipment 20 moves from position a to position b. In this case, the moving distance of the handling equipment 20 within the preset time range is the sum of the distance between position a and position c and the distance between position c and position b, and the movement angle of the handling equipment 20 is 90 degrees.

[0132] In some examples, if the direction of movement of the transport equipment does not change within a preset time period, the first weight can be determined based on the distance the transport equipment travels. If the direction of movement of the transport equipment changes within a preset time period, but the distance traveled does not change, the first weight can be determined based on the angle of movement of the transport equipment. If both the direction of movement and the distance traveled change within a preset time period, the first weight can be determined based on both the distance traveled and the angle of movement of the transport equipment.

[0133] Referring again to Figure 6, when the transport device 20 moves from position a to position b within a preset time range, since both the moving distance and direction of the transport device 20 change, a first weight can be determined based on the moving distance and direction of the transport device 20. When the transport device 20 moves from position b to position d within the preset time range, since the direction of the transport device 20 does not change during this movement, only the moving distance changes, therefore, a first weight can be determined based on the moving distance of the transport device 20.

[0134] For example, if the conveying device 20 performs a turning operation at position d within a preset time range, since the direction of movement of the conveying device 20 has changed, but the conveying device is still located at position d, that is, the direction of movement of the conveying device has changed, but the distance of movement has not changed. Therefore, the first weight can be determined according to the direction of movement of the conveying device.

[0135] In some embodiments, within a preset time range, the greater the moving distance of the conveying device and / or the greater the movement angle of the conveying device, the smaller the first weight.

[0136] In some examples, the first weight is negatively correlated with the distance the transport equipment travels, and it is also negatively correlated with the angle of movement of the transport equipment. That is, the greater the distance the transport equipment travels, the smaller the first weight; and the greater the angle of movement of the transport equipment, the smaller the first weight.

[0137] For example, the greater the moving distance and / or the larger the angle of motion of the handling equipment, the greater the cumulative error of the odometer will be, which will lead to the increasingly unstable position estimation. That is, the first pose of the handling equipment determined by the odometer is more unstable. In this case, when fusing the first pose and the second pose, the first weight corresponding to the first pose can be reduced to reduce the influence of the first pose on the target pose.

[0138] For example, multiple first score intervals can be set for the first weight, with different first score intervals corresponding to different first weights.

[0139] In some examples, multiple first score intervals may include score interval A1, score interval B1, and score interval C1, wherein score interval A1 corresponds to weight a1, score interval B1 corresponds to weight b1, and score interval C1 corresponds to weight c1. It should be noted that multiple first score intervals may also include more score intervals. The above three score intervals are only one example of this disclosure, and the embodiments of this disclosure do not limit the number of first score intervals.

[0140] In some examples, each first score interval corresponds to a different threshold range of movement distance and / or motion angle. The first score interval corresponding to the handling equipment can be determined based on the movement distance and / or motion angle of the handling equipment within a preset time range, thereby further determining the first weight corresponding to the first pose.

[0141] For example, if the moving distance and / or motion angle of the transport equipment within a preset time range meet the threshold range corresponding to the fraction interval A1, the first weight corresponding to the first pose can be determined as weight a1.

[0142] In some embodiments, within a preset time range, a second weight is determined based on the number of point clouds in the point cloud data of the environment where the handling equipment is located that can be matched with the identified object.

[0143] In some examples, after acquiring point cloud data collected by the laser sensor within a preset time range, the point cloud data can be initialized to obtain filtered point cloud data. The number of point clouds in the filtered point cloud data that can match the identified object (i.e., the target point cloud in the above embodiments) can then be determined. It should be noted that the method for determining the number of target point clouds has been described in the above embodiments and will not be repeated here to avoid repetition.

[0144] In some embodiments, within a preset time range, the more point clouds of the environment where the handling equipment is located that can be matched with the identified object, the greater the second weight.

[0145] In some examples, the second weight is positively correlated with the amount of target point cloud data; that is, the more target point cloud data there is, the greater the second weight. For instance, a larger amount of target point cloud data indicates richer environmental information acquired by the laser sensor within a measurement cycle, resulting in a more comprehensive and detailed perception of the environment by the laser sensor, and thus a more accurate second pose of the transport device. Therefore, the more target point cloud data there is, the higher the accuracy of the second pose determined by the laser sensor. In this case, when fusing the first and second poses, the second weight corresponding to the second pose can be increased to enhance the influence of the second pose on the target pose.

[0146] For example, multiple second score intervals can be set for the second weight.

[0147] In some examples, multiple second score intervals may include score interval A2, score interval B2, and score interval C2, wherein score interval A2 corresponds to weight a2, score interval B2 corresponds to weight b2, and score interval C2 corresponds to weight c2. It should be noted that multiple second score intervals may also include a greater number of score intervals. The above three score intervals are only one example of this disclosure, and the embodiments of this disclosure do not limit the number of second score intervals.

[0148] In some examples, the range of the number of target point clouds corresponding to each second score interval is different. The corresponding second score interval can be determined based on the number of target point clouds in the initial point cloud data obtained by the laser sensor within a preset time range and the range of the number corresponding to each second score interval, thereby determining the second weight corresponding to the second pose.

[0149] For example, the number of target point clouds corresponding to score interval A2 ranges from 1 to 5, the number of target point clouds corresponding to score interval B2 ranges from 6 to 10, and the number of target point clouds corresponding to score interval C2 ranges from 10 or more. Here, weight a2 is less than weight b2, and weight b2 is less than weight c2. Taking the number of target point clouds acquired by the laser sensor within a preset time range of 8 as an example, it can be determined that score interval B2 is satisfied, meaning the second weight corresponding to the second pose is weight b2.

[0150] Step 252: Based on the first pose and the first weight, and the second pose and the second weight, the target pose is determined by weighted averaging.

[0151] In some examples, after determining the first weight and the second weight through step 251 above, the first pose and the second pose information can be weighted and averaged to obtain the target pose.

[0152] The positioning method provided in this disclosure involves determining the first pose of a handling device by acquiring first detection information from a first acquisition device (such as an odometer) during its movement within a warehouse area. Based on this first pose, second detection information acquired by a second acquisition device (such as a laser sensor), and a warehouse map, the second pose of the handling device is determined. Finally, the first and second poses are used together to determine the target pose of the handling device. Since the first detection information is the location information of the handling device, and the second detection information is the point cloud data corresponding to the environment in which the handling device is located, this disclosure embodiment can achieve positioning of the handling device without the need for identification codes. In other words, compared to related technologies that require identification codes for positioning, this disclosure embodiment, through the cooperation of the first and second acquisition devices, significantly reduces the number of identification codes, thereby lowering the labor and maintenance costs associated with implementing identification codes.

[0153] Figure 7 is a schematic diagram of a positioning process for a handling device provided in an embodiment of this disclosure.

[0154] As shown in Figure 7, the positioning process of this handling equipment includes: First, acquiring the warehouse map, odometer data, and laser sensor data, and determining the robot's first pose based on the odometer data. Then, initializing the laser sensor data to obtain a filtered point cloud. This initialization process includes motion distortion correction and laser plane mapping of the laser sensor data, followed by laser distance filtering, obstacle expansion filtering, and dynamic obstacle filtering. Next, based on the filtered point cloud and the warehouse map, point cloud ICP matching is used to match the filtered point cloud with the shelf legs in the warehouse map, and the robot's second pose is determined based on the matching result. Finally, based on the first and second poses, the target pose of the robot is determined through fusion positioning processing, such as Kalman filtering.

[0155] Figure 8 is a schematic diagram of a handling device provided in an embodiment of this disclosure. As shown in Figure 8, the handling device 800 includes an acquisition module 810 and a determination module 820. Wherein:

[0156] The acquisition module 810 is configured to: acquire a warehouse map corresponding to the warehouse system; wherein the warehouse map includes the location information of multiple identified objects in the warehouse area; the warehouse system includes a warehouse area, which is an area for storing vehicles, and the identified objects are used to identify vehicles; during the movement of the handling equipment in the warehouse area, the module acquires first detection information collected by the first acquisition device and second detection information collected by the second acquisition device; wherein the first detection information includes the displacement information of the handling equipment, and the second detection information includes the initial point cloud data corresponding to the environment where the handling equipment is located, and the initial point cloud data includes multiple point clouds.

[0157] The determination module 820 is configured to: determine the first pose of the handling equipment based on the first detection information, and determine the second pose of the handling equipment based on the first pose, the second detection information and the warehouse map; and determine the target pose of the handling equipment based on the first pose and the second pose.

[0158] In some embodiments, the storage area includes at least one initial point, which is marked with an identification code, while other areas in the storage area other than the initial point are not marked with identification codes; wherein, the handling equipment moves within the storage area based on the initial point.

[0159] In some embodiments, the acquisition module 810 is configured to: acquire third detection information corresponding to the identifier code set at the initial position, collected by the third acquisition device, when the transport device is at the initial position. The determination module 820 is configured to: determine the first pose of the transport device based on the initial pose and the first detection information.

[0160] In some embodiments, the handling device 800 further includes a processing module configured to: initialize the initial point cloud data in the second detection information to obtain filtered point cloud data; wherein the filtered point cloud data includes at least one candidate point cloud, and the multiple point clouds include at least one candidate point cloud. The determining module 820 is configured to: determine the second pose of the handling device based on the first pose, the filtered point cloud data, and the warehouse map.

[0161] In some embodiments, the handling device 800 further includes a matching module, which is configured to: based on a first pose, perform matching processing on at least one candidate point cloud in the filtered point cloud data and multiple identified objects in the warehouse map to obtain a matching result between at least one candidate point cloud and multiple identified objects. The determining module 820 is configured to: determine a second pose of the handling device based on the matching result.

[0162] In some embodiments, the determining module 820 is configured to: determine the position information of each candidate identifier object when the matching result indicates that each candidate point cloud in at least one candidate point cloud is matched with a corresponding candidate identifier object in multiple identifier objects; and determine a second pose based on the position information of the candidate identifier objects.

[0163] In some embodiments, the determining module 820 is configured to: determine the number of target point clouds in the at least one candidate point cloud that can be matched with multiple identifier objects when the matching result indicates that there are candidate point clouds in the at least one candidate point cloud that cannot be matched with identifier objects in multiple identifier objects; and determine a second pose based on the number of target point clouds.

[0164] In some embodiments, the determining module 820 is configured to: determine the position information of the identification object corresponding to each target point cloud when the number of target point clouds is greater than or equal to a preset number threshold; and determine a second pose based on the position information of the identification object corresponding to each target point cloud.

[0165] In some embodiments, the handling device 800 further includes a processing module configured to discard initial point cloud data in the second detection information when the number of target point clouds is less than a preset number threshold. The acquisition module 810 is further configured to acquire first detection information acquired by the first acquisition device in the next measurement cycle, and second detection information acquired by the second acquisition device in the next measurement cycle. The determination module 820 is further configured to: when the number of target point clouds determined based on the second detection information corresponding to the next measurement cycle is greater than or equal to a preset number threshold, determine a third pose of the handling device corresponding to the next measurement cycle based on the first detection information corresponding to the next measurement cycle, and determine a fourth pose of the handling device based on the third pose, the second detection information corresponding to the next measurement cycle, and the warehouse map; and determine the target pose of the handling device based on the third pose and the fourth pose.

[0166] In some embodiments, the processing module is configured to: perform motion distortion correction processing and / or laser plane mapping processing on the initial point cloud data to obtain processed point cloud data; and perform filtering processing on the processed point cloud data to obtain filtered point cloud data; wherein the filtering processing includes at least one of laser distance filtering processing, obstacle filtering processing, and dynamic obstacle filtering processing.

[0167] In some embodiments, the determining module 820 is configured to determine the target pose of the conveying device by means of fusion positioning processing based on the first pose and the second pose.

[0168] In some embodiments, the determining module 820 is configured to: determine a first weight corresponding to the first pose and a second weight corresponding to the second pose; and determine a target pose by weighted averaging based on the first pose and the first weight, as well as the second pose and the second weight.

[0169] In some embodiments, the determining module 820 is configured to: determine a first weight based on the moving distance and / or movement angle of the handling equipment within a preset time range, and determine a second weight based on the number of point clouds in the point cloud data corresponding to the environment where the handling equipment is located, which can be matched with the identified object, obtained by the second acquisition device.

[0170] In some embodiments, the determining module 820 is configured to: within a preset time range, the larger the moving distance of the transport equipment and / or the larger the movement angle of the transport equipment, the smaller the first weight; within a preset time range, the larger the number of point clouds that can be matched with the identified object in the point cloud data corresponding to the environment where the transport equipment is located, the greater the second weight.

[0171] In some embodiments, the carriers in the storage area include shelves, the shelves include multiple shelf legs, and the identified objects include the shelf legs; the storage map is used to indicate the location information of each shelf leg among the multiple shelf legs.

[0172] In some embodiments, the warehousing system includes a warehousing area and a non-warehousing area, and the non-warehousing area is provided with multiple identification codes; the acquisition module 810 is further configured to: when the handling equipment moves from the warehousing area to the non-warehousing area, acquire the detection information corresponding to the target identification code set in the non-warehousing area collected by the third acquisition device; the determination module 820 is further configured to: determine the current pose of the handling equipment in the non-warehousing area based on the detection information corresponding to the target identification code.

[0173] Figure 9 is a schematic diagram of an electronic device provided in an embodiment of this disclosure. In some embodiments, the electronic device includes one or more processors and a memory. The memory is configured to store one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the positioning method in the above embodiments.

[0174] As shown in Figure 9, the electronic device 1000 includes a processor 1001 and a memory 1002. Exemplarily, the electronic device 1000 may also include a communications interface 1003 and a communications bus 1004.

[0175] The processor 1001, memory 1002, and communication interface 1003 communicate with each other via communication bus 1004. Communication interface 1003 is used to communicate with other network elements such as clients or other servers.

[0176] In some embodiments, the processor 1001 is used to execute program 1005, specifically performing the relevant steps in the above-described positioning method embodiments. For example, program 1005 may include program code, which includes computer-executable instructions.

[0177] For example, processor 1001 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present disclosure. Electronic device 1000 may include one or more processors, which may be processors of the same type, such as one or more CPUs; or they may be processors of different types, such as one or more CPUs and one or more ASICs.

[0178] In some embodiments, memory 1002 is used to store program 1005. Memory 1002 may include high-speed RAM memory, and may also include non-volatile memory (NVM), such as at least one disk storage device.

[0179] Specifically, program 1005 can be called by processor 1001 to cause electronic device 1000 to perform the positioning method operation.

[0180] This disclosure provides a computer-readable storage medium storing at least one executable instruction that, when executed on an electronic device 1000, causes the electronic device 1000 to perform the positioning method described in the above embodiments.

[0181] The executable instructions can be used to cause the electronic device 1000 to perform the positioning method operation.

[0182] For example, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.

[0183] In some embodiments, this disclosure provides a computer program product including a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions that, when executed by a computer, cause the computer to perform the positioning method described in any of the above embodiments.

[0184] In some embodiments, this disclosure also provides a computer program that, when executed by a processor, can implement the positioning method described in any of the above embodiments.

[0185] The beneficial effects that the robot, electronic device, computer-readable storage medium, computer program product, and computer program provided in this disclosure can achieve are similar to the beneficial effects of the positioning method provided above, and will not be repeated here.

[0186] It should be noted that in this application, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes the element.

[0187] The embodiments in this disclosure are described in a related manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the apparatus embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0188] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus or device (such as a computer-based system, a processor-included system or other system that can fetch and execute instructions from, an instruction execution system, apparatus or device).

[0189] For the purposes of this disclosure, a "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device.

[0190] More specific examples (a non-exhaustive list) of computer-readable media include the following: electrical connections having one or more wires (electronic devices), portable computer disks (magnetic devices), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM).

[0191] Furthermore, the computer-readable medium can even be paper or other suitable media on which the program can be printed, because the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in computer memory. It should be understood that various parts of this disclosure can be implemented in hardware, software, firmware, or a combination thereof.

[0192] In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0193] The embodiments described above do not constitute a limitation on the scope of protection of this disclosure. All embodiments of this disclosure can be performed individually or in combination with other embodiments, and are all considered to be within the scope of protection claimed by this disclosure.

Claims

1. A positioning method applied to handling equipment in a warehousing system, the method comprising: Obtain the warehouse map corresponding to the warehouse system; wherein, the warehouse map includes the location information of multiple identified objects in the warehouse area; the warehouse system includes the warehouse area, the warehouse area is an area for storing vehicles, and the identified objects are used to identify the vehicles; During the movement of the handling equipment in the storage area, the equipment acquires first detection information collected by a first acquisition device and second detection information collected by a second acquisition device; wherein, the first detection information includes the displacement information of the handling equipment, and the second detection information includes the initial point cloud data corresponding to the environment in which the handling equipment is located, and the initial point cloud data includes multiple point clouds; Based on the first detection information, the first pose of the handling equipment is determined, and based on the first pose, the second detection information, and the warehouse map, the second pose of the handling equipment is determined. Based on the first pose and the second pose, the target pose of the handling device is determined.

2. The method according to claim 1, wherein, The storage area includes at least one initial point, which is marked with an identification code. Other areas in the storage area besides the initial point are not marked with the identification code. The handling equipment moves within the storage area based on the initial point.

3. The method according to claim 2, further comprising: When the transport equipment is located at the initial point, the third detection information corresponding to the identification code set at the initial point is acquired by the third acquisition device; Based on the third detection information, the initial pose of the handling equipment is determined; Determining the first pose of the conveying device based on the first detection information includes: Based on the initial pose and the first detection information, the first pose of the handling device is determined.

4. The method according to any one of claims 1-3, wherein, Before determining the second pose of the handling equipment based on the first pose, the second detection information, and the warehouse map, the method further includes: The initial point cloud data in the second detection information is initialized to obtain filtered point cloud data; wherein, the filtered point cloud data includes at least one candidate point cloud, and the plurality of point clouds includes the at least one candidate point cloud; Determining the second pose of the handling equipment based on the first pose, the second detection information, and the warehouse map includes: Based on the first pose, the filtered point cloud data, and the warehouse map, the second pose of the handling equipment is determined.

5. The method according to claim 4, wherein, Determining the second pose of the handling equipment based on the first pose, the filtered point cloud data, and the warehouse map includes: Based on the first pose, by matching at least one candidate point cloud in the filtered point cloud data with the plurality of identified objects in the warehouse map, a matching result between the at least one candidate point cloud and the plurality of identified objects is obtained. Based on the matching result, the second pose of the handling device is determined.

6. The method according to claim 5, wherein, Determining the second pose of the conveying device based on the matching result includes: When the matching result indicates that each candidate point cloud in the at least one candidate point cloud is matched with a corresponding candidate identifier object in multiple identifier objects, the position information of each candidate identifier object is determined. The second pose is determined based on the location information of the candidate identifier object.

7. The method according to claim 5, wherein, Determining the second pose of the conveying device based on the matching result includes: If the matching result indicates that there are candidate point clouds in the at least one candidate point cloud that do not match the corresponding identifier object, determine the number of target point clouds in the at least one candidate point cloud that can match the corresponding identifier object in the plurality of identifier objects; The second pose is determined based on the number of target point clouds.

8. The method according to claim 7, wherein, Determining the second pose based on the number of target point clouds includes: If the number of target point clouds is greater than or equal to a preset number threshold, determine the location information of the identification object corresponding to each target point cloud; The second pose is determined based on the position information of the identified objects corresponding to each of the target point clouds.

9. The method according to claim 8, further comprising: If the number of target point clouds is less than the preset number threshold, discard the initial point cloud data in the second detection information; Acquire the first detection information collected by the first acquisition device in the next measurement cycle, and the second detection information collected by the second acquisition device in the next measurement cycle; If the number of target point clouds determined by the second detection information corresponding to the next measurement cycle is greater than or equal to the preset number threshold, the third pose of the handling equipment in the next measurement cycle is determined based on the first detection information corresponding to the next measurement cycle, and the fourth pose of the handling equipment is determined based on the third pose, the second detection information corresponding to the next measurement cycle, and the warehouse map. Based on the third pose and the fourth pose, the target pose of the handling device is determined.

10. The method according to claim 4, wherein, The initialization process for the initial point cloud data in the second detection information to obtain filtered point cloud data includes: The initial point cloud data is subjected to motion distortion correction and / or laser plane mapping to obtain the processed point cloud data; The processed cloud data is filtered to obtain the filtered point cloud data; wherein the filtering process includes at least one of laser distance filtering, obstacle filtering, and dynamic obstacle filtering.

11. The method according to any one of claims 1-10, wherein, Determining the target pose of the conveying device based on the first pose and the second pose includes: Based on the first pose and the second pose, the target pose of the conveying device is determined through fusion positioning processing.

12. The method according to claim 11, wherein, The step of determining the target pose of the conveying device based on the first pose and the second pose through fusion positioning processing includes: Determine the first weight corresponding to the first pose and the second weight corresponding to the second pose; The target pose is determined by weighted averaging based on the first pose and the first weight, and the second pose and the second weight.

13. The method according to claim 12, wherein, Determining the first weight corresponding to the first pose and the second weight corresponding to the second pose includes: Within a preset time range, the first weight is determined based on the moving distance and / or movement angle of the transport equipment, and the second weight is determined based on the number of point clouds in the point cloud data corresponding to the environment where the transport equipment is located, which are obtained by the second acquisition device, that can match the identified object.

14. The method according to claim 13, wherein, Within a preset time range, the first weight is determined based on the moving distance and / or movement angle of the transport equipment, and the second weight is determined based on the number of point clouds in the point cloud data corresponding to the environment where the transport equipment is located, acquired by the second acquisition device, that can match the identified object, including: Within the preset time range, the greater the moving distance of the conveying equipment, and / or the greater the moving angle of the conveying equipment, the smaller the first weight; Within the preset time range, the more point clouds that can be matched with the identified object in the point cloud data corresponding to the environment where the handling equipment is located, the greater the second weight.

15. The method according to any one of claims 1-14, wherein, The vehicles in the storage area include shelves, the shelves include multiple shelf legs, and the identified objects include the shelf legs; the storage map is used to indicate the location information of each shelf leg among the multiple shelf legs.

16. The method according to any one of claims 1-15, wherein, The warehousing system includes a warehousing area and a non-warehousing area, the non-warehousing area being equipped with multiple identification codes; the method further includes: When the handling equipment moves from the storage area to a non-storage area, the detection information corresponding to the target identification code set in the non-storage area is acquired by the third acquisition device; Based on the detection information corresponding to the target identification code, the current position of the handling equipment in the non-warehouse area is determined.

17. A handling device, comprising: The acquisition module is configured to: acquire a warehouse map corresponding to the warehouse system; wherein, the warehouse map includes the location information of multiple identified objects in the warehouse area; the warehouse system includes the warehouse area; the warehouse area is an area for storing vehicles, and the identified objects are used to identify the vehicles; During the movement of the handling equipment in the storage area, the equipment acquires first detection information collected by a first acquisition device and second detection information collected by a second acquisition device; wherein, the first detection information includes the displacement information of the handling equipment, and the second detection information includes the initial point cloud data corresponding to the environment in which the handling equipment is located, and the initial point cloud data includes multiple point clouds; The determination module is configured to: determine the first pose of the handling equipment based on the first detection information, and determine the second pose of the handling equipment based on the first pose, the second detection information, and the warehouse map; Based on the first pose and the second pose, the target pose of the handling device is determined.

18. An electronic device comprising: One or more processors and memory; The memory is configured to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the positioning method according to any one of claims 1-16.

19. A computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the positioning method according to any one of claims 1-16.

20. A computer program product comprising a computer program that, when executed by a processor, implements the positioning method according to any one of claims 1-16.