Robot positioning recovery method and system, electronic device and storage medium

By acquiring and storing data from the robot's wheeled odometer and lidar in real time, and calculating the relative displacement and rotation matrix, the problem of inaccurate robot positioning after lidar data loss is solved, enabling rapid and accurate positioning and improving robot stability.

CN116125447BActive Publication Date: 2026-02-17GUANGZHOU GOSUNCN ROBOTICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310151640.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-22
Publication Date
2026-02-17
Estimated Expiration
2043-02-22

AI Technical Summary

Technical Problem

The robot loses its positioning or its positioning becomes inaccurate after losing LiDAR data, causing the robot to wander around erratically.

Method used

By acquiring real-time data from the robot's wheel odometer and lidar, storing it as a data queue for the positioning time length, and determining that lidar data is lost, the robot's relative displacement and relative rotation matrix during the period of lidar data loss are calculated using wheel odometer data. After the lidar data is recovered, the positioning is quickly initialized.

Benefits of technology

This technology enables rapid recovery of the robot's accurate positioning after the loss of LiDAR data, avoiding cumbersome global initialization and improving the robot's stability and reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116125447B_ABST
    Figure CN116125447B_ABST
Patent Text Reader

Abstract

The application discloses a robot positioning recovery method and system, electronic equipment and a storage medium. The method comprises the following steps: acquiring wheel odometry data and real-time positioning data based on a laser radar of a robot in real time, and storing the data as two positioning time length data queues; acquiring a timestamp of the latest laser radar data, and determining that the laser radar data is lost when the timestamp of the latest laser radar data is greater than a time threshold from the current time; recovering the radar data, acquiring a timestamp of the current radar data, finding the data closest in time, and recording a three-dimensional position and attitude in a wheel odometry coordinate system; calculating a relative displacement and a relative rotation homogeneous matrix of the robot during the loss of the radar data; calculating a three-dimensional position and attitude of the current robot in a map coordinate system after the radar data is newly obtained according to the homogeneous matrix; and performing initialization processing to obtain positioning obtained after the radar data is recovered.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of robot manufacturing technology, and more specifically, to a robot positioning and recovery method, system, electronic device, and storage medium. Background Technology

[0002] In scenarios where robots need to operate for extended periods, the stability of various components within the robot is challenged. LiDAR is one of the components used for real-time positioning in robots. In real-world environments, LiDAR data may be lost for a period due to factors such as insufficient stability of the LiDAR itself, network transmission congestion, or poor power module stability, leading to LiDAR restarts and subsequent data loss before the data returns to normal.

[0003] It typically takes a few seconds for the robot to determine that radar data has truly been lost, during which time the robot has already traveled a certain distance or rotated a certain angle. When the radar data is recovered, the robot repositions itself to the position before the radar data was lost. However, by this time, the positioning has deviated, resulting in lost or inaccurate positioning, which causes the robot to wander aimlessly. Summary of the Invention

[0004] One objective of this invention is to provide a new technical solution for robot positioning recovery methods, systems, electronic devices, and storage media, which can at least solve the problems of robot positioning loss or inaccurate positioning after recovering lost data in the prior art.

[0005] A first aspect of the present invention provides a robot localization recovery method, comprising:

[0006] The robot acquires wheel odometry data and LiDAR-based real-time positioning data in real time and stores them as two data queues with different positioning time lengths.

[0007] Obtain the timestamp of the latest LiDAR data, and determine that the LiDAR data is lost when the difference between the timestamp of the latest LiDAR data and the current time is greater than a time threshold;

[0008] Recover radar data, obtain the timestamp of the current radar data, find the closest data in the wheel odometer data queue based on the timestamp of the current radar data, and find the closest data in the wheel odometer data queue based on the timestamp of the lost current radar data, and record the three-dimensional position and attitude in the wheel odometer coordinate system respectively.

