AGV positioning method and device based on double-layer map, vehicle and storage medium

By adopting a double -layer map method in AGV positioning technology to build basic point cloud maps and top maps, the problem of inaccurate positioning in complex scenarios is solved, and higher positioning accuracy is achieved.

CN119354209APending Publication Date: 2025-01-24SANHE ROBOT TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411566279.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-05
Publication Date
2025-01-24

AI Technical Summary

Technical Problem

When faced with complex scenarios, existing AGV positioning technology is prone to problems of inaccurate positioning or loss, especially in degraded scenarios, repeated scenarios and dynamic scenarios.

Method used

The AGV positioning method based on double -layer maps is adopted, and the characteristics of static objects and artificial land standards are extracted by constructing basic point cloud maps and top maps in multiple regions to improve accuracy.

Benefits of technology

It effectively solves the problem of positioning error or loss in complex scenarios and improves the positioning accuracy of AGV in repeated, degraded and dynamic scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119354209A_ABST
    Figure CN119354209A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of SLAM (Simultaneous Localization and Mapping) positioning, and discloses an AGV (Automatic Guided Vehicle) positioning method and device based on a double-layer map, a vehicle and a storage medium. The method comprises the steps of obtaining a point cloud map of each area, extracting static object features capable of determining AGV positioning and / or an artificial landmark set arranged in a working environment from the point cloud map of each area, constructing a top map corresponding to each area, matching a current frame radar point cloud obtained by the AGV with a basic point cloud map, determining a first positioning result of the AGV, and obtaining a second positioning result of the AGV. The method comprises the steps of determining a first positioning result of an AGV, determining a current area where the AGV is located based on the first positioning result, matching a current frame radar point cloud with a top map corresponding to the current area, determining a second positioning result of the AGV, and finally comparing the first positioning result with the second positioning result, and determining a final positioning result of the AGV, thereby solving the problem of positioning errors in various scenes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of SLAM positioning technology, and in particular to an AGV positioning method, device, vehicle and storage medium based on a double-layer map. Background Art

[0002] In the automated guided vehicle (AGV) industry, the usual practice of laser simultaneous localization and mapping (SLAM) is to build a map first and then locate. That is, first build a laser SLAM point cloud map, and then the AGV matches the current frame point cloud with the fixed map during actual operation.

[0003] The disadvantages of the existing solution are: 1. For degraded scenarios, such as long corridors, no matter where the AGV is in the corridor, the point cloud and the left and right walls match well, but the front and back positions will be inaccurate. If there is a workstation in the corridor, it is easy to have inaccurate matching at the workstation door, resulting in biased entry into the workstation; 2. If there are repeated structures in the scene, such as columns with 6m intervals in space, when positioning just at the start, or when repositioning after positioning is lost, the current frame point cloud can match any group of columns, resulting in positioning errors; 3. When the scene SLAM map changes, for example, part of the scene changes due to construction, the current frame point cloud does not match the map, or the matching is wrong, resulting in inaccurate AGV positioning. Summary of the invention

[0004] In view of this, the present invention provides an AGV positioning method, device, vehicle and storage medium based on a double-layer map to solve the problem of inaccurate AGV positioning when facing various complex scenes using laser SLAM point cloud maps.

[0005] In the first aspect, the present invention provides an AGV positioning method based on a double-layer map, the method comprising: constructing a basic point cloud map based on the working environment of the AGV; dividing the basic point cloud map into multiple areas, and extracting static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and constructing a top-level map corresponding to each area; matching the current frame radar point cloud acquired by the AGV with the basic point cloud map to determine a first positioning result of the AGV; determining the current area where the AGV is located based on the first positioning result of the AGV, and matching the current frame radar point cloud with the top-level map corresponding to the current area to determine a second positioning result of the AGV; comparing the first positioning result of the AGV with the second positioning result of the AGV to determine the final positioning result of the AGV.

[0006] The AGV positioning method based on a double-layer map provided by the present invention constructs a basic point cloud map based on the working environment of the AGV, divides the basic point cloud map into multiple areas, and extracts static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, constructs a top-level map corresponding to each area, matches the current frame radar point cloud obtained by the AGV with the basic point cloud map, determines the first positioning result of the AGV, then determines the current area where the AGV is located based on the first positioning result, matches the current frame radar point cloud with the top-level map corresponding to the current area, determines the second positioning result of the AGV, and finally compares the first positioning result and the second positioning result to determine the final positioning result of the AGV, which can solve the positioning error or loss problems in scenarios such as repeated scenes, degraded scenes, and dynamic scenes.

[0007] In an optional embodiment, the top-level map includes at least static object features and / or a set of artificial landmarks based on coordinate system attributes corresponding to different point clouds, the set of artificial landmarks includes reflective columns and / or fixed static objects, and the static object features that can determine the positioning of the AGV and / or the set of artificial landmarks arranged in the working environment are extracted from the point cloud map of each area to construct the top-level map corresponding to each area, including: selecting static object features that can determine the positioning of the AGV from the point cloud map of the current area, and using the selected static object features to form a top-level map based on the coordinate system attributes corresponding to different point clouds, and / or, screening out reflective columns whose point cloud intensity is greater than a preset intensity threshold from the point cloud map of the current area, and using the reflective columns to form a top-level map based on the coordinate system attributes corresponding to different point clouds in the current area, and / or, using visual SLAM technology to obtain multi-frame image information of the current area, and obtaining fixed static objects from the multi-frame image information, and using the fixed static objects to form a top-level map based on the coordinate system attributes corresponding to different point clouds.

