A robot positioning method, device, computer equipment and readable storage medium
By constructing a zero-bias prediction model and a Kalman filter, and combining inertial navigation measurement data and radial distance correction, the problem of low positioning accuracy of robots in pipelines was solved, and high-precision positioning was achieved in harsh environments.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ZHICHENG MANUFACTURING (BEIJING) TECHNOLOGY CO LTD
- Filing Date
- 2025-11-25
- Publication Date
- 2026-05-01
AI Technical Summary
The accuracy of robot positioning results when moving inside the pipeline is low, mainly due to the cumulative drift of positioning errors caused by the inertial measurement unit (IMU) and the inaccuracy of displacement caused by the robot wheels slipping in wet or muddy environments.
By constructing a zero-bias prediction model, correcting it using inertial navigation measurement data, and correcting the displacement by combining it with the current radial distance, using a Kalman filter for positioning prediction, and adjusting the measurement noise covariance matrix and zero-bias prediction model parameters, the positioning accuracy is improved.
It effectively suppresses inertial navigation measurement data and displacement drift, improves the accuracy of robot positioning results, and enhances navigation capabilities in harsh environments.
Smart Images

Figure CN121384005B_ABST
Abstract
Description
A robot localization method, apparatus, computer device, and readable storage medium. Technical Field
[0001] This application relates to the field of robotics, and in particular to a robot positioning method, apparatus, computer equipment, and readable storage medium. Background Technology
[0002] For underground sewage pipe networks, the pipes are often damp and enclosed, making them prone to blockages and cracks, which can lead to sewage leakage and overflow. In order to detect problems in the pipes in a timely manner, with the continuous development of robotics technology, robots that can navigate autonomously in pipes (such as pipe inspection robots) are being increasingly used in pipe inspection.
[0003] However, due to the harsh and variable environment inside pipelines, GPS (Global Positioning System) and other similar devices are usually not usable inside pipelines. Therefore, in traditional technologies, inertial measurement units (IMUs) and odometry are usually mounted on robots as the main robot positioning sensors.
[0004] However, in the aforementioned traditional technologies, the positioning error accumulates and drifts over time due to the accumulation of IMU, and the robot wheels are prone to slipping in wet or muddy environments inside the pipe, resulting in poor accuracy of the displacement generated by the odometer. Therefore, the positioning results of the robot moving in the pipe are relatively inaccurate. Summary of the Invention
[0005] Therefore, it is necessary to provide a robot positioning method, device, computer equipment, and readable storage medium to address the above-mentioned technical problems and improve the accuracy of positioning results for robots moving in pipelines.
[0006] Firstly, this application provides a robot localization method, including:
[0007] During the robot's movement inside the pipe, the robot's state measurement data at the current positioning moment is acquired; the state measurement data includes inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe;
[0008] The inertial navigation measurement data is input into the zero bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero bias prediction model.
[0009] The inertial navigation measurement data is corrected based on the predicted zero bias of the inertial navigation measurement to obtain the corrected inertial navigation measurement data; and...
[0010] The displacement is corrected based on the current radial distance to obtain the corrected displacement.
[0011] Based on the robot's predicted positioning result at the previous positioning time and the first observation value at the current positioning time, the robot's positioning is predicted to obtain the robot's predicted positioning result at the current positioning time.
[0012] The first observation includes the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias.
[0013] In one embodiment, based on the robot's predicted positioning result at the previous positioning time and the first observation value at the current positioning time, a positioning prediction is performed on the robot to obtain the robot's predicted positioning result at the current positioning time, including:
[0014] Based on the robot's predicted positioning result at the previous positioning time, as well as the process noise vector and process noise matrix at the previous positioning time, predict the robot's initial positioning result at the current positioning time.
[0015] Based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, the initial positioning result is corrected to obtain the robot's predicted positioning result at the current positioning time.
[0016] Among them, the process noise vector is determined based on the random force and random torque of the robot at the previous positioning time, the process noise matrix is determined based on the process noise vector, the process noise covariance matrix is determined based on the process noise vector and the process noise matrix, and the second observation is predicted based on the actual positioning result of the robot at the previous positioning time.
[0017] In one embodiment, the robot localization method further includes:
[0018] If the difference between the second observation and the first observation is greater than the first threshold, adjust the measurement noise covariance matrix.
[0019] In one embodiment, the robot localization method further includes:
[0020] If the difference between the robot's actual positioning result and the predicted positioning result at the current positioning time is greater than the second threshold, the actual inertial navigation measurement zero bias at each positioning time within the preset time period is determined based on the robot's actual trajectory within the preset time period.
[0021] The model parameters of the zero bias prediction model are adjusted by using the actual inertial navigation measurement zero bias at each positioning time as the label and the inertial navigation measurement data at the corresponding positioning time as the sample.
[0022] The actual positioning result and actual trajectory are determined based on the positioning device; the preset duration ends at the current positioning time.
[0023] In one embodiment, the state measurement data further includes ambient temperature and the mechanical vibration spectrum of the robot; the inertial navigation measurement data is input into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model, including:
[0024] Time-synchronized processing was performed on inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum to obtain time-series input data;
[0025] The time-series input data is input into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model.
[0026] In one embodiment, correcting the inertial navigation measurement data based on the predicted inertial navigation measurement zero bias includes:
[0027] The ambient temperature is calibrated to obtain the temperature compensation coefficient; and,
[0028] Based on the mechanical vibration spectrum, determine the vibration suppression coefficient and vibration acceleration;
[0029] The inertial navigation measurement data are corrected based on the predicted inertial navigation measurement zero bias, temperature compensation coefficient, vibration suppression coefficient, and vibration acceleration.
[0030] In one embodiment, the displacement is corrected based on the current radial distance, including:
[0031] The displacement is corrected based on the difference between the standard radial distance between the robot and the inner wall of the pipe and the current radial distance.
[0032] Secondly, this application also provides a robot positioning device, comprising:
[0033] The data acquisition module is used to acquire the robot's state measurement data at the current positioning moment during the robot's movement inside the pipe; the state measurement data includes inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe;
[0034] The zero-bias prediction module is used to input inertial navigation measurement data into the zero-bias prediction model and obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model.
[0035] The data correction module is used to correct the inertial navigation measurement data according to the predicted inertial navigation measurement zero bias to obtain the corrected inertial navigation measurement data; and to correct the displacement according to the current radial distance to obtain the corrected displacement.
[0036] The robot localization module is used to predict the robot's localization based on the predicted localization result at the previous localization time and the first observation value at the current localization time, so as to obtain the predicted localization result of the robot at the current localization time.
[0037] The first observation includes the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias.
[0038] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the various method embodiments provided in the first aspect above.
[0039] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the various method embodiments provided in the first aspect above.
[0040] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the various method embodiments provided in the first aspect above.
[0041] The aforementioned robot positioning method, apparatus, computer equipment, and readable storage medium, during the robot's movement within a pipe, acquire the robot's inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe at the current positioning moment. First, the inertial navigation measurement data is input into a zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model. Then, the inertial navigation measurement data is corrected based on the predicted inertial navigation measurement zero bias, and the displacement is corrected based on the current radial distance. Subsequently, the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias are used as the first observation value of the robot at the current positioning moment. Based on the predicted positioning result of the robot at the previous positioning moment and this first observation value, the robot's positioning is predicted to obtain the predicted positioning result of the robot at the current positioning moment. Thus, on the one hand, by constructing a zero-bias prediction model, the zero-bias prediction model can predict the zero bias of the collected inertial navigation measurement data during robot localization prediction. This zero bias can then be used to correct the inertial navigation measurement data, suppressing data drift and improving the accuracy of the corrected data. On the other hand, by equipping the robot with a sensor to measure the current radial distance, the current radial distance can be used to correct the displacement, suppressing displacement drift caused by robot wheel slippage and improving the accuracy of the corrected displacement. Based on this, using the highly accurate corrected inertial navigation measurement data and the corrected displacement to predict robot localization can improve the accuracy of the predicted localization results by suppressing the aforementioned inertial navigation measurement data drift and displacement drift. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 is an application environment diagram of the robot localization method provided in some embodiments of this application;
[0044] Figure 2 is a flowchart illustrating a robot localization method provided in some embodiments of this application;
[0045] Figure 3 is a flowchart illustrating the process of determining the predicted positioning result provided in some embodiments of this application;
[0046] Figure 4 is a flowchart illustrating the process of adjusting the model parameters of a zero-bias prediction model according to some embodiments of this application;
[0047] Figure 5 is a flowchart illustrating the process of determining the predicted inertial navigation measurement zero bias according to some embodiments of this application;
[0048] Figure 6 is a schematic flowchart of the process for correcting pipeline measurement parameters provided in some embodiments of this application;
[0049] Figure 7 is a flowchart illustrating a robot localization method provided in some other embodiments of this application;
[0050] Figure 8 is a structural block diagram of a robot positioning device provided in some embodiments of this application;
[0051] Figure 9 is an internal structural diagram of a computer device provided in some embodiments of this application;
[0052] Figure 10 is an internal structure diagram of a computer device provided in some other embodiments of this application. Detailed Implementation
[0053] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0054] It should be noted that the terms "first," "second," etc., used in this application can be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish the first element from the second element. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments or any combination of multiple embodiments.
[0055] Due to the harsh and variable environment inside pipelines, GPS (Global Positioning System) and similar technologies typically cannot function properly. Therefore, traditional techniques usually employ inertial measurement units (IMUs) and odometry mounted on robots as the primary robot positioning sensors. However, in these traditional techniques, the IMU accumulates positioning errors over time, leading to drift. Furthermore, in slippery or muddy environments within pipelines, robot wheels are prone to slipping, resulting in poor accuracy of the displacement measured by the odometry. Consequently, the positioning results for robots moving through pipelines are generally inaccurate.
[0056] To address the aforementioned technical issues, in an exemplary embodiment, a robot localization method is provided. This method can be applied to the robot's own controller (processor) or to the robot's backend server. The backend server can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services, hereinafter referred to as a server.
[0057] Based on the above embodiments, in an exemplary embodiment, the robot localization method provided in this application can be applied to the application environment shown in FIG1. The robot 102 communicates with the server 104 via a network. A data storage system can store the data that the server 104 needs to process. The data storage system can be integrated on the server 104 or placed on the cloud or other network servers. The data storage system can record data related to robot localization, such as pipeline parameters (e.g., diameter, length, pipeline diagram), state measurement data at each localization moment, and predicted localization results. The server 104 then retrieves the above data from the data storage system to execute the robot localization method provided in this application.
[0058] Based on the above embodiments, in an exemplary embodiment, as shown in FIG2, a robot localization method is provided. Taking the application of this method to the robot's own controller (processor) as an example, it may include the following steps:
[0059] S201: During the robot's movement within the pipe, acquire the robot's state measurement data at the current positioning moment.
[0060] The state measurement data includes inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe.
[0061] Typically, various sensors, such as IMUs, odometers, and sonar, can be mounted on robots to collect state measurement data as the robot moves within the pipeline.
[0062] Optionally, an IMU can be mounted on the robot to collect its inertial navigation measurement data. This inertial navigation measurement data includes three-axis angular velocities. and triaxial acceleration .
[0063] Optionally, a magnetically encoded odometer with a pressure-compensated rubber wheel structure can be mounted on the robot to measure its displacement. Other types of odometers or displacement measurement sensors can also be mounted on the robot; no specific limitations are imposed.
[0064] Optionally, a 360° circumferential scanning sonar array can be mounted on the robot to measure the radial distance between the robot and the inner wall of the pipeline in real time. The robot may also be equipped with other sensors capable of measuring the radial distance between the robot and the pipeline interior, such as radar; no specific limitations are imposed on this.
[0065] Optionally, the robot is periodically positioned during its movement within the pipe. Therefore, a positioning cycle can be preset. Each time interval corresponding to this positioning cycle marks a positioning moment. For example, if the robot's positioning cycle is 0.01 seconds, a positioning moment is reached every 0.01 seconds. This positioning moment is then considered the current positioning moment.
[0066] In this way, as the robot moves within the pipe, it can acquire state measurement data of the robot at the current positioning time when it reaches the current positioning time.
[0067] Optionally, since the robot's positioning cycle and the acquisition cycle of various sensors are not exactly the same, at the current positioning moment, the state measurement data most recently determined by various sensors can be obtained as the robot's state measurement data at the current positioning moment.
[0068] S202, input the inertial navigation measurement data into the zero bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero bias prediction model.
[0069] A pre-trained zero-bias prediction model is used to predict the predicted inertial navigation measurement zero bias of the above inertial navigation measurement data. That is, the inertial navigation measurement data is input into the zero-bias prediction model, so that the zero-bias prediction model performs zero-bias prediction on the input inertial navigation measurement data based on the correspondence between the pre-trained inertial navigation measurement data and the inertial navigation measurement zero bias, so as to obtain the predicted inertial navigation measurement zero bias and output it.
[0070] Optionally, inertial navigation measurement data collected by the robot's IMU at multiple acquisition times is obtained, and the actual triaxial angular velocity and actual triaxial acceleration of the robot at each acquisition time are further determined. Based on the actual triaxial angular velocity and actual triaxial acceleration, and the inertial navigation measurement data, the inertial navigation measurement zero bias at each time is determined. Then, using the inertial navigation measurement data at each time as input and the inertial navigation measurement zero bias at each time as output, a preset model is trained until the preset model converges, resulting in a zero-bias prediction model. Optionally, the zero-bias prediction model is a two-layer stacked LSTM (Long Short-Term Memory) model with an attention mechanism.
[0071] Optionally, the predicted inertial navigation measurement zero bias is six-dimensional zero bias. ,in, This is the zero-bias estimate of the gyroscope. This is the zero-bias estimate of the accelerometer.
[0072] S203, Correct the inertial navigation measurement data according to the predicted inertial navigation measurement zero bias to obtain the corrected inertial navigation measurement data.
[0073] After obtaining the predicted inertial navigation measurement zero bias output by the above zero bias prediction model, the inertial navigation measurement data can be corrected based on the predicted inertial navigation measurement zero bias to suppress the drift caused by error accumulation in the obtained inertial navigation measurement data and improve the accuracy of the corrected inertial navigation measurement data.
[0074] Optionally, the predicted inertial navigation measurement zero bias and the inertial navigation measurement data can be summed to obtain the corrected inertial navigation measurement data.
[0075] S204, correct the displacement based on the current radial distance to obtain the corrected displacement.
[0076] Similar to drift suppression of inertial navigation measurement data, the displacement is corrected based on the current radial distance to suppress drift caused by robot wheel slippage, thereby improving the accuracy of the corrected displacement.
[0077] In one alternative embodiment, S204 may include correcting the displacement based on the difference between the standard radial distance between the robot and the inner wall of the pipe and the current radial distance.
[0078] Typically, when a robot moves inside a pipe, it travels along a pre-set, fixed path, such as along the pipe's axis. Therefore, during normal movement without wheel slippage or other abnormalities, the distance between the robot and the pipe's inner wall is a pre-set standard radial distance. Optionally, this standard radial distance can be a fixed value, or a preset value corresponding to the robot's position within the pipe; different pipe positions may correspond to different standard radial distances.
[0079] Based on this, the standard radial distance between the robot and the inner wall of the pipe at the current positioning moment can be determined, and the displacement can be corrected according to the difference between the standard radial distance and the current radial distance. Optionally, the robot's moving speed can be collected by a speed sensor, the robot's moving path can be determined based on the robot's moving speed and moving time, and the position of the robot in the pipe can be determined according to the moving path and the pipeline diagram. The standard radial distance at the current positioning moment can be determined according to the correspondence between the pipe position and the standard radial distance; or, a fixed standard radial distance can be read directly.
[0080] Optionally, the displacement can be corrected using the following formula:
[0081]
[0082] in, This is the corrected displacement. The displacement in the state measurement data at the current positioning time. This is the difference between the standard radial distance between the robot and the inner wall of the pipe and the current radial distance. These are correction coefficients determined based on the robot's physical parameters.
[0083] S205. Based on the robot's predicted positioning result at the previous positioning time and the first observation value at the current positioning time, the robot's positioning is predicted to obtain the robot's predicted positioning result at the current positioning time.
[0084] The first observation includes the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias.
[0085] Having obtained the corrected inertial navigation measurement data and the corrected displacement, the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias can be used as the first observation value at the current positioning time. Then, based on the first observation value and the robot's predicted positioning result at the previous positioning time, the robot's positioning prediction can be performed to obtain the robot's predicted positioning result at the current positioning time.
[0086] Optionally, the robot's positioning is predicted based on the predicted positioning result and control parameters at the previous positioning time, as well as the aforementioned first observation value. Optionally, the control parameters of the robot at the previous positioning time are parameters (such as velocity, acceleration, etc.) determined at the previous positioning time based on the predicted positioning result of the robot at the previous positioning time, which are used to control the robot's movement between the previous positioning time and the current positioning time.
[0087] In the above robot localization method, during the robot's movement within the pipe, by acquiring the robot's inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe at the current positioning moment, the inertial navigation measurement data can first be input into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model. Then, the inertial navigation measurement data can be corrected based on the predicted inertial navigation measurement zero bias, and the displacement can be corrected based on the current radial distance. Subsequently, the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias can be used as the first observation value of the robot at the current positioning moment. Based on the predicted positioning result of the robot at the previous positioning moment and this first observation value, the robot's positioning prediction is performed to obtain the predicted positioning result of the robot at the current positioning moment. Thus, on the one hand, by constructing a zero-bias prediction model, the zero-bias prediction model can predict the zero bias of the collected inertial navigation measurement data during robot localization prediction. This zero bias can then be used to correct the inertial navigation measurement data, suppressing data drift and improving the accuracy of the corrected data. On the other hand, by equipping the robot with a sensor to measure the current radial distance, the current radial distance can be used to correct the displacement, suppressing displacement drift caused by robot wheel slippage and improving the accuracy of the corrected displacement. Based on this, using the highly accurate corrected inertial navigation measurement data and the corrected displacement to predict robot localization can improve the accuracy of the predicted localization results by suppressing the aforementioned inertial navigation measurement data drift and displacement drift.
[0088] Based on the above embodiments, in an exemplary embodiment, the determination of the predicted positioning result in S205 is further refined. Optionally, as shown in FIG3, it may include the following steps:
[0089] S301, based on the robot's predicted positioning result at the previous positioning time, as well as the process noise vector and process noise matrix at the previous positioning time, predict the robot's initial positioning result at the current positioning time.
[0090] The process noise vector is determined based on the random force and random torque of the robot at the previous positioning time, and the process noise matrix is determined based on the process noise vector.
[0091] Optional, the process noise vector at positioning time k This vector represents the process that influences the robot's operating state at time k. It originates from unmodeled random perturbations originating from the robot, including three-axis random forces. , , and triaxial random torque , , .
[0092] Correspondingly, the process noise matrix at positioning time k Used to describe process noise vector How to influence the robot's operating state at time k+1 involves mapping low-dimensional physical disturbances (random forces and random torques) to a high-dimensional state vector space.
[0093] Optionally, the initial positioning result of the robot at the current positioning time can be predicted based on the robot's predicted positioning result and control parameters at the previous positioning time, as well as the process noise vector and process noise matrix at the previous positioning time.
[0094] Optionally, the initial positioning result can be predicted using the following formula:
[0095]
[0096] Where k+1 is the current positioning time, and k is the previous positioning time;
[0097] This represents the robot's operational status at the current positioning moment. This represents the robot's operating state at the previous positioning time. These are the control parameters for the robot at the previous positioning time.
[0098] This is the process noise matrix at the previous positioning time. This is the process noise vector at the previous positioning time.
[0099] The state transition matrix describes how the robot's operating state naturally evolves from the operating state at the previous positioning time to the operating state at the current positioning time without control parameters and noise.
[0100] The input / control matrix describes how the robot's control parameters at the previous positioning time affect the robot's operating state at the current positioning time.
[0101] In the above formula, and Each is a 16-dimensional vector. It includes the robot's position (p), velocity (v), attitude (q), and IMU bias (p). Then it can be done through the above This determines the robot's initial positioning result at the current positioning moment.
[0102] S302, based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, the initial positioning result is corrected to obtain the robot's predicted positioning result at the current positioning time.
[0103] The process noise covariance matrix is determined based on the process noise vector and the process noise matrix, and the second observation is predicted based on the robot's actual positioning result at the previous positioning time.
[0104] At the current positioning moment, based on the robot's actual operation, the robot's actual positioning result at the previous positioning moment can be determined. Therefore, based on this actual positioning result, the robot's observation value at the current positioning moment can be predicted, resulting in a predicted value for the robot's first observation value at the current positioning moment, which serves as the second observation value. In other words, the aforementioned second observation value includes: a predicted value obtained by predicting the corrected inertial navigation measurement data, corrected displacement, current radial distance, and inertial navigation measurement zero bias at the current positioning moment based on the robot's actual positioning result at the previous positioning moment.
[0105] Then, based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, the initial positioning result can be corrected to obtain the robot's predicted positioning result at the current positioning time.
[0106] Optionally, the process noise covariance matrix is created as shown in the following equation:
[0107]
[0108] in, The process noise covariance matrix;
[0109] , This represents the transpose of a vector, without a location time index (such as k). It represents the composition and dimension of random forces and random torques in the random process of a robot moving inside a pipe, without specifying the specific noise value at a certain positioning time (such as time k). It is suitable for describing the noise characteristics of the entire dynamic system. yes The covariance matrix is a low-dimensional diagonal matrix, where the values on the diagonal represent the variances of random forces and random torques, etc.
[0110] Correspondingly, without a location time index (such as k), The process noise matrix is a mapping / transformation matrix that describes how disturbances of random forces and random torques specifically affect the robot's position, velocity, and attitude in its motion state.
[0111] express The transpose of represents the covariance of low-dimensional fundamental physical perturbations (random forces and random torques). ,pass The matrix is propagated / mapped into a high-dimensional vector space representing the robot's motion state, thereby calculating the uncertainty, Q, that these fundamental physical perturbations ultimately cause to the robot's motion state.
[0112] In one alternative embodiment, the robot localization method may further include adjusting the measurement noise covariance matrix if the difference between the second observation and the first observation is greater than a first threshold.
[0113] After obtaining the second and first observations, the measurement noise covariance matrix can be adaptively adjusted using the difference between the two observations. The first threshold can be set based on empirical values, experimental values from multiple trials, and application requirements in practical applications; no specific limitations are imposed.
[0114] Optionally, the determination process of the above-mentioned predicted positioning result can be implemented using a Kalman filter. The Kalman filter used can be any type of Kalman filter, such as an adaptive Kalman filter, and there is no specific limitation on this. Correspondingly, the difference between the second observation and the first observation is the measurement residual of the Kalman filter. Therefore, the measurement noise covariance matrix can be adjusted using the following formula:
[0115]
[0116] in, This is the measurement noise covariance matrix adjusted for the current positioning time. The difference between the second observation and the first observation is given. The forgetting factor at the current location time. This is the measurement noise covariance matrix adjusted at the previous positioning time. This is the observation matrix for the current positioning time (determined by the second observation value at the current positioning time). The prior measurement noise covariance matrix at the previous positioning time (determined by the predicted positioning result at the previous positioning time).
[0117] By analyzing the differences between various types of observations in the second and first observations, the Kalman filter's trust in each sensor that collects the aforementioned state measurement data can be analyzed. If the difference in a certain type of observation suddenly increases, it indicates that the measured value (value in the first observation) used to collect that type of observation deviates significantly from the predicted value (value in the second observation) (e.g., sensor failure, environmental interference). Therefore, by adjusting the measurement noise covariance matrix, the Kalman filter's trust in that sensor can be reduced, thereby improving the robustness and adaptability of the Kalman filter.
[0118] In this embodiment, by constructing the process noise covariance matrix from the perspective of physical disturbance and adaptively adjusting the measurement noise covariance matrix, the trust level of each sensor that collects the above-mentioned state measurement data can be improved, and the predictive robustness of the robot's predicted positioning result at the current positioning moment can be improved.
[0119] Based on the above embodiments, in an exemplary embodiment, a method for adjusting the model parameters of the above-mentioned zero-biased prediction model is also provided. Optionally, as shown in Figure 4, it may include the following steps:
[0120] S401, if the difference between the robot's actual positioning result and the predicted positioning result at the current positioning time is greater than the second threshold, determine the actual inertial navigation measurement zero bias at each positioning time within the preset time based on the robot's actual trajectory within the preset time.
[0121] The actual positioning result and actual trajectory are determined based on the positioning device; the preset duration ends at the current positioning time.
[0122] To improve the prediction accuracy of the zero-bias prediction model, after obtaining the robot's predicted positioning result at the current positioning time, the actual positioning result at the current positioning time can be further determined, and the difference between the actual positioning result and the predicted positioning result can be calculated. If the difference exceeds a second threshold, it indicates that the predicted positioning result has experienced significant cumulative drift, thus requiring parameter tuning of the zero-bias prediction model.
[0123] The positioning device used to determine the actual positioning result and actual trajectory is completely independent of the device used to predict the predicted positioning result. Therefore, the actual positioning result is not affected by the prediction process. Furthermore, the positioning device is a high-precision true value source for the actual positioning result and actual trajectory, ensuring that the adjustment of the model parameters of the zero-bias prediction model is based on correct data, thus improving the long-term stability and accuracy of the zero-bias prediction model. For example, passive markers (such as RFID tags, QR codes, etc.) can be pre-embedded at key locations within the pipeline, and the robot is equipped with corresponding reading sensors (such as RFID readers, cameras, etc.). The actual positioning result and actual trajectory are determined by the precise coordinates of the passive markers read by the reading sensors. Another example is the pre-calibrated correspondence between image features of the pipeline's inner wall and the pipeline's position. The robot is equipped with a camera, and the actual positioning result and actual trajectory can be determined by the image features of the pipeline's inner wall captured by the camera and the correspondence between these image features and the pipeline's position. Optionally, if the above predicted positioning result is obtained through a Kalman filter, then the difference between the actual positioning result and the predicted positioning result can be called the positioning residual of the Kalman filter.
[0124] Optionally, the actual inertial navigation measurement zero bias at each positioning time within the preset time period can be obtained by inversely solving the IMU integral equation based on the actual trajectory within the preset time period.
[0125] The second threshold and the preset duration can be set based on empirical values, experimental values from multiple trials, and application requirements in actual applications, without any specific limitations.
[0126] S402, using the actual inertial navigation measurement zero bias at each positioning time as a label and the inertial navigation measurement data at the corresponding positioning time as a sample, adjust the model parameters of the zero bias prediction model.
[0127] After obtaining the actual inertial navigation measurement zero bias at each positioning moment within the aforementioned preset time period, based on the inertial navigation measurement data collected by the robot's IMU, the actual inertial navigation measurement zero bias and inertial navigation measurement data for each positioning moment within the aforementioned preset time period can be obtained. Then, for each positioning moment, the actual inertial navigation measurement zero bias at that positioning moment is used as a label, and the inertial navigation measurement data at that positioning moment is used as a sample. Thus, the model parameters of the zero bias prediction model can be adjusted using the actual inertial navigation measurement zero bias at each positioning moment as the label and the corresponding inertial navigation measurement data as the sample. Since the aforementioned actual inertial navigation measurement zero bias is obtained through trajectory back-calculation, rather than being determined based on the actual triaxial angular velocity, actual triaxial acceleration, and inertial navigation measurement data, the aforementioned actual inertial navigation measurement zero bias can be called a pseudo-label.
[0128] Optionally, the model parameter adjustment for this zero-biased prediction model can be done by updating only the top-level weights of the model network, thus saving computational resources through lightweight fine-tuning.
[0129] Optionally, after the model parameters of the zero-biased prediction model are adjusted, the encrypted model parameter update information can be uploaded to the cloud server. The cloud server aggregates the zero-biased prediction model before parameter adjustment and the updated model parameter information through the SMPC (Stochastic Model Predictive Control) protocol. During the aggregation process, a robot clustering-based strategy is used to generate sub-models for robots with similar environmental characteristics, thereby improving the generalization ability of the zero-biased prediction model and meeting the personalized needs of different robots.
[0130] In this embodiment, by introducing a positioning device that can provide high-precision actual positioning results and actual trajectories, the model parameters of the zero-bias prediction model can be adjusted based on correct data when the predicted positioning results show significant cumulative drift, thereby improving the long-term stability and accuracy of the zero-bias prediction model.
[0131] Based on the above embodiments, in an exemplary embodiment, the determination of the predicted inertial navigation measurement zero bias in S202 is further refined. Optionally, the above state measurement data also includes ambient temperature and the mechanical vibration spectrum of the robot, as shown in Figure 5, and may include the following steps:
[0132] S501 performs time synchronization processing on inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum to obtain time-series input data.
[0133] In some cases, the drift of inertial navigation measurement data can also be affected by ambient temperature and the mechanical vibration spectrum (e.g., 5-50Hz) generated by the robot itself during its movement within the pipe. Therefore, when acquiring the robot's state measurement data at the current positioning moment, the ambient temperature and the robot's mechanical vibration spectrum can also be obtained. Optionally, a high-frequency IMU can be mounted on the robot to acquire the inertial navigation measurement data, ambient temperature, and the robot's mechanical vibration spectrum collected by the high-frequency IMU. Here, a high-frequency IMU refers to an inertial sensor that outputs three-axis acceleration and three-axis angular velocity at a high-frequency acquisition rate (typically ≥100Hz) and can simultaneously acquire auxiliary data such as temperature and mechanical vibration spectrum.
[0134] Since the acquisition periods of the aforementioned inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum may differ, it is necessary to perform time synchronization processing on the inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum to obtain time-series input data.
[0135] Optionally, the inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum are synchronized in time, and a timing input matrix is constructed using a sliding window mechanism. Then the time-series input matrix This refers to the timing input data.
[0136] S502, input the timing input data into the zero bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero bias prediction model.
[0137] After obtaining the aforementioned time-series input data, the time-series input data is input into the zero-bias prediction model, so that the zero-bias prediction model can perform zero-bias prediction on the input inertial navigation measurement data based on the correspondence between the pre-trained time-series input data and the inertial navigation measurement zero bias, so as to obtain the predicted inertial navigation measurement zero bias and output it.
[0138] Optionally, the inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum collected by the sensors on the robot at multiple acquisition moments are acquired. The actual triaxial angular velocity, actual triaxial acceleration, actual ambient temperature, and actual mechanical vibration spectrum of the robot at each acquisition moment are further determined. Based on the actual triaxial angular velocity, actual triaxial acceleration, actual ambient temperature, and actual mechanical vibration spectrum, as well as the inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum collected by the high-frequency IMU, the inertial navigation measurement zero bias at each moment is determined. Then, the time-series input data after time synchronization processing of the inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum at each moment is used as input, and the inertial navigation measurement zero bias at each moment is used as output to train the preset model until the preset model converges, thus obtaining the zero bias prediction model.
[0139] Optionally, since the prediction process for zero bias in inertial navigation measurement involves the mechanical vibration spectrum, a vibration spectrum constraint loss term with physical constraints can be added to the loss function of the zero bias prediction model. The formula for this loss term is shown below:
[0140]
[0141] in, Indicates Fourier transform, λ is the inertial navigation measurement zero bias predicted by the zero bias prediction model, and Γ is the weighting coefficient. Γ is the reference vibration spectrum profile obtained by high-precision vibration analysis equipment during the robot's factory calibration phase, which characterizes the robot body under stable operating conditions. The reference vibration spectrum profile represents the inherent mechanical vibration characteristics of the robot body within a specific frequency range (e.g., 5-50Hz). The main function of this loss term is to force the inertial navigation measurement zero bias predicted by the zero bias prediction model to be consistent with the reference vibration spectrum profile in the frequency domain. This allows the zero bias fluctuations related to the mechanical vibration of the robot body to be separated from the zero bias drift caused by factors such as temperature in the frequency domain, greatly improving the physical interpretability and prediction accuracy of the zero bias prediction model.
[0142] Based on the above embodiments, in an exemplary embodiment, the correction of the inertial navigation measurement data in S203 is further refined. Optionally, the above state measurement data also includes ambient temperature and the mechanical vibration spectrum of the robot, as shown in Figure 6, and may include the following steps:
[0143] S601 calibrates the ambient temperature to obtain the temperature compensation coefficient.
[0144] Typically, for the pipeline where the robot is located, a standard ambient temperature can be pre-calibrated based on environmental conditions. When the temperature sensor in the robot is functioning normally, the difference between the detected ambient temperature and the standard ambient temperature is usually small. Therefore, the ambient temperature can be calibrated using the preset standard ambient temperature to obtain a temperature compensation coefficient. Optionally, the difference between the ambient temperature in the aforementioned state measurement data and the preset standard ambient temperature can be determined, and the ratio of this difference to the ambient temperature in the aforementioned state measurement data can be used as the temperature compensation coefficient. Alternatively, the ambient temperature can be input into a temperature calibration model to obtain the temperature compensation coefficient output by the temperature calibration model. This environmental calibration model takes the measured ambient temperature as input and outputs the proportion of the difference between the measured and actual ambient temperature values in the measured values, and is obtained by training a preset model.
[0145] S602, determine the vibration suppression coefficient and vibration acceleration based on the mechanical vibration spectrum.
[0146] Among them, the vibration suppression coefficient is a weighted parameter used to quantify the degree of interference of the robot's own vibration on the data collected by the sensors on the robot; the vibration acceleration sets the rate of change of the robot's velocity over time during vibration.
[0147] After obtaining the mechanical vibration spectrum of the robot, a spectral analysis can be performed on the mechanical vibration spectrum, such as identifying the frequency peaks in the mechanical vibration frequency. Then, based on the vibration characteristic parameters obtained from the analysis, the vibration suppression coefficient and vibration acceleration can be determined.
[0148] S603 corrects the inertial navigation measurement data based on the predicted inertial navigation measurement zero bias, temperature compensation coefficient, vibration suppression coefficient, and vibration acceleration.
[0149] Optionally, the inertial navigation measurement data can be corrected using the following formula:
[0150]
[0151] in, The triaxial angular velocities in the corrected inertial navigation measurement data. The three-axis angular velocities in the inertial navigation measurement data; To predict the zero bias estimate of the gyroscope in inertial navigation measurement; This is the vibration suppression coefficient; It is the vibration acceleration; The triaxial accelerations in the corrected inertial navigation measurement data. This refers to the triaxial acceleration in the inertial navigation measurement data; To predict the zero bias estimate of the accelerometer in inertial navigation measurement; This is the temperature compensation coefficient; The ambient temperature; This refers to the standard value of ambient temperature.
[0152] Based on the above embodiments, in an exemplary embodiment, as shown in FIG7, the robot localization method may include the following steps:
[0153] S701: During the robot's movement inside the pipe, acquire the robot's state measurement data at the current positioning moment; the state measurement data includes inertial navigation measurement data, displacement, ambient temperature, and the robot's mechanical vibration spectrum, as well as the current radial distance between the robot and the inner wall of the pipe.
[0154] S702 performs time synchronization processing on inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum to obtain time-series input data, and inputs the time-series input data into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model.
[0155] S703 calibrates the ambient temperature to obtain the temperature compensation coefficient; and determines the vibration suppression coefficient and vibration acceleration based on the mechanical vibration spectrum.
[0156] S704 corrects the inertial navigation measurement data based on the predicted inertial navigation measurement zero bias, temperature compensation coefficient, vibration suppression coefficient, and vibration acceleration.
[0157] S705 corrects the displacement based on the difference between the standard radial distance between the robot and the inner wall of the pipe and the current radial distance.
[0158] S706, based on the robot's predicted positioning result at the previous positioning time, as well as the process noise vector and process noise matrix at the previous positioning time, predict the robot's initial positioning result at the current positioning time.
[0159] S707: Based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, the initial positioning result is corrected to obtain the robot's predicted positioning result at the current positioning time. The first observation includes the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias; the second observation is predicted based on the robot's actual positioning result at the previous positioning time.
[0160] S708, adjust the measurement noise covariance matrix if the difference between the second observation and the first observation is greater than the first threshold.
[0161] S709, if the difference between the robot's actual positioning result and the predicted positioning result at the current positioning time is greater than the second threshold, the actual inertial navigation measurement zero bias at each positioning time within the preset time period is determined based on the robot's actual trajectory within the preset time period; the actual positioning result and the actual trajectory are determined based on the positioning device; the preset time period ends at the current positioning time.
[0162] S710 uses the actual inertial navigation measurement zero bias at each positioning time as a label and the inertial navigation measurement data at the corresponding positioning time as a sample to adjust the model parameters of the zero bias prediction model.
[0163] The specific implementation methods of S701-S710 are the same as those in the above method embodiments, and will not be repeated here.
[0164] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.
[0165] Based on the same inventive concept, this application also provides a robot positioning device for implementing the robot positioning method described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in one or more robot positioning device embodiments provided below can be found in the limitations of the robot positioning method described above, and will not be repeated here.
[0166] In an exemplary embodiment, as shown in FIG8, a robot localization device is provided, including: a data acquisition module 810, a zero-bias prediction module 820, a data correction module 830, and a robot localization module 840, wherein:
[0167] The data acquisition module 810 is used to acquire the robot's state measurement data at the current positioning moment during the robot's movement inside the pipe; wherein, the state measurement data includes inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe;
[0168] The zero-bias prediction module 820 is used to input inertial navigation measurement data into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model.
[0169] The data correction module 830 is used to correct the inertial navigation measurement data according to the predicted inertial navigation measurement zero bias to obtain the corrected inertial navigation measurement data; and to correct the displacement according to the current radial distance to obtain the corrected displacement.
[0170] The robot localization module 840 is used to predict the robot's localization based on the predicted localization result of the robot at the previous localization time and the first observation value at the current localization time, so as to obtain the predicted localization result of the robot at the current localization time; wherein, the first observation value includes the corrected inertial navigation measurement data, the corrected displacement, the current radial distance and the inertial navigation measurement zero bias.
[0171] In one exemplary embodiment, the robot localization module 840 is specifically used for:
[0172] Based on the robot's predicted positioning result at the previous positioning time, as well as the process noise vector and process noise matrix at the previous positioning time, predict the robot's initial positioning result at the current positioning time.
[0173] Based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, the initial positioning result is corrected to obtain the robot's predicted positioning result at the current positioning time.
[0174] Among them, the process noise vector is determined based on the random force and random torque of the robot at the previous positioning time, the process noise matrix is determined based on the process noise vector, the process noise covariance matrix is determined based on the process noise vector and the process noise matrix, and the second observation is predicted based on the actual positioning result of the robot at the previous positioning time.
[0175] In one exemplary embodiment, the robot positioning device further includes:
[0176] The matrix adjustment module is used to adjust the measurement noise covariance matrix when the difference between the second observation and the first observation is greater than a first threshold.
[0177] In one exemplary embodiment, the robot positioning device further includes:
[0178] The zero bias determination module is used to determine the actual inertial navigation measurement zero bias at each positioning moment within a preset time period based on the robot's actual trajectory within the preset time period, when the difference between the robot's actual positioning result and the predicted positioning result at the current positioning moment is greater than a second threshold.
[0179] The parameter adjustment module is used to adjust the model parameters of the zero bias prediction model by using the actual inertial navigation measurement zero bias at each positioning time as a label and the inertial navigation measurement data at the corresponding positioning time as a sample.
[0180] The actual positioning result and actual trajectory are determined based on the positioning device; the preset duration ends at the current positioning time.
[0181] In one exemplary embodiment, the state measurement data also includes ambient temperature and the mechanical vibration spectrum of the robot; the zero-bias prediction module 820 is specifically used for:
[0182] Time-synchronized processing was performed on inertial navigation measurement data, ambient temperature, and mechanical vibration spectrum to obtain time-series input data;
[0183] The time-series input data is input into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model.
[0184] In one exemplary embodiment, the data correction module 830 is specifically used for:
[0185] The ambient temperature is calibrated to obtain the temperature compensation coefficient; and,
[0186] Based on the mechanical vibration spectrum, determine the vibration suppression coefficient and vibration acceleration;
[0187] The inertial navigation measurement data are corrected based on the predicted inertial navigation measurement zero bias, temperature compensation coefficient, vibration suppression coefficient, and vibration acceleration.
[0188] In one exemplary embodiment, the data correction module 830 is specifically used for:
[0189] The displacement is corrected based on the difference between the standard radial distance between the robot and the inner wall of the pipe and the current radial distance.
[0190] Each module in the aforementioned robot positioning device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.
[0191] In an exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram is shown in Figure 9. The computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is connected to the system bus via the I / O interfaces. The processor of the computer device provides computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The database of the computer device stores data related to robot positioning, such as pipeline parameters (e.g., diameter, length, pipeline diagrams), state measurement data at various positioning times, and predicted positioning results. The I / O interfaces of the computer device are used for exchanging information between the processor and external devices. The communication interface of the computer device is used for communication with external terminals via a network connection. When the computer program is executed by the processor, it implements a robot positioning method.
[0192] In an exemplary embodiment, a computer device, which may be a robot, is provided, and its internal structure is shown in Figure 10. The computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When the computer program is executed by the processor, it implements a robot localization method. The display unit is used to form a visually visible image and may be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0193] Those skilled in the art will understand that the structures shown in Figures 9 and 10 are merely block diagrams of some structures related to the present application and do not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than shown in the figures, or combine certain components, or have different component arrangements.
[0194] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the various method embodiments of the robot localization method described above.
[0195] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the various method embodiments of the robot localization method described above.
[0196] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the various method embodiments of the robot localization method described above.
[0197] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0198] The technical features of the above embodiments can be combined in any way. For the sake of brevity, 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 application.
[0199] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A robot localization method, characterized in that, The method includes: acquiring state measurement data of the robot at the current positioning moment during the robot's movement within the pipe; wherein the state measurement data includes inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe; inputting the inertial navigation measurement data into a zero-bias prediction model to obtain a predicted inertial navigation measurement zero bias output by the zero-bias prediction model; correcting the inertial navigation measurement data according to the predicted inertial navigation measurement zero bias to obtain corrected inertial navigation measurement data; and correcting the displacement according to the current radial distance to obtain a corrected displacement; and predicting the initial positioning result of the robot at the current positioning moment based on the predicted positioning result of the robot at the previous positioning moment, and the process noise vector and process noise matrix of the previous positioning moment. The initial positioning result is corrected based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, to obtain the predicted positioning result of the robot at the current positioning time. The first observation includes the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias. The process noise vector is determined based on the random force and random torque of the robot at the previous positioning time. The process noise matrix is determined based on the process noise vector, and the process noise covariance matrix is determined based on the process noise vector and the process noise matrix. The second observation is predicted based on the actual positioning result of the robot at the previous positioning time.
2. The method according to claim 1, characterized in that, The method further includes adjusting the measurement noise covariance matrix when the difference between the second observation and the first observation is greater than a first threshold.
3. The method according to claim 1 or 2, characterized in that, The method further includes: when the difference between the actual positioning result and the predicted positioning result of the robot at the current positioning time is greater than a second threshold, determining the actual inertial navigation measurement zero bias at each positioning time within the preset time period based on the actual trajectory of the robot within the preset time period; adjusting the model parameters of the zero bias prediction model using the actual inertial navigation measurement zero bias at each positioning time as a label and the inertial navigation measurement data at the corresponding positioning time as a sample; wherein the actual positioning result and the actual trajectory are determined based on the positioning device; and the preset time period ends at the current positioning time.
4. The method according to claim 1 or 2, characterized in that, The state measurement data also includes the ambient temperature and the mechanical vibration spectrum of the robot; the step of inputting the inertial navigation measurement data into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model includes: performing time synchronization processing on the inertial navigation measurement data, the ambient temperature, and the mechanical vibration spectrum to obtain time-series input data; and inputting the time-series input data into the zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model.
5. The method according to claim 4, characterized in that, The step of correcting the inertial navigation measurement data based on the predicted inertial navigation measurement zero bias includes: calibrating the ambient temperature to obtain a temperature compensation coefficient; and determining a vibration suppression coefficient and vibration acceleration based on the mechanical vibration spectrum; and correcting the inertial navigation measurement data based on the predicted inertial navigation measurement zero bias, the temperature compensation coefficient, the vibration suppression coefficient, and the vibration acceleration.
6. The method according to claim 1 or 2, characterized in that, The step of correcting the displacement based on the current radial distance includes: correcting the displacement based on the difference between the standard radial distance between the robot and the inner wall of the pipe and the current radial distance.
7. A robot positioning device, characterized in that, The device includes: a data acquisition module, used to acquire state measurement data of the robot at the current positioning moment during the robot's movement within the pipe; wherein the state measurement data includes inertial navigation measurement data, displacement, and the current radial distance between the robot and the inner wall of the pipe; a zero-bias prediction module, used to input the inertial navigation measurement data into a zero-bias prediction model to obtain the predicted inertial navigation measurement zero bias output by the zero-bias prediction model; a data correction module, used to correct the inertial navigation measurement data according to the predicted inertial navigation measurement zero bias to obtain corrected inertial navigation measurement data; and to correct the displacement according to the current radial distance to obtain corrected displacement; and a robot positioning module, used to predict the robot's position based on the predicted positioning result of the robot at the previous positioning moment, and the process noise vector and process noise matrix at the previous positioning moment. The robot's initial positioning result at the current positioning time is corrected based on the first and second observations at the current positioning time, as well as the process noise covariance matrix and measurement noise covariance matrix at the previous positioning time, to obtain the robot's predicted positioning result at the current positioning time. The first observations include the corrected inertial navigation measurement data, the corrected displacement, the current radial distance, and the inertial navigation measurement zero bias. The process noise vector is determined based on the robot's random force and random torque at the previous positioning time. The process noise matrix is determined based on the process noise vector. The process noise covariance matrix is determined based on the process noise vector and the process noise matrix. The second observation is predicted based on the robot's actual positioning result at the previous positioning time.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
MCCKF-based pipeline underwater navigation robot integrated navigation method and device, storage medium and equipment
CN116839574A
Multi-source information fusion accurate navigation method and system for underwater vehicle
CN120403663A