[0009] Calculate the homogeneous matrices of the robot's relative displacement and relative rotation during the period of radar data loss;

[0010] The three-dimensional position and orientation of the robot in the map coordinate system after acquiring new radar data are calculated based on the homogeneous matrix.

[0011] Initialization process is performed to obtain the positioning data after radar data recovery.

[0012] Optionally, the robot includes a chassis and a lidar, the lidar being mounted on the chassis, and the data detected by the lidar being timestamped.

[0013] Optionally, when the difference between the first data in the data queue and the latest data is greater than a preset value, the first data is removed, the latest data is added, and the process is repeated continuously.

[0014] Optionally, the step of determining that the lidar data is lost includes: saving the timestamp of the current lidar data, reporting the lidar data anomaly, and waiting for the lidar data to be recovered.

[0015] Optionally, the formula for calculating the homogeneous matrices of the robot's relative displacement and relative rotation during the radar data loss period is as follows:

[0016] T_get_delta=T_lose_odom.inverse()*T_get_odom

[0017] Where T_get_delta represents the homogeneous matrix of the robot's relative displacement and relative rotation, T_get_odom represents the data whose time is closest to the current LiDAR data when the radar data is recovered, and T_lose_odom.inverse() represents the inverse of the T_lose_odom matrix.

[0018] Optionally, the formula for calculating the robot's three-dimensional position and orientation in the map coordinate system after reacquiring radar data, based on the homogeneous matrix, is as follows:

[0019] T_guess_now=T_lose_local*T_get_delta

[0020] Wherein, T_guess_now represents an estimated position of the robot in the map coordinate system after the robot regains radar data, T_lose_local represents the data whose timestamp of the current lidar data is found in the positioning data queue when the radar data is lost, and T_get_delta represents the homogeneous matrix of the robot's relative displacement and relative rotation.

[0021] Optionally, the robot positioning recovery method is characterized by further comprising: after successful initialization, the robot eliminates the alarm of abnormal radar data and continues to perform the robot's task.

[0022] A second aspect of the present invention provides a robot positioning recovery system applied to the robot positioning recovery method described in the above embodiments, the robot positioning recovery system comprising:

[0023] The first acquisition module is used to acquire the robot's wheel odometry data and real-time positioning data based on LiDAR in real time, and store them as two data queues with positioning time lengths.

[0024] The second acquisition module is used to acquire the timestamp of the latest lidar data, and when the difference between the timestamp of the latest lidar data and the current time is greater than a time threshold, it is determined that the lidar data is lost.

[0025] The third acquisition module is used to recover radar data, acquire the timestamp of the current radar data, find the closest data in the queue of wheel odometer data based on the timestamp of the current radar data, and find the closest data in the queue of wheel odometer data based on the timestamp of the lost current radar data, and record the three-dimensional position and attitude in the wheel odometer coordinate system respectively.

[0026] A first calculation module is used to calculate the homogeneous matrices of the robot's relative displacement and relative rotation during the period of radar data loss.

[0027] The second calculation module is used to calculate the three-dimensional position and attitude of the robot in the map coordinate system after it has reacquired radar data, based on the homogeneous matrix.

[0028] An initialization module is used for initialization processing to obtain the positioning obtained after radar data recovery.

[0029] A third aspect of the present invention provides an electronic device comprising: a processor and a memory, wherein computer program instructions are stored in the memory, wherein when the computer program instructions are executed by the processor, the processor causes the processor to perform the steps of the robot positioning and recovery method described in the above embodiments.

[0030] In a fourth aspect, the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, causes the processor to perform the steps of the robot localization recovery method described in the above embodiments.

[0031] The robot localization recovery method of this invention acquires the relative pose during radar data loss based on the robot's wheel odometry information. Simultaneously with radar data recovery, it enables rapid localization initialization, achieving the goal of robot localization recovery. This method allows for rapid localization initialization even when radar data is lost due to uncontrollable factors, avoiding manual intervention and improving the robot's stability and reliability. Furthermore, utilizing the wheel odometry to acquire the relative pose during radar data loss avoids cumbersome global initialization, achieving rapid robot localization recovery.