[0008] The present invention can select corresponding different static object features and / or artificial landmark sets based on the characteristics of the current AGV working environment. For degraded scenes, repeated scenes, and dynamically changing scenes, there are corresponding top-level maps for secondary positioning to improve the positioning results.

[0009] In an optional embodiment, the top-level map at least includes static object features and / or a set of artificial landmarks based on coordinate system attributes corresponding to different point clouds, and the current frame radar point cloud is matched with the top-level map corresponding to the current area to determine the second positioning result of the AGV, including: obtaining a first coordinate system of the static object features and / or artificial landmark set in the current frame radar point cloud, wherein the static object features and / or artificial landmark set are the static object features and / or artificial landmark set in the top-level map corresponding to the current area; matching the first coordinate system with the static object features and / or artificial landmark set in the top-level map based on the coordinate system attributes corresponding to different point clouds to determine the second positioning result of the AGV.

[0010] The present invention obtains the first coordinate system of the static object features and / or artificial landmark set in the current frame radar point cloud, and then matches it with the coordinate system attributes corresponding to different point clouds of the static object features and / or artificial landmark set in the top-level map. Through the conversion of the coordinate system, the positioning result after secondary positioning in the top-level map can be accurately determined.

[0011] In an optional embodiment, the positioning result includes the posture of the AGV, and the first positioning result of the AGV is compared with the second positioning result of the AGV to determine the final positioning result of the AGV, including: judging whether the difference between the first posture of the AGV in the first positioning result and the second posture of the AGV in the second positioning result is greater than a preset posture difference threshold; if the difference between the first posture and the second posture is greater than the preset posture difference threshold, controlling the AGV to position at the second posture, obtaining the current frame radar point cloud, and matching the current frame radar point cloud with the basic point cloud map to determine the third posture of the AGV; performing weighted summation of the third posture of the AGV and the second posture to determine the final posture of the AGV.

[0012] If the present invention determines that the difference between the first posture and the second posture of the AGV is greater than a preset difference threshold, the AGV can be controlled to be positioned at the second posture, the frame radar point cloud can be reacquired, and re-matched with the basic point cloud map to obtain the third posture, and the second posture and the third posture are weightedly summed. Finally, an accurate AGV positioning result that integrates the double-layer map can be obtained.

[0013] In an optional embodiment, before performing weighted summation on the third posture and the second posture of the AGV, the method also includes: determining whether the difference between the third posture and the second posture of the AGV is greater than a preset posture difference threshold; if the difference between the third posture and the second posture of the AGV is still greater than the preset posture difference threshold, it is determined that the AGV positioning has failed, and the user is prompted with the AGV positioning failure information.

[0014] The present invention judges the posture difference again after obtaining the third posture. If the difference between the second posture and the third posture is still greater than the posture difference threshold, it is determined that the positioning has failed. The user can be prompted with the AGV positioning failure information so that the user can make corresponding adjustments in time to ensure that the AGV operation task is completed on time.

[0015] In an optional embodiment, the method also includes: if the first coordinate system fails to successfully match the coordinate system attributes corresponding to the static object features and / or artificial landmark set in the top-level map based on all point clouds, it is determined that the top-level positioning match has failed, and the user is prompted with information that the top-level positioning match has failed.

[0016] In an optional embodiment, the second positioning result also includes positioning quality. Before comparing the first positioning result of the AGV with the second positioning result of the AGV, the method also includes: determining whether the positioning quality is less than a preset quality threshold; if the positioning quality is less than the preset quality threshold, repeating the steps of determining the current area where the AGV is located based on the first positioning result of the AGV, and matching the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV, until the positioning quality is not less than the preset quality threshold, or setting the second positioning result of the AGV to invalid, so as to determine the first positioning result of the AGV as the final positioning result of the AGV.

[0017] The positioning result of the present invention includes positioning quality. By comparing the positioning quality with a preset quality threshold, it is determined whether the current second positioning result is valid. If it is valid, the second positioning result is compared with the first positioning result to obtain the final positioning result of the AGV, thereby avoiding the positioning result of the AGV being affected by system errors, thereby improving the positioning result of the AGV.

[0018] In the second aspect, the present invention provides an AGV positioning device based on a double-layer map, the device comprising: a basic point cloud map construction module, used to construct a basic point cloud map based on the working environment of the AGV; a top-level map construction module, used to divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and construct a top-level map corresponding to each area; a first map matching module, used for first positioning, matching the current frame radar point cloud acquired by the AGV with the basic point cloud map, and determining a first positioning result of the AGV; a second map matching module, used to determine the current area where the AGV is located based on the first positioning result of the AGV, and matching the current frame radar point cloud with the top-level map corresponding to the current area, and determining a second positioning result of the AGV; a positioning comparison module, used to compare the first positioning result of the AGV with the second positioning result of the AGV, and determine the final positioning result of the AGV.

[0019] In a third aspect, the present invention provides a vehicle, comprising a controller, the controller comprising a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the computer instructions to execute the AGV positioning method based on a double-layer map according to the first aspect or any corresponding embodiment thereof.

