Indoor positioning method and device based on RSSI (Received Signal Strength Indicator), storage medium and electronic equipment

By selecting signal transmitting nodes with high signal strength and combining them with a weighted centroid positioning algorithm, the position and influence of positioning nodes are optimized, thus solving the problem of insufficient indoor positioning accuracy and achieving higher-precision indoor positioning.

CN121069309AActive Publication Date: 2025-12-05WUXI ZHENYUAN TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202511236999.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-01
Publication Date
2025-12-05
Estimated Expiration
2045-09-01

AI Technical Summary

Technical Problem

RSSI-based indoor positioning methods have poor accuracy in complex indoor environments and are greatly affected by multipath effects and environmental interference.

Method used

By selecting a preset number of signal transmitting nodes with high signal strength, and using a weighted centroid positioning algorithm, combined with initial and exponential weighting coefficients, the position and influence of the positioning nodes are optimized, reducing interference errors from distant nodes and improving positioning accuracy.

Benefits of technology

It improves the accuracy of indoor positioning, reduces errors, and enhances positioning precision.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121069309A_ABST
    Figure CN121069309A_ABST
Patent Text Reader

Abstract

The invention relates to an RSSI-based indoor positioning method and device, a storage medium and electronic equipment, and relates to the technical field of indoor positioning, and the method comprises the steps: obtaining an RSSI value of at least one target signal received by a to-be-positioned target in an indoor region; according to the sequence of the RSSI values from large to small, selecting a preset number of signal transmitting nodes from the signal transmitting nodes, and determining the selected signal transmitting nodes as participating positioning nodes; according to the RSSI value of each participating positioning node, determining a target distance between the corresponding participating positioning node and the to-be-positioned target; determining an initial positioning coordinate corresponding to the to-be-positioned target according to the initial weighting coefficient and the coordinate information corresponding to each participating positioning node; and determining a final positioning coordinate corresponding to the target to be positioned through a preset weighted centroid positioning algorithm according to the exponential weighting coefficient and the coordinate information corresponding to each participating positioning node. The method has the effect of improving the indoor positioning precision.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of indoor positioning technology, specifically to an indoor positioning method, device, storage medium, and electronic device based on RSSI. Background Technology

[0002] Indoor positioning refers to determining the specific location of an object or person in an indoor environment using technical means. Compared to outdoor positioning (such as GPS), indoor positioning faces more challenges because GPS signals are easily blocked, attenuated, or reflected indoors, leading to decreased positioning accuracy or even unusable positioning. Received Signal Strength Indicator (RSSI) is a metric used to measure the strength of wireless signals, usually expressed numerically. RSSI is a commonly used parameter in wireless communication systems, widely applied in Wi-Fi, Bluetooth, ZigBee, and other wireless technologies for evaluating signal quality, distance estimation, and positioning. The principle of RSSI-based positioning is to determine the location of the target device by measuring the distance between at least one signal source at a known location and the target device. Due to its low cost and simple implementation, RSSI-based positioning methods have been widely researched and applied in fields such as indoor positioning.

[0003] Regarding the aforementioned technologies, the inventors believe that the following defects exist: due to the fact that indoor scenes are more complex than outdoor scenes during positioning, RSSI-based positioning is easily affected by indoor multipath effects, environmental interference and other factors, resulting in poor indoor positioning accuracy. Summary of the Invention

[0004] To improve the accuracy of indoor positioning, this application provides an indoor positioning method, apparatus, storage medium, and electronic device based on RSSI.

[0005] The first aspect of this application provides an indoor positioning method based on RSSI, specifically including: The RSSI value of at least one target signal received by the target to be located in the indoor area is obtained, wherein the target signal is a signal emitted by at least one preset signal transmitting node in the indoor area; According to the RSSI values ​​in descending order, a preset number of signal transmitting nodes are selected from the signal transmitting nodes to determine the nodes participating in the positioning process. Based on the RSSI values ​​of each participating positioning node, the target distance between the corresponding participating positioning node and the target to be located is determined; Based on the target distance corresponding to each participating positioning node, the corresponding initial weighting coefficient is determined, and the initial positioning coordinates of the target to be positioned are determined by a preset weighted centroid positioning algorithm based on the initial weighting coefficient and coordinate information corresponding to each participating positioning node. Based on the initial positioning coordinates and the coordinate information of each participating positioning node, the corresponding exponential weighting coefficient of the participating positioning node is determined. Then, using a preset weighted centroid positioning algorithm, the final positioning coordinates of the target to be positioned are determined based on the exponential weighting coefficient and coordinate information of each participating positioning node.

[0006] By employing the above technical solution, the RSSI value of at least one target signal is obtained. A predetermined number of signal transmitting nodes with high signal strength are selected from among the various signal transmitting nodes to participate in indoor positioning of the target. This results in a smaller target distance error between the subsequently determined participating positioning nodes and the target, improving the positioning accuracy to some extent. Furthermore, initial weighting coefficients are determined based on the distance to each target, thus accurately assessing the influence of the participating positioning nodes on the positioning accuracy of the target. Using a weighted centroid positioning algorithm, the positions of each participating positioning node are used as a reference to determine the initial positioning coordinates of the target. Finally, an exponential weighting coefficient is determined for each participating positioning node, highlighting the influence of nearby signal transmitting nodes on positioning and reducing errors caused by interference and other factors from distant signal transmitting nodes. Combining the positions of each participating positioning node and the exponential weighting coefficients, the final positioning coordinates of the target are determined, thereby improving the accuracy of indoor positioning.

[0007] In one implementation, determining the corresponding initial weighting coefficient based on the target distance for each participating positioning node specifically includes: Substituting the target distance corresponding to each participating positioning node into the preset first weighting coefficient calculation formula, we obtain the corresponding initial weighting coefficient. The first weighting coefficient calculation formula is as follows: ; In the formula, w i d represents the initial weighting coefficient corresponding to the i-th participating positioning node. i This represents the target distance corresponding to the i-th participating localization node.

