Robot positioning method, device and equipment and storage medium

By detecting the target area in the pipeline corridor and determining the target attitude based on the initial attitude and angular velocity, combined with the laser radar point cloud information, the problem of low positioning accuracy of robots in the pipeline corridor is solved, and high-precision position determination is achieved.

CN119414331APending Publication Date: 2025-02-11CHINA UNITED NETWORK COMM GRP CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411545364.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-02-11

AI Technical Summary

Technical Problem

In the pipeline corridor, due to the narrow and long environment and similar characteristics, the robot is prone to failure in feature matching when passing the lidar SLAM technology, which makes it impossible to accurately determine the position of the robot.

Method used

By detecting the target area of ​​the robot in the pipeline corridor, the target attitude is determined based on the initial attitude of the robot and the angular velocity during movement, and the point cloud information collected by the lidar is used to accurately determine the position of the robot in the target area.

Benefits of technology

The robot's position is accurately determined in the pipeline corridor, the accuracy and efficiency of position determination are improved, and position errors caused by failure of feature matching are avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119414331A_ABST
    Figure CN119414331A_ABST
Patent Text Reader

Abstract

The invention provides a robot positioning method and device, equipment and a storage medium, and relates to the technical field of pipe gallery inspection. The method comprises the steps of determining a target area where the robot is located in the pipe gallery at the current time, determining a target posture of the robot at the current time based on an initial posture of the robot when the robot starts to move in the pipe gallery and a plurality of angular velocities of the robot in the moving process, and determining a target position of the robot according to the target posture of the robot at the current time. And determining the position of the robot at the current time. Wherein the posture represents the head steering angle of the robot. The position of the robot is in the target area at the current time. Therefore, the position range of the robot can be determined through the target area where the robot is located, and the position of the robot is accurately determined within the position range based on the target posture of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of pipeline corridor inspection, and in particular to a robot positioning method, device, equipment and storage medium. Background Art

[0002] The tunnel is home to important pipelines such as electricity, communications, gas, water supply and drainage. Once a failure or accident occurs, it will have a serious impact on the city's production and life. Traditional manual inspections mainly rely on inspectors to walk or take public transportation to inspect the tunnel. Due to the long length of the tunnel, the slow speed of manual inspections and limited coverage, it is difficult to complete the inspection of the entire tunnel in a short time. With the continuous advancement of robot technology, the application of robot inspections in tunnels has improved inspection efficiency and accuracy.

[0003] At present, due to the narrowness and longness of the pipeline corridor and the extremely similar environmental characteristics, when the robot matches the point cloud data through the simultaneous positioning and mapping technology of the lidar (Simultaneous Localization and Mapping, SLAM, referred to as lidar SLAM technology), feature matching failures are likely to occur, resulting in the inability to accurately determine the robot's position. Summary of the invention

[0004] The present application provides a robot positioning method, device, equipment and storage medium, which can accurately determine the position of the robot.

[0005] In order to achieve the above objectives, this application adopts the following technical solutions:

[0006] In a first aspect, the present application provides a robot positioning method, the method comprising: detecting a target area where the robot is currently located in a tunnel; determining the target posture of the robot at the current time based on the initial posture of the robot when it starts moving in the tunnel and multiple angular velocities of the robot during the movement; the posture represents the turning angle of the robot's head; determining the position of the robot at the current time based on the target posture of the robot at the current time; the position of the robot at the current time is within the target area.

[0007] According to the above technical means, the target area where the robot is located in the tunnel at the current time can be detected, and the target posture of the robot at the current time can be determined based on the initial posture of the robot when it starts to move in the tunnel and the multiple angular velocities of the robot during the movement, and the position of the robot at the current time can be determined based on the target posture of the robot at the current time. Thus, the position range of the robot can be determined by the target area where the robot is located, and the position of the robot can be accurately determined within the position range based on the target posture of the robot.

[0008] In a possible implementation, the above-mentioned "determining the position of the robot at the current time according to the target posture of the robot at the current time" includes: obtaining point cloud information of the target area and point cloud information collected by the robot in the target posture at the current time; the point cloud information is obtained by laser radar collection, and the position of the robot at the current time is determined based on the point cloud information collected by the robot in the target posture and the point cloud information of the target area.