[0020] In a fourth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the AGV positioning method based on a double-layer map according to the first aspect or any corresponding embodiment thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0022] Figure 1 is a schematic flow chart of an AGV positioning method based on a double-layer map according to an embodiment of the present invention;

[0023] Figure 2 is an example diagram of a repetitive scene according to an embodiment of the present invention;

[0024] Figure 3 is a flow chart of another AGV positioning method based on a double-layer map according to an embodiment of the present invention;

[0025] Figure 4 is an example diagram of a degradation scenario according to an embodiment of the present invention;

[0026] Figure 5 is an example diagram of a dynamic or scene according to an embodiment of the present invention;

[0027] Figure 6 is an example diagram of the interaction of various modules of the AGV positioning system based on a double-layer map according to an embodiment of the present invention;

[0028] Figure 7 is a structural block diagram of an AGV positioning device based on a double-layer map according to an embodiment of the present invention;

[0029] Figure 8 is a schematic structural diagram of a vehicle according to an embodiment of the present invention;

[0030] Fig. 9Schematic diagram of the hardware structure of the controller according to the embodiment of the present invention. DETAILED DESCRIPTION

[0031] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0032] According to an embodiment of the present invention, an embodiment of an AGV positioning method based on a double-layer map is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0033] In this embodiment, a double-layer map-based AGV positioning method is provided, which can be used for the above-mentioned controller. Figure 1 is a flow chart of an AGV positioning method based on a double-layer map according to an embodiment of the present invention. Figure 1 As shown, the process includes the following steps:

[0034] Step S101, constructing a basic point cloud map based on the working environment of the AGV.

[0035] The orientation of the basic point cloud map, i.e., the SLAM map, constructed by the AGV cart in an embodiment of the present invention includes but is not limited to the Global Positioning System (GPS), lidar positioning and visual SLAM technology. Taking lidar positioning as an example, the lidar installed on the AGV cart can provide high-resolution distance information under various lighting conditions by emitting laser beams and capturing reflected signals, thereby constructing a basic point cloud map of the AGV's working environment.

[0036] Step S102, divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and construct a top-level map corresponding to each area.

[0037] In the embodiment of the present invention, the basic point cloud map can be divided into multiple areas, wherein the conditions and forms of dividing the areas are not limited. For example, the sensor stability area in the basic point cloud map can be pre-screened, and each area can be framed in the sensor stability area in the form of a rectangular frame, etc., and static object features that can determine the positioning of the AGV and / or artificial landmarks arranged in the working environment can be extracted from each framed area. The static object features that can determine the positioning of the AGV can be static objects that are relatively small in number in the area and can significantly determine the positioning of the vehicle, such as Figure 2 As shown, the area includes multiple repeated column structures and surrounding walls. If the AGV is positioned between two columns, it may be incorrectly positioned between other columns. In this case, the surrounding walls or multiple corners of the walls can be selected as static object features that can determine the positioning of the AGV; the set of artificial landmarks arranged in the working environment can be positioning means such as reflective stickers and reflective columns, or artificial landmarks such as QR codes posted on the wall that can significantly indicate the positioning of the vehicle can be selected. This is just an example. The specific selection can be made according to the details of the point cloud map in the area and actual needs, without limitation. Subsequently, the selected static object features and / or the set of artificial landmarks arranged in the working environment can be based on the coordinate system of each point cloud in the area and other attribute information that can calculate distance and posture to form a top-level map corresponding to each area. Therefore, the top-level map can include various coordinate systems of static object features. The form of the top-level map is not limited, and it can be a picture or a text format, just as an example.

[0038] Step S103, matching the current frame radar point cloud acquired by the AGV with the basic point cloud map to determine the first positioning result of the AGV.

[0039] In the embodiment of the present invention, when the AGV reaches a certain position, the current frame radar point cloud can be obtained through the laser radar, and the current frame radar point cloud is matched with the basic point cloud map to determine the first positioning result of the current AGV.

[0040] Step S104, determining the current area where the AGV is located based on the first positioning result of the AGV, and matching the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV.

[0041] The embodiment of the present invention can determine the current area where the AGV is located based on the first positioning result of the AGV, that is, trigger the top-level map of the current area, and can match the current frame radar point cloud or image information collected by the image acquisition device with the top-level map based on the current frame radar point cloud or image information. Among them, the current frame radar point cloud includes the coordinate system of static object features or artificial landmarks in the top-level map. Then, based on the coordinate system of static object features or artificial landmarks in the current frame radar point cloud, the coordinate system of static object features or artificial landmarks in the top-level map, and the first positioning result of the AGV, a group of equations can be constructed to solve the rotation matrix and the translation vector, and finally, the second positioning result of the AGV can be obtained based on the top-level map, as an example only.

[0042] Step S105 , comparing the first positioning result of the AGV with the second positioning result of the AGV to determine the final positioning result of the AGV.

[0043] The embodiment of the present invention can compare the first positioning result of the AGV with the second positioning result of the AGV, wherein the method of comparing the two positioning results is not limited, and it can be to find the average of the two positioning results and use the average positioning result as the final positioning result of the AGV, or to perform weighted summation on the two positioning results to obtain the final positioning result of the AGV. The specific weight can be set according to the actual positioning task so that the AGV car can perform the task based on the final positioning result, which is only taken as an example.