[0008] In one implementation, determining the exponential weighting coefficient of the corresponding participating positioning node based on the initial positioning coordinates and the coordinate information of each participating positioning node specifically includes: Substituting the coordinate information of each participating positioning node and the initial positioning coordinates into the preset second weighting coefficient calculation formula, the corresponding exponential weighting coefficient of the participating positioning node is obtained. The second weighting coefficient calculation formula is as follows: ; In the formula, Let x represent the exponential weighting coefficient of the i-th participating node, k represent the exponential weighting factor, and x represent the exponential weighting coefficient. o This represents the x-axis coordinate value in the initial positioning coordinate system, and the y-axis coordinate value... o This represents the y-axis coordinate value in the initial positioning coordinate system, x i This represents the x-axis coordinate value and y-axis coordinate value in the coordinate information of the i-th participating node. i This represents the y-axis coordinate value in the coordinate information of the i-th participating positioning node.

[0009] In one embodiment, the method further includes: Obtain the final positioning coordinates of the target to be located at at least one location, and determine the positioning error corresponding to each final positioning coordinate; The average positioning error is obtained by averaging the various positioning errors, and then compared with a preset error threshold. If the average positioning error exceeds the error threshold, the exponential weighting factor in the second weighting coefficient calculation formula is adjusted and optimized.

[0010] In one embodiment, the method further includes: Based on multiple historical signal transmitting nodes that have participated in positioning within the indoor area and whose positioning errors have not exceeded a preset error threshold, at least one target transmitting node is determined. The target transmitting node is a historical signal transmitting node whose positioning error is easily within the allowable error range when participating in indoor positioning. Based on the positioning area in which the positioning error does not exceed the error threshold when a single target transmitting node participates in positioning, at least one corresponding target positioning area is determined. The target positioning area is the positioning area in which the positioning error is easily within the allowable error when the corresponding target transmitting node participates in positioning. A first weight is determined for each target transmitting node, and a second weight is determined for the target positioning area corresponding to each target transmitting node; Based on the coordinate information of each participating positioning node, the first weight, and the second weight, a rationality check is performed on all participating positioning nodes; The step of determining the target distance between the corresponding participating positioning node and the target to be located based on the RSSI value of each participating positioning node specifically includes: After the rationality verification is passed, the target distance between the corresponding participating positioning node and the target to be located is determined based on the RSSI value of each participating positioning node.

[0011] In one implementation, the step of performing a rationality check on the participating positioning nodes based on the coordinate information of each participating positioning node, the first weight, and the second weight specifically includes: The target positioning area where the target to be located is located is determined as the key positioning area. If the key positioning area exists in each target positioning area corresponding to the target transmitting node, the corresponding target transmitting node is determined as the key transmitting node. When each of the participating positioning nodes is a key transmission node, calculate the first product of the first weight of each participating positioning node and the second weight of the corresponding key positioning area; Summing each of the first products yields the corresponding first summation result. If the first summation result is greater than a preset threshold, then the rationality verification of all participating positioning nodes is confirmed to have passed.

[0012] In one embodiment, the method further includes: If the rationality verification of the participating positioning node fails, calculate the second product of the first weight of each target transmitting node and the second weight of the corresponding target positioning area; Summing up the second products corresponding to the key positioning area yields the corresponding second summation result. Based on the second summation result, a suitable range of the number of signal transmitting nodes participating in the positioning when positioning the target to be located is determined. If the preset number is within the appropriate number range, then in descending order, the preset number of second products are selected from each second product corresponding to the key positioning area and determined as the target product; The target to be located is located based on the target launch node corresponding to the target product.

[0013] A second aspect of this application provides an RSSI-based indoor positioning device, specifically comprising: The data acquisition module is used to acquire the RSSI value of at least one target signal received by the target to be located in the indoor area, wherein the target signal is a signal emitted by at least one preset signal transmitting node in the indoor area; The node selection module is used to select a preset number of signal transmitting nodes from the signal transmitting nodes in descending order of the RSSI values ​​to determine them as nodes participating in the positioning process. The distance determination module is used to determine the target distance between the corresponding participating positioning node and the target to be located based on the RSSI value of each participating positioning node; The first positioning module is used to determine the corresponding initial weighting coefficient based on the target distance corresponding to each of the participating positioning nodes, and to determine the initial positioning coordinates of the target to be positioned based on the initial weighting coefficient and coordinate information corresponding to each of the participating positioning nodes through a preset weighted centroid positioning algorithm. The second positioning module is used to determine the exponential weighting coefficient of the corresponding participating positioning node based on the initial positioning coordinates and the coordinate information of each participating positioning node, and to determine the final positioning coordinates of the target to be positioned based on the exponential weighting coefficient and coordinate information of each participating positioning node through a preset weighted centroid positioning algorithm.

[0014] By adopting the above technical solution, the data acquisition module acquires the RSSI value of at least one target signal. Then, the node selection module selects a preset number of signal transmitting nodes from each signal transmitting node to determine them as participating positioning nodes. Then, the distance determination module determines the target distance between the corresponding participating positioning node and the target to be positioned based on the RSSI value of each participating positioning node. The first positioning module determines the initial positioning coordinates of the target to be positioned based on the initial weighting coefficient and coordinate information corresponding to the participating positioning nodes. Finally, the second positioning module determines the final positioning coordinates of the target to be positioned based on the exponential weighting coefficient and coordinate information corresponding to each participating positioning node.

[0015] A third aspect of this application provides a computer-readable storage medium storing a computer program that, when loaded and executed by a processor, performs the steps of the method described in any one of the first aspects.

[0016] A fourth aspect of this application provides an electronic device, specifically comprising: A processor, a memory, and a computer program stored in the memory and capable of running on the processor, the processor being configured to load and execute the computer program stored in the memory to cause the electronic device to perform the method as described in any one of the first aspects.