[0009] According to the above technical means, the current position of the robot can be determined in the target area based on the point cloud information collected by the robot in the target posture and the point cloud information of the target area. Therefore, when the target area is determined, the matching range can be narrowed, and the current position of the robot can be determined more accurately through the point cloud information collected by the laser radar.

[0010] In a possible implementation, the above-mentioned "determining the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and multiple angular velocities of the robot during the movement" includes: determining the target posture of the robot at the current time according to the initial posture of the robot, multiple angular velocities of the robot during the movement and the moving time corresponding to each angular velocity.

[0011] According to the above technical means, the target posture of the robot at the current time can be determined according to the initial posture of the robot, multiple angular velocities of the robot during movement, and the movement duration corresponding to each angular velocity. Thus, the real-time posture of the robot in the tunnel can be accurately detected.

[0012] In a possible implementation, the target posture of the robot at the current time is the sum of the initial posture of the robot and the moving angle value; the moving angle value is the sum of the product of each angular velocity and the corresponding moving duration.

[0013] According to the above technical means, the target posture of the robot can be determined more accurately according to the initial posture of the robot and the sum of the products of each angular velocity of the robot during the movement and the corresponding movement duration.

[0014] In a possible implementation, the above-mentioned "multiple positioning devices are arranged in the tunnel to determine the target area where the robot is located in the tunnel at the current time" includes: determining the distance between the robot and the target positioning device; the target positioning device represents the positioning device closest to the robot; based on the distance between the robot and the target positioning device, determining the target area where the robot is located in the tunnel at the current time; wherein the target area represents an area with the target positioning device as the center and the distance between the robot and the target positioning device as the radius.

[0015] According to the above technical means, the target area where the robot is located in the tunnel at the current time can be determined according to the distance between the robot and the target positioning device. Thus, the position range of the robot during the movement can be accurately determined.

[0016] In a possible implementation, the above-mentioned “determining the distance between the robot and the target positioning device” includes: obtaining the duration of the robot sending a signal to the target positioning device and receiving the signal at the current time; and determining the distance between the robot and the target positioning device according to the transmission speed and duration of the signal.

[0017] According to the above technical means, the duration of the robot sending a signal to the target positioning device and receiving the signal can be obtained at the current time, and the distance between the robot and the target positioning device can be determined according to the transmission speed and duration of the signal. Therefore, the distance between the robot and the target positioning device can be determined more accurately according to the transmission speed and duration of the signal.

[0018] In a possible implementation, the distance between the robot and the target positioning device is half of the product of the signal transmission speed and duration.

[0019] According to the above technical means, the distance between the robot and the target positioning device can be determined more conveniently and accurately by using half of the product value of the signal transmission speed and duration.

[0020] In the second aspect, the present application provides a robot positioning device, which includes: a detection unit, used to detect the target area where the robot is located in the tunnel at the current time; a determination unit, used to determine the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and multiple angular velocities of the robot during the movement; the posture represents the turning angle of the robot's head; the determination unit is also used to determine the position of the robot at the current time according to the target posture of the robot at the current time; the position of the robot at the current time is within the target area.

[0021] In one possible implementation, the determination unit is specifically used to obtain point cloud information of the target area and point cloud information collected by the robot in the target posture at the current time; the point cloud information is obtained by laser radar collection, and the position of the robot at the current time is determined based on the point cloud information collected by the robot in the target posture and the point cloud information of the target area.

[0022] In a possible implementation, the determination unit is further configured to determine the target posture of the robot at the current time according to the initial posture of the robot, multiple angular velocities of the robot during movement, and the movement duration corresponding to each angular velocity.

[0023] In a possible implementation, the determination unit is also specifically used to determine the target posture of the robot at the current time, where the target posture of the robot at the current time is the sum of the initial posture of the robot and the moving angle value; the moving angle value is the sum of the product of each angular velocity and the corresponding moving duration.

[0024] In a possible implementation, the determination unit is also specifically used to determine the distance between the robot and the target positioning device; the target positioning device represents the positioning device closest to the robot; based on the distance between the robot and the target positioning device, the target area where the robot is located in the tunnel at the current time is determined; wherein the target area represents an area with the target positioning device as the center and the distance between the robot and the target positioning device as the radius.