[0044] The AGV positioning method based on a double-layer map provided in this embodiment constructs a basic point cloud map based on the working environment of the AGV, divides the basic point cloud map into multiple areas, and extracts static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, constructs a top-level map corresponding to each area, matches the current frame radar point cloud acquired by the AGV with the basic point cloud map, determines the first positioning result of the AGV, and then determines the current area where the AGV is located based on the first positioning result, matches the current frame radar point cloud with the top-level map corresponding to the current area, determines the second positioning result of the AGV, and finally compares the first positioning result and the second positioning result to determine the final positioning result of the AGV, which can solve the positioning error or loss problems in scenarios such as repeated scenes, degraded scenes, and dynamic scenes.

[0045] In this embodiment, a double-layer map-based AGV positioning method is provided, which can be used for the above-mentioned controller. Figure 3 is a flow chart of an AGV positioning method based on a double-layer map according to an embodiment of the present invention. Figure 3 As shown, the process includes the following steps:

[0046] Step S301: construct a basic point cloud map based on the working environment of the AGV. Figure 1 Step S101 of the illustrated embodiment will not be described in detail here.

[0047] Step S302: divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area to construct a top-level map corresponding to each area.

[0048] Specifically, the top-level map at least includes static object features and / or a set of artificial landmarks based on coordinate system attributes corresponding to different point clouds, and the artificial landmark set includes reflective columns and / or fixed static objects. Static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment are extracted from the point cloud map of each area to construct a top-level map corresponding to each area, including: selecting static object features that can determine the positioning of the AGV from the point cloud map of the current area, and using the selected static object features to form a top-level map based on the coordinate system attributes corresponding to different point clouds, and / or, screening out reflective columns whose point cloud intensity is greater than a preset intensity threshold from the point cloud map of the current area, and using the reflective columns to form a top-level map based on the coordinate system attributes corresponding to different point clouds in the current area, and / or, using visual SLAM technology to obtain multi-frame image information of the current area, and obtain fixed static objects from the multi-frame image information, and use the fixed static objects to form a top-level map based on the coordinate system attributes corresponding to different point clouds.

[0049] When selecting static object features from the point cloud map of the current area, the embodiment of the present invention may select unique features in the SLAM map of the area, for example, Figure 2 In the repeated structure scene shown, the surrounding walls can be selected as static features, such as Figure 4 The workstation door in the degenerate scene shown in the figure includes a long corridor and four workstation columns. When the AGV is in any section of the corridor, it may have forward and backward positioning errors. Therefore, the four workstation columns can be selected as static object features that can determine the positioning of the AGV. The selected static object features can then be used to form a top-level map based on the coordinate system attributes corresponding to different point clouds in the current area. Additional positioning methods can also be added in dynamic or scene-changing areas, such as Figure 5As shown, several reflective stickers or reflective columns can be added to the working environment as distinctive landmarks. After the SLAM map is constructed, the reflective columns or reflective stickers whose point cloud intensity is greater than the preset intensity threshold in the point cloud map can be obtained, and the reflective columns or reflective stickers can be used to form a top-level map based on the coordinate system attributes corresponding to different point clouds in the current area; artificial landmarks such as QR codes can also be added to the working environment for visual positioning; a visual SLAM solution can also be used to obtain multiple frames of images of the current area and record key frames (KeyFrame) in key areas, that is, fixed static objects are obtained from the image information of multiple frames, such as landmarks such as signboards and warning signs that can be used for positioning, and the fixed static objects are used to form a top-level map based on the coordinate system attributes corresponding to different point clouds, as an example only.

[0050] The present invention can select corresponding different static object features and / or artificial landmark sets based on the characteristics of the current AGV working environment. For degraded scenes, repeated scenes, and dynamically changing scenes, there are corresponding top-level maps for secondary positioning to improve the positioning results.

[0051] Step S303, match the current frame radar point cloud acquired by the AGV with the basic point cloud map to determine the first positioning result of the AGV. Figure 1 Step S103 of the illustrated embodiment will not be described in detail here.

[0052] Step S304, based on the first positioning result of the AGV, determine the current area where the AGV is located, and match the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV.

[0053] Specifically, the top-level map at least includes static object features and / or artificial landmark sets based on coordinate system attributes corresponding to different point clouds. The above step S304 includes:

[0054] Step S3041, obtaining the first coordinate system of the static object features and / or artificial landmark set in the radar point cloud of the current frame.

[0055] The static object features and / or artificial landmark set is a static object features and / or artificial landmark set in the top-level map corresponding to the current area.

[0056] Step S3042: Match the first coordinate system with the static object features and / or artificial landmark sets in the top-level map based on the coordinate system attributes corresponding to different point clouds to determine the second positioning result of the AGV.

[0057] The positioning result obtained in the embodiment of the present invention may include but is not limited to the posture of the AGV. The current frame radar point cloud obtained by the AGV is matched with the basic point cloud map to determine the first positioning result of the AGV, such as the first matched posture is (12,5). The current area where the AGV is located is determined based on the first positioning result of the AGV, and after triggering the top-level map corresponding to the current area, the static object features and / or artificial landmark set in the top-level map can be obtained, and the current frame radar point cloud or the image acquisition device on the AGV trolley can obtain the first coordinate system corresponding to the static object features and / or artificial landmark set in the image information obtained based on the current positioning position, and then the current frame radar point cloud or image information is matched with the top-level map, that is, the first coordinate system is matched with the static object features and / or artificial landmark set in the top-level map based on the coordinate system attributes corresponding to different point clouds, to determine the second positioning result of the AGV, such as the second posture of the AGV obtained is (0,5), just as an example.