[0017] In summary, this application includes at least one of the following beneficial technical effects: A predetermined number of signal transmitting nodes with high signal strength are selected from various signal transmitting nodes to participate in indoor positioning of the target to be located, thereby reducing the target distance error between the subsequently determined participating positioning nodes and the target to be located, and improving the positioning accuracy of the target to a certain extent. Furthermore, initial weighting coefficients are determined based on the distance to each target, thereby more accurately assessing the influence of the participating positioning nodes on the positioning accuracy of the target to be located. Using a weighted centroid positioning algorithm, the positions of each participating positioning node are used as a reference to determine the initial positioning coordinates corresponding to the target to be located. Finally, an exponential weighting coefficient is determined for each participating positioning node, thereby highlighting the influence of closer signal transmitting nodes on positioning and reducing errors caused by interference and other factors from distant signal transmitting nodes. Combining the positions of each participating positioning node and the exponential weighting coefficients, the final positioning coordinates corresponding to the target to be located are determined, thereby improving the accuracy of indoor positioning. Attached Figure Description

[0018] Figure 1 This is a flowchart illustrating an indoor positioning method based on RSSI provided in an embodiment of this application; Figure 2 This is a flowchart illustrating another RSSI-based indoor positioning method provided in an embodiment of this application; Figure 3 This is a schematic diagram of the structure of an indoor positioning device based on RSSI provided in an embodiment of this application; Figure 4 This is a schematic diagram of another RSSI-based indoor positioning device provided in an embodiment of this application.

[0019] Explanation of reference numerals in the attached diagram: 11. Data acquisition module; 12. Node selection module; 13. Distance determination module; 14. First positioning module; 15. Second positioning module; 16. Coefficient optimization module; 17. Node verification module; 18. Repositioning module. Detailed Implementation

[0020] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0021] In the description of the embodiments of this application, words such as "exemplarily," "for example," or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily," "for example," or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of words such as "exemplarily," "for example," or "for instance" is intended to present the relevant concepts in a specific manner.

[0022] In the description of the embodiments of this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, B existing alone, or A and B existing simultaneously. Furthermore, unless otherwise stated, the term "multiple" means two or more. For example, multiple systems refer to two or more systems, and multiple screen terminals refer to two or more screen terminals. In addition, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and their variations all mean "including but not limited to," unless otherwise specifically emphasized.

[0023] See Figure 1 This application discloses a flowchart of an RSSI-based indoor positioning method, which can be implemented using a computer program or run on an RSSI-based indoor positioning device based on the von Neumann architecture. The computer program can be integrated into an application or run as a standalone utility application, specifically including: S101: Obtain the RSSI value of at least one target signal received by the target to be located in the indoor area. The target signal is a signal emitted by at least one preset signal transmitting node in the indoor area.

[0024] Specifically, in this embodiment, the indoor area is the area where indoor positioning of objects within it is required. The indoor area can be a 20m x 20m area; in other embodiments, it can be a 10m x 10m area. At least one signal transmitting node is pre-positioned in the indoor area. The signal transmitting node can be a Bluetooth beacon; in other embodiments, it can be a WiFi base station. The target to be positioned is a terminal carried by a person in the indoor area. The terminal can be a smartphone or tablet, and the target to be positioned acts as a signal receiving node. The target signal is the signal received by the target from each signal transmitting node, where the target signal includes the corresponding RSSI value. The RSSI value is an indicator used to measure the signal strength received in a wireless communication system. It is usually expressed in decibels per milliwatt (dBm). A higher RSSI value indicates a stronger received signal; conversely, a lower RSSI value indicates a weaker received signal. For example, the signal transmitting nodes in the indoor area are arranged as follows: the indoor area is a 20m x 20m area, and 100 Bluetooth beacons are evenly placed at 2m intervals as signal transmitting nodes.

[0025] Furthermore, the RSSI-based indoor positioning method disclosed in this application uses a server as the execution entity. The server is wirelessly connected to a user's terminal, which has an indoor positioning-related client installed. The server serves as the backend server for the client and can be either a standalone physical server or a cluster of multiple physical servers. A feasible method for obtaining RSSI values ​​is as follows: after the target to be positioned receives the target signal sent by each signal transmitting node, the RSSI value of each target signal is determined through the Bluetooth module within the target to be positioned.

[0026] S102: Select a preset number of signal transmitting nodes from each signal transmitting node in descending order of RSSI value to determine them as participating positioning nodes.

[0027] Specifically, after the RSSI values ​​of the target signals emitted by each signal transmitting node are determined, a predetermined number of signal transmitting nodes are selected as participating positioning nodes in descending order of their RSSI values. This facilitates subsequent positioning of the target based on the distance between each participating positioning node and the target. In this embodiment, the predetermined number is four; in other embodiments, it can be five. It should be noted that the RSSI value is inversely proportional to the signal propagation distance; a stronger RSSI value generally indicates a closer distance between the target and the signal transmitting node. By using signal transmitting nodes with larger RSSI values ​​for positioning, the distance can be estimated more accurately, thereby improving positioning accuracy.

[0028] S103: Determine the target distance between the corresponding participating positioning node and the target to be positioned based on the RSSI value of each participating positioning node.

[0029] Specifically, after the participating positioning nodes are determined, the target distance between the corresponding participating positioning node and the target to be positioned is determined based on the RSSI value of the target signal received by the target from the participating positioning nodes using a preset signal propagation model. The signal propagation model is expressed as follows: ; In the formula, RSSI represents the RSSI value corresponding to the participating positioning node, RSSI0 represents the RSSI value at a distance d0 from the participating positioning node, and n represents the path loss exponent. This indicates that the mean is 0 and the standard deviation is 0. The Gaussian random variable is used to represent the random fading during signal propagation, where d represents the target distance and d0 represents the reference distance. Here, d0 is 1 meter, and RSSI0 is the RSSI value at a distance of 1 meter from the positioning node, specifically -50 dBm. N is 5. The value is 0.5.