[0025] In a possible implementation, the determination unit is further configured to obtain the duration of the robot sending a signal to the target positioning device and receiving the signal at the current time; and determine the distance between the robot and the target positioning device according to the transmission speed and duration of the signal.

[0026] In a possible implementation, the determination unit is further configured to determine a distance between the robot and the target positioning device, where the distance between the robot and the target positioning device is half of a product of a transmission speed and a duration of the signal.

[0027] In a third aspect, the present application provides an electronic device comprising: a processor; and a memory for storing processor-executable instructions; wherein the processor is configured to execute instructions to implement the method of the above-mentioned first aspect and any possible implementation manner thereof.

[0028] In a fourth aspect, the present application provides a computer-readable storage medium. When instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device can execute the method in the above-mentioned first aspect and any possible implementation method thereof.

[0029] In a fifth aspect, the present application provides a computer program product comprising instructions, which, when executed on a communication device, enables the communication device to execute the method in the above-mentioned first aspect and any possible implementation manner thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] Figure 1 A system framework diagram of a robot positioning method provided in an embodiment of the present application;

[0031] Figure 2 A schematic diagram of a flow chart of a robot positioning method provided in an embodiment of the present application;

[0032] Figure 3 A schematic diagram of a flow chart of another robot positioning method provided in an embodiment of the present application;

[0033] Figure 4 A schematic diagram of a two-dimensional coordinate system of a pipe gallery provided in an embodiment of the present application;

[0034] Figure 5 A schematic diagram of the structure of a positioning device for a robot provided in an embodiment of the present application;

[0035] Figure 6 A block diagram of an electronic device of a robot positioning device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0036] The following is a detailed description of a robot positioning method, device, equipment and storage medium provided in an embodiment of the present application in conjunction with the accompanying drawings.

[0037] The term "and / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.

[0038] The terms "first" and "second" and the like in the specification and drawings of this application are used to distinguish different objects, or to distinguish different processing of the same object, rather than to describe a specific order of objects.

[0039] In addition, the terms "including" and "having" and any variations thereof mentioned in the description of the present application are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device comprising a series of steps or units is not limited to the listed steps or units, but may optionally include other steps or units that are not listed, or may optionally include other steps or units that are inherent to these processes, methods, products or devices.

[0040] It should be noted that, in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.

[0041] Before introducing the embodiments of the present application, the relevant technical terms involved in the embodiments of the present application are explained. It should be noted that these explanations are intended to make the embodiments of the present application easier to understand and should not be regarded as limiting the scope of protection required by the embodiments of the present application.

[0042] Ultra Wide-Band (UWB) positioning technology: a new type of wireless communication technology that transmits data over a wider frequency range, uses short pulses of electromagnetic signals, and achieves positioning based on the propagation characteristics of electromagnetic signals in space. Specifically, this technology requires the installation of at least three ultra-wideband transmitters (or receivers) on the positioning device, and the transmitters simultaneously emit short pulses of ultra-wideband signals to the surroundings at different locations. When the signal propagates to the target object, a series of reflections, scattering, and diffraction occur. The receiver can receive these signals and determine the location of the target object by analyzing the signal's time delay, amplitude, and phase information.

[0043] Inertial navigation technology: The acceleration and angular velocity of an object are calculated through an accelerometer and a gyroscope (also known as an inertial navigation combination). The accelerometer is used to measure the linear acceleration of an object, while the gyroscope is used to measure the angular velocity of an object. The data measured by these sensors is sent to a computer for processing to obtain the position and attitude information of the moving carrier.

[0044] Simultaneous Localization and Mapping (SLAM) based on LiDAR, referred to as LiDAR SLAM technology, is a process that enables a robot or autonomous system to build a map of an unknown environment and simultaneously determine its position within that map. This technology relies on a LiDAR sensor that emits laser pulses and measures the time it takes for the pulses to bounce back after hitting an object in its path. By analyzing the returning laser signal, the LiDAR SLAM system can create a 3D point cloud representing the environment and use this information to estimate the robot's position and orientation within the map.

[0045] The tunnel is home to important pipelines such as electricity, communications, gas, water supply and drainage. Once a failure or accident occurs, it will have a serious impact on the city's production and life. Traditional manual inspections mainly rely on inspectors to walk or take public transportation to inspect the tunnel. Due to the long length of the tunnel, the slow speed of manual inspections and the limited coverage, it is difficult to complete the inspection of the entire tunnel in a short time. The environment in the tunnel is complex, and there are usually problems such as humidity, darkness, and poor ventilation. Some tunnels may also contain harmful gases. Working in such an environment not only requires high work intensity, but also has certain harm to physical health.