[0058] The present invention obtains the first coordinate system of the static object features and / or artificial landmark set in the current frame radar point cloud, and then matches it with the coordinate system attributes corresponding to different point clouds of the static object features and / or artificial landmark set in the top-level map. Through the conversion of the coordinate system, the positioning result after secondary positioning in the top-level map can be accurately determined.

[0059] In an optional embodiment, if the first coordinate system fails to successfully match the coordinate system attributes corresponding to the static object features and / or artificial landmark set in the top-level map based on all point clouds, it is determined that the top-level positioning match has failed, and the user is prompted with information that the top-level positioning match has failed.

[0060] An embodiment of the present invention matches the first coordinate system with the static object features and / or artificial landmark sets in the top-level map based on the coordinate system attributes corresponding to all point clouds. If the first coordinate system fails to match the coordinate system attributes corresponding to the static object features and / or artificial landmark sets based on any one point cloud, it may indicate that the positioning posture difference is too large, and the top-level positioning is determined to be lost, and the user is prompted with information that the top-level positioning matching has failed, so that the user can manually adjust the AGV or correct the system.

[0061] Step S305 , comparing the first positioning result of the AGV with the second positioning result of the AGV to determine the final positioning result of the AGV.

[0062] Specifically, the positioning result includes the position and posture of the AGV, and the above step S305 includes:

[0063] Step S3051, determining whether the difference between the first posture of the AGV in the first positioning result and the second posture of the AGV in the second positioning result is greater than a preset posture difference threshold.

[0064] Step S3052: If the difference between the first posture and the second posture is greater than the preset posture difference threshold, the AGV is controlled to be positioned at the second posture, the current frame radar point cloud is obtained, and the current frame radar point cloud is matched with the basic point cloud map to determine the third posture of the AGV.

[0065] Step S3053: Perform a weighted summation of the third posture and the second posture of the AGV to determine the final posture of the AGV.

[0066] After obtaining the first positioning result based on the basic point cloud map positioning and obtaining the second positioning result by matching the current frame radar point cloud with the top-level map, the embodiment of the present invention can determine whether the difference between the first posture of the AGV in the first positioning result and the second posture of the AGV in the second positioning result is greater than a preset posture difference threshold, wherein the setting of the posture difference threshold is not limited and can be set according to the positioning accuracy requirements and the actual application scenario, for example, it can be set to 10 meters. If the difference between the first posture and the second posture is greater than the preset difference threshold, for example, the difference between the first posture (12,5) and the second posture (0,5) is greater than 10 meters, the AGV can be controlled to be positioned at the second posture, that is, the second posture is sent to the basic point cloud map, and the frame radar point cloud at the second posture is obtained. The obtained frame radar point cloud is matched with the basic point cloud map to obtain the matched third pose, such as (0.01, 5). As an example only, it can be judged whether the difference between the third pose and the second pose is less than the preset pose difference threshold. If it is less than the preset pose difference threshold, it can indicate that the positioning is successful, and then the third pose of the AGV is weighted and summed with the second pose. Generally, considering that there are many features involved in the pose calculation in the basic point cloud map, the weight corresponding to the basic point cloud map can be set to a larger proportion, such as setting the weight corresponding to the basic point cloud map to 0.8 and the weight corresponding to the top map to 0.2. As an example only, T = 0.8*(0.01, 5) + 0.2*(0, 5) to obtain the final pose of the AGV.

[0067] If the present invention determines that the difference between the first posture and the second posture of the AGV is greater than a preset difference threshold, the AGV can be controlled to be positioned at the second posture, the frame radar point cloud can be reacquired, and re-matched with the basic point cloud map to obtain the third posture, and the second posture and the third posture are weightedly summed. Finally, an accurate AGV positioning result that integrates the double-layer map can be obtained.

[0068] In an optional embodiment, before performing weighted summation on the third posture and the second posture of the AGV, it is determined whether the difference between the third posture and the second posture of the AGV is greater than a preset posture difference threshold; if the difference between the third posture and the second posture of the AGV is still greater than the preset posture difference threshold, it is determined that the AGV positioning has failed, and the user is prompted with the AGV positioning failure information.

[0069] After the embodiment of the present invention positions the AGV at the second posture, obtains the current frame radar point cloud and matches it with the basic point cloud map to obtain the third posture of the AGV, the third posture of the AGV can be compared with the second posture corresponding to the top-level map again to determine whether it is greater than a preset posture difference threshold. If the difference between the second posture and the third posture is still greater than the preset posture difference threshold, it can be determined that the AGV positioning has failed, and the user is prompted that the AGV positioning has failed, so that the user can adjust the AGV vehicle or repair the system, etc., as an example only.

[0070] The present invention judges the posture difference again after obtaining the third posture. If the difference between the second posture and the third posture is still greater than the posture difference threshold, it is determined that the positioning has failed. The user can be prompted with the AGV positioning failure information so that the user can make corresponding adjustments in time to ensure that the AGV operation task is completed on time.