[0030] S104: Determine the corresponding initial weighting coefficient based on the target distance of each participating positioning node, and determine the initial positioning coordinates of the target to be positioned based on the initial weighting coefficient and coordinate information of each participating positioning node through the preset weighted centroid positioning algorithm.

[0031] Specifically, after the target distances corresponding to each participating positioning node are determined, the target distances corresponding to each participating positioning node are substituted into the preset first weighting coefficient calculation formula to obtain the corresponding initial weighting coefficients. The first weighting coefficient calculation formula is as follows: ; In the formula, w i d represents the initial weighting coefficient corresponding to the i-th participating positioning node. i This represents the target distance corresponding to the i-th participating localization node.

[0032] Furthermore, the initial positioning coordinates of the target are determined using a pre-defined weighted centroid localization algorithm. This algorithm, used in scenarios such as wireless sensor networks, calculates the target's position by weighted averaging of multiple signal sources. Its core idea is to utilize the signal strength or distance information of different nodes in the sensor network, combined with a weighting strategy, to determine the approximate location of the target. The algorithm estimates the target's position by weighted averaging of the coordinates of multiple anchor nodes (with known locations). Specifically, the initial weighting coefficients and coordinate information of each participating positioning node can be substituted into the pre-defined first weighted centroid determination formula, which is:

[0033]

[0034] In the formula, x o This represents the x-axis coordinate value in the initial positioning coordinate system, and the y-axis coordinate value... o This represents the y-axis coordinate value in the initial positioning coordinate system, k represents the preset number, and x represents the x-axis coordinate value. i This represents the x-axis coordinate value and y-axis coordinate value in the coordinate information of the i-th participating node. i This represents the y-axis coordinate value in the coordinate information of the i-th participating positioning node.

[0035] S105: Based on the initial positioning coordinates and the coordinate information of each participating positioning node, determine the corresponding exponential weighting coefficient of the participating positioning node, and determine the final positioning coordinates of the target to be positioned based on the exponential weighting coefficient and coordinate information of each participating positioning node through the preset weighted centroid positioning algorithm.

[0036] Specifically, after the initial positioning coordinates of the target to be located are determined, in order to further improve the accuracy of the target positioning, it is necessary to optimize the initial positioning coordinates. One feasible implementation method is as follows: First, substitute the coordinate information of each participating positioning node and the initial positioning coordinates into a preset second weighting coefficient calculation formula to obtain the corresponding exponential weighting coefficients of the participating positioning nodes. The second weighting coefficient calculation formula is as follows: ; In the formula, Let x represent the exponential weighting coefficient of the i-th participating node, k represent the exponential weighting factor, and x represent the exponential weighting coefficient. o This represents the x-axis coordinate value in the initial positioning coordinate system, and the y-axis coordinate value... o This represents the y-axis coordinate value in the initial positioning coordinate system, x i This represents the x-axis coordinate value and y-axis coordinate value in the coordinate information of the i-th participating node. i This represents the y-axis coordinate value in the coordinate information of the i-th participating positioning node.

[0037] Furthermore, the final positioning coordinates of the target are determined using a weighted centroid localization algorithm. Specifically, the exponential weighting coefficients and coordinate information of each participating positioning node are substituted into a preset second weighted centroid determination formula to obtain the final positioning coordinates of the target. The second weighted centroid determination formula is as follows:

[0038]

[0039] In the formula, x *This represents the x-axis coordinate value in the final positioning coordinate system, and the y-axis coordinate value... * This represents the y-axis coordinate value in the final positioning coordinates. It should be noted that, in this embodiment, by determining the exponential weighting coefficient corresponding to each participating positioning node, the influence of closer signal transmitting nodes on positioning is highlighted, while errors caused by interference and other factors from distant signal transmitting nodes are reduced, thereby improving positioning accuracy.

[0040] In other embodiments, when personnel are constantly moving within an indoor area, the above steps S101-S104 can achieve multiple positioning of the target to be located, obtaining the final positioning coordinates of the target at at least one location, and determining the positioning error of the corresponding location based on each final positioning coordinate and the corresponding actual location information. Then, the average positioning error is obtained by averaging the various positioning errors. The average positioning error is compared with a preset error threshold. If the average positioning error is greater than the error threshold, it indicates that the positioning error of the target to be located based on the signal transmitting node is too large. This may be caused by the error of the exponential weighting factor corresponding to the positioning node being too large during positioning. It is necessary to adjust and optimize the exponential weighting factor k to improve the accuracy of determining the exponential weighting coefficient of the positioning node. Therefore, an adjustment and optimization reminder for the exponential weighting factor is issued.

[0041] See Figure 2 This application discloses a flowchart of another RSSI-based indoor positioning method, which can be implemented using a computer program or run on an RSSI-based indoor positioning device based on the von Neumann architecture. The computer program can be integrated into an application or run as a standalone utility application, specifically including: S201: Obtain the RSSI value of at least one target signal received by the target to be located in the indoor area, wherein the target signal is a signal emitted by at least one preset signal transmitting node in the indoor area.

[0042] S202: Select a preset number of signal transmitting nodes from each signal transmitting node in descending order of RSSI value to determine them as participating positioning nodes.

[0043] For details, please refer to steps S101-S102, which will not be repeated here.

[0044] S203: Based on multiple signal transmitting nodes that have participated in positioning within the indoor area and whose positioning errors have not exceeded a preset error threshold, determine at least one target transmitting node. The target transmitting node is a signal transmitting node whose positioning error is easily within the allowable error range when participating in indoor positioning.