[0032] Other features and advantages of the invention will become clear from the following detailed description of exemplary embodiments of the invention with reference to the accompanying drawings. Attached Figure Description

[0033] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments of the invention and, together with their description, serve to explain the principles of the invention.

[0034] Figure 1 This is a flowchart of a robot positioning recovery method according to an embodiment of the present invention;

[0035] Figure 2 This is a schematic diagram of an electronic device according to an embodiment of the present invention.

[0036] Figure label:

[0037] Processor 201;

[0038] Memory 202; Operating System 2021; Application Program 2022;

[0039] Network interface 203;

[0040] Input device 204;

[0041] Hard drive 205;

[0042] Display device 206. Detailed Implementation

[0043] Various exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the invention.

[0044] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the invention or its application or use.

[0045] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0046] In all the examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.

[0047] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0048] The robot positioning and recovery method according to an embodiment of the present invention will be described in detail below with reference to the accompanying drawings.

[0049] like Figure 1 As shown, the robot localization recovery method according to an embodiment of the present invention includes:

[0050] S1. Acquire real-time data from the robot's wheel odometer and real-time positioning data based on LiDAR, and store them as two data queues with different positioning time lengths.

[0051] S2. Obtain the timestamp of the latest LiDAR data, and determine that the LiDAR data is lost when the difference between the timestamp of the latest LiDAR data and the current time is greater than the time threshold.

[0052] S3. Recover radar data, obtain the timestamp of the current radar data, and find the closest data in the wheel odometer data queue based on the timestamp of the current radar data, and find the closest data in the wheel odometer data queue based on the timestamp of the lost current radar data, and record the three-dimensional position and attitude in the wheel odometer coordinate system respectively.

[0053] S4. Calculate the homogeneous matrices of the robot's relative displacement and relative rotation during the period of radar data loss;

[0054] S5. Calculate the robot's three-dimensional position and orientation in the map coordinate system after acquiring new radar data based on the homogeneous matrix;

[0055] S6. Initialization process to obtain the positioning after radar data recovery.

[0056] In other words, in the robot localization recovery method of this invention embodiment, see... Figure 1First, the robot's wheel odometry data and real-time positioning data based on LiDAR can be acquired in real time and stored as two data queues with positioning time lengths denoted as `time_len`. `time_len` can generally be set according to the actual working conditions of the LiDAR to ensure that the radar data can be recovered within `time_len` time. Then, the timestamp of the latest LiDAR data can be obtained, and if the difference between the timestamp of the latest LiDAR data and the current time is greater than a time threshold, it is determined that the LiDAR data is lost. This time threshold can be denoted as `time_max`. For example, if `time_max` is 3 seconds, then the radar data is determined to be lost, the timestamp of the current LiDAR data `t_laser_lose` is saved, a radar data anomaly is reported, and the system waits for the LiDAR data to be recovered.

[0057] Next, the radar data is recovered, and the timestamp of the current radar data is obtained, denoted as t_laser_get. Based on the timestamp of the current radar data, the closest data in the wheel odometer data queue is found, as well as based on the timestamp of the lost current radar data in the wheel odometer data queue. The three-dimensional position and attitude in the wheel odometer coordinate system are recorded respectively.

[0058] During radar data recovery, the timestamp t_laser_get of the current radar data is obtained. Based on t_laser_lose, the closest data point in the wheel odometry data queue is found and denoted as T_lose_odom. T_lose_odom is a 4x4 homogeneous matrix representing the robot's 3D position and orientation in the wheel odometry coordinate system at time t_laser_lose. Similarly, based on t_laser_lose, the closest data point in the real-time positioning data queue is found and denoted as T_lose_local. T_lose_local is a 4x4 homogeneous matrix representing the robot's 3D position and orientation on the map at time t_laser_lose. Finally, based on t_laser_get, the closest data point in the wheel odometry data queue is found and denoted as T_get_odom. T_get_odom is a 4x4 homogeneous matrix representing the robot's 3D position and orientation in the wheel odometry coordinate system at time t_laser_get.