[0071] In an optional embodiment, the positioning result also includes positioning quality. Before comparing the first positioning result of the AGV with the second positioning result of the AGV, it is determined whether the positioning quality is less than a preset quality threshold; if the positioning quality is less than the preset quality threshold, the steps of determining the current area where the AGV is located based on the first positioning result of the AGV, matching the current frame radar point cloud with the top-level map corresponding to the current area, and determining the second positioning result of the AGV are repeated until the positioning quality is not less than the preset quality threshold, or the second positioning result of the AGV is set to invalid, so as to determine the first positioning result of the AGV as the final positioning result of the AGV.

[0072] The positioning result of the embodiment of the present invention may also include positioning quality. After obtaining the second positioning result, it is possible to first determine whether the positioning quality is less than a preset quality threshold, such as setting a quality threshold of 0.6. If the second positioning quality is less than 0.6, the current area where the AGV is located can be repeatedly determined based on the first positioning result of the AGV, and then the current frame radar point cloud is matched with the top-level map corresponding to the current area to determine the second positioning result of the AGV until the positioning quality is not less than 0.6. After the positioning quality is not less than 0.6, the second posture can be compared with the first posture to determine the final positioning result of the AGV. After determining that the positioning quality during the current positioning is less than the preset quality threshold, the second positioning result of the AGV currently calculated can be set as invalid, and the first positioning result of the AGV can be determined as the final positioning result of the AGV. During the next positioning, it is still matched with the basic point cloud map and the top-level map to determine the positioning result of the AGV.

[0073] The positioning result of the present invention includes positioning quality. By comparing the positioning quality with a preset quality threshold, it is determined whether the current second positioning result is valid. If it is valid, the second positioning result is compared with the first positioning result to obtain the final positioning result of the AGV, thereby avoiding the positioning result of the AGV being affected by system errors, thereby improving the positioning result of the AGV.

[0074] In a specific embodiment, Figure 6 As shown, an embodiment of the present invention can design an AGV positioning system based on a double-layer map, which system may include a mapping module, a basic SLAM map positioning module, a top-level map positioning module and a positioning management module. When the mapping module builds the map for the first time, it builds a basic point cloud map based on the current working environment of the AGV, and can also divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and build a top-level map corresponding to each area. The method for building the top-level map can be to select some features from the basic SLAM map, such as the only features in the area such as the workstation column legs and the wall, or add additional positioning means, such as adding several reflective stickers or reflective columns as the top-level map, or sticking a QR code on the wall, using visual positioning, or using visual SLAM technology to record key frames and other landmarks in key areas for visual positioning.

[0075] During positioning, the basic SLAM map positioning module matches the basic point cloud map based on the current frame radar point cloud to obtain the first positioning result of the AGV, and can upload the first positioning result to the positioning management module. The AGV car can also choose to transmit the current frame radar point cloud or image information to the top-level map positioning module based on the static object features and / or artificial landmark set in the top-level map of the area where the first positioning result is located. For example, if there are landmarks such as key frames or visual features such as QR codes in the top-level map, the acquired image information can be transmitted to the top-level map positioning module, or static object features such as workstation columns and legs, the current frame radar point cloud and / or image information can be transmitted to the top-level map positioning module. The top-level map positioning module calculates the second positioning result based on the current frame radar point cloud and / or image information, and transmits the second result to the positioning management module.

[0076] The positioning management module summarizes the first positioning result and the second positioning result of the AGV to obtain the final positioning result of the AGV, and sends the final positioning result of the AGV to the vehicle control module, etc., wherein the summary strategy includes: if the first coordinate system does not successfully match the coordinate system attributes corresponding to the static object features and / or artificial landmark sets in the top-level map based on all point clouds, it is determined that the top-level positioning match has failed; if the first coordinate system successfully matches the coordinate system attributes corresponding to the static object features and / or artificial landmark sets in the top-level map based on a certain point cloud, the second posture of the AGV is obtained, and it can be determined whether the posture difference between the first posture and the second posture of the AGV in the first positioning result is less than the preset If the pose difference threshold is not less than the pose difference threshold, the second pose is sent to the basic SLAM map positioning module to control the AGV to locate at the second pose, obtain the current frame radar point cloud, and match the current frame radar point cloud with the basic point cloud map to determine the third pose of the AGV. If the difference between the third pose and the second pose is less than the pose difference threshold, the positioning is determined to be successful. The second pose and the third pose can be weightedly summed to obtain the final positioning result of the AGV. If the difference between the third pose and the second pose is still greater than the pose difference threshold, the positioning is determined to have failed, and the user is prompted with the positioning failure information. For detailed description, please refer to the above embodiment, which will not be repeated here.

[0077] In this embodiment, an AGV positioning device based on a double-layer map is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and will not be repeated hereafter. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0078] This embodiment provides an AGV positioning device based on a double-layer map, such as Figure 7 As shown, it includes: a basic point cloud map construction module 701, which is used to construct a basic point cloud map based on the working environment of the AGV; a top-level map construction module 702, which is used to divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and construct a top-level map corresponding to each area; a first map matching module 703, which is used for matching the current frame radar point cloud obtained by the AGV with the basic point cloud map for the first positioning, and determining the first positioning result of the AGV; a second map matching module 704, which is used to determine the current area where the AGV is located based on the first positioning result of the AGV, and match the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV; a positioning comparison module 705, which is used to compare the first positioning result of the AGV with the second positioning result of the AGV to determine the final positioning result of the AGV.