[0046] With the continuous advancement of robot technology, the application of robot inspection in the tunnel has improved the efficiency and accuracy of inspection. However, due to the narrow and long tunnels and the extremely similar environmental characteristics, when the robot matches the point cloud data through the LiDAR SLAM, it is easy to fail to match the features, resulting in the inability to accurately determine the position of the robot.

[0047] In view of this, an embodiment of the present application provides a robot positioning method, including: detecting the target area where the robot is located in the tunnel at the current time, determining the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and multiple angular velocities of the robot during the movement, the posture representing the turning angle of the robot's head, determining the position of the robot at the current time according to the target posture of the robot at the current time, and the position of the robot at the current time is within the target area.

[0048] For ease of understanding, the robot positioning method provided in the present application is specifically introduced below with reference to the accompanying drawings.

[0049] Figure 1 A system framework diagram of a robot positioning method provided in an embodiment of the present application, such as Figure 1 As shown, the system framework diagram includes a robot 101, a pipe gallery 102 and a positioning device 103.

[0050] The robot 101 is used to perform various inspection and maintenance tasks in the pipe gallery 102. For example, the robot 101 can detect environmental parameters such as temperature, humidity, air pressure, and concentration of harmful gases in the pipe gallery to ensure the safety and stability of the internal environment of the pipe gallery.

[0051] In addition, a three-axis gyroscope sensor and a three-axis accelerometer sensor are installed inside the robot 101. The three-axis gyroscope sensor is used to measure the angular velocity of the robot head rotation. The three-axis accelerometer sensor is used to measure the acceleration of the robot movement.

[0052] In some embodiments, the robot 101 may be a quadruped robot or a hexapod robot, etc., which is not limited in the present embodiment. The quadruped robot or the hexapod robot has a stair climbing mode and a slope climbing mode, which can meet the needs of stair sections and sloped sections.

[0053] The pipe gallery 102 is used for centrally laying various engineering pipelines such as power, communication, gas, heating, water supply and drainage, etc. The pipe gallery includes a plurality of positioning devices 103 .

[0054] The positioning device 103 is used to locate the staff or robot in the tunnel in real time through wireless communication technology. Among them, the positioning device can be installed in the tunnel at preset distances. The positioning device may include various electronic devices with positioning functions. For example, the positioning device may be any one of a base station and a Bluetooth positioning device. For the convenience of description, the embodiment of the present application is described by taking a base station as an example.

[0055] It should be noted that the execution subject of the present application can be a robot controller or a computer terminal for controlling the robot, for example, it can be an intelligent control terminal. The following is a detailed description taking the execution subject as an intelligent control terminal as an example.

[0056] Figure 2 A schematic flow chart of a robot positioning method provided in an embodiment of the present application, the method comprising the following S201-S203.

[0057] S201, detecting the target area where the robot is located in the tunnel at the current time.

[0058] The target area refers to the area where the robot is located. For example, the target area may represent a circular area, a square area, etc., which is not limited in the embodiment of the present application.

[0059] In one possible implementation, the intelligent control terminal controls the robot to send an ultra-wideband signal to the target base station, and determines the distance between the robot and the target base station by the time it takes for the ultra-wideband signal to reach the target base station and for the ultra-wideband signal to return to the robot. The target base station refers to the base station closest to the robot. The intelligent control terminal detects the target area where the robot is located in the tunnel at the current time based on the distance between the robot and the target base station.

[0060] The target area refers to an area with the target positioning device as the center and the distance between the robot and the target positioning device as the radius.

[0061] In the embodiment of the present application, the intelligent control terminal stores the locations of multiple base stations in the tunnel and the environmental point cloud information in the tunnel, wherein the point cloud information is collected by a laser radar.

[0062] The intelligent control terminal selects one base station from multiple base stations as the origin base station, takes the origin base station as the origin coordinate, takes the east of the origin base station as the horizontal and vertical axes, and takes the north of the origin base station as the vertical axis to establish a two-dimensional coordinate system. The intelligent control terminal stores the positions of multiple base stations in the tunnel in the two-dimensional coordinate system.