[0059] Then, the homogeneous matrices of the robot's relative displacement and relative rotation during the radar data loss period can be calculated. Furthermore, based on these homogeneous matrices, the robot's 3D position and orientation in the map coordinate system after regaining radar data can be calculated. Finally, initialization is performed; upon successful initialization, the accurate positioning obtained after radar data recovery is achieved.

[0060] Therefore, the robot positioning and recovery method according to embodiments of the present invention obtains the relative pose during the radar data loss period based on the robot's wheel odometer information, enabling rapid and successful positioning initialization simultaneously with radar data recovery, thus achieving the goal of robot positioning and recovery. This robot positioning and recovery method can quickly and successfully initialize positioning after radar data loss due to uncontrollable factors, avoiding manual intervention and improving the robot's stability and reliability. Simultaneously, utilizing the wheel odometer to obtain the relative pose during radar data loss avoids cumbersome global initialization, achieving the goal of rapid robot positioning and recovery.

[0061] According to one embodiment of the present invention, the robot includes a chassis and a lidar, the lidar being mounted on the chassis, and the data detected by the lidar being timestamped.

[0062] In other words, the robot consists of a chassis and a LiDAR system. The LiDAR is mounted on the chassis, which acquires real-time wheel odometer data, which is timestamped. The LiDAR-detected data is also timestamped. Based on the LiDAR data, real-time positioning data is output, which is also timestamped.

[0063] According to one embodiment of the present invention, when the difference between the first data in the data queue and the latest data is greater than a preset value, the first data is removed, the latest data is added, and the process is repeated continuously.

[0064] In other words, by acquiring real-time data from the robot's wheel odometry and real-time positioning data based on LiDAR, and storing it in two data queues with a fixed time length denoted as `time_len`, such as a data queue with `time_len` of 60 seconds, when the difference between the first data in the queue and the latest data exceeds `time_len`, the first data is removed, and the latest data is added, continuously looping. `time_len` can generally be set according to the actual working conditions of the LiDAR to ensure that the radar data can be recovered within `time_len` time.

[0065] In some specific embodiments of the present invention, the step of determining that the lidar data is lost includes: saving the timestamp of the current lidar data, which is denoted as t_laser_lose, reporting the lidar data abnormality, and waiting for the lidar data to be recovered.

[0066] In some specific embodiments of the present invention, the formulas for calculating the homogeneous matrices of the robot's relative displacement and relative rotation during radar data loss are as follows:

[0067] T_get_delta=T_lose_odom.inverse()*T_get_odom

[0068] Where T_get_delta represents the homogeneous matrix of the robot's relative displacement and relative rotation, T_get_odom represents the timestamp of the current lidar data obtained when the radar data is recovered, and the closest data in the wheel odometry data queue is found based on the timestamp of the current lidar data, and T_lose_odom.inverse() represents the inverse of the T_lose_odom matrix.

[0069] The formula for calculating the robot's 3D position and orientation in the map coordinate system after acquiring new radar data, based on the homogeneous matrix, is as follows:

[0070] T_guess_now=T_lose_local*T_get_delta

[0071] Here, T_guess_now represents an estimated position of the robot in the map coordinate system after the radar data is reacquired; T_lose_local represents the closest data in the localization data queue to the timestamp of the current LiDAR data when radar data loss was detected; and T_get_delta represents the homogeneous matrix of the robot's relative displacement and relative rotation. T_guess_now is used as the estimate of the current position for initialization of localization, thus achieving accurate localization after radar data recovery.