[0079] In some optional embodiments, the top-level map includes at least static object features and / or a set of artificial landmarks based on coordinate system attributes corresponding to different point clouds, and the set of artificial landmarks includes reflective columns and / or fixed static objects. The top-level map construction module 702 includes: a static object feature extraction unit, which is used to select static object features that can determine the positioning of the AGV from the point cloud map of the current area, and use the selected static object features based on the coordinate system attributes corresponding to different point clouds to form a top-level map, a reflective column extraction unit, which is used to and / or, filter out reflective columns whose point cloud intensity is greater than a preset intensity threshold from the point cloud map of the current area, and use the reflective columns based on the coordinate system attributes corresponding to different point clouds in the current area to form a top-level map, and / or, a visual technology extraction unit, which is used to use visual SLAM technology to obtain multi-frame image information of the current area, and obtain fixed static objects from the multi-frame image information, and use the fixed static objects based on the coordinate system attributes corresponding to different point clouds to form a top-level map.

[0080] In some optional embodiments, the top-level map at least includes static object features and / or artificial landmark sets based on coordinate system attributes corresponding to different point clouds, and the second map matching module 704 includes: a first coordinate system acquisition unit, used to acquire the first coordinate system of the static object features and / or artificial landmark sets in the radar point cloud of the current frame, the static object features and / or artificial landmark sets being the static object features and / or artificial landmark sets in the top-level map corresponding to the current area; a map matching unit, used to match the first coordinate system with the static object features and / or artificial landmark sets in the top-level map based on the coordinate system attributes corresponding to different point clouds, to determine the second positioning result of the AGV.

[0081] In some optional embodiments, the positioning result includes the posture of the AGV, and the positioning comparison module 705 includes: a posture difference calculation unit, used to determine whether the difference between the first posture of the AGV in the first positioning result and the second posture of the AGV in the second positioning result is greater than a preset posture difference threshold; a third posture calculation unit, used to control the AGV to position to the second posture if the difference between the first posture and the second posture is greater than the preset posture difference threshold, obtain the current frame radar point cloud, and match the current frame radar point cloud with the basic point cloud map to determine the third posture of the AGV; a final posture calculation unit, used to perform weighted summation of the third posture of the AGV and the second posture to determine the final posture of the AGV.

[0082] In some optional embodiments, before performing weighted summation on the third posture and the second posture of the AGV, the device also includes: a posture difference judgment module, used to judge whether the difference between the third posture and the second posture of the AGV is greater than a preset posture difference threshold; a positioning failure determination module, used to determine that the AGV positioning has failed if the difference between the third posture and the second posture of the AGV is still greater than the preset posture difference threshold, and prompt the user with AGV positioning failure information.

[0083] In some optional embodiments, the device also includes: a matching failure determination module, which is used to determine that the top-level positioning match has failed if the first coordinate system has not successfully matched the static object features and / or artificial landmark sets in the top-level map based on the coordinate system attributes corresponding to all point clouds, and prompt the user with the top-level positioning match failure information.

[0084] In some optional embodiments, the second positioning result also includes positioning quality. Before comparing the first positioning result of the AGV with the second positioning result of the AGV, the device also includes: a quality judgment module, used to determine whether the positioning quality is less than a preset quality threshold; a positioning repetition module, used to repeat the steps of determining the current area where the AGV is located based on the first positioning result of the AGV if the positioning quality is less than the preset quality threshold, and matching the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV, until the positioning quality is not less than the preset quality threshold, or the second positioning result of the AGV is set to invalid, so as to determine the first positioning result of the AGV as the final positioning result of the AGV.

[0085] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.

[0086] The AGV positioning device based on the double-layer map in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.

[0087] The embodiment of the present invention further provides a vehicle, such as Figure 8 As shown, the vehicle includes a controller, which is used to execute the AGV positioning method based on the double-layer map of the above embodiment.

[0088] See also Fig. 9 , Fig. 9 is a schematic diagram of the structure of a controller provided by an optional embodiment of the present invention, such as Fig. 9As shown, the controller includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process instructions executed in the controller, including instructions stored in or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple controllers can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Fig. 9 A processor 10 is taken as an example.

[0089] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0090] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.

[0091] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required by at least one function; the data storage area may store data created according to the use of the controller, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the controller via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0092] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.

[0093] The controller also includes an input device 30 and an output device 40. The processor 10, the memory 20, the input device 30 and the output device 40 may be connected via a bus or other means. Fig. 9The example of connecting through bus is taken in the following.

[0094] The input device 30 can receive input digital or character information and generate key signal input related to the user settings and function control of the controller, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, an indicator bar, one or more mouse buttons, a trackball, a joystick, etc. The output device 40 may include a display device, an auxiliary lighting device (e.g., an LED) and a tactile feedback device (e.g., a vibration motor), etc. The above-mentioned display device includes but is not limited to a liquid crystal display, a light emitting diode, a display and a plasma display. In some optional embodiments, the display device can be a touch screen.

[0095] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.

[0096] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations are all within the scope defined by the appended claims.

Claims