[0045] Specifically, after determining the participating positioning nodes based on their RSSI values, the system uses historical positioning records for the indoor area to identify multiple historical signal transmitting nodes that have participated in positioning within the indoor area and whose positioning errors do not exceed a preset error threshold. The system then counts the number of times a single historical signal transmitting node appears; the more times it appears, the greater the likelihood that the corresponding historical signal transmitting node participated in positioning with a smaller positioning error. If the number of occurrences exceeds a preset threshold, the corresponding historical signal transmitting node is designated as the target transmitting node—that is, a historical signal transmitting node whose positioning error is likely to be within the allowable range when participating in indoor positioning. It should be noted that the historical positioning records include information such as the historical signal transmitting nodes that participated in each historical positioning operation within the indoor area, the area where the target is located, and the positioning error.

[0046] S204: Based on the positioning area where the positioning error does not exceed the error threshold when a single target transmitting node participates in positioning, determine at least one corresponding target positioning area. The target positioning area is the positioning area where the positioning error is easily within the allowable error range when the corresponding target transmitting node participates in positioning.

[0047] Specifically, after each target transmitting node is determined, based on the aforementioned historical positioning records, the positioning area where a single target transmitting node participates in positioning and the positioning error does not exceed the error threshold is obtained; that is, the area where the target being positioned is located. The frequency of recurrence of a single positioning area across all positioning areas is counted. The higher the frequency, the greater the likelihood that the corresponding positioning area will have a smaller positioning error in positioning with a single target transmitting node participating. If the frequency exceeds a preset frequency threshold, then the corresponding positioning area is determined as the target positioning area; that is, the positioning area where the positioning error is likely to be within the allowable error range when the corresponding target transmitting node participates in positioning.

[0048] S205: Determine the first weight of each target transmitting node and the second weight of the target positioning area corresponding to each target transmitting node.

[0049] S206: Based on the coordinate information, first weight, and second weight of each participating positioning node, perform a rationality check on the participating positioning nodes.

[0050] Specifically, in this embodiment, the first weight is the ratio of the frequency of each target transmitting node to the sum of the frequencies of all target transmitting nodes. The first weight represents the probability that the positioning error is within the allowable range after the target transmitting node participates in positioning; the larger the first weight, the greater the probability that the positioning error is within the allowable range after participating in positioning. Further, the second weight is the ratio of the frequency of a single target positioning area corresponding to a target transmitting node to the sum of the frequencies of all corresponding target positioning areas. The second weight represents the probability that the positioning error of the target positioning area is within the allowable range when the corresponding target transmitting node participates in positioning.

[0051] One feasible method to determine whether a target is within the target positioning area is as follows: Using a pre-installed lidar system in the indoor area, determine the current location of the person carrying the target. If the current location is within the target positioning area, then that area is designated as a key positioning area. Next, if this key positioning area exists within any of the target positioning areas corresponding to a target transmitting node, then that target transmitting node is designated as a key transmitting node.

[0052] Furthermore, when all participating positioning nodes are key transmission nodes, the first product of the first weight of each participating positioning node and the second weight of the corresponding key positioning area is calculated. The larger the first product, the greater the probability that the positioning error of this participating positioning node is within the allowable error range when positioning the target to be located, and the easier it is for the positioning error to be smaller. Next, the first products are summed to obtain the corresponding first summation result. The larger the first summation result, the greater the probability that the positioning error of each participating positioning node is smaller when positioning the target to be located. Finally, if the first summation result is greater than a preset threshold, it indicates that the positioning error of each participating positioning node is more likely to be smaller when positioning the target to be located, and the rationality verification of all participating positioning nodes is passed.

[0053] S207: After the rationality check is passed, the target distance between the corresponding participating positioning node and the target to be positioned is determined based on the RSSI value of each participating positioning node.

[0054] Specifically, after the rationality verification of the participating positioning nodes is passed, it is verified that the selected participating positioning nodes have high positioning accuracy for the target to be located. Then, based on the RSSI value of each participating positioning node, the target distance between the corresponding participating positioning node and the target to be located is determined. For details, please refer to step S103, which will not be repeated here. In other embodiments, if the first summation result is not greater than a preset threshold, it indicates that the probability of the positioning error being too small when each participating positioning node positions the target to be positioned is relatively small. Therefore, the rationality verification fails, and it is necessary to re-determine the signal transmitting nodes participating in the positioning of the target to be positioned. One feasible determination method is to calculate the second product of the first weight of each target transmitting node and the second weight of each corresponding target positioning area, and sum the second products corresponding to the key positioning area to obtain the corresponding second summation result. The larger the second summation result, the greater the overall probability of the positioning error being too small when positioning the key positioning area based on the signal transmitting nodes deployed in the indoor area. Therefore, there is not much signal transmitting node participating in the positioning. Then, based on the second summation result, the appropriate number range of signal transmitting nodes participating in the positioning when positioning the target to be positioned is determined. Specifically, the appropriate number range corresponding to the second summation result is matched through a preset number matching table. The number matching table includes different summation result ranges and corresponding appropriate number ranges, all of which are set based on human experience. The larger the second summation result, the smaller the value in the appropriate number range. For example, the number matching table includes a summation result range of 0.5-1, corresponding to a suitable number range of 4-6; and a summation result range of 1-1.5, corresponding to a suitable number range of 2-4. If the first summation result is 1.2, then the corresponding suitable number range is 2-4.

[0055] Furthermore, it is determined whether the preset number is within the appropriate range, thereby verifying whether the selected number of signal transmitting nodes participating in the positioning is reasonable. If the preset number is within the appropriate range, then, in descending order, the preset number of second products corresponding to the key positioning area are selected as the target products. The target products are summed to obtain the third summation result. If the third summation result is greater than the preset threshold, then the preset number and the appropriate range are both considered reasonable. At the same time, it can also verify the rationality of the target transmitting nodes corresponding to each target product as signal transmitting nodes participating in the positioning. Finally, based on the target transmitting nodes corresponding to each target product, the target to be positioned is located. The specific positioning process can be found in steps S103-S105, which will not be repeated here.