[0063] The intelligent control terminal controls the robot to send ultra-wideband signals to the target base station, and detects the duration of the robot sending ultra-wideband signals to the target base station and receiving ultra-wideband signals at the current time, and determines the distance between the robot and the target base station according to the transmission speed and duration of the ultra-wideband signal.

[0064] In the embodiment of the present application, the distance between the robot and the target base station is half of the product of the transmission speed and duration of the ultra-wideband signal.

[0065] Exemplarily, the robot sends an ultra-wideband signal to a target base station, and detects that the time it takes the robot to receive the ultra-wideband signal is t, and the speed of the ultra-wideband signal is c, then the position of the robot to the target base station is x=t*c / 2.

[0066] S202: Determine the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and multiple angular velocities of the robot during the movement.

[0067] The posture represents the steering angle of the robot's head. For example, the posture can be 30°, which means that the robot's head is 30° tilted to the right relative to the body. The posture can be -20°, which means that the robot's head is 20° tilted to the left relative to the body.

[0068] In one possible implementation, the intelligent control terminal detects whether the robot is located in the charging pile when it starts to move. When the robot starts to move from the charging pile, the initial posture of the robot represents 0. When the robot does not start to move from the charging pile, the initial posture of the robot represents the posture of the robot after the last movement saved in the intelligent control terminal.

[0069] The intelligent control terminal can determine the target posture of the robot at the current time through inertial navigation technology.

[0070] For example, the intelligent control terminal determines the target posture of the robot at the current time based on the initial posture of the robot when it starts moving in the tunnel and the multiple angular velocities measured by the three-axis gyroscope sensor during the movement.

[0071] In the embodiment of the present application, the target posture of the robot at the current time is the sum of the initial posture of the robot and the moving angle value, and the moving angle value is the sum of the product of each angular velocity and the corresponding moving duration.

[0072] S203: Determine the position of the robot at the current time according to the target posture of the robot at the current time.

[0073] Among them, the current position of the robot is within the target area.

[0074] In one possible implementation, the intelligent control terminal obtains point cloud information of the target area and point cloud information collected by the robot at the target posture at the current time through the laser radar SLAM. The intelligent control terminal determines the position of the robot at the current time based on the point cloud information collected by the robot at the target posture and the point cloud information of the target area.

[0075] The intelligent control terminal divides the point cloud information in the target area into multiple cells, and compares the point cloud information collected by the robot with the multiple cells to determine the cell of the point cloud information collected by the robot. The intelligent control terminal combines the robot's target posture to determine the robot's current position.

[0076] In an embodiment of the present application, the intelligent control terminal establishes a preset model in the tunnel based on the pre-collected point cloud information, establishes a model of the robot in the target posture in the preset model, and simulates the robot to collect point cloud information. When the point cloud information collected by the simulated robot is consistent with the point cloud information collected by the robot, the position of the simulated robot at the current time is the position of the robot in the tunnel at the current time.

[0077] based on Figure 2 According to the technical solution shown, in the embodiment of the present application, the intelligent control terminal can detect the target area where the robot is located in the tunnel at the current time, determine the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and the multiple angular velocities of the robot during the movement, and determine the position of the robot at the current time according to the target posture of the robot at the current time. Thus, the position range of the robot can be determined by the target area where the robot is located, and the position of the robot can be accurately determined within the position range based on the target posture of the robot.

[0078] In some embodiments, Figure 3 A flowchart of another robot positioning method provided in an embodiment of the present application, the method includes the following S301-S304.

[0079] S301, obtaining the initial position and posture of the robot.

[0080] The initial position and posture represent the initial position and initial posture.

[0081] In the embodiment of the present application, the initial position of the robot is the position of the charging pile of the robot, and the initial posture of the robot is the posture in the charging pile, that is, 0.

[0082] S302: Determine the ultra-wideband position of the robot.

[0083] In one possible implementation, the intelligent control terminal establishes a one-dimensional coordinate system according to the direction of the pipeline corridor, and the one-dimensional coordinate system includes the positions of multiple base stations and the current position of the robot.