[0072] The robot positioning recovery method according to an embodiment of the present invention further includes: after successful initialization, the robot eliminates the alarm of abnormal radar data and continues to perform the robot's task.

[0073] In summary, the robot localization recovery method according to embodiments of the present invention acquires the relative pose during radar data loss based on the robot's wheel odometry information, enabling rapid localization initialization during radar data recovery and achieving the goal of robot localization recovery. This method allows for rapid localization initialization after radar data loss due to uncontrollable factors, avoiding manual intervention and improving the robot's stability and reliability. Furthermore, utilizing wheel odometry to acquire the relative pose during radar data loss avoids cumbersome global initialization, achieving rapid robot localization recovery.

[0074] According to a second aspect of the present invention, a robot positioning recovery system is provided, applied to the robot positioning recovery method in the above embodiments. The robot positioning recovery system includes a first acquisition module, a second acquisition module, a third acquisition module, a first calculation module, a second calculation module, and an initialization module. The first acquisition module is used to acquire real-time wheel odometer data and real-time positioning data based on LiDAR from the robot, and store them as two data queues with two positioning time lengths. The second acquisition module is used to acquire the timestamp of the latest LiDAR data, and determines that the LiDAR data is lost when the difference between the timestamp of the latest LiDAR data and the current time is greater than a time threshold.

[0075] The third acquisition module is used to recover radar data, obtain the timestamp of the current radar data, and find the closest data in the wheel odometer data queue based on the timestamp of the current radar data, as well as the closest data in the wheel odometer data queue based on the timestamp of the lost current radar data, and record the 3D position and attitude in the wheel odometer coordinate system respectively. The first calculation module is used to calculate the homogeneous matrix of the robot's relative displacement and relative rotation during the radar data loss period. The second calculation module is used to calculate the robot's 3D position and attitude in the map coordinate system after the radar data is reacquired based on the homogeneous matrix. The initialization module is used for initialization processing to obtain the positioning obtained after radar data recovery.

[0076] The robot positioning and recovery system according to embodiments of the present invention acquires the relative pose during radar data loss based on the robot's wheel odometer information. Simultaneously with radar data recovery, it achieves rapid positioning initialization, thus realizing the goal of robot positioning and recovery. This robot positioning and recovery method can quickly initialize positioning successfully after radar data loss due to uncontrollable factors, avoiding manual intervention and improving the robot's stability and reliability. Furthermore, utilizing the wheel odometer to acquire the relative pose during radar data loss avoids cumbersome global initialization, achieving rapid robot positioning and recovery.

[0077] According to a third aspect of the present invention, an electronic device is also provided, comprising: a processor 201 and a memory 202, wherein computer program instructions are stored in the memory 202, wherein when the computer program instructions are executed by the processor 201, the processor 201 performs the steps of the robot positioning and recovery method in the above embodiments.

[0078] Furthermore, such as Figure 2 As shown, the electronic device also includes a network interface 203, an input device 204, a hard disk 205, and a display device 206.

[0079] The various interfaces and devices described above can be interconnected via a bus architecture. The bus architecture can include any number of interconnecting buses and bridges. Specifically, various circuits of one or more central processing units 201 (CPUs), represented by processor 201, and one or more memories 202, represented by memory 202, are connected together. The bus architecture can also connect various other circuits such as peripheral devices, voltage regulators, and power management circuits. It is understood that the bus architecture is used to implement communication between these components. In addition to the data bus, the bus architecture also includes a power bus, a control bus, and a status signal bus, which are well known in the art and therefore will not be described in detail herein.

[0080] The network interface 203 can be connected to a network (such as the Internet, local area network, etc.), obtain relevant data from the network, and save it to the hard disk 205.

[0081] Input device 204 can receive various instructions input by the operator and send them to processor 201 for execution. Input device 204 may include a keyboard or clicking device (e.g., mouse, trackball, touchpad, or touch screen).

[0082] Display device 206 can display the results obtained by the processor 201 executing instructions.

