Positioning code sticker installation method, device, computer equipment and storage medium
Through light grid technology and reference positioning code correction method, the problems of accuracy and efficiency of traditional positioning code patching are solved, and more efficient and accurate positioning code patching is achieved.
Patent Information
- Application Number
- CN202110679624.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2018-11-20
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2038-11-20
AI Technical Summary
In traditional warehouse navigation, the positioning code has low accuracy, and it takes a long time to manually paste the positioning code and is difficult to accurately.
Through light grid technology, the robot adjusts the posture at the grid node and pastes the set position code, and uses the reference position code to correct the predicted position code to ensure the accurate position code sticking.
It improves the positioning accuracy of positioning codes, reduces manual intervention, and achieves more efficient and accurate positioning code patching.
Smart Images

Figure CN113409401B_ABST
Abstract
Description
[0001] This application was submitted to the China Patent Office on November 20, 2018, with application number 201811385040.7, and the invention name is a divisional application of "Positioning code posting method, device, computer equipment and storage medium", all of which are incorporated by reference in this application. Technical Field
[0002] The present application relates to the technical field of mobile robots, and in particular to a positioning code posting method, device, computer equipment and storage medium. Background Art
[0003] With the development of mobile robot technology, there is a method of moving forward and determining the position by scanning the positioning code, performing positioning navigation, and completing the handling of goods. The positioning code is an identification code used by the mobile robot to assist the mobile robot in positioning and determining the direction of travel during the walking process.
[0004] Traditional warehouse navigation requires ground modification in advance and the deployment of positioning codes on the ground. This method requires a lot of manual work in the early stage, and it is difficult to achieve high accuracy by manually attaching positioning codes, resulting in low position accuracy of the positioning codes. Summary of the invention
[0005] Based on this, it is necessary to provide a positioning code installation method, device, computer equipment and storage medium to address the above technical problems.
[0006] A positioning code pasting method is applied to a robot, the method comprising:
[0007] Travel to a grid node of the light grid;
[0008] Determine the direction of a ray received at a grid node, the ray belonging to the ray grid;
[0009] According to the direction of the light, adjust the robot to the preset posture;
[0010] Whenever the robot is adjusted to a preset posture at a grid node, a positioning code is pasted at the current grid node.
[0011] In one embodiment, the method further comprises:
[0012] Search for the positioning code starting from the reference positioning code;
[0013] Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code;
[0014] Determine a second predicted position and posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted position and posture;
[0015] Correcting the second predicted position of the searched positioning code according to the reference positioning code;
[0016] For positioning codes where there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, they are re-attached according to the standard posture.
[0017] In one embodiment, correcting the second predicted position of the searched positioning code according to the reference positioning code includes:
[0018] After searching back to the reference positioning code, the deviation between the actual position of the reference positioning code and the current second predicted position is determined. If the deviation exceeds the first preset range,
[0019] The second predicted position of the searched positioning code is corrected according to the current deviation, and the step of searching for the positioning code from the reference positioning code is continued until the search is stopped when the deviation is within the first preset range.
[0020] In one embodiment, the method further comprises:
[0021] Acquire standard route information, the standard route information carries standard positioning code information and standard location information of the positioning code on the corresponding route;
[0022] Follow the posted positioning code;
[0023] When the vehicle reaches the location indicated by the standard location information and the standard location code information of the corresponding location code is not collected from the location, location code error information for reporting is generated.
[0024] In one embodiment, when traveling to a location represented by standard location information and no standard location code information of a corresponding location code is collected from the location, generating location code error information for reporting includes:
[0025] When the vehicle reaches the position indicated by the standard position information and the positioning code information of the positioning code collected at the position is inconsistent with the standard positioning code information corresponding to the standard position information, a first positioning code error information for reporting is generated; or,
[0026] When the vehicle reaches the location indicated by the standard location information and no location code information of the location code is collected at the location, second location code error information for reporting is generated.
[0027] In one embodiment, the method further comprises:
[0028] When the number of positioning code error messages reported corresponding to the same positioning code reaches a preset number, obtaining a positioning code replacement instruction;
[0029] The positioning code at the corresponding position is replaced according to the replacement instruction, and the replaced positioning code is used to represent the standard positioning code information.
[0030] In one embodiment, replacing the positioning code at the corresponding position according to the replacement instruction includes:
[0031] Obtain a random positioning code according to the replacement instruction;
[0032] Replacing the positioning code at the corresponding position with a random positioning code;
[0033] The random positioning code information of the random positioning code is sent to the server, where the random positioning code information is used to instruct the server to establish a mapping from the random positioning code information to the standard positioning code information.
[0034] A positioning code pasting device, the device comprising:
[0035] A moving module, used to control the robot to move to a grid node of the light grid;
[0036] a direction determination module for determining the direction of a ray received at a grid node, the ray belonging to the ray grid;
[0037] An adjustment module, used to adjust the robot to a preset posture according to the direction of the light;
[0038] The pasting module is used to paste the positioning code at the current grid node whenever the robot is adjusted to a preset posture at the grid node.
[0039] A computer device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the following steps are implemented:
[0040] Travel to a grid node of the light grid;
[0041] Determine the direction of a ray received at a grid node, the ray belonging to the ray grid;
[0042] According to the direction of the light, adjust the robot to the preset posture;
[0043] Whenever the robot is adjusted to a preset posture at a grid node, a positioning code is pasted at the current grid node.
[0044] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the following steps:
[0045] Travel to a grid node of the light grid;
[0046] Determine the direction of a ray received at a grid node, the ray belonging to the ray grid;
[0047] According to the direction of the light, adjust the robot to the preset posture;
[0048] Whenever the robot is adjusted to a preset posture at a grid node, a positioning code is pasted at the current grid node.
[0049] The above-mentioned positioning code affixing method, device, computer equipment and storage medium use a light grid to achieve precise positioning of the robot, and use the light direction of the light grid to adjust the robot's posture, so that the robot can affix the positioning code when it is at a grid node and in a preset posture. Compared with manual affixing, it is more accurate and efficient, and improves the position accuracy of the positioning code.
[0050] A positioning code pasting method is applied to a robot, the method comprising:
[0051] Search for the positioning code starting from the reference positioning code;
[0052] Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code;
[0053] Determine a second predicted position and posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted position and posture;
[0054] Correcting the second predicted position of the searched positioning code according to the reference positioning code;
[0055] For positioning codes where there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, they are re-attached according to the standard posture.
[0056] In one embodiment, correcting the second predicted position of the searched positioning code according to the reference positioning code includes:
[0057] After searching back to the reference positioning code, the deviation between the actual position of the reference positioning code and the current second predicted position is determined. If the deviation exceeds the first preset range,
[0058] The second predicted position of the searched positioning code is corrected according to the current deviation, and the step of searching for the positioning code from the reference positioning code is continued until the search is stopped when the deviation is within the first preset range.
[0059] A positioning code pasting device, the device comprising:
[0060] A search module, used to search for a positioning code starting from a reference positioning code;
[0061] A first posture determination module is used to determine a first predicted posture of the robot according to a path from a reference positioning code to a searched positioning code;
[0062] A second posture determination module is used to determine a second predicted posture of the searched positioning code according to a relative relationship between the searched positioning code and the robot and the first predicted posture;
[0063] A correction module, used for correcting the second predicted position and posture of the searched positioning code according to the reference positioning code;
[0064] The re-posting module is used to re-post the positioning code according to the standard posture for the positioning code that has a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code.
[0065] A computer device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the following steps are implemented:
[0066] Search for the positioning code starting from the reference positioning code;
[0067] Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code;
[0068] Determine a second predicted position and posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted position and posture;
[0069] Correcting the second predicted position of the searched positioning code according to the reference positioning code;
[0070] For positioning codes where there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, they are re-attached according to the standard posture.
[0071] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the following steps:
[0072] Search for the positioning code starting from the reference positioning code;
[0073] Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code;
[0074] Determine a second predicted position and posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted position and posture;
[0075] Correcting the second predicted position of the searched positioning code according to the reference positioning code;
[0076] For positioning codes where there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, they are re-attached according to the standard posture.
[0077] The above-mentioned positioning code pasting method, device, computer equipment and storage medium use the reference positioning code as a reference to correct the second predicted posture of the searched positioning code, and re-paste the positioning code that has a difference between the corrected second predicted posture and the standard posture represented by the searched positioning code, so that the positioning code with inaccurate posture can achieve an accurate posture, thereby improving the posture accuracy of the positioning code. BRIEF DESCRIPTION OF THE DRAWINGS
[0078] Figure 1 A diagram of an application environment of a positioning code sticker installation method in an embodiment;
[0079] Figure 2 A schematic diagram of a flow chart of a positioning code sticker installation method in one embodiment;
[0080] Figure 3 A schematic diagram of a process of re-pasting a positioning code with an incorrect posture in one embodiment;
[0081] Figure 4 A flowchart of the steps of detecting a positioning code error and generating positioning code error information for reporting in one embodiment;
[0082] Figure 5 A schematic diagram of a process for replacing an error location code in an embodiment;
[0083] Figure 6 It is a structural block diagram of a positioning code sticker device in one embodiment;
[0084] Figure 7 It is a structural block diagram of a positioning code sticker device in another embodiment;
[0085] Figure 8 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0086] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0087] The positioning code installation method provided in this application can be applied to Figure 1In the application environment shown. Among them, the light transmitter 104 controls the robot 102 through light, and the robot 102 can communicate with the server 106 through the network. Specifically, the light transmitter 104 transmits light to the light receiver 108 provided on the robot 102 to control the robot 102 to move to the grid node of the light grid, and the robot 102 determines the direction of the light emitted by the light transmitter 104 received at the grid node. The light receiver 108 of the robot 102 adjusts the posture of the robot 102 to the preset posture according to the direction of the light, and then the robot 102 starts to post the positioning code on the ground. The positioning code is an identification code carrying position information, which can be used for positioning and determining the direction of travel of the mobile robot during walking; the identification code can be a barcode, a two-dimensional code, an RFID tag, etc. The robot 102 moves according to the posted positioning code, taking the standard route information as the standard. When the robot 102 moves to the position represented by the standard position information and does not collect the standard positioning code information of the corresponding positioning code from the position, the robot 102 generates a positioning code error information for reporting to the server 106. The grid node may represent an intersection point formed by the intersection of two or more light rays, the light emitter may be a laser emitter, and the emitted light may be a laser.
[0088] When the number of positioning code error messages reported corresponding to the same positioning code reaches a preset number, the server 106 can notify the robot 102, and the robot 102 obtains the positioning code replacement instruction; the positioning code at the corresponding position is replaced according to the replacement instruction. When the robot 102 replaces the positioning code at the position corresponding to the error message with the random positioning code, the robot 102 sends the random positioning code information of the random positioning code to the server 106, and the random positioning code information is used to instruct the server 106 to establish a mapping from the random positioning code information to the standard positioning code information. It is understandable that the server 106 can also notify the staff or other robots, and the staff or other robots replace the positioning code. Among them, the server 106 can be implemented as an independent server or a server cluster composed of multiple servers.
[0089] In one embodiment, Figure 2 As shown, a positioning code sticker method is provided, which is applied to Figure 1 Taking the robot in as an example, the method includes the following steps:
[0090] Step 202, proceed to a grid node of the light grid.
[0091] Specifically, light receivers may be respectively arranged at different directional positions of the robot, and navigation may be performed using the light rays received by each light receiver and used to form a light grid, so as to move to a grid node of the light grid.
[0092] There may be multiple light receivers provided on the robot. The traveling to the grid node may specifically be traveling to the grid node along the direction of the light rays constituting the light grid, or traveling to the grid node according to a pre-set path, for example, traveling to each grid node of the light grid in sequence along a spiral route. The light rays constituting the light grid may be in the same horizontal plane. The grid node may be formed by light rays along two mutually perpendicular axes, and the light rays on each axis may be unidirectionally emitted or bidirectionally emitted.
[0093] Step 204, determining the direction of the light received at the grid node, the light belonging to the light grid.
[0094] Specifically, when the robot moves to a certain grid node, it determines the light currently received at the grid node that belongs to the light grid, and determines the relative deviation direction between the light and the current posture of the robot. The light rays belonging to the grid grid received by the robot at the grid node may be four or more.
[0095] Step 206, adjusting the robot to a preset posture according to the direction of the light.
[0096] Specifically, the posture of the robot is adjusted according to the relative deviation direction between the light received by the light receiver and the current posture of the robot. When the posture of the robot is adjusted to a preset posture, the adjustment is stopped.
[0097] In one embodiment, the light receivers on the robot can be symmetrically arranged along the center of the robot. The robot can receive light through the symmetrically arranged light receivers, thereby adjusting the robot's posture according to the direction of the light received by the symmetrically arranged light receivers. When the light received by the light receivers symmetrically arranged on two mutually perpendicular axes coincide with the straight lines where the light receivers symmetrically arranged on the corresponding axes are located, it can be determined that the robot is adjusted to a preset posture. The light received by the symmetrically arranged light receivers is light on two different mutually perpendicular axes.
[0098] Step 208: Whenever the robot is adjusted to a preset posture at the grid node, a positioning code is pasted at the current grid node.
[0099] Specifically, the robot is at a grid node, and after adjusting the robot's posture to a preset posture according to the received light, the robot affixes a positioning code at the grid node according to the preset posture. The positioning code may be, but is not limited to, a QR code, a barcode, etc., and the color and shape of the positioning code may be arbitrary.
[0100] The above positioning code installation method uses a light grid to achieve precise positioning of the robot, and uses the light direction of the light grid to adjust the robot's posture, so that the robot can install the positioning code when it is at a grid node and in a preset posture. Compared with manual installation, it is more accurate and efficient, and improves the position and posture accuracy of the positioning code.
[0101] like Figure 3 As shown, in one embodiment, the positioning code pasting method further includes the step of re-pasting the positioning code with the wrong posture, which specifically includes the following steps:
[0102] Step 302, searching for a positioning code starting from a reference positioning code.
[0103] Specifically, the robot takes the reference positioning code as a starting point and can search for the positioning code on the ground randomly or according to a preset path. The actual position of the reference positioning code is in an absolutely accurate position. The robot starts searching for the positioning code on the ground based on the actual position of the reference positioning code. The position of the positioning code includes the position and / or posture of the positioning code. The preset path can be a spiral path or a serpentine path.
[0104] Step 304, determining a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code.
[0105] The first predicted posture is the posture of the robot calculated based on the reference positioning code and the path of the robot.
[0106] Specifically, when a positioning code on the ground is searched, the first predicted position and posture of the robot is determined according to the path traveled from the reference positioning code to the searched positioning code.
[0107] Step 306: Determine a second predicted position and posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted position and posture.
[0108] The second predicted posture is the posture of the searched positioning code calculated based on the first predicted posture of the robot and the relative relationship between the searched positioning code and the robot.
[0109] Specifically, the relative relationship between the searched positioning code and the robot itself is determined based on a camera provided on the robot, and then the second predicted posture of the searched positioning code is determined based on the relative relationship and the first predicted posture.
[0110] Furthermore, the robot can take the center position of the camera provided on the robot as the origin, determine the relative position deviation between the position of the pixel point of the center of the searched positioning code and the center position of the camera provided on the robot, and use the relative position deviation to represent the relative relationship between the searched positioning code and the robot, and then determine the second predicted posture of the searched positioning code based on the relative position deviation and the first predicted posture.
[0111] For example: assuming that the length of the relative position deviation is 3 pixels, it can be converted into the length in the real scene according to the conversion ratio of the pixels in the current scene, and then the second predicted posture can be finally determined based on the converted length and the direction of the relative position deviation and combined with the first predicted posture.
[0112] Step 308: Correct the second predicted position and posture of the searched positioning code according to the reference positioning code.
[0113] Specifically, the reference positioning code is a positioning code with an absolutely standard posture, and the robot can correct the second predicted posture of the searched positioning code based on the standard posture of the reference positioning code. It can be understood that the robot can directly correct the second predicted posture according to the deviation between the actual posture of the reference positioning code and the current second predicted posture, or it can indirectly correct the corresponding second predicted posture by correcting the first predicted posture according to the deviation between the actual posture of the reference positioning code and the current second predicted posture. There can be multiple reference positioning codes in this embodiment, and the more reference positioning codes there are, the higher the accuracy of the second predicted posture of the corrected positioning code.
[0114] In one embodiment, the robot may pass through the reference positioning code multiple times, and correct the second predicted position and posture of the searched positioning code each time it passes through the reference positioning code, until the correction is stopped when the stop condition is met. The stop condition may be that the number of times the reference positioning code is passed reaches a preset number, or that the deviation between the first predicted positions of the reference positioning code determined respectively when passing through the reference positioning code twice is less than a preset deviation.
[0115] Step 310: For the positioning codes that have a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, re-attach them according to the standard posture.
[0116] Specifically, after correcting the second predicted posture of the searched positioning code, the corrected second predicted posture is compared with the standard posture represented by the corresponding searched positioning code, and if the comparison result is a positioning code with a difference, the positioning code is re-set according to the standard posture of the positioning code. Among them, the standard posture refers to the standard posture obtained by scanning the searched positioning code, and the standard posture is the standard posture of the scanned positioning code. It can be understood that the positioning code information in the searched positioning code carries the corresponding standard posture.
[0117] In one embodiment, the positioning code with a comparison result showing a difference can be uploaded to the server, instructing the server to send a re-posting request to other robots. Based on the re-posting request, the other robots can re-post the positioning code with a comparison result showing a difference according to the standard posture of the positioning code.
[0118] In the above embodiment, the second predicted posture of the searched positioning code is corrected based on the reference positioning code, and the positioning code that has a difference between the corrected second predicted posture and the standard posture represented by the searched positioning code is re-pasted, so that the positioning code with inaccurate posture can reach an accurate posture, further improving the posture accuracy of the positioning code.
[0119] In one embodiment, correcting the second predicted posture of the searched positioning code according to the reference positioning code includes the following steps: when returning to the reference positioning code after searching, and the deviation between the current second predicted posture and the actual posture of the reference positioning code exceeds a first preset range, correcting the second predicted posture of the searched positioning code according to the current deviation, and continuing to search for the positioning code from the reference positioning code until the search is stopped when the deviation is within the first preset range.
[0120] Among them, the first preset range can be a specific value or a numerical range. In this embodiment, by presetting the first preset range, when the search returns to the reference positioning code, and the deviation between the current second predicted posture and the actual posture of the reference positioning code exceeds this preset range, it means that the judgment of the second predicted position of the searched positioning code is wrong, so after correcting the second predicted position according to this deviation, return to the step of searching for the positioning code from the reference positioning code. Until the deviation between the current second predicted posture and the actual posture when the search returns to the reference positioning code belongs to the first preset range, stop the search, so that the result of checking the positioning code with different posture is more accurate, and provide a more accurate basis for the subsequent step of re-setting the positioning code with different posture.
[0121] like Figure 4 As shown, in one embodiment, the positioning code posting method further includes the step of detecting positioning code errors and generating positioning code error information for reporting, which specifically includes the following steps:
[0122] Step 402: Acquire standard route information, where the standard route information carries standard positioning code information and standard location information of the positioning code on the corresponding route.
[0123] Among them, the standard route information is information that describes the standard route pre-planned for the robot. The standard route information carries standard positioning code information and standard position information. Positioning code information refers to information that can be obtained by scanning a positioning code, which is used to identify the positioning code. The standard positioning code information in this embodiment represents the positioning code information that should be included in the positioning code that the standard route passes through. The position information specifies the position parameters of the positioning code, such as the coordinate information of the positioning code. The standard position information in this embodiment represents the position where the corresponding positioning code should be located on the standard route. The standard route information can be pre-stored in the robot, or it can be pulled by the robot from the server.
[0124] Step 404, proceed according to the posted positioning code.
[0125] Specifically, the robot scans and analyzes the positioning code on the ground to obtain the positioning code information contained in the positioning code, and the positioning code information includes the robot travel instruction information, and the robot travels according to the robot travel instruction information. The travel instruction information may only include direction information for indicating the robot's travel direction, and may also include position information for indicating the robot's position.
[0126] Step 406: When the vehicle reaches the location indicated by the standard location information and the standard location code information of the corresponding location code is not collected from the location, location code error information is generated for reporting.
[0127] Specifically, when the robot advances to the position indicated by the standard position information by scanning the positioning code on the ground, if the standard positioning code information of the corresponding positioning code is not collected from the position, a positioning code error message for reporting is generated. The robot uploads the positioning code error information to the server, and other robots can obtain the positioning code error information through the server.
[0128] It is understandable that the robot reports the positioning code error information to the server. Each time it finds that it has reached the location represented by the standard location information and has not collected the standard positioning code information of the corresponding positioning code from the location, it can directly report the positioning code error information to the server. It can also uniformly report the positioning code error information of each location to the server after completing an entire route.
[0129] In one embodiment, when the robot reaches the position represented by the standard position information and the positioning code information of the positioning code collected at the position is inconsistent with the standard positioning code information corresponding to the standard position information, it represents a route error, and a first positioning code error message is generated for reporting; or because the positioning code has been exposed for a long time, the positioning code becomes unclear. When the robot reaches the position represented by the standard position information and no positioning code information of the positioning code is collected at the position, a second positioning code error message is generated for reporting.
[0130] In the above embodiment, by scanning the positioning code posted on the ground and moving forward, the positioning code with incorrect position or ambiguous information is checked based on the standard route information, so that other robots or staff can understand the situation in time and correct it, to prevent the operation of other robots from being affected by the positioning code's incorrect position or ambiguous information.
[0131] In one embodiment, the positioning code posting method further includes: when the positioning code error information reported corresponding to the same positioning code reaches a preset number of times, obtaining a positioning code replacement instruction, replacing the positioning code at the corresponding position according to the replacement instruction, and the replaced positioning code is used to represent the standard positioning code information.
[0132] In this embodiment, when the positioning code at the position is replaced according to the replacement instruction, it can be replaced with the original code or with a random code. Taking the replacement with a random positioning code as an example, Figure 5 As shown in the figure, assuming that the robot reports the positioning code error information of each position uniformly after completing a whole route, the specific steps are as follows:
[0133] Step 502: Acquire standard route information, where the standard route information carries standard positioning code information and standard location information of the positioning code on the corresponding route.
[0134] Step 504, proceed according to the positioning code posted on the ground.
[0135] Step 506: After traveling the entire route, determine whether a corresponding positioning code is scanned at each positioning code position based on the standard route information.
[0136] Specifically, after the robot has walked a whole route according to the scanning of the positioning codes posted on the ground, if it is found that every positioning code on the standard route information has been scanned, it means that the positioning code is correct, and this detection ends. After the robot has walked a whole route according to the scanning of the positioning codes posted on the ground, if it is found that there is a positioning code with an incorrect positioning code, step 508 is entered.
[0137] Step 508: Report positioning code error information to the server.
[0138] Specifically, the robot uniformly reports the positioning codes detected to be erroneous to the server so that other robots can obtain error information through the server.
[0139] Step 510: When the number of positioning code error messages reported corresponding to the same positioning code reaches a preset number, a positioning code replacement instruction is obtained.
[0140] Step 512: Replace the positioning code at the position corresponding to the error information with the original code according to the replacement instruction.
[0141] Step 514: Replace the positioning code at the position corresponding to the error information with a random positioning code according to the replacement instruction.
[0142] This embodiment replaces the positioning code corresponding to the error information when the error information of the same positioning code reaches a preset number, which not only ensures the accuracy of the positioning code error information, but also prevents the operation of other robots from being affected by the positioning code position error or information ambiguity.
[0143] In one embodiment, the positioning code at the position corresponding to the error information is replaced with a random positioning code, and the positioning code at the position is replaced according to the replacement instruction, including the following steps: obtaining a random positioning code according to the replacement instruction, replacing the positioning code at the position with a random positioning code, and sending random positioning code information of the random positioning code to a server, wherein the random positioning code information is used to instruct the server to establish a mapping from random positioning code information to standard positioning code information.
[0144] This embodiment makes it more convenient to replace the positioning code by replacing the original code with a random positioning code, and by sending the random positioning code information of the random positioning code to the server, the server establishes a mapping method from the random positioning code information to the standard positioning code information, and the standard positioning code information can be found according to the random code, thereby preventing the standard positioning code information from being lost due to the random positioning code.
[0145] It should be understood that although Figure 1-5 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 1-5 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.
[0146] In one embodiment, Figure 6 As shown, a positioning code pasting device 600 is provided, the device 600 includes a moving module 602, a direction determination module 604, an adjustment module 606 and a pasting module 608, wherein:
[0147] The moving module 602 is used to control the robot to move to a grid node of the light grid.
[0148] The direction determination module 604 is used to determine the direction of the light received at the grid node, the light belonging to the light grid.
[0149] The adjustment module 606 is used to adjust the robot to a preset posture according to the direction of the light.
[0150] The setting module 608 is used to set the positioning code at the current grid node whenever the robot is adjusted to a preset posture at the grid node.
[0151] In one embodiment, the above-mentioned device further includes: a search module, a first posture determination module, a second posture determination module, a correction module and a re-pasting module. The search module is used to search for the positioning code from the reference positioning code; the first posture determination module is used to determine the corresponding first predicted posture according to the path from the reference positioning code to the searched positioning code; the second posture determination module is used to determine the second predicted posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted posture; the correction module is used to correct the second predicted posture of the searched positioning code according to the reference positioning code; the re-pasting module is used to re-paste the positioning code according to the standard posture for the positioning code that has a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code.
[0152] In one embodiment, the correction module is also used to determine the deviation between the actual position of the reference positioning code and the current second predicted position when returning to the reference positioning code after searching. When the deviation exceeds a first preset range, the second predicted position of the searched positioning code is corrected according to the current deviation, and the step of searching for the positioning code from the reference positioning code is continued until the search is stopped when the deviation is within the first preset range.
[0153] In one embodiment, the device further comprises: a standard route acquisition module, a scanning module and an error reporting module. The standard route acquisition module is used to acquire standard route information, which carries standard positioning code information and standard location information of the positioning code on the corresponding route; the scanning module is used to travel according to the posted positioning code; the error reporting module is used to generate positioning code error information for reporting when traveling to the location indicated by the standard location information and failing to collect the standard positioning code information of the corresponding positioning code from the location.
[0154] In one embodiment, the error reporting module is also used to generate a first error message of the positioning code for reporting when the position indicated by the standard position information is reached and the positioning code information of the positioning code collected at the position is inconsistent with the standard positioning code information corresponding to the standard position information; or to generate a second error message of the positioning code for reporting when the position indicated by the standard position information is reached and no positioning code information of the positioning code is collected at the position.
[0155] In one embodiment, the device further comprises: a replacement instruction acquisition module and a replacement module. The replacement instruction acquisition module is used to obtain a positioning code replacement instruction when the positioning code error information reported corresponding to the same positioning code reaches a preset number of times; the replacement module is used to replace the positioning code at the corresponding position according to the replacement instruction, and the replaced positioning code is used to represent the standard positioning code information.
[0156] In one embodiment, the replacement module is also used to obtain a random positioning code according to a replacement instruction, replace the positioning code at the corresponding position with a random positioning code, and send the random positioning code information of the random positioning code to the server, and the random positioning code information is used to instruct the server to establish a mapping from the random positioning code information to the standard positioning code information.
[0157] The specific definition of the positioning code sticker device can be found in the definition of the positioning code sticker method above, which will not be repeated here. Each module in the positioning code sticker device can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each module.
[0158] In one embodiment, Figure 3 As shown, another method for attaching a positioning code is also provided, and this method is applied to Figure 1 The robot in the example is used to illustrate the following steps:
[0159] Step 302, searching for a positioning code starting from a reference positioning code.
[0160] Specifically, the robot takes the reference positioning code as a starting point and searches for the positioning code on the ground randomly or according to a preset path. The actual position of the reference positioning code is in an absolutely accurate position. The robot starts searching for the positioning code on the ground based on the actual position of the reference positioning code. The position of the positioning code includes the position and / or posture of the positioning code. The preset path can be a spiral path or a serpentine path.
[0161] Step 304, determining a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code.
[0162] The first predicted posture is the posture of the robot calculated based on the reference positioning code and the path of the robot.
[0163] Specifically, when a positioning code on the ground is searched, the first predicted position and posture of the robot is determined according to the path traveled from the reference positioning code to the searched positioning code.
[0164] Step 306: Determine a second predicted position and posture of the searched positioning code according to the relative relationship between the searched positioning code and the robot and the first predicted position and posture.
[0165] The second predicted posture is the posture of the searched positioning code calculated based on the first predicted posture of the robot and the relative relationship between the searched positioning code and the robot.
[0166] Specifically, the relative relationship between the searched positioning code and the robot itself is determined based on a camera provided on the robot, and then the second predicted posture of the searched positioning code is determined based on the relative relationship and the first predicted posture.
[0167] Furthermore, the robot can take the center position of the camera provided on the robot as the origin, determine the relative position deviation between the position of the pixel point of the center of the searched positioning code and the center position of the camera provided on the robot, and use the relative position deviation to represent the relative relationship between the searched positioning code and the robot, and then determine the second predicted posture of the searched positioning code based on the relative position deviation and the first predicted posture.
[0168] For example: assuming that the length of the relative position deviation is 3 pixels, it can be converted into the length in the real scene according to the conversion ratio of the pixels in the current scene, and then the second predicted posture can be finally determined based on the converted length and the direction of the relative position deviation and combined with the first predicted posture.
[0169] Step 308: Correct the second predicted position and posture of the searched positioning code according to the reference positioning code.
[0170] Specifically, the reference positioning code is a positioning code with an absolutely standard posture, and the robot can correct the second predicted posture of the searched positioning code based on the standard posture of the reference positioning code. It can be understood that the robot can directly correct the second predicted posture according to the deviation between the actual posture of the reference positioning code and the current second predicted posture, and can also correct the first predicted posture according to the deviation between the actual posture of the reference positioning code and the current second predicted posture to indirectly correct the corresponding second predicted posture.
[0171] In one embodiment, the robot may pass through the reference positioning code multiple times, and correct the second predicted position and posture of the searched positioning code each time it passes through the reference positioning code, until the correction is stopped when the stop condition is met. The stop condition may be that the number of times the reference positioning code is passed reaches a preset number, or that the deviation of the first predicted position and posture of the reference positioning code determined by two consecutive passes through the reference positioning code is less than a preset value.
[0172] Step 310: For the positioning codes that have a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, re-attach them according to the standard posture.
[0173] Specifically, after correcting the second predicted posture of the searched positioning code, the corrected second predicted posture is compared with the standard posture represented by the corresponding searched positioning code, and if the comparison result is a positioning code with a difference, the positioning code is re-set according to the standard posture of the positioning code. Among them, the standard posture refers to the standard posture obtained by scanning the searched positioning code, and the standard posture is the standard posture of the scanned positioning code. It can be understood that the positioning code information in the searched positioning code carries the corresponding standard posture.
[0174] In one embodiment, the positioning codes with different comparison results can be uploaded to the server, instructing the server to send a re-posting request to other robots. Based on the re-posting request, the other robots can re-post the positioning codes with different comparison results according to the standard posture of the positioning codes.
[0175] In the above embodiment, the second predicted posture of the searched positioning code is corrected based on the reference positioning code, and the positioning code that has a difference between the corrected second predicted posture and the standard posture represented by the searched positioning code is re-pasted, so that the positioning code with inaccurate posture can reach an accurate posture, further improving the posture accuracy of the positioning code.
[0176] In one embodiment, correcting the second predicted posture of the searched positioning code according to the reference positioning code includes the following steps: when returning to the reference positioning code after searching, and the deviation between the current second predicted posture and the actual posture of the reference positioning code exceeds a first preset range, correcting the second predicted posture of the searched positioning code according to the current deviation, and continuing to search for the positioning code from the reference positioning code until the search is stopped when the deviation is within the first preset range.
[0177] Among them, the first preset range can be a specific value or a numerical range. In this embodiment, by presetting the first preset range, when the search returns to the reference positioning code, and the deviation between the current second predicted posture and the actual posture of the reference positioning code exceeds this preset range, it means that the judgment of the second predicted position of the searched positioning code is wrong, so after correcting the second predicted position according to this deviation, return to the step of searching for the positioning code from the reference positioning code. Until the deviation between the current second predicted posture and the actual posture when the search returns to the reference positioning code belongs to the first preset range, stop the search, so that the result of checking the positioning code with different posture is more accurate, and provide a more accurate basis for the subsequent step of re-setting the positioning code with different posture.
[0178] In one embodiment, Figure 7As shown, another positioning code pasting device 700 is provided, the device 700 includes: a search module 702, a position determination module 704, a correction module 706 and a re-pasting module 708, wherein:
[0179] The search module 702 is used to search for a positioning code starting from a reference positioning code.
[0180] A first pose determination module 704 is used to determine a corresponding first predicted pose according to a path from a reference positioning code to the searched positioning code;
[0181] A second posture determination module 706 determines a second predicted posture of the searched positioning code according to a relative relationship between the searched positioning code and the robot and the first predicted posture;
[0182] A correction module 708, used for correcting the second predicted position and posture of the searched positioning code according to the reference positioning code;
[0183] The re-posting module 710 is used to re-post the positioning code according to the standard posture for the positioning code that has a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code.
[0184] In one embodiment, the correction module 708 is also used to determine the deviation between the actual posture of the reference positioning code and the current second predicted posture when returning to the reference positioning code after searching. When the deviation exceeds the first preset range, the second predicted posture of the searched positioning code is corrected according to the current deviation, and the step of searching for the positioning code from the reference positioning code is continued until the search is stopped when the deviation is within the first preset range.
[0185] The specific definition of the positioning code sticker device can be found in the definition of the positioning code sticker method above, which will not be repeated here. Each module in the positioning code sticker device can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each module.
[0186] In one embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as follows: Figure 8As shown. The computer device includes a processor, a memory, a grid interface, a display screen and an input device connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The grid interface of the computer device is used to communicate with an external terminal through a grid connection. When the computer program is executed by the processor, the above-mentioned positioning code pasting method is implemented. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a key, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse, etc.
[0187] In one embodiment, a computer device includes a memory and a processor. The memory stores a computer program. When the computer program is executed by the processor, the positioning code placement method of any of the above embodiments is implemented.
[0188] In one embodiment, a computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the positioning code placement method of any of the above embodiments is implemented.
[0189] Those skilled in the art will understand that Figure 8 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0190] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0191] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0192] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.
Claims
1. A method for attaching a positioning code to a robot, the method comprising: Travel to a grid node of the light grid; determining a direction of a light ray received at the grid node, the light ray belonging to the light grid; According to the direction of the light, adjusting the robot to a preset posture; Whenever the robot is adjusted to a preset posture at the grid node, a positioning code is pasted at the current grid node; Acquire standard route information, wherein the standard route information carries standard positioning code information and standard location information of a positioning code on a corresponding route; Follow the posted positioning code; When the vehicle reaches the location indicated by the standard location information and the standard location code information of the corresponding location code is not collected from the location, location code error information for reporting is generated.
2. The method according to claim 1, characterized in that The method further comprises: Search for the positioning code starting from the reference positioning code; Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code; Determining a second predicted position and posture of the searched positioning code according to a relative relationship between the searched positioning code and the robot and the first predicted position and posture; After searching back to the reference positioning code, the deviation between the actual position and posture of the reference positioning code and the current second predicted position and posture is determined. When the deviation exceeds the first preset range, Correcting the second predicted position of the searched positioning code according to the current deviation, and continuing to perform the step of searching for the positioning code from the reference positioning code until the search is stopped when the deviation is within the first preset range; For positioning codes where there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, they are re-attached according to the standard posture.
3. The method according to claim 1, characterized in that When the vehicle reaches the location indicated by the standard location information and fails to collect the standard location code information of the corresponding location code from the location, generating location code error information for reporting includes: When the vehicle reaches the position indicated by the standard position information and the positioning code information of the positioning code collected at the position is inconsistent with the standard positioning code information corresponding to the standard position information, generating first positioning code error information for reporting; or, When the vehicle reaches the location indicated by the standard location information and no location code information of the location code is collected at the location, second location code error information for reporting is generated.
4. The method according to claim 1, characterized in that: The method further comprises: When the number of positioning code error messages reported corresponding to the same positioning code reaches a preset number, obtaining a positioning code replacement instruction; The positioning code at the corresponding position is replaced according to the replacement instruction, and the replaced positioning code is used to represent the standard positioning code information.
5. The method according to claim 4, characterized in that The replacing of the positioning code at the corresponding position according to the replacement instruction comprises: Obtaining a random positioning code according to the replacement instruction; Replacing the positioning code at the corresponding position with the random positioning code; The random positioning code information of the random positioning code is sent to a server, where the random positioning code information is used to instruct the server to establish a mapping from the random positioning code information to the standard positioning code information.
6. A method for attaching a positioning code to a robot, the method comprising: Search for the positioning code starting from the reference positioning code; Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code; Determining a second predicted position and posture of the searched positioning code according to a relative relationship between the searched positioning code and the robot and the first predicted position and posture; Correcting the second predicted position of the searched positioning code according to the reference positioning code; For positioning codes that have a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, re-attach according to the standard posture; Acquire standard route information, wherein the standard route information carries standard positioning code information and standard location information of a positioning code on a corresponding route; Follow the posted positioning code; When the vehicle reaches the location indicated by the standard location information and the standard location code information of the corresponding location code is not collected from the location, location code error information for reporting is generated.
7. The method according to claim 6, characterized in that The second predicted position and posture of correcting the searched positioning code according to the reference positioning code comprises: After searching back to the reference positioning code, the deviation between the actual position and posture of the reference positioning code and the current second predicted position and posture is determined. When the deviation exceeds the first preset range, The second predicted position of the searched positioning code is corrected according to the current deviation, and the step of searching for the positioning code from the reference positioning code is continued until the search is stopped when the deviation is within the first preset range.
8. A method for attaching a positioning code to a robot, the method comprising: Traveling to a grid node of a light grid, where the grid node of the light grid is an intersection formed by the intersection of at least two or more light rays emitted by a light emitter; determining a direction of a light ray received at the grid node, the light ray belonging to the light grid; According to the direction of the relative deviation between the light and the current posture of the robot, the posture of the robot is adjusted, and when the light received by the light receivers symmetrically arranged on two mutually perpendicular axes on the robot respectively coincide with the straight lines where the light receivers symmetrically arranged on the corresponding axes are located, it is determined that the posture of the robot is adjusted to a preset posture; Whenever the robot is adjusted to a preset posture at the grid node, a positioning code is pasted at the current grid node.
9. The method according to claim 8, characterized in that The method further comprises: Search for the positioning code starting from the reference positioning code; Determine a first predicted position and posture of the robot according to a path from the reference positioning code to the searched positioning code; Determining a second predicted position and posture of the searched positioning code according to a relative relationship between the searched positioning code and the robot and the first predicted position and posture; After searching back to the reference positioning code, the deviation between the actual position and posture of the reference positioning code and the current second predicted position and posture is determined. When the deviation exceeds the first preset range, Correcting the second predicted position of the searched positioning code according to the current deviation, and continuing to perform the step of searching for the positioning code from the reference positioning code until the search is stopped when the deviation is within the first preset range; For positioning codes where there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code, they are re-attached according to the standard posture.
10. A positioning code pasting device, the device comprising: A moving module, used to control the robot to move to a grid node of the light grid; a direction determination module, for determining the direction of a light ray received at the grid node, the light ray belonging to the light grid; An adjustment module, used for adjusting the robot to a preset posture according to the direction of the light; A setting module, used for setting a positioning code at the current grid node whenever the robot is adjusted to a preset posture at the grid node; A standard route acquisition module, used to acquire standard route information, wherein the standard route information carries standard positioning code information and standard location information of the positioning code on the corresponding route; A scanning module is used to move according to the attached positioning code; The error reporting module is used to generate positioning code error information for reporting when the vehicle reaches the position represented by the standard positioning information and fails to collect the standard positioning code information of the corresponding positioning code from the position.
11. A positioning code pasting device, the device comprising: A search module, used to search for a positioning code starting from a reference positioning code; A first posture determination module is used to determine a first predicted posture of the robot according to a path from a reference positioning code to a searched positioning code; A second posture determination module is used to determine a second predicted posture of the searched positioning code according to a relative relationship between the searched positioning code and the robot and the first predicted posture; A correction module, used for correcting the second predicted position and posture of the searched positioning code according to the reference positioning code; a re-posting module, for re-posting, according to the standard posture, a positioning code for which there is a difference between the corrected second predicted posture and the standard posture represented by the corresponding positioning code; A standard route acquisition module, used to acquire standard route information, wherein the standard route information carries standard positioning code information and standard location information of the positioning code on the corresponding route; A scanning module is used to move according to the attached positioning code; The error reporting module is used to generate positioning code error information for reporting when the vehicle reaches the position represented by the standard positioning information and fails to collect the standard positioning code information of the corresponding positioning code from the position.
12. A positioning code pasting device, the device comprising: A moving module, used to control the robot to move to a grid node of a light grid, where the grid node of the light grid is an intersection formed by the intersection of at least two or more light rays emitted by a light emitter; a direction determination module, for determining the direction of a light ray received at the grid node, the light ray belonging to the light grid; An adjustment module, used for adjusting the posture of the robot according to the direction of the relative deviation between the light and the current posture of the robot, and determining that the posture of the robot is adjusted to a preset posture when the light received by the light receivers symmetrically arranged on two mutually perpendicular axes on the robot respectively coincide with the straight lines where the light receivers symmetrically arranged on the corresponding axes are located; The setting module is used to set the positioning code at the current grid node whenever the robot is adjusted to a preset posture at the grid node.
13. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method according to any one of claims 1 to 9 when executing the computer program.
14. A computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Positioning system based on laser intrusion detector array
CN107167793A
Storage AGV navigation method and device, computer equipment and storage medium
CN107656523A
AGV trolley indoor positioning and navigation system and control method thereof
CN108388245A