A UWB-based sweeping robot fusion positioning method, system and device
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-29
- Publication Date
- 2026-08-11
AI Technical Summary
然而,在室外或者有复杂地形的环境中,激光雷达定位的精度受到很大的影响,可能会出现较大的定位误差
[0042] When the quality index of the UWB signal between the robot vacuum and each base station reaches the preset threshold, the distance between the robot vacuum and each base station at the current time point is measured using the UWB signal. Based on the motion model and the distances measured, the robot vacuum's first position at the next time point is predicted. High-precision UWB positioning is also performed using the weights of each particle. This overcomes the shortcomings of existing technologies in accurately positioning in scenarios with poor lighting conditions, heavy dust, and complex environments, thus improving the robot vacuum's resistance to environmental interference. Furthermore, if the quality index of the UWB signal between the robot vacuum and each base station does not reach the preset threshold, other preset positioning modules are used to determine the predicted position of the robot vacuum at the next time point. Different positioning modules are activated according to different working environments, ensuring both high-precision positioning and improving the robot vacuum's endurance.
Smart Images

Figure CN116840779B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robot positioning, and in particular to a fusion positioning method, system and device for a sweeping robot based on UWB. Background Technology
[0002] Existing robot localization methods include lidar localization and visual localization, but both have some shortcomings.
[0003] LiDAR (Light Detection and Ranging) positioning is suitable for indoor environments with relatively simple floor plans. It works by emitting a laser beam and measuring the reflected light from the surrounding environment. Algorithms then process this data and map information to determine the robot's position and orientation. However, in outdoor environments or those with complex terrain, the accuracy of LiDAR positioning is significantly affected, potentially leading to substantial positioning errors. This is because LiDAR relies on the reflection of laser light from the environment as its positioning basis, and this process is susceptible to interference from other light sources, objects, or interfering signals, resulting in decreased accuracy. Furthermore, at corners, protrusions, and other junctions, LiDAR may fail to identify corners and blind spots, further impacting positioning accuracy.
[0004] Visual positioning has relatively low accuracy, especially in low light, strong light, and situations with changing lighting or complex scenes, where errors are prone to occur. Visual positioning-based robotic vacuum cleaners need to be equipped with high-resolution cameras and processors to meet the requirements of rapid response to the environment and terrain. Moreover, visual positioning-based robotic vacuum cleaners need to be combined with different environments, scenarios and user needs when applied, requiring adaptation and debugging of different models and algorithms, which increases the technical threshold and complexity.
[0005] Because robotic vacuum cleaners need to navigate complex terrain environments, existing robot positioning methods are insufficient to meet their positioning requirements. Summary of the Invention
[0006] In view of this, embodiments of the present invention provide a UWB-based fusion positioning method, system, and device for robotic vacuum cleaners to improve the positioning accuracy of robotic vacuum cleaners.
[0007] One aspect of this invention provides a UWB-based fusion localization method for a robotic vacuum cleaner, comprising:
[0008] If the quality index of the UWB signal between the robot vacuum cleaner and each base station reaches a preset threshold, then the distance between the robot vacuum cleaner and each base station measured by the UWB signal at the current time point is obtained.
[0009] The first position of the sweeping robot at the next time point is predicted based on the pre-built motion model and the various distance measurements.
[0010] Discrete sampling is performed on the state of the sweeping robot when it is in the first position to obtain multiple sampling results. Each sampling result is treated as a particle, and the weight of each particle reflecting the confidence of the current state is determined.
[0011] Based on the weight of each particle, the second position of the sweeping robot at the next time point is determined, and the second position is used as the predicted position of the sweeping robot at the next time point;
[0012] If the quality index of the UWB signal between the robotic vacuum cleaner and each of the base stations does not reach the preset threshold, then other preset positioning modules are used to determine the predicted position of the robotic vacuum cleaner at the next time point.
[0013] Optionally, predicting the first position of the sweeping robot at the next time point based on the pre-built motion model and each of the ranging distances includes:
[0014] Random noise caused by environmental factors is added to the motion model;
[0015] Based on the motion model with added random noise and the various distance measurements, the first position of the sweeping robot at the next time point is predicted.
[0016] Optionally, the state of the sweeping robot at the first position is discretely sampled to obtain multiple sampling results, each sampling result being treated as a particle, including:
[0017] Discrete sampling is performed on the state of the sweeping robot when it is in the first position to obtain multiple sampling results;
[0018] A preset error value is superimposed on the position coordinates corresponding to each sampling result, and the sampling result after superimposing the error value is used as the particle.
[0019] Optionally, determining the weight of each particle reflecting the confidence of the current state includes:
[0020] Calculate the Euclidean distance between the location of each particle and the first location, and determine the weight of each particle reflecting the confidence of the current state based on the corresponding Euclidean distance.
[0021] Optionally, determining the second position of the sweeping robot at the next time point based on the weight of each particle includes:
[0022] The weights of all the particles are normalized so that the sum of the weights of all the particles is 1;
[0023] Particles whose weights reach a preset weight threshold are copied multiple times to obtain multiple resampled particles.
[0024] The second position of the sweeping robot at the next time point is determined based on the weights of the multiple resampled particles.
[0025] Optionally, determining the predicted position of the sweeping robot at the next time point using other preset positioning modules includes:
[0026] The predicted position of the sweeping robot at the next time point is determined by using a preset lidar positioning module or visual positioning module.
[0027] Another aspect of this invention provides a UWB-based fusion positioning system for a robotic vacuum cleaner, comprising: a robotic vacuum cleaner and multiple base stations;
[0028] The robotic vacuum cleaner includes a UWB positioning module, a lidar positioning module, and a visual positioning module.
[0029] The base station is used to execute the above-mentioned UWB-based fusion positioning method for a robotic vacuum cleaner.
[0030] Another aspect of this invention provides a UWB-based fusion positioning device for a robotic vacuum cleaner, comprising:
[0031] The first positioning unit is used to obtain the distance between the sweeping robot and each base station measured by the UWB signal at the current time point if the quality index of the UWB signal between the sweeping robot and each base station reaches a preset threshold.
[0032] The second positioning unit is used to predict the first position of the sweeping robot at the next time point based on the pre-built motion model and the various ranging distances;
[0033] The third positioning unit is used to discretely sample the state of the sweeping robot when it is in the first position to obtain multiple sampling results. Each sampling result is treated as a particle, and the weight of each particle reflecting the confidence of the current state is determined.
[0034] The fourth positioning unit is used to determine the second position of the sweeping robot at the next time point according to the weight of each particle, and the second position is used as the predicted position of the sweeping robot at the next time point;
[0035] The fifth positioning unit is used to determine the predicted position of the sweeping robot at the next time point by using other preset positioning modules if the quality index of the UWB signal between the sweeping robot and each of the base stations does not reach a preset threshold.
[0036] Another aspect of the present invention provides an electronic device, including a processor and a memory;
[0037] The memory is used to store programs;
[0038] The processor executes the program to implement the UWB-based fusion positioning method for a robotic vacuum cleaner.
[0039] Another aspect of this invention provides a computer-readable storage medium storing a program that is executed by a processor to implement the UWB-based fusion positioning method for a robotic vacuum cleaner.
[0040] This invention also discloses a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium and execute the computer instructions, causing the computer device to perform the aforementioned method.
[0041] Compared with the prior art, the present invention has at least the following advantages:
[0042] When the quality index of the UWB signal between the robot vacuum and each base station reaches the preset threshold, the distance between the robot vacuum and each base station at the current time point is measured using the UWB signal. Based on the motion model and the distances measured, the robot vacuum's first position at the next time point is predicted. High-precision UWB positioning is also performed using the weights of each particle. This overcomes the shortcomings of existing technologies in accurately positioning in scenarios with poor lighting conditions, heavy dust, and complex environments, thus improving the robot vacuum's resistance to environmental interference. Furthermore, if the quality index of the UWB signal between the robot vacuum and each base station does not reach the preset threshold, other preset positioning modules are used to determine the predicted position of the robot vacuum at the next time point. Different positioning modules are activated according to different working environments, ensuring both high-precision positioning and improving the robot vacuum's endurance. Attached Figure Description
[0043] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0044] Figure 1 A flowchart illustrating a UWB-based fusion positioning method for a robotic vacuum cleaner, provided as an embodiment of the present invention;
[0045] Figure 2 A schematic diagram of a UWB-based fusion positioning system for a robotic vacuum cleaner, provided as an embodiment of the present invention;
[0046] Figure 3 This is a schematic diagram of the structure of a sweeping robot provided in an embodiment of the present invention;
[0047] Figure 4 An example flowchart of a UWB-based fusion positioning method for a robotic vacuum cleaner is provided in this embodiment of the invention.
[0048] Figure 5 A structural block diagram of a UWB-based fusion positioning device for a robotic vacuum cleaner is provided in an embodiment of the present invention.
[0049] Figure 6 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0050] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0051] It should be noted that although functional modules are divided in the device schematic diagram and the logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart.
[0052] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0053] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein is for the purpose of describing embodiments of the invention only and is not intended to limit the invention.
[0054] To facilitate understanding of the embodiments of the present invention, the following explanations are provided for keywords that may be involved in the embodiments of the present invention:
[0055] LiDAR localization: LiDAR-based localization is a robot localization method. It uses a LiDAR to emit a laser beam and measure the light reflected from the robot's surroundings to create a 3D map. Then, algorithms process the data and map information to determine the robot's position and orientation.
[0056] Specifically, the robot is equipped with a LiDAR device that emits a laser beam and records information such as the time and location of the light as it reflects off the surrounding environment and returns to the LiDAR device. This collected and processed information creates a 3D map of the robot's surroundings. Then, algorithms process this information to identify the robot's position and orientation, thus achieving localization.
[0057] Visual localization is a robot localization method that uses machine vision technology to acquire image information from the environment. By recognizing and extracting features such as objects, colors, and shapes from the images, it achieves accurate localization of the robot within the environment. Visual localization technology generally consists of steps such as image acquisition, object recognition, feature extraction, feature matching, and position and pose estimation. Through the interaction of these steps, the robot's position and pose are accurately estimated. In the image acquisition stage, the robot takes pictures of the environment and acquires image information. In the object recognition stage, the robot can identify objects in the images using techniques such as neural networks. In the feature extraction stage, the robot can extract feature points from the images, such as edges and corners. In the feature matching stage, the robot needs to find matching objects in the image and estimate its position and pose by calculating information such as the distance and direction between these objects.
[0058] Ultra-wideband (UWB) technology is a wireless carrier communication technology that does not use sinusoidal carriers but instead uses nanosecond-level non-sinusoidal narrow pulses to transmit data, thus occupying a very wide spectrum.
[0059] UWB technology has advantages such as low system complexity, low transmitted signal power spectral density, insensitivity to channel fading, low interception capability, and high positioning accuracy, making it particularly suitable for high-speed wireless access in dense multipath environments such as indoor spaces.
[0060] Ultra-wideband (UWB) technology is a wireless carrier communication technology that uses frequency bandwidths above 1 GHz. Instead of using sinusoidal carriers, it transmits data using nanosecond-level non-sinusoidal narrow pulses, thus occupying a very large spectrum. Although it uses wireless communication, its data transmission rate can reach hundreds of megabits per second or more. UWB technology can transmit signals over a very wide bandwidth, including a bandwidth of over 500 MHz in the 3.1–10.6 GHz frequency band.
[0061] Ultra-wideband (UWB) technology utilizes ultra-wide baseband pulses with an extremely wide spectrum for communication, hence it is also known as baseband communication technology or wireless carrier communication technology. It can be used in military radar, positioning, and low-probability / low-detection-rate communication systems. UWB technology features high data transmission rates (up to 1 Gbit / s), strong resistance to multipath interference, low power consumption, low cost, strong penetration capability, low interception rate, and the ability to share spectrum with other existing wireless communication systems.
[0062] Reference Figure 1 This invention provides a UWB-based fusion positioning method for robotic vacuum cleaners, specifically including the following steps:
[0063] S100: If the quality index of the UWB signal between the sweeping robot and each base station reaches a preset threshold, then obtain the distance between the sweeping robot and each base station measured by the UWB signal at the current time point.
[0064] This invention can use the quality index of UWB signal to determine whether the UWB positioning capability is insufficient. If the quality index meets the preset threshold, the UWB positioning module can be activated for positioning. If the quality index does not meet the preset threshold, other positioning modules can be activated.
[0065] Specifically, the quality indicators of a UWB signal can include received power, signal-to-noise ratio, and multipath effects. When the quality indicators of a UWB signal are below a certain threshold, it indicates that the UWB positioning capability is insufficient, and other positioning modules can be activated at this time.
[0066] S110: Predict the first position of the sweeping robot at the next time point based on the pre-built motion model and the various distance measurements.
[0067] Considering that environmental noise may exist during the actual application of the robotic vacuum cleaner, the process of predicting the first position in this embodiment of the invention can be further specified as follows:
[0068] S111: Add random noise caused by environmental factors to the motion model.
[0069] Specifically, the motion model can be designed based on the motion posture of the robot vacuum cleaner. The motion posture design can include the step length, time interval, and changes in posture angle when the robot vacuum cleaner moves.
[0070] Random noise caused by environmental factors can include noise from UWB signal sensors and noise caused by terrain factors in the application environment of the robotic vacuum cleaner.
[0071] S112: Based on the motion model with added random noise and each of the ranging distances, predict the first position of the sweeping robot at the next time point.
[0072] Specifically, the first position predicted by combining random noise and motion model is a rough estimate. To improve the accuracy of the first position, it is necessary to correct it using the particle filtering algorithm provided in this embodiment of the invention. Please refer to the following steps for details.
[0073] S120: Discretely sample the state of the sweeping robot when it is in the first position to obtain multiple sampling results. Each sampling result is treated as a particle, and the weight of each particle reflecting the confidence of the current state is determined.
[0074] Specifically, in the particle filter algorithm, a particle refers to a set of discrete samples of the robot vacuum's state, with each particle representing a possible current state. Each particle typically consists of a set of state variables; for example, in an indoor positioning scenario, each particle could represent a possible location and orientation of the user. The weight of each particle represents its confidence level in the target state. In the resampling step of the particle filter algorithm, particles with higher weights are more likely to be selected, while particles with lower weights may be deleted. This improves the accuracy and computational efficiency of the target state estimation because only relatively reliable particles are retained.
[0075] In addition, particle weight is a factor used to reflect the confidence level of the current state. The higher the weight of a particle, the more likely the state it represents is the correct target state.
[0076] Furthermore, the process of acquiring particles is explained in more detail as follows:
[0077] S121: Discretely sample the state of the sweeping robot when it is in the first position to obtain multiple sampling results.
[0078] S122: A preset error value is superimposed on the position coordinates corresponding to each sampling result, and the sampling result after superimposing the error value is used as the particle.
[0079] Furthermore, the process of assigning particle weights is explained in detail below:
[0080] S123: Calculate the Euclidean distance between the location of each particle and the first location, and determine the weight of each particle reflecting the confidence of the current state based on the corresponding Euclidean distance.
[0081] To illustrate the particle filter algorithm based on UWB positioning provided in this embodiment of the invention in more detail, specific examples are given below:
[0082] 1) The particle motion model is designed based on the motion posture of the robot vacuum cleaner, including the step length, time interval, and changes in posture angle during the robot vacuum cleaner's movement.
[0083] 2) In the particle observation equation, an error function is defined that takes into account the sensor noise and the influence of the environment on the positioning accuracy.
[0084] 3) In the particle prediction equation, based on the error function and the motion model function, a correction function for the particle coordinates is added to improve positioning accuracy. An example code is shown below:
[0085] x_correction=9; y_correction=7;
[0086] particle_distances(:,1:2:end)=particle_distances(:,1:2:end)+x_correction;
[0087] particle_distances(:,2:2:end)=particle_distances(:,2:2:end)+y_correction;
[0088] 4) To improve particle positioning accuracy, the particle weights are updated based on the sensor's ranging distance and error function. An example code example is as follows:
[0089] particles[i].weight=exp(-0.5*pow(error / 50.0,2));
[0090] distance=sqrt(pow(particles[i].x-base_stations[1][0],2)+pow(particles[i].y-base_stations[1][1],2));
[0091] error=distance-measurements[row][1];
[0092] S130: Determine the second position of the sweeping robot at the next time point based on the weight of each particle, and the second position is used as the predicted position of the sweeping robot at the next time point.
[0093] To achieve higher positioning accuracy, embodiments of the present invention can delete particles with lower weights and perform positioning only using particles with higher weights. The specific process may include:
[0094] S131: Normalize the weights of all said particles so that the sum of the weights of all said particles is 1.
[0095] S132: Repeat the particles whose weights have reached the preset weight threshold multiple times to obtain multiple resampled particles.
[0096] Specifically, particles are resampled. The resampling process may include deleting particles with lower weights, while some particles with higher weights are copied multiple times, thereby reducing the number of low-confidence particles and improving the computational efficiency and speed of the particle filtering algorithm.
[0097] The preset weight threshold can be set according to the actual application scenario.
[0098] S133: Determine the second position of the sweeping robot at the next time point based on the weights of the multiple resampled particles.
[0099] S140: If the quality index of the UWB signal between the sweeping robot and each of the base stations does not reach the preset threshold, then other preset positioning modules are used to determine the predicted position of the sweeping robot at the next time point.
[0100] Specifically, in embodiments of the present invention, when the quality index of the UWB signal does not reach a preset threshold and the UWB positioning capability is poor, other positioning modules can be activated. Optionally, other positioning modules may include a lidar positioning module or a visual positioning module. Then, the position data information collected from the lidar positioning module or the visual positioning module can be fused and processed to make up for the disadvantages between the various positioning modules and achieve high-precision positioning of the robot vacuum cleaner.
[0101] Reference Figure 2 This invention also provides a UWB-based fusion positioning system for a robotic vacuum cleaner, which includes a robotic vacuum cleaner and multiple base stations.
[0102] Reference Figure 3 This invention provides a schematic diagram of the structure of a sweeping robot.
[0103] Specifically, the robotic vacuum cleaner includes a UWB positioning module 1, a LiDAR positioning module 2, and a visual positioning module 3.
[0104] Furthermore, the UWB positioning module may include a UWB tag, a fusion positioning controller, and a main controller. The tag is used to communicate with the base station and locate the robot vacuum cleaner. The fusion positioning controller is used to determine whether the quality indicators of the UWB signal meet the preset threshold to determine whether other modules need to be activated. The main controller is used to control the movement of the robot vacuum cleaner.
[0105] Furthermore, this invention proposes another fusion positioning controller, which can effectively improve the battery life of a robotic vacuum cleaner. Its specific working process is as follows:
[0106] 1) Under normal circumstances (based on whether the quality index of the UWB signal reaches the preset threshold), UWB positioning technology is used, and the other two positioning technologies are not enabled.
[0107] 2) In environments with many communication devices, UWB devices are easily interfered with, so UWB positioning is not used, and other positioning technologies are used instead.
[0108] 3) By setting the appropriate positioning module according to the general indoor environment, it can adapt to most changes in the working environment, effectively improve the robot vacuum cleaner's battery life, and also ensure positioning accuracy.
[0109] The base station is used to execute the above-described UWB-based fusion positioning method for a robotic vacuum cleaner. The specific execution process is as described in the previous embodiment and will not be repeated here. In this embodiment, the base station is a UWB base station.
[0110] Next, we will provide a more detailed explanation of UWB base stations.
[0111] The function of a UWB base station: A UWB base station is a device used to transmit UWB signals, primarily for measuring and calculating the distance or angle between the robot vacuum cleaner and the base station to determine the robot vacuum cleaner's position. Multiple UWB base stations used in combination in space can form a local area network for precise spatial positioning.
[0112] Work process:
[0113] 1. Transmitting UWB signals: UWB base stations transmit UWB signals to the surrounding area through antennas. UWB signals are high-energy, ultra-short pulse radio signals with a large bandwidth, capable of transmitting large amounts of data.
[0114] 2. Receiving UWB signals: The receiver of the UWB base station (integrated on the robot vacuum cleaner) receives the UWB signal reflected back from the target object, and at the same time receives the UWB signals transmitted by other base stations.
[0115] 3. Processing UWB signals: UWB base stations employ various signal processing techniques, such as signal filtering, time delay estimation, and phase measurement, to process the received UWB signals and extract their time, phase, and other characteristics.
[0116] 4. Calculate positioning information: Using the processed UWB signal characteristics, the UWB base station uses a complex algorithm (the embodiment of this invention uses a particle filter algorithm) to calculate the distance, angle or three-dimensional coordinates between the target object and the base station.
[0117] The application process of this invention will be illustrated with specific examples below.
[0118] Reference Figure 4 This invention provides an example flowchart of a UWB-based fusion positioning method for a robotic vacuum cleaner. This embodiment of the invention uses UWB positioning technology to collect position data information of the robotic vacuum cleaner during operation. The specific steps are as follows:
[0119] Step 1: Set up a UWB positioning system.
[0120] Step 2: The fusion positioning controller selects the appropriate positioning mode based on the different working environments.
[0121] Step 3: In general scenarios, advanced UWB technology is used to collect data on the location of the robot vacuum cleaner in the working environment based on the UWB positioning system. In special scenarios, other positioning methods are selected.
[0122] Step 4: Preprocess the data collected by the UWB positioning module or other positioning modules (LiDAR positioning and visual positioning).
[0123] Step 5: Merge the data from each positioning module to achieve real-time monitoring and precise positioning of the robot's position.
[0124] Furthermore, this embodiment of the invention also provides another example of UWB-based fusion positioning for a robotic vacuum cleaner, as detailed below:
[0125] 1. Input Data: The UWB tag is located on the robot vacuum cleaner. UWB base stations are set up in the working plane. The two transmit data wirelessly to obtain the distance between the tag and each base station (e.g., 3 meters from base station A and 5 meters from base station B). The distance between the tag and each base station in the plane at each movement time is obtained. This is a continuous ranging process using UWB. Each time point contains a set of ranging results of the tag from each base station (the wireless transmission rate is very fast, so this time point is very small).
[0126] 2. Processing Input Data: Based on the distance of the tag from each base station, the defined prediction equation predicts the tag's position. Specifically, the prediction equation in the particle filter algorithm includes the motion model function of the robotic vacuum cleaner, which is defined based on the motion of the robotic vacuum cleaner and used to predict the target position at the next moment. This step also considers random noise in the environment, adding it to the prediction equation by superimposing a certain error value on the predicted position.
[0127] 1) Based on the estimated target position, a certain number of particles are randomly generated. Taking into account sensor measurement errors and the influence of wireless transmission signals, a corresponding error value is superimposed on the coordinate position of each particle on the working plane. For example, 5cm is added in the X direction and 3cm is subtracted in the Y direction. The number of generated particles can be customized; the more particles, the more accurate the predicted position, but the longer the algorithm will run.
[0128] 2) Calculate the Euclidean distance between the current position of each particle and the predicted target position.
[0129] 3) Using the observation equation, the actual observation data (including sensor noise and error values caused by the influence of the environment on positioning accuracy, etc., are added to the observation data) and the state of each particle are compared to calculate the weight of each particle. The closer to the target position, the higher the weight is assigned.
[0130] 4) Normalize the weights of all particles so that the sum of all weights is 1.
[0131] 5) Resampling: Based on the particle weights, resampling is performed, meaning some particles with lower weights are deleted, while some particles with higher weights are copied multiple times. This reduces the number of low-confidence particles, improving the computational efficiency and speed of the particle filtering algorithm.
[0132] 6) State estimation: Finally, the state and position of the target are estimated using the state and weight of the particles.
[0133] 7) Apply the above steps to the target position at each time point to finally obtain the position positioning of the sweeping robot during its working process using the particle filter algorithm.
[0134] This invention can solve the following technical problems existing in the prior art:
[0135] 1. Lower positioning accuracy: Compared with lidar positioning and visual positioning, UWB positioning achieves higher accuracy, reaching the centimeter level, which can meet the needs of high-precision positioning.
[0136] 2. Weak anti-interference capability: LiDAR positioning and visual positioning are relatively weak in scenarios with poor lighting conditions, heavy dust, and complex environments.
[0137] 3. Susceptible to obstacles: LiDAR positioning relies on light and environmental emission as its basis, and the presence of obstacles can cause changes in lighting; visual positioning requires optical sensors and cameras for identification, and the presence of obstacles can interfere with the positioning effect. UWB positioning, on the other hand, is not affected by obstacles and can accurately locate itself in complex environments.
[0138] 4. High power consumption: The equipment used for LiDAR positioning and visual positioning consumes more power than UWB positioning. UWB positioning consumes less power, which provides better protection for the equipment's battery life.
[0139] Compared with the prior art, the present invention has at least the following advantages:
[0140] 1. High-precision positioning: This invention adopts the UWB positioning method and combines it with existing lidar positioning and visual positioning to achieve high-precision positioning of the robot vacuum cleaner and reduce the robot's positioning error.
[0141] 2. Strong anti-interference capability: This invention incorporates UWB positioning into the positioning process of the sweeping robot, which makes up for the shortcomings of LiDAR positioning and visual positioning in scenarios with poor lighting conditions, heavy dust, and complex environments, thereby improving the anti-interference capability of the environment.
[0142] 3. Strong battery life: The integrated positioning controller proposed in this invention activates different positioning modules according to different working environments, which not only ensures high-precision positioning, but also improves the battery life of the robot vacuum cleaner.
[0143] 4. Flexible solutions: Considering actual cost issues, robot vacuums do not need to be equipped with all three positioning modes. UWB positioning combined with another positioning solution can meet the requirements. The corresponding program of the integrated positioning controller can also be modified according to the actual application solution.
[0144] Reference Figure 5This invention provides a UWB-based fusion positioning device for a robotic vacuum cleaner, comprising:
[0145] The first positioning unit is used to obtain the distance between the sweeping robot and each base station measured by the UWB signal at the current time point if the quality index of the UWB signal between the sweeping robot and each base station reaches a preset threshold.
[0146] The second positioning unit is used to predict the first position of the sweeping robot at the next time point based on the pre-built motion model and the various ranging distances;
[0147] The third positioning unit is used to discretely sample the state of the sweeping robot when it is in the first position to obtain multiple sampling results. Each sampling result is treated as a particle, and the weight of each particle reflecting the confidence of the current state is determined.
[0148] The fourth positioning unit is used to determine the second position of the sweeping robot at the next time point according to the weight of each particle, and the second position is used as the predicted position of the sweeping robot at the next time point;
[0149] The fifth positioning unit is used to determine the predicted position of the sweeping robot at the next time point by using other preset positioning modules if the quality index of the UWB signal between the sweeping robot and each of the base stations does not reach a preset threshold.
[0150] The specific implementation of the fusion positioning device is basically the same as the specific implementation of the fusion positioning method described above, and will not be repeated here.
[0151] This invention also provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the aforementioned fusion positioning method. This electronic device can be any smart terminal, including tablet computers, in-vehicle computers, etc.
[0152] Please see Figure 6 , Figure 6 The hardware structure of an electronic device according to another embodiment is illustrated. The electronic device includes:
[0153] The processor 601 can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present invention.
[0154] The memory 602 can be implemented as a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 602 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 602 and is called and executed by the processor 601 using the fusion positioning method of the embodiments of this invention.
[0155] The input / output interface 603 is used to implement information input and output;
[0156] The communication interface 604 is used to enable communication and interaction between this device and other devices. Communication can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).
[0157] Bus 605 transmits information between various components of the device (e.g., processor 601, memory 602, input / output interface 603, and communication interface 604);
[0158] The processor 601, memory 602, input / output interface 603, and communication interface 604 are connected to each other within the device via bus 605.
[0159] This invention also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described fusion positioning method.
[0160] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0161] This invention also discloses a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, causing the computer device to perform... Figure 1 The method shown.
[0162] In some alternative embodiments, the functions / operations mentioned in the block diagrams may not occur in the order shown in the operation diagrams. For example, depending on the functions / operations involved, two consecutively shown blocks may actually be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order. Furthermore, the embodiments presented and described in the flowcharts of this invention are provided by way of example to provide a more comprehensive understanding of the technology. The disclosed methods are not limited to the operations and logic flows presented herein. Alternative embodiments are contemplated in which the order of various operations is altered and sub-operations described as part of a larger operation are executed independently.
[0163] Furthermore, although the invention has been described in the context of functional modules, it should be understood that, unless otherwise stated, one or more of the described functions and / or features may be integrated into a single physical device and / or software module, or one or more functions and / or features may be implemented in a separate physical device or software module. It is also understood that a detailed discussion of the actual implementation of each module is unnecessary for understanding the invention. Rather, given the properties, functions, and internal relationships of the various functional modules in the apparatus disclosed herein, the actual implementation of the module will be understood within the scope of conventional skill of an engineer. Therefore, those skilled in the art can implement the invention as set forth in the claims using ordinary techniques without excessive experimentation. It is also understood that the specific concepts disclosed are merely illustrative and not intended to limit the scope of the invention, which is determined by the full scope of the appended claims and their equivalents.
[0164] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, essentially, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this 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.
[0165] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device.
[0166] More specific examples of computer-readable media (a non-exhaustive list) include: electrical connections (electronic devices) having one or more wires, portable computer disk drives (magnetic devices), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Furthermore, computer-readable media can even be paper or other suitable media on which the program can be printed, because the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in computer memory.
[0167] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0168] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0169] Although embodiments of the invention have been shown and described, those skilled in the art will understand that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents.
[0170] The above is a detailed description of the preferred embodiments of the present invention. However, the present invention is not limited to the embodiments described. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present invention. All such equivalent modifications or substitutions are included within the scope defined by the claims of the present invention.
Claims
1. A method for fusing positioning of a UWB-based sweeping robot, characterized in that, include: If the quality index of the UWB signal between the robot vacuum cleaner and each base station reaches a preset threshold, then the distance between the robot vacuum cleaner and each base station measured by the UWB signal at the current time point is obtained. The first position of the sweeping robot at the next time point is predicted based on the pre-built motion model and the various distance measurements. Discrete sampling is performed on the state of the sweeping robot when it is in the first position to obtain multiple sampling results. Each sampling result is treated as a particle, and the weight of each particle reflecting the confidence of the current state is determined. Based on the weight of each particle, the second position of the sweeping robot at the next time point is determined, and the second position is used as the predicted position of the sweeping robot at the next time point; If the quality index of the UWB signal between the robotic vacuum cleaner and each of the base stations does not reach the preset threshold, then other preset positioning modules are used to determine the predicted position of the robotic vacuum cleaner at the next time point. The state of the sweeping robot at the first position is discretely sampled to obtain multiple sampling results, each sampling result being treated as a particle, including: Discrete sampling is performed on the state of the sweeping robot when it is in the first position to obtain multiple sampling results; A preset error value is superimposed on the position coordinates corresponding to each sampling result, and the sampling result after superimposing the error value is used as the particle; Determining the second position of the sweeping robot at the next time point based on the weight of each particle includes: The weights of all the particles are normalized so that the sum of the weights of all the particles is 1; Particles whose weights reach a preset weight threshold are copied multiple times to obtain multiple resampled particles. The second position of the sweeping robot at the next time point is determined based on the weights of the multiple resampled particles.
2. The UWB-based fusion positioning method for a sweeping robot according to claim 1, characterized in that, The step of predicting the first position of the sweeping robot at the next time point based on the pre-built motion model and each of the aforementioned distance measurements includes: Random noise caused by environmental factors is added to the motion model; Based on the motion model with added random noise and the various distance measurements, the first position of the sweeping robot at the next time point is predicted.
3. The UWB-based fusion positioning method for a sweeping robot according to claim 1, wherein, Determining the weight for each particle reflecting the confidence level of the current state includes: Calculate the Euclidean distance between the location of each particle and the first location, and determine the weight of each particle reflecting the confidence of the current state based on the corresponding Euclidean distance.
4. The UWB-based fusion positioning method for a sweeping robot according to claim 1, wherein, The step of using other preset positioning modules to determine the predicted position of the sweeping robot at the next time point includes: The predicted position of the sweeping robot at the next time point is determined by using a preset lidar positioning module or visual positioning module.
5. A UWB-based sweeping robot fusion positioning system, characterized in that, include: Robotic vacuum cleaner and multiple base stations; The robotic vacuum cleaner includes a UWB positioning module, a lidar positioning module, and a visual positioning module. The base station is used to execute a UWB-based fusion positioning method for a sweeping robot as described in any one of claims 1 to 4.
6. A UWB-based sweeping robot fusion positioning device, characterized in that, The device is used to implement the UWB-based fusion positioning method for a robotic vacuum cleaner as described in claim 1, and the device includes: The first positioning unit is used to obtain the distance between the sweeping robot and each base station measured by the UWB signal at the current time point if the quality index of the UWB signal between the sweeping robot and each base station reaches a preset threshold. The second positioning unit is used to predict the first position of the sweeping robot at the next time point based on the pre-built motion model and the various ranging distances; The third positioning unit is used to discretely sample the state of the sweeping robot when it is in the first position to obtain multiple sampling results. Each sampling result is treated as a particle, and the weight of each particle reflecting the confidence of the current state is determined. The fourth positioning unit is used to determine the second position of the sweeping robot at the next time point according to the weight of each particle, and the second position is used as the predicted position of the sweeping robot at the next time point; The fifth positioning unit is used to determine the predicted position of the sweeping robot at the next time point by using other preset positioning modules if the quality index of the UWB signal between the sweeping robot and each of the base stations does not reach a preset threshold.
7. An electronic device, comprising: Including the processor and memory; The memory is used to store programs; The processor executes the program to implement a UWB-based fusion positioning method for a sweeping robot as described in any one of claims 1 to 4.
8. A computer-readable storage medium, characterized in that, The storage medium stores a program, which is executed by a processor to implement a UWB-based fusion positioning method for a sweeping robot as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Target transport vehicle positioning method and device, storage medium and electronic equipment
CN111918203A
UWB positioning drift correction method for indoor navigation
CN114485639A