[0083] The memory 202 is used to store the programs and data necessary for the operation of the operating system 2021, as well as intermediate results and other data during the calculation process of the processor 201.

[0084] It is understood that the memory 202 in the embodiments of the present invention may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory may be random access memory (RAM), which is used as an external cache. The memory 202 of the apparatus and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory 202.

[0085] In some implementations, memory 202 stores elements such as executable modules or data structures, or subsets thereof, or extended sets thereof: operating system 2021 and application 2022.

[0086] The operating system 2021 includes various system programs, such as the framework layer, core library layer, and driver layer, used to implement various basic business functions and handle hardware-based tasks. The application program 2022 includes various applications, such as a browser, used to implement various application functions. Programs implementing the methods of this embodiment can be included in the application program 2022.

[0087] When the processor 201 calls and executes the application program 2022 and data stored in the memory 202, specifically the program or instructions stored in the application program 2022, it executes the steps of the robot positioning recovery method according to the above embodiment.

[0088] The methods disclosed in the above embodiments of the present invention can be applied to processor 201, or implemented by processor 201. Processor 201 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 201 or by instructions in the form of software. The processor 201 may be a general-purpose processor, digital signal processor (DSP), application-specific integrated circuit (ASIC), off-the-shelf programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, and can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor, or processor 201 may be any conventional processor 201, etc. The steps of the methods disclosed in the embodiments of the present invention can be directly embodied in the execution of hardware decoding processor, or executed by a combination of hardware and software modules in decoding processor. The software modules may be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 202. The processor 201 reads the information in memory 202 and, in conjunction with its hardware, completes the steps of the above method.

[0089] It is understood that the embodiments described herein can be implemented in hardware, software, firmware, middleware, microcode, or a combination thereof. For hardware implementation, the processing unit can be implemented in one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions of this application, or combinations thereof.

[0090] For software implementation, the techniques described herein can be implemented through modules (e.g., procedures, functions, etc.) that perform the functions described herein. The software code can be stored in memory 202 and executed by processor 201. Memory 202 can be implemented in processor 201 or external to processor 201.

[0091] Specifically, the processor 201 is also used to read the computer program and perform the following steps: predicting and outputting the answer to the user's question regarding the charging method for the charging pile.

[0092] According to a fourth aspect of the present invention, a computer-readable storage medium is also provided, which stores a computer program. When the computer program is run by a processor 201, the processor 201 performs the steps of the robot positioning and recovery method described above.

[0093] In the several embodiments provided in this application, it should be understood that the disclosed methods and apparatus can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0094] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can be physically comprised separately, or two or more units can be integrated into one unit. The integrated unit described above can be implemented in hardware or in the form of hardware plus software functional units.

[0095] The integrated units implemented as software functional units described above can be stored in a computer-readable storage medium. These software functional units, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute certain steps of the transmission and reception methods of the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0096] While specific embodiments of the invention have been described in detail by way of examples, those skilled in the art should understand that the examples are for illustrative purposes only and not intended to limit the scope of the invention. Those skilled in the art should understand that modifications can be made to the above embodiments without departing from the scope and spirit of the invention. The scope of the invention is defined by the appended claims.

Claims

1. A robot position recovery method characterized by, The application comprises: Real-time acquisition of wheel odometer data and real-time positioning data based on laser radar of a robot, and storage as two positioning time length data queues; Acquisition of the timestamp of the latest laser radar data, and determination of loss of the laser radar data when the timestamp of the latest laser radar data is greater than the current time by a time threshold; Recovery of radar data, acquisition of the timestamp of the current radar data, and finding of the data closest in time in the queue of the wheel odometer data according to the timestamp of the current radar data, and finding of the data closest in time in the queue of the wheel odometer data according to the timestamp of the lost current radar data, and recording of the three-dimensional position and attitude in the wheel odometer coordinate system respectively; Calculation of the homogeneous matrix of the relative displacement and relative rotation of the robot during the loss of radar data; Calculation of the three-dimensional position and attitude of the current robot in the map coordinate system after the reacquisition of radar data according to the homogeneous matrix; Initialization processing to obtain positioning after the recovery of radar data.

