Robot positioning method, positioning device, storage medium and computer program product
Through the multi-sensor fusion positioning method, combined with QR code recognition, WiFi signal ranging and motion sensing sensor information, the state estimation is performed using the Kalman filtering algorithm, which solves the problem of low positioning accuracy of robots in complex terrain, and achieves high-precision positioning and cost reduction.
Patent Information
- Application Number
- CN202510360748.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-25
- Publication Date
- 2025-04-25
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In complex terrain with many obstacles, it is difficult for the prior art to achieve high-precision positioning of robots, especially in the fusion of multi-sensor information.
By combining QR code recognition, WiFi signal ranging and motion sensing sensor information, a multi-sensor fusion positioning method is used to perform state estimation using Kalman filtering algorithm to improve positioning accuracy and stability.
It realizes high-precision positioning of robots in complex terrain, reduces the noise and error of measurement positioning of a single sensor, reduces the frequency of use of WiFi base stations, and reduces the cost of positioning modules.
Smart Images

Figure CN119879942A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for positioning a robot in a complex application scenario, and in particular to a robot positioning method, a positioning device, a storage medium and a computer program product. Background Art
[0002] Accurate positioning of robots is an important issue in autonomous unmanned systems, which involves how to obtain accurate position information by relying on the fusion of multiple sensors in complex environments. For example, in the application scenario of a rail-mounted robot in a parking lot, in the scenario of automatic charging, the rail-mounted robot may be dragged by external forces and move out of the parking space. At this time, the precise position of the robot needs to be calculated so that the robot can efficiently execute subsequent instructions.
[0003] In order to achieve accurate positioning of the rail-mounted robot in the complex terrain of the parking lot, a WiFi signal receiver is generally installed on the robot. The commonly used positioning solution is to communicate with multiple base stations (at least three) through the receiver, measure the distance between the two based on the communication time or signal strength, and then complete the positioning estimation.
[0004] The existing positioning method uses the signal strength of multiple base stations, and processes the distance of multiple known site locations through the trilateral positioning method to achieve positioning (for example, an indoor WiFi positioning method and system disclosed in Chinese invention patent application CN117376829A). However, in practical applications, multiple base stations and array antennas greatly increase the cost of high-precision positioning, and the arrangement requirements of array antennas are high. In indoor environments with many obstacles, due to the existence of non-line-of-sight errors and multipath propagation, signal distortion and observation errors are easily generated, thereby affecting the positioning effect. The existing method of using QR codes for robot positioning, such as Chinese invention patent CN111639505B, uses the unique ID information of the QR code set at the preset position indoors and the preset posture information of the robot corresponding to the ID information to adjust the posture of the robot at the preset position indoors according to the preset posture information to achieve robot positioning. However, the current state of the robot is uncertain and may change relative to the preset position, so the positioning result will be biased.
[0005] Therefore, how to use multiple sensors to achieve fusion positioning of robots in complex terrain with many obstacles, so that the robots can perform tasks efficiently and improve data support, is a problem that needs to be solved at present. Summary of the invention
[0006] In view of the above problems in the prior art, the present invention provides a method for realizing precise positioning of a robot in complex terrain by fusing information from multiple sensors such as two-dimensional code recognition, WiFi, and motion sensing devices.
[0007] In order to achieve the above object, according to a first aspect of the present invention, a positioning method of a robot is provided, wherein the robot is capable of communicating with multiple base stations, and the positioning method comprises the following steps: an initial position information acquisition step, collecting a QR code pre-set at a target position, and acquiring the target position information contained in the QR code as the initial position information indicating the initial position of the robot; A motion state information acquisition step, acquiring the motion state information of the robot; a second position information acquisition step of acquiring second position information indicating a relative position of the robot and each of the plurality of base stations according to a distance between the robot and each of the plurality of base stations; The current position information calculation step is to calculate the current position information representing the current position of the robot based on the acquired initial position information, the motion state information and the second position information.
[0008] As a preferred solution, according to the robot positioning method of the present invention, in the initial position information acquisition step, an image acquisition device provided on the robot is used to capture images of one or more two-dimensional codes pre-set at the corresponding target positions.
[0009] As a preferred solution, according to the robot positioning method of the present invention, the initial position information acquisition step includes: Acquire a two-dimensional code image corresponding to the two-dimensional code by the image acquisition device; Identify the coordinates of the positioning block included in the two-dimensional code in the two-dimensional code image; Calculate the relative position relationship between the center of the two-dimensional code and the image acquisition device according to the coordinates of the positioning block in the two-dimensional code image and the camera intrinsic parameter matrix of the image acquisition device; The initial position information is calculated based on the coordinates of the center of the two-dimensional code and the relative position relationship.
[0010] As a preferred solution, according to the robot positioning method of the present invention, in the motion state information acquisition step, a motion sensing device provided on the moving part of the robot is used to collect the motion state information. The motion state information includes at least one of the moving speed information, displacement information and moving direction information of the robot.
[0011] As a preferred solution, according to the robot positioning method of the present invention, the second position information acquisition step includes: The step of obtaining the measured distance is to calculate the measured distance representing the relative position between the robot and each of the plurality of base stations according to the signal energy intensity received by the robot. The calculation formula of the measured distance is expressed as: In the above formula (1), is the distance from the base station to the receiver of the robot; is the signal attenuation index, with a value ranging from 2 to 4; is the reference distance between the receiver of the robot and the base station; is the distance from the base station Signal strength at is a Gaussian random noise variable with mean 0; The distance from the base station Signal strength at The second location information calculation step is to calculate the second location information according to the measured distance and the coordinates of each base station in the plurality of base stations.
[0012] As a preferred solution, according to the robot positioning method of the present invention, in the second position information calculation step, the number of the base stations is 3. And the second position information is calculated according to the following formula: In the above formula (2), , and Respectively represent the distances from the robot to the three base stations; Respectively represent the coordinates of the three base stations; The coordinates of the receiver of the robot are represented as the second position information.
[0013] As a preferred solution, according to the robot positioning method of the present invention, the second position information acquisition step further includes: The step of obtaining the measured distance is to calculate the measured distance representing the relative position between the robot and each of the plurality of base stations according to the signal energy intensity received by the robot. The calculation formula of the measured distance is expressed as: In the above formula (1), is the distance from the base station to the receiver of the robot; is the signal attenuation index, with a value ranging from 2 to 4; is the reference distance between the receiver of the robot and the base station; is the distance from the base station Signal strength at is a Gaussian random noise variable with mean 0; The distance from the base station Signal strength at Theoretical distance calculation step, calculating the theoretical distance between the robot and each base station by the following formula: In the above formula (3), represents the theoretical distance; represents the second position information to be solved; represents the coordinates of the base station, where n represents the number of the base stations; The second position information calculation step is to calculate the second position information according to the theoretical distance and the measured distance by using the following objective optimization function: In the above formula (4), indicating the second position information; represents the theoretical distance; represents the measured distance; The second position information optimization step is to perform secondary optimization on the second position information by the following formula: In the above formula (5), Represents the second position information after secondary optimization.
[0014] As a preferred solution, according to the robot positioning method of the present invention, the current position information calculation step includes: A state equation construction step, constructing the following state equation of the robot including the state estimation of the robot and the observation quantity of the robot; in, In the above formula (6), represents the system noise; Indicates the motion state information; indicating the second position information; A prediction error covariance calculation step, taking the initial position information as an initial state estimate, and taking the motion state information and the second position information as the observed quantities, substituting them into the state equation to calculate the prediction error covariance; A Kalman gain calculation step, calculating the Kalman gain according to the prediction error covariance; The step of obtaining the current position information is to substitute the Kalman gain into a state estimation formula, and to obtain a state estimation result as the current position information by adjusting the weight of the observation residual in the state estimation formula.
[0015] According to a second aspect of the present invention, there is provided a positioning device for a robot, wherein the robot is capable of communicating with a plurality of base stations, and wherein the positioning device comprises: The first positioning unit is configured to collect a QR code pre-set at a target position, and obtain the target position information contained in the QR code as initial position information indicating an initial position of the robot; an acquisition unit, configured to acquire motion state information of the robot; a second positioning unit configured to acquire second position information indicating a relative position of the robot and each of the plurality of base stations according to a distance between the robot and each of the plurality of base stations; The calculation unit is configured to calculate the current position information indicating the current position of the robot according to the acquired initial position information, the motion state information and the second position information.
[0016] According to a third aspect of the present invention, there is provided a non-transitory storage medium storing a computer program, which, when executed by a processor, can implement the robot positioning method according to the first aspect of the present invention.
[0017] According to a fourth aspect of the present invention, a computer program product is provided, which comprises computer instructions, and when the computer instructions are executed by a processor, the robot positioning method according to the first aspect of the present invention can be implemented.
[0018] The beneficial effects of the present invention are as follows: the positioning method of the present invention provides initial position information for fusion positioning by identifying the two-dimensional code, and fuses the motion state information and ranging positioning information respectively collected by different sensors. Therefore, the present invention combines the two-dimensional code recognition, motion perception and base station ranging multiple sensing information for fusion positioning, realizes complementary advantages, improves the accuracy and stability of positioning, reduces the noise and error of single sensor measurement positioning, can realize high-precision positioning of the robot indoors, and at the same time, can reduce the use of WiFi base stations and reduce the cost of the positioning module. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 A flow chart of a robot positioning method according to the present invention is illustrated.
[0020] Figure 2The flowchart of the initial position information acquisition step in the robot positioning method according to the present invention is illustrated.
[0021] Figure 3 The flowchart of the second position information acquisition step in the robot positioning method according to the present invention is illustrated.
[0022] Figure 4 The schematic diagram of wireless signal strength ranging positioning used in the robot positioning method according to the present invention is illustrated.
[0023] Figure 5 The flowchart of the current position information calculation step in the robot positioning method according to the present invention is illustrated.
[0024] Figure 6 A schematic diagram illustrating an exemplary structure of a positioning device of a robot according to the present invention. DETAILED DESCRIPTION
[0025] Exemplary embodiments of the present invention are described in detail below with reference to the accompanying drawings. It should be noted that the relative arrangement of components, numerical expressions and numerical values described in these embodiments do not limit the scope of the present invention unless otherwise specifically stated.
[0026] The robot positioning method of the present invention can be implemented by a processor in the robot positioning system executing a computer program stored in a memory in the robot positioning system. As an alternative, the robot positioning system can also communicate with a server, and the processor in the server executes a computer program stored in the server or the cloud and feeds back the program execution results to the robot positioning system in real time.
[0027] In the present invention, the term "unit" may refer to a software environment, a hardware environment, or a combination of software and hardware environments. In a software environment, the term "unit" refers to functionality, an application, a software module, a function, a routine, a set of instructions or a program that can be executed by a programmable processor (such as a microprocessor, a central processing unit (CPU) or a specially designed programmable device) or a controller. The memory contains instructions or programs, and when the CPU executes the instructions or programs, the CPU performs operations corresponding to the unit or function. In a hardware environment, the term "unit" refers to a hardware element, circuit, component, physical structure, system, module or subsystem. According to a specific embodiment, the term "unit" may include mechanical, optical or electrical components, or any combination thereof. The term "unit" may include active (such as transistors) or passive (such as capacitors) components. The term "unit" may include a semiconductor device having a substrate and other material layers with various conductive concentrations. It may include a CPU or a programmable processor that can execute a program stored in a memory to perform a specified function. The term "unit" may include a logic element (such as AND, OR) implemented by a transistor circuit or any other switching circuit. In the combination of software and hardware environment, the term "unit" or "circuit" refers to any combination of software and hardware environment as described above. In addition, the term "element", "component", "part" or "device" may also refer to a "circuit" integrated or not integrated with packaging materials.
[0028] The following first describes the robot positioning method of the present invention in conjunction with the accompanying drawings.
[0029] [Robot positioning method of the present invention] In view of the technical problem that single sensor system positioning in the prior art is prone to errors, the present invention provides a robot positioning method, in which the robot can communicate with multiple base stations, such as Figure 1 As shown, the positioning method includes an initial position information acquisition step S100, a motion state information acquisition step S200, a second position information acquisition step S300 and a current position information calculation step S400. The steps in the robot positioning method of the present invention are described in detail below.
[0030] First, in the initial position information acquisition step S100, a two-dimensional code pre-set at a target position is collected, and the target position information contained in the two-dimensional code is acquired as the initial position information indicating the initial position of the robot.
[0031] Specifically, the target position can be the charging base station of the robot. A QR code is pasted at each charging base station, and the position of the pasted QR code in the world coordinate system is measured. During the measurement, the center of the QR code coincides with the measurement position. Step S100 uses a visual positioning system. The robot can scan the QR code at the target position through an image acquisition device to obtain the coordinates of the target position, and realize the positioning of the robot in the world coordinate system according to the relative position between the image acquisition device and the QR code, thereby providing the initial state of the fusion positioning algorithm, that is, obtaining the initial position information required for fusion positioning by identifying the QR code. Determining the initial position of the robot is very important for subsequent fusion positioning. Without correct initialization, subsequent fusion positioning may have cumulative errors.
[0032] The motion state information acquisition step S200 is used to acquire the motion state information of the robot.
[0033] The robot's motion state information is information that reflects the robot's real-time motion state changes, and can be obtained through a motion sensing device installed on the robot body.
[0034] In the second position information acquisition step S300, second position information indicating the relative position of the robot and each of the multiple base stations is acquired according to the distance between the robot and each of the multiple base stations.
[0035] Specifically, the RSSI (Received Signal Strength Indicator) positioning method is used in step S300. RSSI is a measurement used to represent the received signal strength in wireless communication technology. In the field of wireless communication, in communications such as Wi-Fi, Bluetooth, Zigbee, etc., RSSI is often used to estimate the distance between two devices. The basic principle is that the signal strength decreases with the increase of distance. Therefore, the relative distance of the device can be inferred by measuring the signal strength. In this embodiment, the coordinates of the base station are known. According to the coordinates of the base station and the wireless signal strength between the robot's receiver and the base station, the position of the robot's receiver, that is, the second position information, can be calculated.
[0036] In the current position information calculation step S400, the current position information indicating the current position of the robot is calculated based on the initial position information obtained in step S100, the motion state information obtained in step S200, and the second position information obtained in step S300.
[0037] After obtaining the initial position information, motion state information and second position information through the above steps, the information collected by different sensor systems can be fused, and the fusion positioning can be performed by combining multiple sensing information such as QR code recognition, motion perception and base station ranging, so as to achieve complementary advantages, improve the accuracy and stability of positioning, reduce the noise and error of single sensor measurement and positioning, and realize high-precision positioning of the robot in a predetermined space (such as indoors). At the same time, the use of WiFi base stations can be reduced, and the cost of the positioning module can be reduced.
[0038] As an optional implementation, in the initial position information acquisition step S100, an image acquisition device disposed on the robot is used to acquire images of one or more two-dimensional codes pre-set at corresponding target positions.
[0039] Specifically, a QR code can be pasted at each charging base station, and the position of the QR code pasted in the world coordinate system is measured, and it is noted that the center of the QR code should coincide with the measurement point. A QR code is a matrix barcode that can store a large amount of data. It stores data by encoding information in the arrangement of blocks. Each block represents a binary number, which can be decoded into various types of data such as text, images, and audio. Before using the QR code for positioning, it is necessary to accurately measure the length of each block in the QR code and record it to facilitate subsequent identification and positioning. The image acquisition device is preferably arranged on the side of the robot body facing the charging base station. The image acquisition device can be an electronic device with an image acquisition function such as a camera or a mobile phone. In this embodiment, the QR code image is captured by the camera, and the position of the positioning block of the QR code in the QR code image is identified by OpenCV, and the coordinates of the positioning block of the QR code in the image are read. The positioning block is a block used in the QR code to define the position of the QR code, which can be, for example, a position detection pattern located on the three corners of the QR code. The three positioning blocks can determine a face, thereby ensuring that the recognition device can quickly and accurately locate the position and direction of the QR code.
[0040] Refer to the following Figure 2 The initial position information acquisition step S100 in the positioning method of the present invention is described in detail.
[0041] like Figure 2 As shown, the initial position information acquisition step S100 includes: Step S110: acquiring a two-dimensional code image corresponding to the two-dimensional code by an image acquisition device.
[0042] Step S120, identifying the coordinates of the positioning block included in the two-dimensional code in the two-dimensional code image.
[0043] Step S130, calculating the relative position relationship between the center of the two-dimensional code and the image acquisition device according to the coordinates of the positioning block in the two-dimensional code image and the camera intrinsic parameter matrix of the image acquisition device.
[0044] Step S140, calculating and obtaining the initial position information according to the coordinates of the center of the two-dimensional code and the relative position and posture relationship.
[0045] Specifically, in this embodiment, the world coordinates of the QR code are obtained by scanning the QR code, and the position of the robot in the world coordinate system is calculated by combining the world coordinates of the QR code and the relative position of the camera and the QR code. In the above calculation, the coordinate system conversion is required, that is, the local coordinates of the camera of the image acquisition device are converted to the global world coordinates, and then the initial position information of the robot is determined.
[0046] As an optional implementation, in the motion state information acquisition step S200, a motion sensing device provided on a moving part of the robot is used to collect the motion state information, wherein the motion state information includes at least one of the moving speed information, displacement information and moving direction information of the robot.
[0047] Since the robot's motion state is uncertain, it may be in different positions at different times, and the position of the QR code is fixed, relying solely on the QR code for positioning may result in poor positioning results. Therefore, this method can obtain the robot's motion state information in real time during positioning, and combine the motion state information to determine the robot's motion state changes.
[0048] Specifically, the motion sensing device in this embodiment can be one or more sensors such as a wheel speed meter, an inertial measurement unit, a laser radar, an ultrasonic sensor, etc. The present invention does not limit the type of the motion sensing device. In this embodiment, a wheel speed meter is used as a motion sensing device and installed on the wheels of the robot. The translational speed of the robot can be calculated through a kinematic model, and the motion state information collected by the internal sensor is integrated with the WiFi signal positioning information for positioning.
[0049] Refer to the following Figure 3 The second location information acquisition step S300 in the positioning method of the present invention is described in detail.
[0050] As an optional implementation, Figure 3 As shown, the second location information acquisition step S300 includes: In the step S310 of obtaining the measured distance, the measured distance representing the relative position between the robot and each of the plurality of base stations is calculated according to the signal energy intensity received by the robot. The calculation formula of the measured distance is expressed as follows: In the above formula (1), is the distance from the base station to the robot's receiver; is the signal attenuation index, ranging from 2 to 4; is the reference distance between the robot’s receiver and the base station; The distance from the base station Signal strength at is a Gaussian random noise variable with mean 0; The distance from the base station The signal strength at the
[0051] In the second location information calculation step S320, the second location information is calculated based on the measured distance obtained in step S310 and the coordinates of each base station in the multiple base stations.
[0052] Figure 4 The principle diagram of wireless signal strength ranging positioning used in the robot positioning method according to the present invention is illustrated. Specifically, Figure 4 As shown, the ranging system includes a receiver 100 of the robot, a first base station 201, a second base station 202, and a third base station 203. The distance between the receiver of the robot and each base station can be measured based on the wireless signal strength between the receiver 100 and each base station. Based on the ranging results, a circle with a radius of 1 is generated with the location of each base station as the center. By drawing the arcs of (the distances between each base station and the robot's receiver) in the search space and finding the intersection of the arcs at multiple base stations, the position of the robot's receiver can be finally determined.
[0053] As an optional implementation, in the second location information calculation step S300, the number of base stations is 3. And the second position information is calculated according to the following formula (2): In the above formula (2), , and Respectively represent the distances from the robot to the three base stations; Respectively represent the coordinates of the three base stations; Represents the second position information to be solved, that is, the coordinates of the robot's receiver.
[0054] Specifically, the coordinates of each base station are known. After measuring the distance between the robot's receiver and each base station, the coordinates of the robot's receiver, that is, the second position information, can be obtained by solving the above equations.
[0055] As an optional implementation, the second location information acquisition step S300 includes a theoretical distance calculation step, a second location information calculation step, and a second location information optimization step. Each step is described in detail below.
[0056] The step of obtaining the measured distance is to calculate the measured distance representing the relative position between the robot and each of the multiple base stations according to the signal energy intensity received by the robot. The calculation formula of the measured distance is expressed as follows: In the above formula (1), is the distance from the base station to the robot's receiver; is the signal attenuation index, with a value ranging from 2 to 4; is the reference distance between the robot’s receiver and the base station; For distance Signal strength at is a Gaussian random noise variable with mean 0; For distance The signal strength at the
[0057] Theoretical distance calculation steps: Calculate the theoretical distance between the robot and each base station using the following formula: In the above formula (3), represents the theoretical distance; represents the second position information to be solved; represents the coordinates of the base station, where n represents the number of base stations.
[0058] The second position information calculation step is to calculate the second position information according to the theoretical distance and the measured distance through the following objective optimization function: In the above formula (4), indicating second position information; represents the theoretical distance; Indicates the measured distance; The second position information optimization step is to perform secondary optimization on the second position information by the following formula: In the above formula (5), Represents the second position information after secondary optimization.
[0059] When performing ranging and positioning based on wireless signal strength, in order to solve the impact of ranging errors on positioning, in this optional implementation, the optimal square method is usually used to solve the coordinates of the receiver, that is, the second position information, thereby reducing the ranging error and improving the accuracy of positioning.
[0060] Below, refer to Figure 5 The current position information calculation step S400 in the positioning method of the present invention is described in detail.
[0061] As a preferred embodiment, Figure 5 As shown, the current position information calculation step S400 includes a state equation construction step S410, a prediction error covariance calculation step S420, a Kalman gain calculation step S430 and a current position information acquisition step S440. Each step is described in detail below.
[0062] The state equation construction step S410 constructs the following state equation of the robot including the state estimation of the robot and the observation of the robot: in, in, represents the state vector; represents the observation vector; Represents the state transfer matrix, which is used to predict the state at the next moment; represents the observation matrix; represents the noise, where , ; Represents the robot's translational velocity, that is, the motion state information.
[0063] The initial state is determined by the initial position information and the initial motion state information. Need to obey Gaussian distribution: in, Indicates the initial state; is the initial covariance matrix; Represents the mean of the Gaussian distribution.
[0064] In this embodiment, the state equation is divided into two parts: state prediction and observation. is the state estimator, describing the state vector Over time evolution; is the observation quantity, and the observation residual is calculated based on the observation quantity and the state estimation quantity. Kalman filtering is used to calculate the given system output observation sequence To make the optimal estimate, the state estimate Reaching the best estimate The core idea of Kalman filtering is to gradually reduce the uncertainty of state estimation by fusing dynamic models and observation data.
[0065] In the prediction error covariance calculation step S420, the initial position information is used as the initial state estimation, and the motion state information and the second position information are used as the observations, and the prediction error covariance is calculated by substituting them into the state equation: In the above formula (7), Indicates The forecast error covariance at time instant; represents the updated forecast error covariance; represents the Kalman gain; represents the identity matrix; represents the variance of white noise, which is determined by the specific robot system; is the initial covariance matrix; represents the state transfer matrix; represents the observation matrix; Indicates time.
[0066] The Kalman gain calculation step S430 calculates the Kalman gain according to the prediction error covariance. The Kalman gain satisfies the following conditions: In the above formula (8), represents the Kalman gain; , represents the variance of white noise; is the initial covariance matrix; represents the state transfer matrix; represents the observation matrix; Indicates the moment; represents the initial Kalman gain.
[0067] The current position information acquisition step S440 is to set the Kalman gain Substitute into the state estimation formula, and obtain the state estimation result as the current position information by adjusting the weight of the observation residual in the state estimation formula. Among them, the state estimation formula is expressed as: In the above formula (9), Represents the state estimation result, that is, the optimal state estimation value; represents the state prediction value based on the model; represents the actual observed value; Represents the observation residual, that is, the difference between the actual observation value and the predicted observation value; represents the Kalman gain; represents the state transfer matrix; represents the observation matrix; Indicates time.
[0068] The optimal state estimation result As the current location information.
[0069] Kalman filtering is an algorithm for estimating the state of a linear dynamic system. It combines the prediction of the system with the actual observation to obtain the optimal state estimate in the presence of noise. It is usually divided into two main steps: predicting the future state and then updating the state estimate based on the observed quantity (such as the collected motion state information and WIFI signal positioning information). Therefore, the positioning method of the present invention can realize the fusion of multiple perception information, thereby reducing the positioning error.
[0070] In summary, the positioning method of the present invention can realize the precise positioning of multi-sensor fusion of robots. First, the camera is used to identify the QR code, and the geometric relationship is used for positioning to provide initial position information for fusion positioning; the ranging process is performed according to the WiFi signal between the robot receiver and multiple base stations, and the relative position of the robot and the base station is calculated in combination with the spatial geometric position relationship; finally, the motion state information of the robot is collected, an extended Kalman filter is constructed, and the observation residuals of the wireless signal ranging system and the motion state information acquisition system are compared to construct a correction factor, and the Kalman gain is adjusted using the prediction error covariance, so that when calculating the state estimation, the observation residual is weighted corrected by the Kalman gain, thereby realizing the optimal state estimation of the adaptive EKF (Extended Kalman Filter) of a single base station. The present invention uses the QR code positioning information as the initial state, and uses the motion state information of the robot and the second position information obtained by the wireless signal ranging as the observation quantity of the Kalman filter, and fuses multiple perception information for positioning, thereby reducing the investment in base stations and realizing high-precision positioning of indoor robots.
[0071] In addition, the present invention also provides a positioning device for a robot.
[0072] [Robot positioning device of the present invention] like Figure 6 As shown, the robot positioning device 600 of the present invention includes a first positioning unit 601, an acquisition unit 602, a second positioning unit 603 and a calculation unit 604. Each unit is described in detail below.
[0073] The first positioning unit 601 is configured to collect a pre-set two-dimensional code at a target position, and obtain the target position information contained in the two-dimensional code as initial position information indicating an initial position of the robot.
[0074] Specifically, the target position can be the charging base station of the robot. A QR code is pasted at each charging base station, and the position of the QR code pasted in the world coordinate system is measured, and the center of the QR code coincides with the measurement position. The first positioning unit 601 adopts a visual positioning system. The robot can scan the QR code at the target position through an image acquisition device to obtain the coordinates of the target position, and realize the positioning of the robot in the world coordinate system according to the relative position between the image acquisition device and the QR code, thereby improving the initial state of the fusion positioning algorithm, that is, through the initial position information. Determining the initial position of the robot is very important for subsequent fusion positioning. Without correct initialization, subsequent fusion positioning may have cumulative errors.
[0075] The acquisition unit 602 is configured to acquire the motion state information of the robot.
[0076] Specifically, since the robot's motion state is uncertain, it may be in different positions at different times, and the position of the QR code is fixed, relying solely on the QR code for positioning may result in poor positioning results. Therefore, in this embodiment, the acquisition unit 602 can acquire the robot's motion state information in real time during positioning, and judge the robot's motion state change in combination with the motion state information.
[0077] The second positioning unit 603 is configured to obtain second position information indicating the relative position of the robot and each of the multiple base stations according to the distance between the robot and each of the multiple base stations.
[0078] The second positioning unit 603 adopts the RSSI positioning method. RSSI is a measurement value used to represent the received signal strength in a wireless communication technology. In the field of wireless communications, such as Wi-Fi, Bluetooth, Zigbee, etc., RSSI is often used to estimate the distance between two devices. The basic principle is that the signal strength decreases with the increase of distance, so the relative distance of the device can be inferred by measuring the signal strength. In this embodiment, the coordinates of the base station are known. According to the coordinates of the base station and the wireless signal strength between the robot receiver and the base station, the position of the robot's receiver, that is, the second position information, can be calculated.
[0079] The calculation unit 604 is configured to calculate the current position information of the robot according to the acquired initial position information, motion state information and second position information.
[0080] After obtaining the initial position information, motion state information and second position information, the present invention can fuse the information collected by different sensor systems, and combine the two-dimensional code recognition, motion perception and base station ranging multiple perception information for fusion positioning, thereby achieving complementary advantages, improving the accuracy and stability of positioning, reducing the noise and error of single sensor measurement positioning, and realizing high-precision positioning of the robot indoors. At the same time, the use of WiFi base stations can be reduced, and the cost of the positioning module can be reduced.
[0081] [Other embodiments] The embodiments of the present invention may also be implemented by reading out and executing computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be more completely referred to as a "non-transitory computer-readable storage medium") to perform one or more functions in the above-mentioned embodiments, and / or a computer of a system or device including one or more circuits (e.g., an application-specific integrated circuit (ASIC)) for performing one or more functions in the above-mentioned embodiments, and the embodiments of the present invention may be implemented by, for example, reading out and executing the computer executable instructions from the storage medium by the computer of the system or device to perform one or more functions in the above-mentioned embodiments, and / or controlling the one or more circuits to perform one or more functions in the above-mentioned embodiments. The computer may include one or more processors (e.g., a central processing unit (CPU), a microprocessing unit (MPU)), and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random access memory (RAM), a read-only memory (ROM), a memory of a distributed computing system, an optical disk (such as a compact disc (CD), a digital versatile disc (DVD), or a Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
[0082] Although the present invention has been described above with reference to exemplary embodiments, the above embodiments are only for illustrating the technical concept and features of the present invention and cannot be used to limit the protection scope of the present invention. Any equivalent variations or modifications made according to the spirit and essence of the present invention should be included in the protection scope of the present invention.
Claims
1. A positioning method for a robot, wherein the robot is capable of communicating with multiple base stations, characterized in that: The positioning method comprises the following steps: Initial position information acquisition step (S100), collecting a QR code pre-set at a target position, and acquiring the target position information contained in the QR code as initial position information indicating the initial position of the robot; A motion state information acquisition step (S200) of acquiring the motion state information of the robot; a second position information acquisition step (S300), acquiring second position information indicating a relative position between the robot and each of the plurality of base stations according to a distance between the robot and each of the plurality of base stations; The current position information calculation step (S400) is to calculate the current position information indicating the current position of the robot according to the acquired initial position information, the motion state information and the second position information.
2. The robot positioning method according to claim 1, characterized in that: In the initial position information acquisition step, an image acquisition device disposed on the robot is used to acquire images of one or more two-dimensional codes pre-set at the corresponding target positions.
3. The robot positioning method according to claim 2, characterized in that: The initial position information acquisition step comprises: Acquire a two-dimensional code image corresponding to the two-dimensional code by the image acquisition device (S110); identifying the coordinates of the positioning block included in the two-dimensional code in the two-dimensional code image (S120); Calculating a relative position relationship between the center of the two-dimensional code and the image acquisition device according to the coordinates of the positioning block in the two-dimensional code image and the camera intrinsic parameter matrix of the image acquisition device (S130); The initial position information is calculated based on the coordinates of the center of the two-dimensional code and the relative position and posture relationship (S140).
4. The robot positioning method according to claim 1, characterized in that: In the motion state information acquisition step, the motion state information is collected using a motion sensing device provided on a moving part of the robot. The motion state information includes at least one of the moving speed information, displacement information and moving direction information of the robot.
5. The robot positioning method according to claim 1, characterized in that: The second location information acquisition step includes: The step of obtaining the measured distance (S310) is to calculate the measured distance representing the relative position between the robot and each of the plurality of base stations according to the signal energy intensity received by the robot. The calculation formula of the measured distance is expressed as: In the above formula (1), is the distance from the base station to the receiver of the robot; is the signal attenuation index, with a value ranging from 2 to 4; is the reference distance between the receiver of the robot and the base station; For distance Signal strength at is a Gaussian random noise variable with mean 0; For distance Signal strength at The second location information calculation step (S320) is to calculate the second location information according to the measured distance and the coordinates of each base station in the plurality of base stations.
6. The robot positioning method according to claim 5, characterized in that: In the second location information calculation step, the number of the base stations is 3, And the second position information is calculated according to the following formula: In the above formula (2), , and Respectively represent the distances from the robot to the three base stations; Respectively represent the coordinates of the three base stations; The coordinates of the receiver of the robot are represented as the second position information.
7. The robot positioning method according to claim 1, characterized in that: The second location information acquisition step includes: The step of obtaining the measured distance is to calculate the measured distance representing the relative position between the robot and each of the plurality of base stations according to the signal energy intensity received by the robot. The calculation formula of the measured distance is expressed as: In the above formula (1), is the distance from the base station to the receiver of the robot; is the signal attenuation index, with a value ranging from 2 to 4; is the reference distance between the receiver of the robot and the base station; For distance Signal strength at is a Gaussian random noise variable with mean 0; For distance Signal strength at Theoretical distance calculation step, calculating the theoretical distance between the robot and each base station by the following formula: In the above formula (3), represents the theoretical distance; represents the second position information to be solved; represents the coordinates of the base station, where n represents the number of the base stations; The second position information calculation step is to calculate the second position information according to the theoretical distance and the measured distance by using the following objective optimization function: In the above formula (4), indicating the second position information; represents the theoretical distance; represents the measured distance; The second position information optimization step is to perform secondary optimization on the second position information by the following formula: In the above formula (5), Represents the second position information after secondary optimization.
8. The robot positioning method according to claim 1, characterized in that: The current position information calculation step comprises: The state equation construction step (S410) constructs the following state equation of the robot including the state estimation of the robot and the observation of the robot: in, In the above formula (6), represents the system noise; Indicates the motion state information; indicating the second position information; A prediction error covariance calculation step (S420), using the initial position information as an initial state estimation, and substituting the motion state information and the second position information as the observation quantities into the state equation to calculate the prediction error covariance; A Kalman gain calculation step (S430), calculating the Kalman gain according to the prediction error covariance; The current position information obtaining step (S440) is to substitute the Kalman gain into a state estimation formula, and obtain a state estimation result as the current position information by adjusting the weight of the observation residual in the state estimation formula.
9. A positioning device for a robot, the robot being capable of communicating with a plurality of base stations, characterized in that: The positioning device comprises: The first positioning unit is configured to collect a QR code pre-set at a target position, and obtain the target position information contained in the QR code as initial position information indicating an initial position of the robot; an acquisition unit, configured to acquire motion state information of the robot; a second positioning unit configured to acquire second position information indicating a relative position of the robot and each of the plurality of base stations according to a distance between the robot and each of the plurality of base stations; The calculation unit is configured to calculate the current position information indicating the current position of the robot according to the acquired initial position information, the motion state information and the second position information.
10. A non-transitory storage medium storing a computer program, wherein the computer program, when executed by a processor, can implement the robot positioning method according to any one of claims 1 to 8.
11. A computer program product, comprising computer instructions, which can implement the robot positioning method according to any one of claims 1 to 8 when executed by a processor.
Citation Information
Patent Citations
A hybrid positioning and navigation system and method for indoor inspection robots
CN111639505B
Indoor wifi positioning method and system
CN117376829A
Indoor mobile robot positioning system and method based on two-dimensional code
CN102735235A
Method for realizing middle location positioning by using Bluetooth beacons
CN106199515A
Two-dimensional code-based positioning method and device and storage medium
CN109543489A
Cited By
Charging type mobile machinery real-time positioning monitoring method and device based on LoRa ad hoc network
CN120178151A