[0056] In another embodiment, if the third summation result is not greater than a preset threshold, it indicates that there is a deviation in the preset number. Then, in descending order, the second product of the largest number in the appropriate number range is selected from the second product corresponding to the key positioning area and summed to obtain the fourth summation result. If the fourth summation result is greater than the preset threshold, then the appropriate number range is verified to be correct, and the preset number is adjusted to the largest number in the appropriate number range. If the fourth summation result is not greater than the preset threshold, then it is determined that there is a deviation in the appropriate number range, and it is necessary to redetermine the appropriate number range and the preset number of signal transmitting nodes participating in the positioning of the target to be located.

[0057] In another embodiment, the number of times a location has been historically located within an indoor area is counted. If the number of locations exceeds a preset threshold, it indicates that the corresponding historical area is prone to human activity, and this historical area is designated as a reference area. When all reference areas are target location areas, the second product among the various second products corresponding to each reference area that is not greater than a preset product threshold is determined as a reference product. The target transmitting node corresponding to the reference product is determined as the corresponding reference transmitting node, and the reference transmitting node is removed from the various signal transmitting nodes deployed in the indoor area, thereby making the layout and number of signal transmitting nodes in the indoor area more reasonable. In other embodiments, if each target positioning area corresponding to the target transmitting node contains multiple reference areas, the number of reference areas is counted. If the number exceeds a preset threshold, the corresponding target transmitting node is determined as the node to be analyzed. The third product of the first weight of the node to be analyzed and the second weight of each corresponding reference area is calculated. The third products are summed to obtain a fifth summation result. If the fifth summation result is not greater than a preset threshold, it indicates that the overall positioning accuracy of the node to be analyzed is poor when it is located in areas where personnel are likely to move around. Therefore, the node to be analyzed is removed from the indoor area, thereby optimizing the deployment of signal transmitting nodes in the indoor area.

[0058] S208: Based on the target distance corresponding to each participating positioning node, determine the corresponding initial weighting coefficient, and through the preset weighted centroid positioning algorithm, determine the initial positioning coordinates of the target to be positioned based on the initial weighting coefficient and coordinate information corresponding to each participating positioning node.

[0059] S209: Based on the initial positioning coordinates and the coordinate information of each participating positioning node, determine the corresponding exponential weighting coefficient of the participating positioning node, and through the preset weighted centroid positioning algorithm, determine the final positioning coordinates of the target to be positioned based on the exponential weighting coefficient and coordinate information of each participating positioning node.

[0060] For details, please refer to steps S104-S105, which will not be repeated here.

[0061] The implementation principle of the RSSI-based indoor positioning method in this application is as follows: A predetermined number of signal transmitting nodes with high signal strength are selected from various signal transmitting nodes to participate in the indoor positioning of the target. This reduces the target distance error between the subsequently determined participating nodes and the target, thus improving the positioning accuracy to a certain extent. Further, initial weighting coefficients are determined based on the distance to each target, thereby more accurately assessing the influence of the participating nodes on the positioning accuracy of the target. Using a weighted centroid positioning algorithm, the positions of each participating node are used as references to determine the initial positioning coordinates of the target. Finally, an exponential weighting coefficient is determined for each participating node, highlighting the influence of nearby signal transmitting nodes on positioning and reducing errors caused by interference and other factors from distant signal transmitting nodes. Combining the positions of each participating node and the exponential weighting coefficients, the final positioning coordinates of the target are determined, thereby improving the accuracy of indoor positioning.

[0062] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.

[0063] Please see Figure 3 This is a schematic diagram of the structure of an RSSI-based indoor positioning device provided in an embodiment of this application. This RSSI-based indoor positioning device can be implemented as all or part of the device through software, hardware, or a combination of both. The device includes a data acquisition module 11, a node selection module 12, a distance determination module 13, a first positioning module 14, and a second positioning module 15.

[0064] The data acquisition module 11 is used to acquire the RSSI value of at least one target signal received by the target to be located in the indoor area, wherein the target signal is a signal emitted by at least one preset signal transmitting node in the indoor area; The node selection module 12 is used to select a preset number of signal transmitting nodes from each signal transmitting node in descending order of RSSI values ​​to determine them as nodes participating in the positioning process. The distance determination module 13 is used to determine the target distance between the corresponding participating positioning node and the target to be located based on the RSSI value of each participating positioning node; The first positioning module 14 is used to determine the corresponding initial weighting coefficient based on the target distance corresponding to each participating positioning node, and to determine the initial positioning coordinates of the target to be positioned based on the initial weighting coefficient and coordinate information corresponding to each participating positioning node through a preset weighted centroid positioning algorithm. The second positioning module 15 is used to determine the exponential weighting coefficient of the corresponding participating positioning node based on the initial positioning coordinates and the coordinate information of each participating positioning node, and to determine the final positioning coordinates of the target to be positioned based on the exponential weighting coefficient and coordinate information of each participating positioning node through a preset weighted centroid positioning algorithm.

[0065] Optionally, the first positioning module 14 is specifically used for: Substitute the target distance corresponding to each participating positioning node into the preset first weighting coefficient calculation formula to obtain the corresponding initial weighting coefficient. The first weighting coefficient calculation formula is as follows: ; In the formula, w i d represents the initial weighting coefficient corresponding to the i-th participating positioning node. i This represents the target distance corresponding to the i-th participating localization node.

[0066] Optionally, the second positioning module 15 is specifically used for: Substituting the coordinate information and initial positioning coordinates of each participating node into the preset second weighting coefficient calculation formula, the corresponding exponential weighting coefficient of the participating positioning node is obtained. The second weighting coefficient calculation formula is as follows: ; In the formula, Let x represent the exponential weighting coefficient of the i-th participating node, k represent the exponential weighting factor, and x represent the exponential weighting coefficient. o This represents the x-axis coordinate value in the initial positioning coordinate system, and the y-axis coordinate value... o This represents the y-axis coordinate value in the initial positioning coordinate system, x i This represents the x-axis coordinate value and y-axis coordinate value in the coordinate information of the i-th participating node. i This represents the y-axis coordinate value in the coordinate information of the i-th participating positioning node.