2. The robot position recovery method according to claim 1, characterized by, The robot comprises a chassis and a laser radar, the laser radar is arranged on the chassis, and the data detected by the laser radar is provided with a timestamp.

3. The robot position recovery method according to claim 1, characterized by, When the first data in the data queue is greater than the current latest data by a preset value, the first data is removed, the latest data is added, and the cycle is continuously repeated.

4. The robot position recovery method according to claim 1, characterized by, The step of determining the loss of the laser radar data comprises: saving the timestamp of the current laser radar data, reporting radar data abnormality, and waiting for the recovery of the laser radar data.

5. The robot position recovery method according to claim 1, wherein The calculation formula of the homogeneous matrix of the relative displacement and relative rotation of the robot during the loss of radar data is: T_get_delta = T_lose_odom.inverse () * T_get_odom Wherein, T_get_delta represents the homogeneous matrix of the relative displacement and relative rotation of the robot, T_get_odom represents the timestamp of the current laser radar data obtained when the radar data is recovered, and the data closest in time in the queue of the wheel odometer data is found according to the obtained timestamp of the current laser radar data, and T_lose_odom.inverse () represents the inverse of the T_lose_odom matrix.

6. The robot position recovery method according to claim 5, wherein The calculation formula of the three-dimensional position and attitude of the current robot in the map coordinate system after the reacquisition of radar data according to the homogeneous matrix is: T_guess_now = T_lose_local * T_get_delta Wherein, T_guess_now represents an estimated position of the current robot in the map coordinate system after the reacquisition of radar data, T_lose_local represents the data closest in time in the positioning data queue according to the timestamp of the current laser radar data saved when the loss of radar data is determined, and T_get_delta represents the homogeneous matrix of the relative displacement and relative rotation of the robot.

7. The robot position recovery method according to claim 1, wherein Further comprising: After the initialization is successful, the robot eliminates the alarm of radar data exception and continues to execute the task of the robot.

8. A robot position recovery system for use in the robot position recovery method according to any one of claims 1 to 7, characterized by The robot positioning recovery system comprises: A first acquisition module is configured to acquire wheel odometry data and real-time positioning data based on a laser radar of the robot in real time and store the data as two positioning time length data queues. A second acquisition module is configured to acquire a time stamp of the latest laser radar data and determine that the laser radar data is lost when the time stamp of the latest laser radar data is greater than a time threshold from a current time. A third acquisition module is configured to recover radar data, acquire a time stamp of current radar data, find data closest in time in the queue of the wheel odometry data according to the time stamp of the current radar data, find data closest in time in the queue of the wheel odometry data according to the time stamp of the lost current radar data, and record three-dimensional positions and attitudes in a wheel odometry coordinate system respectively. A first calculation module is configured to calculate a homogeneous matrix of relative displacement and relative rotation of the robot during loss of the radar data. A second calculation module is configured to calculate three-dimensional positions and attitudes of the robot in a map coordinate system after the radar data is newly obtained according to the homogeneous matrix. An initialization module is configured to initialize processing to obtain positioning obtained after recovery of the radar data.

9. An electronic device, comprising: A processor and a memory are provided, and computer program instructions are stored in the memory, wherein when the computer program instructions are run by the processor, the processor executes the steps of the robot positioning recovery method in any one of claims 1-7. The computer readable storage medium stores a computer program, and when the computer program is run by a processor, the processor executes the steps of the robot positioning recovery method in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, ​

Citation Information

Patent Citations

  • Positioning recovery method and device, robot and storage medium

    CN110900602A

  • Multi-sensor fusion laser radar positioning method, system and terminal

    CN113503876A