[0084] The intelligent control terminal converts the position coordinates of multiple base stations and the position coordinates of the robot in the one-dimensional coordinate system into a two-dimensional coordinate system. The two-dimensional coordinate system uses a base station among the multiple base stations as the origin base station, the position of the origin base station as the origin coordinates, the east of the origin base station as the horizontal axis, and the north of the origin base station as the vertical axis.

[0085] For example, Figure 4 As shown, the position of the robot in the one-dimensional coordinate system is (x l ,y l), the origin of the one-dimensional coordinate system is represented as (x0, y0) in the two-dimensional coordinate system, and θ represents the angle between the direction of the pipeline corridor and the horizontal axis of the two-dimensional rectangular coordinate system.

[0086] The robot's coordinates in the one-dimensional coordinate system are converted to the coordinates (x, y) in the two-dimensional coordinate system to satisfy Formula 1:

[0087]

[0088] Among them, x represents the horizontal coordinate of the robot in the two-dimensional coordinate system, y represents the vertical coordinate of the robot in the two-dimensional coordinate system, and x l Represents the horizontal coordinate of the robot in the one-dimensional coordinate system, y l represents the ordinate of the robot in the one-dimensional coordinate system, x0 represents the abscissa of the origin of the one-dimensional coordinate system in the two-dimensional coordinate system, y0 represents the ordinate of the origin of the one-dimensional coordinate system in the two-dimensional coordinate system, and θ represents the angle between the direction of the pipeline corridor and the horizontal axis of the two-dimensional coordinate system.

[0089] The intelligent control terminal controls the robot to send an ultra-wideband signal to the target base station and detects the duration of the robot receiving the ultra-wideband signal. The robot's position is determined based on the speed and duration of the ultra-wideband signal.

[0090] Among them, the distance from the robot to the target base station is half of the product of the speed and duration of the ultra-wideband signal.

[0091] Exemplarily, the robot sends an ultra-wideband signal to a target base station, and detects that the time it takes the robot to receive the ultra-wideband signal is t, and the speed of the ultra-wideband signal is c, then the position of the robot to the target base station is x=t*c / 2.

[0092] The intelligent control terminal determines the position of the robot according to the position of the target base station and the distance from the robot to the target base station.

[0093] S303: Determine the position and posture of the robot at the current time.

[0094] In one possible implementation method, the intelligent control terminal collects the angular velocity and acceleration of the robot during movement, predicts the robot's position and posture at the current time through a preset algorithm, and updates the position and posture at the current time through an observation model.

[0095] In an embodiment of the present application, the preset algorithm may include a Kalman filter algorithm (Extended Kalman Filter, EKF), a least squares algorithm, etc., which is not limited in the present application. The Kalman filter algorithm is taken as an example for detailed description below.

[0096] In the embodiment of the present application, the intelligent control terminal predicts the robot's position and posture at the current time through a preset algorithm based on the angular velocity and acceleration of the robot's movement. The position and posture at the current time satisfies Formula 2:

[0097] x k =f(x k-1 )+ω k-1 Formula 2

[0098] Among them, x k Represents the position of the robot at the current time, that is x represents the horizontal coordinate of the robot, y represents the vertical coordinate of the robot, represents the heading angle of the robot, represents the acceleration of the robot. represents the angular velocity of the robot. represents the steering speed of the robot, f represents the nonlinear state transfer function, ω k-1 represents process noise.

[0099] In the embodiment of the present application, the intelligent control terminal updates the posture at the current time through the observation model, and the updated posture at the current time satisfies Formula 3:

[0100] z k =h(x k )+v k Formula 3

[0101] Among them, z k represents the position of the robot at the current time after the update, that is, x represents the horizontal coordinate of the robot, y represents the vertical coordinate of the robot, represents the robot's steering speed, h represents the nonlinear observation function, v k represents the observation noise.

[0102] S304: Update the position of the robot at the current time according to the posture of the robot at the current time and the ultra-wideband position of the robot.

[0103] In one possible implementation, the intelligent control terminal can pre-scan the environmental point cloud information in the tunnel and divide the scanned environmental point cloud information into cell grids. The intelligent control terminal uses the laser radar SLAM technology to compare and analyze the environmental point cloud information collected by the robot at the current time and the point cloud information in the tunnel to determine the current time position of the robot. The position collected at the current time is the updated position of the robot.

[0104] The step of determining the position of the robot at the current time is detailed in step S203 and will not be described in detail here.

