Pose correction method, device, equipment and storage medium
By obtaining shared angle deviation data from the server and combining it with the initial angle deviation of the AGV, the error information is decomposed, solving the problem of inefficient pose correction caused by QR code pasting angle deviation in AGV robots in the logistics field, and realizing efficient pose correction and deployment.
Patent Information
- Application Number
- CN202110454198.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-26
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2041-04-26
AI Technical Summary
In existing technologies, AGV robots in the logistics field need to learn each QR code individually due to deviations in the QR code pasting angle, resulting in low posture correction efficiency. Furthermore, they need to relearn after each QR code replacement, which also leads to low efficiency.
By downloading shared angle deviation data from the server and combining it with the initial angle deviation of the handling equipment, the position and posture of the handling equipment in the target area can be corrected. The error information is decomposed into the initial angle deviation and the shared angle deviation of the identification code, as well as the pasting error of the shared identification code, to improve efficiency.
This technology enables multiple AGV devices to share the label pasting error within the same target area, reducing the independent learning time for each device and improving posture correction and deployment efficiency.
Smart Images

Figure CN113379011B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of automatic control, in particular to a pose correction method and device, equipment and storage medium. BACKGROUND
[0002] AGV(Automated Guided Vehicle, automatic guided vehicle, referred to as "AGV") refers to a transport vehicle equipped with electromagnetic or optical automatic navigation device, which can travel along the specified navigation path, has safety protection and various transfer functions, and is widely used in the field of logistics.
[0003] In the field of logistics, AGV is also called logistics robot, which generally adopts laying based on ground code as AGV fixed beacon, and the ground code can be a two-dimensional code. The distance between two-dimensional codes is generally between 50-200cm, and the direction of the two-dimensional code is fixed. The logistics robot can determine the position of the robot and correct the advancing direction of the robot according to the two-dimensional code number and direction scanned on each two-dimensional code. Therefore, the direction accuracy required when deploying the two-dimensional code is high, and the angle deviation may cause a large deviation in the advancing direction of the robot. Due to the ground conditions of the construction site, tool accuracy and other reasons, the angle of the two-dimensional code paste may have a small deviation, and the robot must learn and correct the error before the operation.
[0004] In the prior art, each robot directly runs in the field, stores the error of each two-dimensional code in the robot body, and the robot reads the two-dimensional code error saved in the body when running. In this way, all robots in the field need to learn the two-dimensional code error, and after replacing the two-dimensional code, all robots also need to relearn the error of the replaced two-dimensional code, which is low in efficiency. SUMMARY
[0005] The purpose of the embodiment of the present application is to provide a pose correction method, device, equipment and storage medium, which downloads shared angle deviation data from a server, and then combines the initial angle deviation calibrated by the body of the carrying device to correct the pose of the carrying device in the target area, thereby improving the efficiency of the pose correction of the carrying device.
[0006] The first aspect of the embodiment of the present application provides a pose correction method, comprising: obtaining an initial angle deviation of a carrying device, the initial angle deviation being an angle between an actual travel direction of the carrying device and an identifier of the carrying device; obtaining map information of a target area and a shared angle deviation of an identification code arranged in the target area, a plurality of identification codes being arranged in the target area; receiving the map information of the target area and the shared angle deviation of the identification code returned by a server; and correcting a pose of the carrying device in the target area based on the shared angle deviation, the initial angle deviation and the map information.
[0007] In an embodiment, the initial angle deviation of the carrying device is determined by the following method: obtaining a first angle between a moving direction of the carrying device when moving on a plurality of calibration codes and a direction of each of the calibration codes; and calculating an average value of the plurality of first angles, and taking the average value of the first angles as the initial angle deviation.
[0008] In an embodiment, the calibration codes are arranged along a straight line direction; and the first angle between the moving direction of the carrying device when moving on the calibration codes and the direction of each of the calibration codes is obtained by obtaining a first angle between the moving direction of the carrying device on the calibration code and the straight line direction.
[0009] In an embodiment, before the correction request is sent to the server, the method further comprises: obtaining a shared angle deviation generated by the carrying device when identifying each of the plurality of identification codes in the target area; and sending the shared angle deviation of the plurality of identification codes to the server.
[0010] In an embodiment, the shared angle deviation generated by the carrying device when identifying each of the plurality of identification codes in the target area comprises: repeatedly moving the carrying device in a plurality of specified travel directions of each of the identification codes a preset number of times respectively in the target area, and recording a second angle between the moving direction of the carrying device and the current specified travel direction each time, and taking an average value of the second angles of the preset number of times as the shared angle deviation, wherein each of the specified travel directions corresponds to one of the shared angle deviations.
[0011] In an embodiment, the correction of the pose of the carrying device in the target area based on the shared angle deviation, the initial angle deviation and the map information comprises: adding the shared angle deviation and the initial angle deviation to obtain final error information of the carrying device in the target area; and generating a correction instruction according to the final error information and the map information, the correction instruction being used to correct the pose of the carrying device in the target area.
[0012] In an embodiment, the acquiring the map information of the target area and the shared angle deviation of the identification code arranged in the target area comprises: sending a correction request to a server, the correction request carrying the map request of the target area and the error request; receiving the map information of the target area and the shared angle deviation of the identification code returned by the server.
[0013] The second aspect of the embodiments of the present application provides a pose correction method, comprising: receiving the shared angle deviation of the identification code in the target area sent by at least one carrying device; receiving the correction request of the target area sent by at least one carrying device, the correction request carrying the map request of the target area and the error request; and sending the map information of the target area and the shared angle deviation to the carrying device.
[0014] The third aspect of the embodiments of the present application provides a pose correction device, comprising: a first acquisition module configured to acquire the initial angle deviation of a carrying device, the initial angle deviation being the angle between the actual travel direction of the carrying device and the identifier of the carrying device; a second acquisition module configured to acquire the map information of a target area and the shared angle deviation of the identification code arranged in the target area; and a correction module configured to correct the pose of the carrying device in the target area based on the shared angle deviation, the initial angle deviation and the map information.
[0015] In an embodiment, the first acquisition module is configured to: acquire the first angle between the moving direction of the carrying device when moving on a plurality of calibration codes and the direction of each calibration code; and calculate the average value of the plurality of first angles, and take the average value of the first angles as the initial angle deviation.
[0016] In an embodiment, the calibration codes are arranged along a straight line direction; and the first acquisition module is configured to: acquire the first angle between the moving direction of the carrying device on the calibration code and the straight line direction.
[0017] In an embodiment, the device further comprises: a third acquisition module configured to acquire the shared angle deviation of the carrying device when identifying each of the plurality of identification codes in the target area before sending the correction request to the server; and a first sending module configured to send the shared angle deviation of the plurality of identification codes to the server.
[0018] In an embodiment, the third obtaining module is configured to: drive the carrying device to repeatedly move a preset number of times in each of a plurality of specified moving directions of the identification code in the target area, and record a second angle between a moving direction of the carrying device each time and a current specified moving direction, wherein an average of the second angles of the preset number of times is taken as the shared angle deviation corresponding to the specified moving direction.
[0019] In an embodiment, the correction module is configured to: add the shared angle deviation and the initial angle deviation to obtain final error information of the carrying device in the target area; and generate a correction instruction according to the final error information and the map information, wherein the correction instruction is used to correct the pose of the carrying device in the target area.
[0020] In an embodiment, the second obtaining module is configured to: send a correction request to a server, wherein the correction request carries a map request and an error request of a target area, and the target area is provided with a plurality of identification codes; and receive map information of the target area and shared angle deviations of the identification codes returned by the server.
[0021] The fourth aspect of the embodiments of the present application provides a pose correction device, which comprises: a first receiving module configured to receive shared angle deviations of identification codes in a target area sent by at least one carrying device; a second receiving module configured to receive a correction request in the target area sent by at least one carrying device, wherein the correction request carries a map request and an error request of a target area; and a second sending module configured to send map information of the target area and the shared angle deviations to the carrying device.
[0022] The fifth aspect of the embodiments of the present application provides a carrying device, which comprises: an identifier configured to identify an identification code; a memory configured to store a computer program; and a processor configured to execute the method of the first aspect of the embodiments of the present application and any one of the embodiments thereof to correct a pose of the carrying device in the target area.
[0023] The sixth aspect of the embodiments of the present application provides an electronic device, which comprises: a memory configured to store a computer program; and a processor configured to execute the method of the second aspect of the embodiments of the present application and any one of the embodiments thereof. The seventh aspect of the embodiments of the present application provides a non-transitory carrying device readable storage medium, which comprises: a program configured to cause a carrying device to execute the method of the first aspect of the embodiments of the present application and any one of the embodiments thereof when the program is run by the carrying device; or a program configured to cause an electronic device to execute the method of the second aspect of the embodiments of the present application and any one of the embodiments thereof when the program is run by the electronic device.
[0024] The pose correction method, apparatus, device, and storage medium provided in this application correct the pose of the transport equipment by requesting map information and shared angle deviation of the target area from the server and then combining this with the initial angle deviation of the transport equipment itself. The error information of the transport equipment in the target area is decomposed into the initial angle deviation and the label pasting error (i.e., the shared angle deviation). The initial angle deviation is eliminated by calibrating the transport equipment, and the shared angle deviation can be obtained from the server. For multiple labels within the same target area, they share the same shared angle deviation. Therefore, transport equipment within the same target area can share the label pasting error, eliminating the need for each transport equipment to learn the label pasting error separately, thus improving the deployment efficiency of the transport equipment. Attached Figure Description
[0025] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0026] Figure 1A This is a schematic diagram of the structure of a handling device according to an embodiment of this application;
[0027] Figure 1B This is a schematic diagram of the structure of an electronic device according to an embodiment of this application;
[0028] Figure 2 This is a schematic diagram of a logistics sorting scenario according to an embodiment of this application;
[0029] Figure 3 This is a schematic flowchart of a pose correction method according to an embodiment of this application;
[0030] Figure 4A This is a schematic flowchart of a pose correction method according to an embodiment of this application;
[0031] Figure 4B This is a schematic diagram of QR code recognition according to an embodiment of this application;
[0032] Figure 5 This is a schematic flowchart of a pose correction method according to an embodiment of this application;
[0033] Figure 6 This is a schematic diagram of the posture correction device according to an embodiment of this application;
[0034] Figure 7 This is a schematic diagram of the posture correction device according to an embodiment of this application. Detailed Implementation
[0035] The technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application. In the description of the present application, the terms "first", "second", and the like are only used for differentiation and cannot be understood as indicating or implying relative importance.
[0036] As shown in FIG. 1, the present embodiment provides a carrying device, which includes at least one processor 11, a memory 12, and an identifier 13. In FIG. 1, one processor is taken as an example. The processor 11, the memory 12, and the identifier 13 are connected through a bus 10. The identifier 13 is configured to identify a preset identification code in a target area. The memory 12 stores instructions executable by the processor 11. The instructions are executed by the processor 11, so that the carrying device can execute all or part of the processes of the method in the embodiments described below, to correct the pose of the carrying device in the target area. Figure 1A
[0037] In an embodiment, the identifier can be a camera, a radio frequency identifier, or the like.
[0038] In an embodiment, the identification code can be an information code such as a two-dimensional code or a bar code. The identification code carries preset identification information. The identification code can be used as a beacon of the carrying device.
[0039] In an embodiment, the carrying device can be a machine with a camera, such as an AGV, a forklift, a stacker, or the like, which can move an object from one position to another position.
[0040] As shown in FIG. 1, the present embodiment provides a carrying device, which includes at least one processor 11, a memory 12, and an identifier 13. In FIG. 1, one processor is taken as an example. The processor 11, the memory 12, and the identifier 13 are connected through a bus 10. The identifier 13 is configured to identify a preset identification code in a target area. The memory 12 stores instructions executable by the processor 11. The instructions are executed by the processor 11, so that the carrying device can execute all or part of the processes of the method in the embodiments described below, to correct the pose of the carrying device in the target area. Figure 1B Figure 1B In an embodiment, the electronic device 2 can be a mobile phone, a tablet computer, a notebook computer, a desktop computer, or a large computer system composed of multiple computers.
[0041] Please refer to FIG. 2, which is a schematic diagram of a logistics sorting scene according to an embodiment of the present application. The carrying device can be an AGV 20. The AGV 20 is provided with a camera 21 as the identifier 13. The camera 21 can be arranged at the center of the body of the AGV 20, and the shooting direction of the camera 21 is downward.
[0042] Figure 2
[0043] In practical applications, the target area can be a storage room of a logistics sorting center, and the AGV 20 is used to sort items (such as packages, materials, etc.) and place them on corresponding positions (such as shelves). In this process, the ground of the storage room is paved with identification codes as beacons for the AGV 20. Hereinafter, the identification codes are taken as an example of two-dimensional codes. The distance between two-dimensional codes is generally between 50-200 cm, and the direction of the two-dimensional code is fixed. The AGV 20 can determine the position of the robot and correct the direction of the robot according to the two-dimensional code number and direction scanned on each two-dimensional code. Specifically, the AGV 20 uses a camera 21 located at the center of the body to take a picture and scan the ground two-dimensional code to identify the pose.
[0044] In practical applications, the pose direction of the camera 21 has a direct impact on the identification of the direction of the two-dimensional code. In actual tooling, there will be a certain angle deviation, that is, the machine tooling error α of the AGV 20. On the other hand, the angle of the two-dimensional code pasted will have a slight deviation. In a storage room, multiple AGVs 20 often work at the same time, and each AGV 20 needs to be corrected in pose. In order to improve the correction efficiency, the angle deviation caused by the pasting of the identification code can be shared to the server in the embodiment of the application, so that all AGVs 20 in the target area can share the angle deviation of the identification code, and each AGV does not need to learn the angle deviation of the identification code caused by pasting, thereby improving the deployment efficiency. The server can be implemented by the electronic device 2.
[0045] Please refer to Figure 3 which is a pose correction method of an embodiment of the application. The method can be executed by the carrying device shown in FIG. 1, and can be applied to the logistics sorting scene as shown in Figure 2 to correct the pose of the carrying device in the target area. The method includes the following steps:
[0046] Step 301: Obtain the initial angle deviation of the carrying device.
[0047] In this step, the initial angle deviation can be the angle between the actual travel direction of the carrying device and the identifier of the carrying device. For example, it can be the angle between the actual travel direction of the carrying device and the central axis of the identifier. Taking the target area as a logistics storage room as an example, the carrying device can be an AGV 20, and the initial angle deviation represents the angle between the actual travel direction of the AGV 20 and the identifier (such as the camera 21), which is the deviation caused by the camera tooling. The initial angle deviation can be obtained by pre-calibrating the AGV 20, and can be saved in the AGV or the server. In the pose correction process, the carrying device obtains the initial angle deviation in real time. Step 302: Send a correction request to the server, and the correction request carries a map request and an error request of the target area. A plurality of identification codes are arranged in the target area.
[0048] In this step, taking the target area as an example, a plurality of two-dimensional codes are arranged in the logistics storage room according to a preset travel route. When the AGV 20 deployed in the target area scans a two-dimensional code, the carrying device on the AGV 20 sends a correction request to the server.
[0049] Step 303: receiving the map information of the target area and the shared angle deviation for the identification code returned by the server.
[0050] In this step, in actual application, there will be a slight deviation in the angle of the pasted two-dimensional code. In a storage room, multiple AGVs 20 often work at the same time. In order to improve the correction efficiency, the angle deviation (i.e. shared angle deviation) generated when the identification code is pasted can be shared to the server, so that all AGVs 20 in the target area can share, and the deployment efficiency is improved. Therefore, the server stores the shared angle deviation of each two-dimensional code in the storage room and the map information in the storage room. The map information and the shared angle deviation returned by the server are received in real time.
[0051] In an embodiment, after step 301, not only can the map information of the target area and the shared angle deviation of the identification code arranged in the target area be obtained by requesting the server. The map information of the target area and the shared angle deviation can also be pre-stored on the carrying device, and when needed, the relevant map information and shared angle deviation can be directly read from the local storage of the carrying device.
[0052] Step 304: correcting the pose of the carrying device 1 in the target area based on the shared angle deviation, the initial angle deviation and the map information.
[0053] In this step, the travel route of the AGV 20 is planned in the map information. In the process of traveling according to the route planned in the map information, the AGV 20 is corrected in real time based on the shared angle deviation and the initial angle deviation.
[0054] The above-mentioned pose correction method corrects the pose of the carrying device by requesting the map information of the target area and the shared angle deviation from the server, and then combining the initial angle deviation of the AGV 20 itself. The error information of the AGV 20 in the target area is decomposed into the tooling error of the machine and the pasting error of the identification code. The tooling error of the machine is eliminated by calibrating the AGV 20. The pasting error of the identification code can be pre-stored in the server as a shared angle deviation. For multiple two-dimensional codes in the same target area, the shared angle deviation is the same, so it can be applied to all carrying devices. The shared angle deviation is shared, and the deployment efficiency of the AGV 20 is improved.
[0055] Please refer to Figure 4Awhich is a pose correction method of an embodiment of the present application, can be performed by the carrying device shown in FIG. 1, and can be applied to the logistics sorting scene as shown in FIG. Figure 2 The method includes the following steps:
[0056] Step 401: Obtain a first angle between a moving direction of the carrying device when moving on multiple calibration codes and a direction of each calibration code.
[0057] In this step, in actual application, multiple AGVs 20 will be deployed in a warehouse room to work simultaneously, and each AGV 20 needs to be pose corrected. One of the AGVs 20 can be arbitrarily selected as a carrying device to learn the shared angle deviation of the two-dimensional codes in the warehouse room. Before learning the shared angle deviation, the carrying device can be calibrated to obtain an initial angle deviation. That is, the carrying device is moved on multiple calibration codes, and the first angle between the moving direction and the direction of each calibration code is recorded.
[0058] In an embodiment, step 401 can specifically include that the calibration codes are arranged along a straight line direction, and the first angle between the moving direction of the carrying device on the calibration codes and the straight line direction is obtained.
[0059] In an actual scene, all AGVs 20 in a warehouse room can be calibrated together. Taking the scene as shown in FIG. Figure 2 The AGV 20 scans the ground two-dimensional code by the camera 21 located at the center of the body to perform pose recognition, and the pose direction of the camera 21 has a direct influence on the recognition direction of the two-dimensional code. In actual work, there will be a certain angle deviation. The calibration of the AGV 20 can eliminate the influence of such deviation on the recognition of the two-dimensional code. For each AGV 20 in the warehouse room, the calibration process can be as follows:
[0060] a1: On a fixed steel plate or flat ground, 3 or 4 two-dimensional codes are accurately pasted along a straight line, ensuring that the angles and distances of these two-dimensional codes are accurate enough to serve as basic calibration codes.
[0061] a2: Control the AGV 20 to align with the straight line direction at the starting two-dimensional code, and walk straight to the above of each calibration code in turn, record the first angles a1, a2, a3... between the scanned calibration code and the body advancing direction of the AGV 20, and obtain a certain number (such as 20).
[0062] Step 402: Calculate the average value of the multiple first angles, and take the average value of the first angles as the initial angle deviation.
[0063] In this step, the above-mentioned as shown in FIG. Figure 2The illustrated scenario can include after step a2:
[0064] a3: calculate the average value of the above first angle α1, first angle α2, first angle α3... to obtain the initial angle deviation α of the camera 21 of the AGV 20, and record the initial angle deviation α in the AGV 20 body.
[0065] The AGV 20 is calibrated on the installation accurate calibration code, which can record the tooling error in the AGV 20 body, eliminate the body individual difference, and provide the basis for the site two-dimensional code error sharing.
[0066] Step 403: In the target area, obtain the shared angle deviation generated by the carrying device when identifying each identification code in the plurality of identification codes.
[0067] In this step, for each identification code in the target area, record the direction error of the carrying device in each preset travel direction. Then, encapsulate the direction error of each identification code according to the preset data format, and generate the shared angle deviation of each identification code. In the actual scene, from the calibrated plurality of AGV 20, any one is selected as the carrying device. The carrying device learns the paste error of the two-dimensional code of the warehouse room, obtains the shared angle deviation of the warehouse room, step 403, which can include:
[0068] b1: control the driving AGV 20 (carrying device) to scan each two-dimensional code in the warehouse room in turn, and fuse the initial angle deviation of the sample AGV 20 itself, such as taking the initial angle deviation as the basic parameter of the AGV 20, and then the sample AGV 20 scans the two-dimensional code paste error form like Figure 4B As shown, record the direction error β1 of the current two-dimensional code in the current direction.
[0069] b2: driving the carrying device to repeatedly move a preset number of times in each of the plurality of specified travel directions of the identification code, and recording a second angle between the moving direction of the carrying device each time and the current specified travel direction, respectively, taking the average of the second angles of the preset number of times as a shared angle deviation, wherein each specified travel direction corresponds to a shared angle deviation. In actual scenarios, in order to obtain a more accurate shared angle deviation, the current direction of the current two-dimensional code can be repeatedly walked, and the second angle generated each time can be recorded by scanning 2-5 times. The second angle can be recorded by using the position detector of the AGV 20 to detect the actual moving direction of the AGV 20, and then compared with the actual direction specified by the current two-dimensional code to obtain the difference value as the second angle of one walk. The average of the multiple records is taken as the final direction error β1 of the current two-dimensional code in the current specified direction. The direction error β1 is encapsulated into a suitable communication format. For example, the current two-dimensional code number is 100, the travel direction is north, and the direction error β1 is encapsulated in the preset data format json. β1 can be represented as
[0070] b3: assuming that the preset direction of a two-dimensional code is four (east, west, south, north), the sample AGV 20 can learn the other three direction errors of the current two-dimensional code in turn according to the above process, and record the direction error values β2, β3, and β4. The shared angle deviation corresponding to the two-dimensional code includes the direction error values β1, β2, β3, and β4.
[0071] b4: repeating steps b2-b3 to complete the learning of the errors of all two-dimensional codes in the preset direction in the warehouse room, and obtain the shared angle deviations of all two-dimensional codes.
[0072] Step 404: send the shared angle deviations of the plurality of identification codes to the server.
[0073] In this step, the shared angle deviations of all two-dimensional codes obtained in steps b1-b4 are uploaded to the server in the cloud for storage for subsequent sharing.
[0074] Step 405: send a correction request to the server, the correction request carrying a map request and an error request of a target area, and the target area being provided with a plurality of identification codes.
[0075] In this step, before sending the correction request, the AGV 20 first loads the initial angle deviation α of the camera 21 saved in the body. Then each AGV 20 needs to be registered in the server, and only the AGV 20 that has completed the registration can request correction information from the server. For details, see the description of step 302 in the above embodiment.
[0076] Step 406: receiving the map information of the target area and the shared angle deviation for the identification code returned by the server. For details, see the description of step 302 in the above embodiment.
[0077] Step 407: adding the shared angle deviation and the initial angle deviation to obtain the final error information of the carrying device in the target area.
[0078] In this step, the AGV 20 walks according to the route planned in the map information, and when the AGV 20 scans a certain two-dimensional code in the warehouse, the final deviation angle (final error information) θ = (α + β) is obtained by adding the initial angle deviation α and the shared angle deviation β of the corresponding two-dimensional code.
[0079] Step 408: generating a correction instruction according to the final error information and the map information, the correction instruction being used to correct the pose of the carrying device in the target area.
[0080] In this step, during the walking of the AGV 20, the correction instruction is generated based on the planned route in the map information and the shared angle deviation of the current two-dimensional code, and the AGV 20 corrects its own pose orientation based on the correction instruction and then continues to travel according to the planned route.
[0081] The above-mentioned pose correction method distinguishes between the camera 21 tooling error (i.e., the initial angle deviation) of the AGV 20 and the ground two-dimensional code pasting error (i.e., the shared angle deviation). Each AGV 20 is calibrated by a strictly accurate calibration code, and after the tooling error of the AGV 20 is calibrated, an AGV 20 that has completed tooling calibration is selected to learn all two-dimensional code errors in the warehouse, and the ground two-dimensional code error is uploaded to the cloud server. The ground two-dimensional code error is the same value that can be shared by all AGVs 20 in the warehouse. Before the AGV 20 operates, the map and the shared two-dimensional code pasting error are downloaded from the server, the initial angle deviation and the corresponding shared angle deviation are fused, and the actual pose correction is performed. The two-dimensional code learning time is reduced, and the deployment efficiency is improved.
[0082] Please refer to Figure 5 which is a pose correction method of an embodiment of the present application. The method can be executed by a server that performs data interaction with the carrying device 1, and can be applied to a logistics sorting scene as shown in Figure 2 to correct the pose of the carrying device 1 in the target area. The method includes the following steps:
[0083] Step 501: receiving the shared angle deviation of the identification code in the target area sent by at least one carrying device.
[0084] Step 502: receiving a correction request in the target area sent by at least one carrying device, the correction request carrying a map request and an error request of the target area.
[0085] Step 503: send the map information of the target area and the shared angle deviation to the carrying device.
[0086] The above-mentioned pose correction method is executed by a server side, and can be used in combination with the above-mentioned method embodiments to complete the pose correction of the carrying device, so as to have the same beneficial effects as the above-mentioned method, which will not be repeated here.
[0087] Please refer to Figure 6 , which is a pose correction device 600 of an embodiment of the present application. The device is applied to the carrying device shown in FIG. 1, and can be applied to the logistics sorting scene as shown in Figure 2 to correct the pose of the carrying device in the target area. The device comprises a first acquisition module 601, a second acquisition module 602 and a correction module 603, and the principle relationship of each module is as follows:
[0088] The first acquisition module 601 is configured to acquire an initial angle deviation of the carrying device. The initial angle deviation is an angle between an actual travel direction of the carrying device and an identifier of the carrying device.
[0089] The second acquisition module 602 is configured to acquire map information of a target area and a shared angle deviation of an identification code arranged in the target area.
[0090] The correction module 603 is configured to correct the pose of the carrying device in the target area based on the shared angle deviation, the initial angle deviation and the map information.
[0091] In an embodiment, the first acquisition module 601 is configured to acquire a first angle between a moving direction of the carrying device when moving on a plurality of calibration codes and a direction of each calibration code. An average value of the plurality of first angles is calculated, and the average value of the first angle is taken as the initial angle deviation.
[0092] In an embodiment, the calibration code is arranged along a straight line direction. The first acquisition module 601 is configured to acquire a first angle between a moving direction of the carrying device when moving on a plurality of calibration codes and a direction of each calibration code. The first angle includes a first angle between a moving direction of the carrying device on the calibration code and the straight line direction.
[0093] In an embodiment, the device further comprises a third acquisition module 604 configured to acquire a shared angle deviation generated by the carrying device when identifying each identification code in a plurality of identification codes in the target area before sending a correction request to the server. A first sending module 605 is configured to send the shared angle deviation of the plurality of identification codes to the server.
[0094] In an embodiment, the third obtaining module 604 is configured to: in the target area, drive the carrying device to repeatedly move a preset number of times in each of a plurality of specified moving directions of the identification code, and record a second angle between the moving direction of the carrying device each time and the current specified moving direction, and take an average of the second angles of the preset number of times as a shared angle deviation, where each of the specified moving directions corresponds to a shared angle deviation.
[0095] In an embodiment, the correction module 603 is configured to: add the shared angle deviation and the initial angle deviation to obtain final error information of the carrying device in the target area, and generate a correction instruction according to the final error information and the map information, where the correction instruction is used to correct the pose of the carrying device in the target area.
[0096] In an embodiment, the second obtaining module 602 is configured to: send a correction request to a server, where the correction request carries a map request and an error request of the target area, and the target area is provided with a plurality of identification codes, and receive the map information of the target area and the shared angle deviation of the identification codes returned by the server.
[0097] For detailed description of the above-mentioned pose correction device 600, please refer to the description of the related method steps in the above-mentioned embodiments.
[0098] Please refer to Figure 7 , which is a pose correction device 700 according to an embodiment of the present application. The device is applied to a server that can interact with a carrying device, and can be applied to a logistics sorting scene as shown in Figure 2 to correct the pose of the carrying device in the target area. The device comprises:
[0099] The first receiving module 701 is configured to receive the shared angle deviation of the identification code in the target area sent by at least one carrying device.
[0100] The second receiving module 702 is configured to receive a correction request in the target area sent by at least one carrying device, where the correction request carries a map request and an error request of the target area.
[0101] The second sending module 703 is configured to send the map information of the target area and the shared angle deviation to the carrying device.
[0102] For detailed description of the above-mentioned pose correction device 700, please refer to the description of the related method steps in the above-mentioned embodiments.
[0103] The embodiment of the present application further provides a non-transitory electronic device readable storage medium, comprising a program which, when running on an electronic device, causes the electronic device to execute all or part of the process of the method in the above embodiment. The storage medium can be a disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a Flash Memory, a Hard Disk Drive (HDD) or a Solid-State Drive (SSD), etc. The storage medium can also comprise a combination of the above-mentioned types of memories.
[0104] Although the embodiments of the present application are described in conjunction with the drawings, various modifications and changes can be made by those skilled in the art without departing from the spirit and scope of the present application, and such modifications and changes are intended to fall within the scope of the appended claims.
Claims
1. A pose correction method, characterized by, The method comprises the following steps: obtaining an initial angle deviation of the carrying device, the initial angle deviation being an angle between an actual travel direction of the carrying device and an identifier of the carrying device, the initial angle deviation being a deviation caused by a camera tool; obtaining map information of a target area and a shared angle deviation of an identification code arranged in the target area, a plurality of identification codes being arranged in the target area, wherein the shared angle deviation is an angle deviation generated when the identification code is pasted, and the shared angle deviation is stored in a server to receive the shared angle deviation fed back by the server; correcting a pose of the carrying device in the target area based on the shared angle deviation, the initial angle deviation and the map information.
2. The method of claim 1, wherein, The initial angle deviation of the carrying device is determined by the following method: obtaining a first angle between a moving direction of the carrying device when moving on a plurality of calibration codes and a direction of each of the calibration codes; calculating an average value of a plurality of the first angles, and taking the average value of the first angles as the initial angle deviation.
3. The method of claim 2, wherein, The calibration codes are arranged along a straight line direction. The first angle between the moving direction of the carrying device when moving on a plurality of calibration codes and the direction of each of the calibration codes comprises: obtaining a first angle between the moving direction of the carrying device on the calibration code and the straight line direction.
4. The method of claim 1, wherein, After obtaining the initial angle deviation of the carrying device, the method further comprises: in the target area, obtaining a shared angle deviation generated by the carrying device when identifying each of the plurality of identification codes; sending the shared angle deviation of the plurality of identification codes to the server.
5. The method of claim 4, wherein, In the target area, the shared angle deviation generated by the carrying device when identifying each of the plurality of identification codes comprises: in the target area, driving the carrying device to repeatedly move a preset number of times in a plurality of specified travel directions of each of the identification codes respectively, and recording a second angle between the moving direction of the carrying device and the current specified travel direction respectively, and taking an average value of the second angles of the preset number of times as the shared angle deviation, wherein each of the specified travel directions corresponds to one of the shared angle deviations.
6. The method according to any one of claims 1 to 5, characterized in that, Based on the shared angle deviation, the initial angle deviation and the map information, the pose of the carrying device in the target area is corrected, which comprises: adding the shared angle deviation and the initial angle deviation to obtain final error information of the carrying device in the target area; generating a correction instruction according to the final error information and the map information, the correction instruction being used to correct the pose of the carrying device in the target area.
7. The method according to any one of claims 1 to 5, characterized in that, The method comprises the following steps: sending a correction request to a server, the correction request carrying a map request and an error request of the target area; receiving the map information of the target area and the shared angle deviation of the identification code returned by the server.
8. A pose correction device, characterized in that The method comprises the following steps: The first acquisition module is configured to acquire an initial angle deviation of the conveying device, the initial angle deviation being an angle between an actual travel direction of the conveying device and an identifier of the conveying device, and the initial angle deviation being a deviation caused by a camera tool; The first sending module is configured to send a correction request to a server, the correction request carrying a map request of a target area and an error request, and the target area being provided with a plurality of identification codes; The first receiving module is configured to receive map information of the target area and a shared angle deviation for the identification codes returned by the server, wherein the shared angle deviation is an angle deviation generated when the identification codes are pasted, and the shared angle deviation is stored in the server to receive the shared angle deviation fed back by the server; The correction module is configured to correct a pose of the conveying device in the target area based on the shared angle deviation, the initial angle deviation, and the map information.
9. A handling device, characterized in that The method comprises: The identifier is configured to identify the identification codes; The memory is configured to store a computer program; The processor is configured to execute the method according to any one of claims 1 to 7 to correct the pose of the conveying device in the target area.
10. A non-transitory tote device readable storage medium, comprising: The program, when executed by the conveying device, causes the conveying device to execute the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Mobile robot positioning method used for correcting code adherence errors
CN103345247A
Automated guided vehicle based on double-camera code-scanning, and navigation method thereof
CN110347160A