1. An AGV positioning method based on a double-layer map, characterized in that: The method comprises: Build a basic point cloud map based on the AGV's working environment; Divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and construct a top-level map corresponding to each area; Matching the current frame radar point cloud acquired by the AGV with the basic point cloud map to determine a first positioning result of the AGV; Determine the current area where the AGV is located based on the first positioning result of the AGV, and match the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV; The first positioning result of the AGV is compared with the second positioning result of the AGV to determine a final positioning result of the AGV.

2. The method according to claim 1, characterized in that The top-level map at least includes static object features and / or artificial landmark sets based on coordinate system attributes corresponding to different point clouds, and the artificial landmark sets include reflective columns and / or fixed static objects. The static object features that can determine the positioning of the AGV and / or the artificial landmark sets arranged in the working environment are extracted from the point cloud map of each area to construct the top-level map corresponding to each area, including: Select static object features that can determine the positioning of the AGV from the point cloud map of the current area, and use the selected static object features to form a top-level map based on the coordinate system attributes corresponding to different point clouds, and / or, Filtering out reflective columns whose point cloud intensities are greater than a preset intensity threshold from the point cloud map of the current area, and using the reflective columns to form a top-level map based on the coordinate system attributes corresponding to different point clouds in the current area, and / or Visual SLAM technology is used to obtain multi-frame image information of the current area, and fixed static objects are obtained from the multi-frame image information, and the coordinate system attributes corresponding to different point clouds of the fixed static objects are used to form a top-level map.

3. The method according to claim 1, characterized in that The top-level map includes at least static object features and / or artificial landmark sets based on coordinate system attributes corresponding to different point clouds, and the current frame radar point cloud is matched with the top-level map corresponding to the current area to determine the second positioning result of the AGV, including: Acquire a first coordinate system of a set of static object features and / or artificial landmarks in a radar point cloud of a current frame, wherein the set of static object features and / or artificial landmarks is a set of static object features and / or artificial landmarks in a top-level map corresponding to a current area; The first coordinate system is matched with the static object features and / or artificial landmark set in the top-level map based on the coordinate system attributes corresponding to different point clouds to determine the second positioning result of the AGV.

4. The method according to claim 3, characterized in that The positioning result includes the position and posture of the AGV, and the first positioning result of the AGV is compared with the second positioning result of the AGV to determine the final positioning result of the AGV, including: Determine whether a difference between a first posture of the AGV in the first positioning result and a second posture of the AGV in the second positioning result is greater than a preset posture difference threshold; If the difference between the first posture and the second posture is greater than a preset posture difference threshold, the AGV is controlled to be positioned at the second posture, the current frame radar point cloud is obtained, and the current frame radar point cloud is matched with the basic point cloud map to determine the third posture of the AGV; The third posture and the second posture of the AGV are weightedly summed to determine the final posture of the AGV.

5. The method according to claim 4, characterized in that Before performing weighted summation on the third posture and the second posture of the AGV, the method further includes: Determine whether the difference between the third posture and the second posture of the AGV is greater than a preset posture difference threshold; If the difference between the third posture and the second posture of the AGV is still greater than the preset posture difference threshold, it is determined that the AGV positioning has failed, and the user is prompted with the AGV positioning failure information.

6. The method according to claim 3, characterized in that The method further comprises: If the first coordinate system fails to successfully match the coordinate system attributes corresponding to the static object features and / or artificial landmark set in the top-level map based on all point clouds, it is determined that the top-level positioning match has failed, and the user is prompted with information that the top-level positioning match has failed.

7. The method according to any one of claims 1 to 6, characterized in that: The second positioning result also includes positioning quality. Before comparing the first positioning result of the AGV with the second positioning result of the AGV, the method further includes: Determine whether the positioning quality is less than a preset quality threshold; If the positioning quality is less than the preset quality threshold, the steps of determining the current area where the AGV is located based on the first positioning result of the AGV, matching the current frame radar point cloud with the top-level map corresponding to the current area, and determining the second positioning result of the AGV are repeated until the positioning quality is not less than the preset quality threshold, or the second positioning result of the AGV is set to invalid, so as to determine the first positioning result of the AGV as the final positioning result of the AGV.

8. An AGV positioning device based on a double-layer map, characterized in that: The device comprises: Basic point cloud map construction module, used to build basic point cloud map based on AGV's working environment; A top-level map construction module is used to divide the basic point cloud map into multiple areas, and extract static object features that can determine the positioning of the AGV and / or a set of artificial landmarks arranged in the working environment from the point cloud map of each area, and construct a top-level map corresponding to each area; A first map matching module, used for first positioning, matching the current frame radar point cloud acquired by the AGV with the basic point cloud map to determine a first positioning result of the AGV; A second map matching module is used to determine the current area where the AGV is located based on the first positioning result of the AGV, and match the current frame radar point cloud with the top-level map corresponding to the current area to determine the second positioning result of the AGV; The positioning comparison module is used to compare the first positioning result of the AGV with the second positioning result of the AGV to determine the final positioning result of the AGV.

9. A vehicle, characterized in that: The vehicle includes a controller, and the controller includes a memory and a processor. The memory and the processor are communicatively connected to each other. Computer instructions are stored in the memory. The processor executes the AGV positioning method based on a double-layer map as described in any one of claims 1 to 7 by executing the computer instructions.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the AGV positioning method based on a double-layer map as described in any one of claims 1 to 7.

Citation Information

Cited By

  • Elevator leveling method and system

    CN121107201A