[0105] It should be noted that the current position of the robot is consistent with the ultra-wideband position of the robot or the error is within a preset range. For example, the preset range may be [-30 cm, 30 cm].

[0106] based on Figure 3 According to the technical solution shown in the embodiment of the present application, the intelligent control terminal adopts the method of integrating ultra-wideband technology, inertial navigation technology and lidar SLAM technology, which can pre-determine the position range of the robot through ultra-wideband technology, determine the current position and posture of the robot within the position range through inertial navigation technology, and accurately determine the current position of the robot based on the current position and posture of the robot and the point cloud information collected by lidar SLAM technology.

[0107] The above mainly introduces the solution provided by the embodiment of the present application from the perspective of the method. In order to achieve the above functions, the positioning device or electronic device of the robot includes a hardware structure and / or software module corresponding to the execution of each function. It should be easily appreciated by those skilled in the art that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.

[0108] The embodiment of the present application can divide the functional modules of the positioning device or electronic device of the robot according to the above method. For example, the positioning device or electronic device of the robot may include various functional modules corresponding to the various functional divisions, or two or more functions may be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical functional division. There may be other division methods in actual implementation.

[0109] Figure 5 A schematic diagram of a robot positioning device provided in an embodiment of the present application, the device comprising:

[0110] The detection unit 501 is used to detect the target area where the robot is located in the tunnel at the current time.

[0111] The determination unit 502 is used to determine the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and multiple angular velocities of the robot during the movement; the posture represents the steering angle of the robot's head.

[0112] The determination unit 502 is further used to determine the position of the robot at the current time according to the target posture of the robot at the current time; the position of the robot at the current time is within the target area.

[0113] In a possible implementation, the determination unit 502 is specifically used to obtain point cloud information of the target area and point cloud information collected by the robot in the target posture at the current time; the point cloud information is obtained by laser radar collection, and the position of the robot at the current time is determined based on the point cloud information collected by the robot in the target posture and the point cloud information of the target area.

[0114] In a possible implementation, the determination unit 502 is further configured to determine the target posture of the robot at the current time according to the initial posture of the robot, multiple angular velocities of the robot during movement, and the movement duration corresponding to each angular velocity.

[0115] In a possible implementation, the determination unit 502 is further used to determine the target posture of the robot at the current time, where the target posture of the robot at the current time is the sum of the initial posture of the robot and the moving angle value; the moving angle value is the sum of the product of each angular velocity and the corresponding moving duration.

[0116] In a possible implementation, the determination unit 502 is also specifically used to determine the distance between the robot and the target positioning device; the target positioning device represents the positioning device closest to the robot; based on the distance between the robot and the target positioning device, the target area where the robot is located in the tunnel at the current time is determined; wherein the target area represents an area with the target positioning device as the center and the distance between the robot and the target positioning device as the radius.

[0117] In a possible implementation, the determination unit 502 is further configured to obtain the duration of the robot sending a signal to the target positioning device and receiving the signal at the current time; and determine the distance between the robot and the target positioning device according to the transmission speed and duration of the signal.

[0118] In a possible implementation, the determination unit 502 is further configured to determine a distance between the robot and the target positioning device, where the distance between the robot and the target positioning device is half of the product of the transmission speed and duration of the signal.

[0119] Figure 6A block diagram of an electronic device of a robot positioning device involved in the above embodiment is shown. The robot positioning device includes: a processor 601 and a communication interface 602. The processor 601 is used to determine the position of the robot based on the point cloud information collected by the robot and the environmental point cloud information of the tunnel, and the communication interface 602 is used for communication between the robot and the positioning device. The positioning device may also include a memory 603 and a bus 604, and the memory 603 is used to store the point cloud information in the tunnel.

[0120] Among them, the memory 603 can be a memory in the positioning device of the robot, etc. The memory may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a read-only memory, a flash memory, a hard disk or a solid-state drive; the memory may also include a combination of the above types of memory.

[0121] The processor 601 may be a processor that implements or executes various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of the present application. The processor may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array, or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The processor may be a processor that implements or executes various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of the present application. The processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.

[0122] The bus 604 may be an Extended Industry Standard Architecture (EISA) bus, etc. The bus 604 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0123] Through the description of the above implementation methods, technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and unit described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0124] An embodiment of the present application provides a computer program product comprising instructions. When the computer program product is run on a computer, the computer is enabled to execute the robot positioning method in the above method embodiment.