[0067] Optional, such as Figure 4 As shown, the device also includes a coefficient optimization module 16, specifically used for: Obtain the final positioning coordinates of the target to be located at at least one location, and determine the positioning error corresponding to each final positioning coordinate; The average value of each positioning error is calculated to obtain the average positioning error, and then the average positioning error is compared with the preset error threshold. If the average positioning error exceeds the error threshold, the exponential weighting factor in the second weighting coefficient calculation formula will be adjusted and optimized.

[0068] Optionally, the device also includes a node verification module 17, specifically used for: Based on multiple historical signal transmitting nodes that have participated in positioning within the indoor area and whose positioning errors have not exceeded a preset error threshold, at least one target transmitting node is determined. The target transmitting node is a historical signal transmitting node whose positioning error is easily within the allowable error range when participating in indoor positioning. Based on the positioning area where the positioning error does not exceed the error threshold when a single target transmitting node participates in positioning, at least one corresponding target positioning area is determined. The target positioning area is the positioning area where the positioning error is easily within the allowable error when the corresponding target transmitting node participates in positioning. Determine the first weight of each target transmitting node and the second weight of the target positioning area corresponding to each target transmitting node; Based on the coordinate information, first weight, and second weight of each participating positioning node, a rationality check is performed on all participating positioning nodes.

[0069] Optional, distance determination module 13, specifically used for: After the rationality check is passed, the target distance between the corresponding participating positioning node and the target to be located is determined based on the RSSI value of each participating positioning node.

[0070] Optional, node verification module 17, specifically used for: The target positioning area where the target to be located is located is determined as the key positioning area. If there is a key positioning area in each target positioning area corresponding to the target launch node, then the corresponding target launch node is determined as the key launch node. When all participating positioning nodes are key transmission nodes, calculate the first product of the first weight of each participating positioning node and the second weight of the corresponding key positioning area; Summing each first product yields the corresponding first summation result. If the first summation result is greater than a preset threshold, then the rationality verification of all participating positioning nodes is confirmed to have passed.

[0071] Optionally, the device also includes a repositioning module 18, specifically used for: If the rationality verification of the participating positioning nodes fails, calculate the second product of the first weight of each target transmitting node and the second weight of the corresponding target positioning area; Summing up the second products corresponding to the key positioning areas yields the corresponding second summation results. Based on the second summation results, the appropriate range of the number of signal transmitting nodes participating in the positioning when positioning the target is determined. If the preset number is within a suitable range, then select the preset number of second products from the second products corresponding to the key positioning area in descending order and determine them as the target product; The target to be located is located based on the target transmission node corresponding to the target product.

[0072] It should be noted that the RSSI-based indoor positioning device provided in the above embodiments is only illustrated by the division of the above functional modules when executing the RSSI-based indoor positioning method. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the RSSI-based indoor positioning device and the RSSI-based indoor positioning method embodiment provided in the above embodiments belong to the same concept, and the implementation process is detailed in the method embodiment, which will not be repeated here.

[0073] This application also discloses a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, it implements an RSSI-based indoor positioning method according to the above embodiments.

[0074] The computer program can be stored in a computer-readable medium. The computer program includes computer program code, which can be in the form of source code, object code, executable file, or certain middleware. The computer-readable medium includes any entity or device capable of carrying computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the computer-readable medium includes, but is not limited to, the above-mentioned components.

[0075] The above-described RSSI-based indoor positioning method is stored in the computer-readable storage medium and loaded and executed on the processor to facilitate the storage and application of the method.

[0076] This application also discloses an electronic device in which a computer program is stored in a computer-readable storage medium. When the computer program is loaded and executed by a processor, it implements the above-mentioned RSSI-based indoor positioning method.

[0077] The electronic device can be a desktop computer, a laptop computer, or a cloud server, and includes, but is not limited to, a processor and a memory. For example, the electronic device may also include input / output devices, network access devices, and buses.

[0078] The processor can be a central processing unit (CPU). Of course, depending on the actual use, it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc., and this application does not limit it.

[0079] The memory can be an internal storage unit of an electronic device, such as a hard disk or RAM, or an external storage device, such as a plug-in hard disk, smart memory card (SMC), secure digital card (SD), or flash memory card (FC) equipped on the electronic device. Furthermore, the memory can be a combination of an internal storage unit and an external storage device. The memory is used to store computer programs and other programs and data required by the electronic device. The memory can also be used to temporarily store data that has been output or will be output. This application does not limit this.

[0080] In this electronic device, an indoor positioning method based on RSSI according to the above embodiment is stored in the memory of the electronic device and loaded and executed on the processor of the electronic device for convenient use.

[0081] The foregoing description is merely an exemplary embodiment of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described in this disclosure. The specification and embodiments are considered exemplary only, and the scope and spirit of this disclosure are defined by the claims.

Claims

1. A RSSI-based indoor positioning method, characterized by, The method comprises: acquiring RSSI values of at least one target signal received by a target to be positioned in an indoor area, the target signal being a signal emitted by at least one signal emitting node preset in the indoor area; selecting a preset number of signal emitting nodes from the signal emitting nodes in descending order of the RSSI values to determine the signal emitting nodes participating in positioning; determining target distances between the target to be positioned and the signal emitting nodes participating in positioning according to the RSSI values of the signal emitting nodes participating in positioning; determining initial weighting coefficients corresponding to the signal emitting nodes participating in positioning according to the target distances corresponding to the signal emitting nodes participating in positioning, and determining initial positioning coordinates of the target to be positioned according to the initial weighting coefficients and coordinate information of the signal emitting nodes participating in positioning by using a preset weighted centroid positioning algorithm; determining exponential weighting coefficients of the signal emitting nodes participating in positioning according to the initial positioning coordinates and the coordinate information of the signal emitting nodes participating in positioning, and determining final positioning coordinates of the target to be positioned according to the exponential weighting coefficients and the coordinate information of the signal emitting nodes participating in positioning by using the preset weighted centroid positioning algorithm.