[0125] An embodiment of the present application also provides a computer-readable storage medium, in which instructions are stored. When the instructions are executed on a computer, the computer executes the robot positioning method in the method flow shown in the above method embodiment.

[0126] Among them, the computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a register, a hard disk, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above, or any other form of computer-readable storage medium known in the art. An exemplary storage medium is coupled to a processor so that the processor can read products from the storage medium and can write products to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an application-specific integrated circuit (ASIC). In the embodiments of the present application, a computer-readable storage medium may be any tangible medium that contains or stores a program, which may be used by or in conjunction with an instruction execution system, apparatus, or device.

[0127] An embodiment of the present invention provides a computer program product including instructions, which, when executed on a computer, enables the computer to execute the robot positioning method of the embodiment of the present application.

[0128] Since the robot positioning device, computer-readable storage medium, and computer program product in the embodiments of the present invention can be applied to the above method, the technical effects that can be obtained can also refer to the above method embodiments, and the embodiments of the present invention will not be repeated here.

[0129] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0130] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0131] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0132] The above are only specific implementations of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A robot positioning method, characterized in that: The method comprises: Detect the target area where the robot is located in the tunnel at the current time; Determine the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the tunnel and multiple angular velocities of the robot during the movement; the posture represents the steering angle of the robot's head; The position of the robot at the current time is determined according to the target posture of the robot at the current time; the position of the robot at the current time is located within the target area.

2. The method according to claim 1, characterized in that Determining the position of the robot at the current time according to the target posture of the robot at the current time includes: Acquire point cloud information of the target area and point cloud information collected by the robot at the target posture at the current time; the point cloud information is collected by laser radar; Based on the point cloud information collected by the robot in the target posture and the point cloud information of the target area, the position of the robot at the current time is determined.

3. The method according to claim 1 or 2, characterized in that: The determining the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the pipe gallery and multiple angular velocities of the robot during the movement includes: The target posture of the robot at the current time is determined according to the initial posture of the robot, multiple angular velocities of the robot during the movement, and the movement duration corresponding to each angular velocity.

4. The method according to claim 3, characterized in that The target posture of the robot at the current time is the sum of the initial posture of the robot and the moving angle value; the moving angle value is the sum of the product of each angular velocity and the corresponding moving duration.

5. The method according to claim 1, characterized in that: A plurality of positioning devices are arranged in the pipe gallery, and the step of determining the target area where the robot is located in the pipe gallery at the current time includes: Determine the distance between the robot and a target positioning device; the target positioning device represents the positioning device closest to the robot; Determine the target area where the robot is located in the pipe gallery at the current time according to the distance between the robot and the target positioning device; The target area refers to an area with the target positioning device as the center and the distance between the robot and the target positioning device as the radius.

6. The method according to claim 5, characterized in that Determining the distance between the robot and the target positioning device includes: Obtaining the duration of the robot sending a signal to the target positioning device and receiving the signal at the current time; The distance between the robot and the target positioning device is determined according to the transmission speed of the signal and the duration.

7. The method according to claim 5 or 6, characterized in that: The distance between the robot and the target positioning device is half of the product of the transmission speed of the signal and the duration.

8. A robot positioning device, characterized in that: The device comprises: A detection unit is used to determine the target area where the robot is located in the tunnel at the current time; The determination unit is further used to determine the target posture of the robot at the current time based on the initial posture of the robot when it starts to move in the pipe gallery and multiple angular velocities of the robot during the movement; the posture represents the head turning angle of the robot; The determination unit is further used to determine the position of the robot at the current time according to the target posture of the robot at the current time; the position of the robot at the current time is within the target area.

9. An electronic device, characterized in that: The electronic device comprises: processor; a memory configured to store instructions executable by the processor; Wherein, the processor is configured to execute the instructions to implement the robot positioning method as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that: Instructions are stored on the computer-readable storage medium. When the instructions in the computer-readable storage medium are executed by an electronic device, the electronic device is enabled to execute the robot positioning method as described in any one of claims 1 to 7.

11. A computer program product, characterized in that The computer program product includes computer instructions; when part or all of the computer instructions are run on a computer, the method according to any one of claims 1 to 7 is executed.