2. The RSSI-based indoor positioning method according to claim 1, characterized in that, The method further comprises: acquiring final positioning coordinates of the target to be positioned at at least one position, and determining positioning errors corresponding to each final positioning coordinate; ; In the formula, w i represents the initial weighting coefficient corresponding to the ith participating positioning node, d i represents the target distance corresponding to the ith participating positioning node. 3.The RSSI-based indoor positioning method according to claim 1, characterized in that, calculating an average of the positioning errors to obtain an average positioning error, and comparing the average positioning error with a preset error threshold value; if the average positioning error exceeds the error threshold value, adjusting and optimizing an exponential weighting factor in the second weighting coefficient calculation formula. ; In the formula, denotes the index weighting coefficient of the i-th participating positioning node, k denotes the index weighting factor, x o denotes the x-axis coordinate value in the initial positioning coordinate, y o denotes the y-axis coordinate value in the initial positioning coordinate, x i denotes the x-axis coordinate value in the coordinate information of the i-th participating positioning node, y i denotes the y-axis coordinate value in the coordinate information of the i-th participating positioning node.

4. The RSSI-based indoor positioning method according to claim 3, characterized in that, The method further comprises: determining at least one target emitting node according to a plurality of historical signal emitting nodes participating in positioning and having positioning errors not exceeding a preset error threshold value in the indoor area, the target emitting node being a historical signal emitting node having a positioning error close to an allowable error when participating in indoor positioning; determining at least one target positioning area corresponding to each target emitting node according to a positioning area having a positioning error not exceeding the error threshold value when a single target emitting node participates in positioning, the target positioning area being a positioning area having a positioning error close to an allowable error when the corresponding target emitting node participates in positioning; determining a first weight value of each target emitting node, and determining a second weight value of a target positioning area corresponding to each target emitting node.

5. The RSSI-based indoor positioning method of claim 1, wherein, ​ ​ ​ ​ According to the coordinate information of each of the participating positioning nodes, the first weight and the second weight, the participating positioning nodes are reasonably checked; The target distance between the corresponding participating positioning node and the target to be positioned is determined according to the RSSI value of each of the participating positioning nodes. After the reasonable check is passed, the target distance between the corresponding participating positioning node and the target to be positioned is determined according to the RSSI value of each of the participating positioning nodes.

6. The RSSI-based indoor positioning method according to claim 5, characterized in that, The participating positioning nodes are reasonably checked according to the coordinate information of each of the participating positioning nodes, the first weight and the second weight, and the participating positioning nodes are reasonably checked. The target positioning area where the target to be positioned is located is determined as a key positioning area, and if the key positioning area exists in each target positioning area corresponding to the target transmitting node, the corresponding target transmitting node is determined as a key transmitting node. When each of the participating positioning nodes is the key transmitting node, the first product of the first weight of each participating positioning node and the second weight of the corresponding key positioning area is calculated. The first products are summed to obtain a corresponding first summation result, and if the first summation result is greater than a preset threshold, it is determined that the reasonable check of all the participating positioning nodes is passed.

7. The RSSI-based indoor positioning method according to claim 6, characterized in that, The method further comprises: If the reasonable check of the participating positioning nodes is not passed, the second product of the first weight of each target transmitting node and the second weight of each target positioning area corresponding to the target transmitting node is calculated. The second products corresponding to the key positioning area are summed to obtain a corresponding second summation result, and according to the second summation result, the appropriate number range of the signal transmitting nodes participating in positioning when positioning the target to be positioned is determined. If the preset number is within the appropriate number range, the preset number of second products is selected from the second products corresponding to the key positioning area in descending order and determined as target products according to the target transmitting node corresponding to the target product. The target to be positioned is positioned according to the target transmitting node corresponding to the target product.

8. An RSSI-based indoor positioning apparatus, characterized by It comprises: A data acquisition module (11) is configured to acquire an RSSI value of at least one target signal received by a target to be positioned in an indoor area, the target signal being a signal emitted by at least one signal transmitting node preinstalled in the indoor area; A node selection module (12) is configured to select a preset number of signal transmitting nodes from the signal transmitting nodes in descending order of the RSSI values to determine the participating positioning nodes; A distance determination module (13) is configured to determine a target distance between the corresponding participating positioning node and the target to be positioned according to the RSSI value of each participating positioning node; A first positioning module (14) is configured to determine a corresponding initial weighting coefficient according to the target distance of each participating positioning node, and determine an initial positioning coordinate corresponding to the target to be positioned according to the initial weighting coefficient and the coordinate information of each participating positioning node through a preset weighted centroid positioning algorithm. A second positioning module (15) is configured to determine an exponential weighting coefficient of each of the participating positioning nodes according to the initial positioning coordinates and the coordinate information of each of the participating positioning nodes, and determine a final positioning coordinate of the target to be positioned according to the exponential weighting coefficient and the coordinate information of each of the participating positioning nodes by using a preset weighted centroid positioning algorithm.

9. A computer-readable storage medium having stored therein a computer program, characterized in that, The computer program is loaded and executed by the processor, and the method in any one of claims 1-7 is implemented.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and capable of running on the processor, characterized in that, The processor loads and executes the computer program, and the method in any one of claims 1-7 is implemented.

Citation Information

Patent Citations

  • RSSI-based weighted centroid positioning algorithm improvement method

    CN112135249A

  • Fingerprint data generation method and device, electronic equipment and storage medium

    CN114423076A

  • UWB three-dimensional dynamic target positioning method based on cooperative positioning

    CN118033537A

  • Method and wireless network system for improving wireless network connection

    US20190124666A1

  • Wireless receive signal strength indicator (RSSI)-based positioning

    US20230417862A1