A device positioning method and apparatus, an electronic device, and a storage medium
By collecting and filtering RSSI data and calculating propagation path loss during the equipment positioning process, and combining this with nonlinear constraints, the problem of low equipment positioning accuracy in existing technologies has been solved, achieving higher precision position determination.
Patent Information
- Application Number
- CN202310640991.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-31
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2043-05-31
AI Technical Summary
Existing RSSI-based device positioning methods have low positioning accuracy in complex scenarios, are easily affected by the environment, and the least squares positioning method may result in multiple intersecting circles leading to random selection of position coordinates, which cannot guarantee accuracy.
By acquiring the communication network status parameter set collected by the signal receiving device during its movement, the distance interval is determined using the filtered RSSI and propagation path loss, and the target position coordinates are calculated based on nonlinear constraints, thus avoiding environmental influences and the problem of multiple circle intersections.
It improves the accuracy of equipment positioning, ensures the uniqueness and precision of location coordinates, reduces the impact of environmental factors, and avoids the drawbacks of randomly selecting locations.
Smart Images

Figure CN119071718B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a device positioning method, apparatus, electronic device, and storage medium. Background Technology
[0002] With the rapid development of communication technology, various communication devices are widely used in all aspects of daily life. However, since the communication performance of communication devices (such as the smoothness or speed of network access) affects the user's communication experience, it is necessary to perform timely maintenance or debugging on communication devices with poor communication performance. Therefore, quick location of communication devices helps to improve the efficiency of communication device maintenance.
[0003] For example, see Figure 1 As shown, in scenarios where the communication equipment consists of a Station (STA) and an Access Point (AP), if among the multiple APs deployed in the scenario, there is an AP with poor communication performance (e.g., faulty, network lag, or slow network speed), it is necessary to quickly locate the AP so that it can be maintained or debugged later.
[0004] In related technologies, in order to achieve rapid location of APs, a location method based on Received Signal Strength Indicator (RSSI) is usually adopted.
[0005] For example, during the movement of the STA, the RSSI of the target AP that is connected to the STA is continuously collected. After a set number of RSSIs are collected, the distance between the target AP and the STA corresponding to each RSSI can be determined by combining the preset attenuation factor. Then, based on the obtained distances between the target AP and the STA and the least squares method, the position coordinates of the target AP can be determined.
[0006] However, the above-mentioned communication device positioning method is prone to problems because the attenuation factor is easily affected by the scene environment (e.g., buildings). As a result, the preset attenuation factor is not the most accurate attenuation factor in the current scene, and thus the distance between the target AP and STA cannot be accurately obtained.
[0007] Furthermore, given that multiple circles may intersect when determining the position coordinates of the target AP using the least squares method, resulting in multiple position coordinates of the target AP, randomly selecting one position coordinate from the multiple obtained position coordinates as the position coordinates of the target AP cannot guarantee the accuracy of obtaining the position coordinates of the target AP.
[0008] Therefore, the accuracy of locating communication devices using the above method is relatively low. Summary of the Invention
[0009] This application provides a device positioning method, apparatus, electronic device, and storage medium to improve the positioning accuracy of communication devices.
[0010] In a first aspect, embodiments of this application provide a device positioning method, the method comprising:
[0011] The signal receiving device acquires multiple communication network status parameter sets of the signal transmitting device during its movement; each communication network status parameter set represents the network communication quality between the signal transmitting device and the signal receiving device at the corresponding moment.
[0012] Based on the Received Signal Indication Strength (RSSI) contained in each of the multiple communication network state parameter sets, and the preset correspondence between RSSI and distance intervals, multiple distance intervals between the signal receiving device and the signal transmitting device are determined.
[0013] Based on multiple distance intervals and the corresponding nonlinear constraints, the target position coordinates of the signal transmitting device are obtained; whereby the nonlinear constraints characterize the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving devices corresponding to each of the multiple distance intervals.
[0014] In one optional embodiment, the signal receiving device acquires a set of multiple communication network status parameters of the signal transmitting device during movement, including:
[0015] When it is determined that the signal receiving device and the signal transmitting device have established network communication, the signal receiving device is instructed to move.
[0016] The signal receiving device acquires a set of multiple communication network status parameters of the signal transmitting device at preset time intervals.
[0017] Through the above embodiments, it can be ensured that multiple sets of communication network status parameters of the signal transmitting device can be obtained, that is, a sufficient set of communication network status parameters, so that the signal transmitting device can be located by subsequent analysis and processing of multiple sets of communication network status parameters.
[0018] In one optional embodiment, multiple distance intervals between the signal receiving device and the signal transmitting device are determined based on the RSSIs contained in each of the multiple communication network state parameter sets, and a preset correspondence between RSSIs and distance intervals, including:
[0019] The RSSIs contained in each of the multiple communication network state parameter sets are filtered to obtain multiple filtered RSSIs.
[0020] Based on the filtered RSSIs and their corresponding relationships, multiple distance intervals between the signal receiving device and the signal transmitting device are determined.
[0021] By processing the RSSI data in the obtained communication network status parameter set through the above embodiments, the problem that the RSSI data obtained by the signal receiving device may fluctuate during the movement of the target driving route, resulting in large differences in RSSI data between adjacent locations can be avoided. This can reduce the fluctuation of RSSI data and improve the accuracy of subsequent positioning.
[0022] In one optional embodiment, multiple distance intervals between the signal receiving device and the signal transmitting device are determined based on multiple filtered RSSIs and their corresponding relationships, including:
[0023] For each set of communication network state parameters, perform the following operations:
[0024] The first communication network state parameter set is parsed to obtain the operating frequency, antenna gain, and transmit power of the signal transmitting device at the corresponding historical moment in the first communication network state parameter set; wherein, the first communication network state parameter set is any one of multiple communication network state parameter sets;
[0025] Based on the corresponding relationship, the propagation path loss is determined according to the antenna gain and transmit power, as well as the RSSI after centralized filtering of the first communication network state parameters; wherein, the propagation path loss characterizes the fading of the signal emitted by the signal transmitting device.
[0026] Based on propagation path loss and operating frequency, the distance between the signal receiving device and the signal transmitting device is obtained.
[0027] Through the above embodiments, the distance between the signal receiving device and the signal transmitting device can be obtained directly based on the filtered RSSI and propagation path loss, avoiding the technical drawbacks of the commonly used signal attenuation model, which has low accuracy in calculating the distance distance (i.e., the attenuation factor is easily affected by the scene environment, and the preset attenuation factor is not a relatively accurate attenuation factor for the current scene).
[0028] In one optional embodiment, obtaining the distance interval between the signal receiving device and the signal transmitting device based on propagation path loss and operating frequency includes:
[0029] If the filtered RSSI is less than the first set RSSI threshold, the distance between the signal receiving device and the signal transmitting device is obtained based on the propagation path loss, the operating frequency, and the preset distance correction factor.
[0030] Through the above embodiments, when the filtered RSSI is less than the first set RSSI threshold, i.e. when the received signal is weak, a preset distance correction factor is introduced, which can improve the accuracy of distance interval calculation.
[0031] In one optional embodiment, the target position coordinates of the signal transmitting device are obtained based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals, including:
[0032] If the filtered RSSIs corresponding to multiple distance intervals satisfy the preset RSSI sequence conditions, then the reference position coordinates of the signal receiving devices corresponding to the multiple distance intervals are obtained; wherein, the RSSI sequence conditions include: the number of consecutive RSSIs not less than the second set RSSI threshold contained in the corresponding RSSI sequence meets the preset RSSI number requirement;
[0033] Based on multiple distance intervals and multiple reference position coordinates, the target position coordinates that satisfy the nonlinear constraint conditions are obtained.
[0034] Through the above embodiments, when the RSSI after filtering at multiple distance intervals meets the preset RSSI sequence conditions, i.e. when the RSSI signal is strong, the target position coordinates that meet the nonlinear constraint conditions can be obtained based on multiple distance intervals and multiple reference position coordinates.
[0035] In an optional embodiment, the method further includes:
[0036] If the RSSIs corresponding to multiple distance intervals after filtering do not meet the RSSI sequence conditions, then the mean position coordinates of the signal transmitting device are determined based on the multiple distance intervals and multiple reference position coordinates; where the mean position coordinates represent the position and orientation of the signal transmitting device.
[0037] The indicator signal receiving device moves in the direction of the position represented by the mean position coordinates until an RSSI sequence that satisfies the RSSI sequence condition exists.
[0038] Through the above embodiments, when the RSSIs after filtering at multiple distance intervals do not meet the preset RSSI sequence conditions, i.e., when the RSSI signals are weak, the signal receiving device is guided to move towards the position represented by the average position coordinates. During the movement of the signal receiving device, RSSI data with relatively strong signals are re-acquired (i.e., the RSSIs after multiple filtering meet the RSSI sequence conditions). The target position coordinates of the signal transmitting device can be calculated, effectively avoiding the technical drawback that even if the distance interval is corrected, accurate positioning cannot be achieved when the signal is weak (i.e., the RSSIs after multiple filtering do not meet the RSSI sequence conditions).
[0039] In one optional embodiment, determining the mean position coordinates of the signal transmitting device based on multiple distance intervals and multiple reference position coordinates includes:
[0040] According to the preset distance interval grouping rules, multiple distance intervals are divided into at least two distance interval groups;
[0041] Based on at least two distance interval groups and nonlinear constraints, and at least one reference position coordinate corresponding to each of the at least two distance interval groups, candidate position coordinates of at least two signal transmitting devices are obtained.
[0042] Based on the obtained coordinates of at least two candidate locations, the mean location coordinates of the signal transmitting device are determined.
[0043] Through the above embodiments, when the RSSI after filtering for each of the multiple distance intervals does not meet the preset RSSI sequence conditions, the candidate position coordinates of the signal transmitting devices corresponding to each distance interval group are still calculated through nonlinear constraints, thereby determining the mean position coordinates of the signal transmitting devices and obtaining a more accurate position orientation of the signal transmitting devices.
[0044] Secondly, this application also provides a device positioning apparatus, the apparatus comprising:
[0045] The acquisition module is used to acquire multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device during its movement; wherein each communication network status parameter set represents the network communication quality between the signal transmitting device and the signal receiving device at the corresponding moment.
[0046] The determination module is used to determine multiple distance intervals between the signal receiving device and the signal transmitting device based on the Received Signal Indication Strength (RSSI) contained in each of the multiple communication network state parameter sets, and the preset correspondence between RSSI and distance intervals.
[0047] The positioning module is used to obtain the target position coordinates of the signal transmitting device based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals; wherein, the nonlinear constraints characterize the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving devices corresponding to each of the multiple distance intervals.
[0048] In an optional embodiment, when acquiring multiple sets of communication network status parameters of the signal transmitting device collected by the signal receiving device during its movement, the acquisition module is specifically used for:
[0049] When it is determined that the signal receiving device and the signal transmitting device have established network communication, the signal receiving device is instructed to move.
[0050] The signal receiving device acquires a set of multiple communication network status parameters of the signal transmitting device at preset time intervals.
[0051] In an optional embodiment, when determining multiple distance intervals between a signal receiving device and a signal transmitting device based on the RSSIs contained in each of multiple communication network state parameter sets, and the preset correspondence between RSSIs and distance intervals, the determining module is specifically used for:
[0052] The RSSIs contained in each of the multiple communication network state parameter sets are filtered to obtain multiple filtered RSSIs.
[0053] Based on the filtered RSSIs and their corresponding relationships, multiple distance intervals between the signal receiving device and the signal transmitting device are determined.
[0054] In an optional embodiment, when determining multiple distance intervals between the signal receiving device and the signal transmitting device based on multiple filtered RSSIs and their corresponding relationships, the determining module is specifically used for:
[0055] For each set of communication network state parameters, perform the following operations:
[0056] The first communication network state parameter set is parsed to obtain the operating frequency, antenna gain, and transmit power of the signal transmitting device at the corresponding historical moment in the first communication network state parameter set; wherein, the first communication network state parameter set is any one of multiple communication network state parameter sets;
[0057] Based on the corresponding relationship, the propagation path loss is determined according to the antenna gain and transmit power, as well as the RSSI after centralized filtering of the first communication network state parameters; wherein, the propagation path loss characterizes the fading of the signal emitted by the signal transmitting device.
[0058] Based on propagation path loss and operating frequency, the distance between the signal receiving device and the signal transmitting device is obtained.
[0059] In an optional embodiment, when determining the distance interval between the signal receiving device and the signal transmitting device based on propagation path loss and operating frequency, the determining module is specifically used for:
[0060] If the filtered RSSI is less than the first set RSSI threshold, the distance between the signal receiving device and the signal transmitting device is obtained based on the propagation path loss, the operating frequency, and the preset distance correction factor.
[0061] In an optional embodiment, when obtaining the target position coordinates of the signal transmitting device based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals, the positioning module is specifically used for:
[0062] If the filtered RSSIs corresponding to multiple distance intervals satisfy the preset RSSI sequence conditions, then the reference position coordinates of the signal receiving devices corresponding to the multiple distance intervals are obtained; wherein, the RSSI sequence conditions include: the number of consecutive RSSIs not less than the second set RSSI threshold contained in the corresponding RSSI sequence meets the preset RSSI number requirement;
[0063] Based on multiple distance intervals and multiple reference position coordinates, the target position coordinates that satisfy the nonlinear constraint conditions are obtained.
[0064] In an optional embodiment, the positioning module is further configured to:
[0065] If the RSSIs corresponding to multiple distance intervals after filtering do not meet the RSSI sequence conditions, then the mean position coordinates of the signal transmitting device are determined based on the multiple distance intervals and multiple reference position coordinates; where the mean position coordinates represent the position and orientation of the signal transmitting device.
[0066] The indicator signal receiving device moves in the direction of the position represented by the mean position coordinates until an RSSI sequence that satisfies the RSSI sequence condition exists.
[0067] In an optional embodiment, when determining the average position coordinates of the signal transmitting device based on multiple distance intervals and multiple reference position coordinates, the positioning module is specifically used for:
[0068] According to the preset distance interval grouping rules, multiple distance intervals are divided into at least two distance interval groups;
[0069] Based on at least two distance interval groups and nonlinear constraints, and at least one reference position coordinate corresponding to each of the at least two distance interval groups, candidate position coordinates of at least two signal transmitting devices are obtained.
[0070] Based on the obtained coordinates of at least two candidate locations, the mean location coordinates of the signal transmitting device are determined.
[0071] Thirdly, this application provides an electronic device including a processor and a memory, wherein the memory stores program code that, when executed by the processor, causes the processor to perform the steps of the device positioning method described in the first aspect.
[0072] Fourthly, this application provides a computer-readable storage medium including program code that, when executed on an electronic device, causes the electronic device to perform the steps of the device positioning method described in the first aspect.
[0073] Fifthly, this application provides a computer program product that, when invoked by a computer, causes the computer to execute the device positioning method steps as described in the first aspect.
[0074] The beneficial effects of this application are as follows:
[0075] In the device positioning method provided in this application, since there is a preset correspondence between RSSI and distance intervals, after obtaining the RSSIs contained in each of the multiple communication network state parameter sets, multiple distance intervals between the signal receiving device and the signal transmitting device can be determined based on the obtained multiple RSSIs. In this way, when calculating the distance interval, there is no need to use the attenuation factor, which is greatly affected by the scene environment in related technologies, thereby improving the accuracy of distance interval calculation. Furthermore, based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals, the target position coordinates of the signal transmitting device are obtained, which effectively ensures the uniqueness of the obtained target position coordinates of the signal transmitting device. Obviously, this method avoids the technical drawback of randomly selecting a position coordinate from multiple obtained position coordinates as the target position coordinates in related technologies, thereby improving the accuracy of positioning the signal transmitting device (i.e., communication device).
[0076] Furthermore, other features and advantages of this application will be set forth in the following description and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description
[0077] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. In the drawings:
[0078] Figure 1 A schematic diagram illustrating a deployment scenario of STA and AP provided in an embodiment of this application;
[0079] Figure 2 This is a schematic diagram of an optional system architecture applicable to the embodiments of this application;
[0080] Figure 3 A schematic diagram illustrating the implementation process of a device positioning method provided in this application embodiment;
[0081] Figure 4 A logical diagram illustrating how to obtain a set of communication network state parameters is provided in an embodiment of this application;
[0082] Figure 5 This is a schematic flowchart illustrating a method for obtaining the distance interval between a signal receiving device and a signal transmitting device, provided in an embodiment of this application.
[0083] Figure 6 A schematic flowchart illustrating a method for obtaining an RSSI sequence provided in an embodiment of this application;
[0084] Figure 7 This application provides a schematic diagram of a specific application scenario for obtaining a set of communication network state parameters.
[0085] Figure 8 This is a schematic diagram illustrating a specific application scenario of signal strength according to an embodiment of this application;
[0086] Figure 9 A method based on the embodiments of this application is provided. Figure 3 A logical diagram;
[0087] Figure 10 This is a schematic diagram of the structure of a device positioning device provided in an embodiment of this application;
[0088] Figure 11 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0089] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments of this application. Obviously, the described embodiments are only some embodiments of the technical solutions of this application, and not all embodiments. Based on the embodiments recorded in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the technical solutions of this application.
[0090] It should be noted that in the description of this application, "multiple" is understood as "at least two". "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. A connected to B can represent: A and B directly connected, or A and B connected through C. Furthermore, in the description of this application, terms such as "first" and "second" are used only for descriptive purposes and should not be construed as indicating or implying relative importance or order.
[0091] Furthermore, the data collection, dissemination, and use in the technical solution of this application all comply with the requirements of relevant national laws and regulations.
[0092] The following explanations of some technical terms used in the embodiments of this application are provided to facilitate understanding by those skilled in the art.
[0093] (1) User Datagram Protocol (UDP): It is a protocol in the Internet protocol suite that supports a connectionless transport protocol, providing an application (APP) with a way to send encapsulated Internet Protocol (IP) data packets without establishing a connection.
[0094] (2) RSSI: Generally used to describe wireless signal strength, it refers to the signal strength when receiving wireless signals. It is related to the transmission power of the wireless module, the design of the RF front end, and the gain of the antenna. It can be used to determine the quality of the communication link and whether to increase the broadcast (signal) transmission strength.
[0095] (3) Anchor Node: In wireless sensor network node localization technology, based on whether the network node knows its own location, the network node can be divided into: anchor node (also known as beacon node) and unknown node.
[0096] (4) Kalman Filtering (KF): is an algorithm that uses the state equation of a linear system to make the optimal estimate of the system state through the system input and output observation data. Since the observation data includes the influence of noise and interference in the system, the optimal estimation can also be regarded as a filtering process. In addition, since data filtering is a data processing technique to remove noise and restore the true data, Kalman filtering can estimate the state of a dynamic system from a series of data with measurement noise when the measurement variance is known.
[0097] (5) Least Squares Method (LSM): A mathematical tool that is widely used in many disciplines such as error estimation, uncertainty, system identification and prediction, forecasting and other data processing.
[0098] (6) Service Set Identifier (SSID): This is the identifier of a Wireless Local Area Network (WLAN) used to distinguish different WLAN networks. SSID includes two types: Basic Service Set Identifier (BSSID) and Extended Service Set Identifier (ESSID), which are used to identify the Basic Service Set (BSS) and Extended Service Set (ESS), respectively.
[0099] It should be noted that BSSID is equivalent to the Media Access Control (MAC) address of each communication device (such as an AP). For example, the BSSID of an AP can be represented as xxxx.xxxx.xxxx or as xx:xx:xx:xx, where each digit of the BSSID is in hexadecimal. Furthermore, the SSID displayed by the terminal device after scanning the network is usually the ESSID.
[0100] Furthermore, based on the above explanations of terms and related terminology, the design concept of the embodiments of this application will be briefly introduced below:
[0101] As users' communication needs increase, the application scenarios for communication equipment are becoming more and more diverse. Users also have certain requirements for the location deployment of communication equipment (such as APs). There may be situations where multiple APs are deployed in one environment. When an AP in the environment fails, it is necessary to find the faulty AP, which wastes a lot of time. In addition, when users report problems such as network lag or slow network speed, it is also necessary to determine which AP is responsible to judge whether roaming is reasonable. If it is found that the AP deployment is unreasonable, it is necessary to find APs in specific areas and reinstall APs with weak network coverage in areas with strong network coverage.
[0102] For example, in augmented reality (AR) roaming projects, the location of the access point (AP) needs to be found according to requirements in order to conduct roaming tests and evaluate the quality of the roaming point (i.e., the location of the AP). Therefore, quickly locating the AP can greatly improve the efficiency of subsequent AP maintenance or debugging.
[0103] In related technologies, in order to achieve rapid location of APs, existing location technologies are mainly divided into two categories: Bluetooth-based location methods and RSSI-based location methods. Among them, Bluetooth location technology relies on the Wireless Fidelity (Wi-Fi) module and UDP receiver in the Bluetooth gateway, while RSSI location technology relies on signal attenuation models and location algorithms.
[0104] However, the above two categories of methods still have the following limitations:
[0105] 1. Bluetooth-based positioning methods require devices to have Bluetooth functionality. During the positioning process, other hardware devices besides the terminal device are usually needed, such as Bluetooth probes and UDP receivers. Furthermore, because the signal distance of Bluetooth connections is short, long-distance positioning is not possible, and the application scenarios are relatively fixed.
[0106] 2. RSSI-based positioning methods can be divided into three main categories. The first category is centroid-based positioning, whose positioning accuracy depends entirely on the selection of anchor nodes. When the anchor nodes are unevenly distributed, the positioning effect is poor and the coverage area is small. The second category is deep learning-based positioning, which requires the collection of a large RSSI dataset, that is, the collection of signal features emitted by multiple APs at each location as a training set, and the calculation process is relatively complex. The third category is least squares-based positioning, which has low positioning accuracy. When there are multiple signal values (e.g., RSSI), multiple circles intersect, resulting in multiple values. The returned result is randomly selected from these values, which leads to randomness and poor positioning performance. In addition, when the signal is weak, the ranging error is large, and this method will fail.
[0107] Currently, in order to achieve positioning over a wide range and avoid positioning accuracy relying entirely on the selection of anchor nodes and a large dataset, a positioning method based on the least squares method is usually adopted. Specifically, during the movement of the terminal device, the RSSI of the target AP communicating with the terminal device is continuously collected. After collecting a set number of RSSIs, the distance between the target AP and the terminal device corresponding to each RSSI can be determined by combining a preset attenuation factor. Then, based on the obtained distances between the target AP and the terminal device and the least squares method, the position coordinates of the target AP are determined.
[0108] Obviously, the above-mentioned communication device positioning method is prone to problems because the attenuation factor is easily affected by the scene environment (e.g., buildings). This results in the preset attenuation factor not being the most accurate attenuation factor for the current scene, and thus the distance between the target AP and the terminal device cannot be accurately obtained. Furthermore, since multiple circles may intersect when determining the location coordinates of the target AP using the least squares method, resulting in multiple location coordinates of the target AP, randomly selecting one location coordinate from the multiple obtained location coordinates cannot guarantee the accuracy of obtaining the target AP's location coordinates.
[0109] In view of this, to avoid the technical defects of related technologies, such as small coverage, positioning accuracy entirely dependent on the selection of anchor nodes, reliance on large datasets, and random positioning results, this application proposes a device positioning method, specifically including: acquiring multiple communication network state parameter sets of the signal transmitting device collected by the signal receiving device during its movement; wherein each communication network state parameter set represents the network communication quality between the signal transmitting device and the signal receiving device at the corresponding time; then, determining multiple distance intervals between the signal receiving device and the signal transmitting device based on the RSSI contained in each of the multiple communication network state parameter sets, and the preset correspondence between RSSI and distance intervals; finally, obtaining the target position coordinates of the signal transmitting device based on the multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals; wherein the nonlinear constraints represent the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving device corresponding to each of the multiple distance intervals, so as to improve the positioning accuracy of the communication device.
[0110] In particular, the preferred embodiments of this application will be described below with reference to the accompanying drawings. It should be understood that the preferred embodiments described herein are for illustration and explanation only and are not intended to limit this application. Furthermore, the embodiments of this application and the features in the embodiments can be combined with each other without conflict.
[0111] See Figure 2 As shown, this is a schematic diagram of an optional system architecture applicable to an embodiment of this application. The system includes: a signal transmitting device 201, a signal receiving device 202, and a server 203. The signal receiving device 202 can interact with the signal transmitting device 201 and the server 203 through a communication network. The communication network can employ wireless communication or wired communication methods.
[0112] For example, the signal receiving device 202 can access the network via cellular mobile communication technology and communicate with the signal transmitting device 201 and the server 203, wherein the cellular mobile communication technology includes, for example, 5th generation mobile network (5G) technology.
[0113] This application embodiment does not impose any limitation on the number of communication devices involved in the above system architecture. For example, there may be more signal receiving devices, or no signal receiving devices, or other network devices may be included, such as... Figure 2 As shown, only signal transmitting device 201, signal receiving device 202 and server 203 are described as examples. The following is a brief introduction to each of the above devices and their respective functions.
[0114] The signal transmitting device 201 is used to access at least one signal receiving device 202 and can provide communication network services, such as channels (resources), for each accessed signal receiving device 202. It can also be used to measure the signal strength between the signal transmitting device 201 and the accessed signal receiving device 202, and to evaluate the network communication quality of the communication network between the signal transmitting device 201 and the signal receiving device 202 based on the measured signal strength. For example, in the embodiments of this application, the signal transmitting device 201 can be an AP or a base station, and the signal strength can specifically be uplink RSSI.
[0115] The signal receiving device 202 is used to measure the downlink signal sent by the access signal transmitting device 201 according to the signal measurement protocol, so as to obtain the signal strength (e.g., downlink RSSI) between the signal receiving device 202 and the access signal transmitting device 201, and report the signal strength between the signal receiving device 202 and the access signal transmitting device 201 to the signal transmitting device 201.
[0116] It should also be noted that, in the embodiments of this application, the signal receiving device 202 can be a terminal device that provides voice and / or data connectivity to the user, specifically including: handheld terminal devices and vehicle-mounted terminal devices with wireless connectivity, etc.
[0117] For example, the signal receiving device 202 includes, but is not limited to: mobile phones, tablets, laptops, handheld computers, mobile internet devices (MID), wearable devices, virtual reality (VR) devices, AR devices, wireless terminal devices in industrial control, wireless terminal devices in autonomous driving, wireless terminal devices in smart grids, wireless terminal devices in transportation safety, wireless terminal devices in smart cities, or wireless terminal devices in smart homes, etc.
[0118] Furthermore, the signal receiving device 202 may have a related client installed. This client can be software, such as an application, browser, short video software, or a webpage, mini-program, etc. In this embodiment, the signal receiving device 202 can be used to send uplink signals to the signal transmitting device 201.
[0119] Server 203 can be a standalone physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms.
[0120] It is worth mentioning that, in this embodiment of the application, the server 203 is used to obtain multiple communication network status parameter sets of the signal transmitting device 201 collected by the signal receiving device 202 during the movement process, and then, based on the received signal indication strength (RSSI) included in each of the multiple communication network status parameter sets, and the preset correspondence between RSSI and distance interval, determine multiple distance intervals between the signal receiving device 202 and the signal transmitting device 201, and finally obtain the target position coordinates of the signal transmitting device 201 based on the multiple distance intervals and the nonlinear constraint conditions corresponding to the multiple distance intervals.
[0121] It should also be noted that, in this embodiment of the application, no specific limitation is made on the type of signal transmitting device. Any device that can receive RSSI can be used as a signal transmitting device, and the above-mentioned device positioning method is used to locate the signal transmitting device.
[0122] The device positioning method provided by the exemplary embodiments of this application will be described below in conjunction with the above system architecture and with reference to the accompanying drawings. It should be noted that the above system architecture is only shown to facilitate understanding of the spirit and principles of this application, and the embodiments of this application are not limited in any way in this respect.
[0123] See Figure 3 The diagram shown illustrates the implementation flow of a device positioning method provided in this application embodiment. Taking a server as an example, the specific implementation flow of this method is as follows:
[0124] S301: Acquire a set of multiple communication network status parameters of the signal transmitting device collected by the signal receiving device during its movement.
[0125] Each communication network state parameter set represents the network communication quality between the signal transmitting device and the signal receiving device at the corresponding time. In other words, the server can measure the network communication quality between the signal transmitting device and the signal receiving device based on the values of each parameter contained in the communication network parameter set.
[0126] It should be noted that the parameters included in each of the above communication network status parameter sets include, but are not limited to: RSSI recorded by the signal transmitting device, BSSID of the signal transmitting device, and operating frequency, transmit power and antenna gain of the signal transmitting device; wherein, antenna gain may specifically include: antenna transmit gain and antenna receive gain.
[0127] Specifically, when executing step S301, the server can obtain multiple communication network status parameter sets of the signal transmitting device in the following way: when it is determined that the signal receiving device and the signal transmitting device have established network communication, the server can instruct the signal receiving device to move, thereby obtaining multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device at preset time intervals.
[0128] In one alternative implementation, see [link to relevant documentation]. Figure 4 As shown, when the server determines that the signal receiving device and the signal transmitting device have established network communication, it can randomly select a candidate driving route from the preset set of candidate driving routes as the target driving route, thereby instructing the signal receiving device to move on the target driving route. At preset time intervals, the server sends communication network status acquisition commands to the signal receiving device, so that the signal receiving device can collect the communication network status parameter set of the signal transmitting device at time intervals. In this way, the server can ensure that it can obtain multiple communication network status parameter sets of the signal transmitting device, so that the location of the signal transmitting device can be achieved by analyzing and processing multiple communication network status parameter sets.
[0129] For example, each candidate driving route in the aforementioned preset candidate driving route set can be a segment of driving route obtained by randomly planning from the current position of the signal receiving device. The aforementioned preset time interval can be a sampling frequency on the order of seconds, for example, the preset time interval can be 0.5 seconds.
[0130] Optionally, when the server determines that the signal receiving device and the signal transmitting device have established network communication, it can also directly generate a random driving route based on the environmental information of the current signal receiving device and use it as the target driving route. In addition, in this embodiment, after the server drives the signal receiving device to move on the target driving route, the signal receiving device can also directly trigger itself to collect the communication network status parameter set of the signal transmitting device according to the above-mentioned preset time interval.
[0131] S302: Determine multiple distance intervals between the signal receiving device and the signal transmitting device based on the RSSI contained in each of the multiple communication network state parameter sets, and the preset correspondence between RSSI and distance intervals.
[0132] In one optional implementation, when executing step S302, after obtaining multiple sets of communication network status parameters, the server can filter the RSSIs contained in each of the multiple sets of communication network status parameters to obtain multiple filtered RSSIs. Based on the multiple filtered RSSIs and the above correspondence, multiple distance intervals between the signal receiving device and the signal transmitting device can be determined. In this way, according to the preset correspondence between RSSIs and distance intervals, the distance interval between the signal receiving device and the signal transmitting device can be accurately calculated, so that the target position coordinates can be obtained more accurately based on the accurate distance intervals.
[0133] The above correspondence represents the relationship between RSSI and other parameters in the communication network status parameter set, as well as the distance between the signal receiving device and the signal transmitting device. In other words, the server can calculate the distance between the signal receiving device and the signal transmitting device through the above correspondence and RSSI.
[0134] Specifically, the server can use a preset Kalman filter to process the RSSI data in the obtained communication network state parameter set. This can avoid the problem that the RSSI data obtained by the signal receiving device will fluctuate during the movement of the target driving route, which may cause the RSSI data of adjacent positions to be very different. This can reduce the fluctuation of RSSI data and improve the accuracy of subsequent positioning. It should be noted that in this embodiment of the application, no specific limitation is made on the type of the preset Kalman filter. For example, the preset Kalman filter can be any one of linear Kalman filtering, extended Kalman filtering, cascaded and federated Kalman filtering, unscented Kalman filtering, etc.
[0135] In one optional implementation, during the process of obtaining the distance interval between the signal receiving device and the signal transmitting device corresponding to each of the multiple filtered RSSIs based on the above correspondence and the multiple RSSIs, refer to... Figure 5 As shown, for any one of the above multiple sets of communication network state parameters, namely the first set of communication network state parameters, the following operations can be performed, and the specific implementation process is as follows:
[0136] S501: Analyze the first communication network state parameter set to obtain the operating frequency, antenna gain, and transmission power of the signal transmitting device at the corresponding historical moment in the first communication network state parameter set.
[0137] The antenna gain mentioned above may include: receiving antenna gain and transmitting antenna gain; for example, the operating frequency may be expressed as f, and the receiving antenna gain may be expressed as G. r The transmit antenna gain can be expressed as G t The transmission power can be expressed as P t .
[0138] S502: Based on the corresponding relationship, the corresponding propagation path loss is determined according to the antenna gain and transmit power, as well as the RSSI after centralized filtering of the first communication network state parameters.
[0139] The propagation path loss described above characterizes the fading of the signal emitted by the signal transmitting device.
[0140] For example, the server can obtain the corresponding propagation path loss based on the above correspondence, whereby the propagation path loss can be expressed as Lbf, and the calculation formula for the propagation path loss Lbf can be as follows:
[0141] Lbf = P t +G r +G t -RSSI
[0142] The filtered RSSI can be expressed as RSSI; it should also be noted that, in the embodiments of this application, the propagation path loss Lbf and the receiving antenna gain G are... r Transmit antenna gain G t Transmit power P t Both RSSI and decibel-milliwatt (dBm) can be units of decibel relative to one milliwatt.
[0143] S503: Based on propagation path loss and operating frequency, obtain the distance between the signal receiving device and the signal transmitting device.
[0144] For example, when executing step S503, after obtaining the propagation path loss, the server can obtain the distance interval between the signal receiving device and the signal transmitting device according to the above correspondence. Optionally, the calculation formula for the distance interval (i.e., the correspondence) is as follows:
[0145]
[0146] Where d represents the distance between the signal receiving device and the signal transmitting device, Lbf represents the propagation path loss, f represents the operating frequency of the signal transmitting device, and 27.6 is determined based on the actual scenario (e.g., a large indoor venue) and is only an example. In other words, this constant can be other values, such as 32.44 or 32.5.
[0147] Obviously, based on the above steps S501 to S503, the server can directly obtain the distance between the signal receiving device and the signal transmitting device according to the filtered RSSI and propagation path loss. This avoids the technical drawback of the commonly used signal attenuation model, which has low accuracy in calculating the distance distance (i.e., the attenuation factor is easily affected by the scene environment, and the preset attenuation factor is not a relatively accurate attenuation factor for the current scene).
[0148] For example, the commonly used signal attenuation model is the logarithmic distance loss model, and its calculation process is shown below:
[0149]
[0150] Where d is the distance between the signal receiving device (i.e., the user's location) and the signal transmitting device, RSSI(d0) is the RSSI value when the distance to the signal transmitting device is one meter, n is the signal attenuation factor, representing the rate attenuation with distance, determined by the scene environment (e.g., buildings), and X σ This represents a normal random distribution with variance σ.
[0151] Furthermore, based on the above formula, the relationship between the received signal strength (RSSI) and the transmission distance can be derived as follows:
[0152]
[0153] Here, A is a substitute for RSSI(d0).
[0154] It is not difficult to see that A and n are greatly affected by the scene environment. A is more of an empirical parameter, and the value of n is determined by the scene environment. That is, it is difficult to determine both values (i.e., the preset attenuation factor). Therefore, the above logarithmic distance loss model is usually applicable to indoor environments without large obstacles.
[0155] As can be seen, based on the method steps of S501 to S503 above, the server greatly improves the accuracy of calculating the distance interval between the signal receiving device and the signal transmitting device by replacing the logarithmic distance loss model with an improved channel (CHAN) signal attenuation model.
[0156] However, in the above correspondence of the embodiments of this application, the distance interval d and the absolute value of RSSI are exponentially related. When the absolute value of RSSI is larger, the distance interval d will be larger, and the error will be larger. Furthermore, when RSSI is less than the preset RSSI threshold, the value of the distance interval d will increase sharply. Therefore, in an optional implementation, if the RSSI after filtering is less than the first preset RSSI threshold, the distance interval between the signal receiving device and the signal transmitting device is obtained based on the propagation path loss, the operating frequency, and the preset distance correction factor, so as to further improve the calculation accuracy of the distance interval d.
[0157] For example, assuming the first set RSSI threshold is -45dBm, if the server determines that the RSSI after filtering is less than the first set RSSI threshold of -45dBm, then the calculation formula (i.e., the correspondence) for the distance interval between the signal receiving device and the signal transmitting device, based on the obtained propagation path loss, operating frequency, and preset distance correction factor, is as follows:
[0158]
[0159] Wherein, α represents the preset distance correction factor, which can be determined based on multiple experimental data. For example, after multiple experiments, it was found that the distance correction factor α usually belongs to [0.028, 0.03], and good experimental results can be obtained. It should be noted that the interval to which the above distance correction factor α belongs may change due to the number of experimental tests. That is, the above interval is not a fixed interval of the distance correction factor α. Although the above interval may change, it can ensure that a good distance correction effect is achieved.
[0160] It should also be noted that the aforementioned first RSSI threshold can also be determined from multiple experimental data.
[0161] S303: Based on multiple distance intervals and the corresponding nonlinear constraints, the target position coordinates of the signal transmitting device are obtained.
[0162] The nonlinear constraint condition characterizes the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving devices corresponding to multiple distance intervals.
[0163] It should be noted that, in the embodiments of this application, the server can obtain the reference position coordinates of the signal receiving devices corresponding to multiple distance intervals by collecting data from the signal receiving devices, or the reference position coordinates of the signal receiving devices can be collected and reported by the signal receiving devices themselves.
[0164] For example, suppose the server obtains three distance intervals, namely d1, d2, and d3, and the reference position coordinates of the signal receiving devices corresponding to each of the three distance intervals are (x1, y1), (x2, y2), and (x3, y3), respectively. Therefore, the above nonlinear constraint can be specifically expressed as the following joint equation:
[0165]
[0166] In one optional implementation, when executing step S303, after obtaining multiple distance intervals, if the filtered RSSI corresponding to each of the multiple distance intervals satisfies a preset RSSI sequence condition, then the server obtains the reference position coordinates of the signal receiving device corresponding to each of the multiple distance intervals. The RSSI sequence condition includes: the number of consecutive RSSIs in the corresponding RSSI sequence that is not less than a second preset RSSI threshold meets the preset RSSI number requirement. Thus, the target position coordinates of the signal transmitting device can be obtained based on the multiple distance intervals, the reference position coordinates of the signal receiving device corresponding to each of the multiple distance intervals, and the nonlinear constraint condition. In this way, since the nonlinear constraint condition is used to ensure the uniqueness of the target position coordinates, a unique and relatively accurate target position coordinate can be obtained.
[0167] It should be noted that, in the embodiments of this application, there is no explicit relationship between the second set RSSI threshold and the first set RSSI threshold. This is only for the sake of description. That is, the second set RSSI threshold and the first set RSSI threshold can be the same or different.
[0168] For example, assuming the second set RSSI threshold can still be -45dBm, the preset RSSI quantity requirement can be: the number of RSSIs in a continuous RSSI sequence not less than the second set RSSI threshold -45dBm is greater than 10. Therefore, after the server determines that the filtered RSSIs of multiple distance intervals meet the above conditions, it can obtain the reference position coordinates of the signal receiving devices corresponding to the multiple distance intervals. Then, based on the obtained multiple distance intervals and their corresponding reference position coordinates, as well as the nonlinear constraint conditions, the target position coordinates of the signal transmitting device can be determined.
[0169] For example, assuming that the number of RSSIs in the above continuous RSSI sequence that is not less than the second set RSSI threshold -45dBm is greater than 10, specifically represented as m RSSIs: (RSSI1, RSSI2, ..., RSSI... m Furthermore, the candidate position coordinate distribution of each of the m RSSIs corresponding to the signal receiving devices can be expressed as: (x1, y1), (x2, y2), ..., (x m ,y m Using an improved CHAN signal attenuation model, the obtained distance intervals are as follows: (d1, d2, ..., d m Therefore, with the candidate coordinates as the center, the distance interval d i By drawing a circle with the radius as the boundary, and finding the intersection points of the circles using the combined equations, the nonlinear constraints can be obtained, as follows:
[0170]
[0171] Furthermore, by subtracting the m-th equation from the (m-1)-th equation to eliminate the unknown parameters, we obtain:
[0172]
[0173] Therefore, by solving the two equations simultaneously using the least squares algorithm of nonlinear programming, the server can obtain the target location coordinates of the signal transmitting device. It should also be noted that the two equations can be simplified as follows:
[0174]
[0175]
[0176] Optionally, during step S303, after obtaining multiple distance intervals, if the filtered RSSI corresponding to each of the multiple distance intervals does not meet the RSSI sequence condition, refer to... Figure 6 As shown, the following operations are required to ensure that the target location coordinates of the signal transmitting device can be obtained:
[0177] S601: Determine the average position coordinates of the signal transmitting device based on multiple distance intervals and multiple reference position coordinates.
[0178] The mean position coordinates represent the position and direction of the signal transmitting device, that is, the orientation of the signal transmitting device relative to the current position of the signal receiving device.
[0179] In one optional implementation, when performing step S601, after the server determines that the RSSIs of the multiple distance intervals after filtering do not meet the RSSI sequence conditions, it can divide the multiple distance intervals into at least two distance interval groups according to the preset distance interval grouping rules.
[0180] For example, the above-mentioned preset distance interval grouping rule can be as follows: the multiple RSSIs in the obtained RSSI sequence are segmented, and each adjacent number of RSSIs (e.g., 3) can be grouped into a group. For example, if the number of RSSIs in the RSSI sequence is 12, then each group consists of 3 adjacent RSSIs. Therefore, when executing step S601, the server can divide the 12 distance intervals corresponding to the 12 RSSIs into 4 distance interval groups.
[0181] Furthermore, based on at least two distance interval groups and nonlinear constraints, and at least one reference position coordinate corresponding to each of the at least two distance interval groups, candidate position coordinates of at least two signal transmitting devices are obtained, and the mean position coordinates of the signal transmitting devices are determined based on the obtained at least two candidate position coordinates.
[0182] For example, taking the RSSI sequence containing 12 RSSIs as an example again, the server can obtain the candidate position coordinates of the signal transmitting device corresponding to each of the four distance interval groups based on the obtained four distance interval groups and the aforementioned nonlinear constraints. Then, by summing and averaging the obtained four candidate position coordinates, the mean position coordinates of the signal transmitting device can be determined. The specific formula for calculating the mean position coordinates is as follows:
[0183]
[0184] Among them, (x ave y ave (x) represents the mean position coordinates of the signal transmitting device. i y i ) represents the coordinates of the i-th candidate position among the four candidate position coordinates.
[0185] S602: Indicates that the signal receiving device moves in the direction represented by the mean position coordinates until an RSSI sequence that satisfies the RSSI sequence condition exists.
[0186] Specifically, during step S602, after obtaining the average position coordinates of the signal transmitting device, the server can instruct the signal receiving device to move in the direction indicated by the average position coordinates. During the process of instructing the signal receiving device to move in the direction indicated by the average position coordinates, the server acquires multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device until the signal receiving device collects an RSSI sequence that meets the RSSI sequence condition, that is, until there is a continuous RSSI sequence that is not less than the second set RSSI threshold.
[0187] Obviously, in this embodiment of the application, the method steps based on S601 to S602, that is, the method of guiding the signal receiving device to move from the current position to the direction of the signal transmitting device, and during the movement of the signal receiving device, re-collecting RSSI data with relatively strong signals (i.e., multiple filtered RSSIs satisfying the RSSI sequence condition), thereby recalculating the target position coordinates of the signal transmitting device. In this way, the technical drawback of the distance interval deduced when the signal is weak (i.e., multiple filtered RSSIs do not satisfy the RSSI sequence condition) is that it is too far, and even if the distance interval is corrected, it is impossible to achieve accurate positioning.
[0188] In one optional implementation, assuming the signal receiving device is a STA and the signal transmitting device is an AP, the server can implement indoor AP positioning based on the device positioning method provided in this application embodiment using the least squares method of nonlinear programming: calculate the distance from the current position of the STA to the AP, and then, based on the collected RSSI, determine whether to directly calculate the position of the AP or calculate the direction of the AP to guide the STA to move in the direction of the AP. During this process, RSSI is continuously collected until the collected RSSI meets the condition that the position of the AP can be directly calculated. The main steps are explained in detail below:
[0189] 1. Data Acquisition: The server connects to the target AP using a STA and collects data through the STA's AR roaming test function. The STA moves randomly along a short distance (i.e., along the target route). During this movement, the server collects the AP's communication network status parameters and its current coordinates every 0.5 seconds. The communication network status parameters include at least: the RSSI recorded by the signal transmitting device, the BSSID of the signal transmitting device, and the operating frequency, transmit power, and antenna gain of the signal transmitting device. (See [link to documentation]). Figure 7 As shown, STA starts walking from the "start" position and ends at the "end" position. The data collected during the walk is processed, and the processed data is as follows: Figure 7As shown, the content in the first box represents the STA's current coordinate information (i.e., reference position coordinates) when collecting each communication network status parameter set, and the content in the second box represents the content of the communication network status parameter set collected every 0.5 seconds.
[0190] 2. Data Processing: This involves processing the RSSI data from the communication network status parameter set collected in step 1. Since RSSI data fluctuates during STA movement, the RSSI values of adjacent locations may differ significantly. Therefore, a preset Kalman filter can be used to filter the RSSI values, reducing fluctuations in RSSI data and improving the accuracy of AP positioning.
[0191] 3. Distance Calculation: Based on the RSSI value processed in step 2 and the improved CHAN signal attenuation model, calculate the distance from each STA location to the AP.
[0192] 4. Filter RSSIs: Filter out the number of RSSIs in step 2 that are consecutively greater than or equal to -45 dBm, and record the number of RSSIs as s.
[0193] 5. Determine if s is greater than 10 (obtain the RSSI sequence containing the number of RSSIs that meets the preset RSSI number requirement). If it is greater than 10, it means that the signal strength in the trajectory is strong. Use the least squares method of nonlinear programming to directly locate and calculate the position of AP.
[0194] 6. If s is not greater than 10, it indicates that the signal in the trajectory is relatively weak. See [reference needed]. Figure 8 As shown in the three-point trajectory diagram, when the signal is weak (such as...), Figure 8 As shown on the right, the distance to the AP calculated using the improved CHAN signal attenuation model is relatively large, which is equivalent to a larger radius of the circle. The intersection of the three circles (as shown on the right) Figure 8 The black dot in the middle right corner (i.e., the candidate position coordinates mentioned in the embodiments of this application) will be far from the signal point, resulting in a large error; when the signal is strong (e.g. Figure 8 As shown on the left), the distance to the AP calculated using the improved CHAN signal attenuation model is smaller, which is equivalent to a smaller radius of the circle. The intersection of the three circles (as shown on the left) Figure 8 The black dot in the left center (i.e., the target location coordinates mentioned in the embodiments of this application) is relatively close to the trajectory point, resulting in a smaller error; it should be noted that... Figure 8 The value in is RSSI.
[0195] However, through comparison, it can be seen that even Figure 8 The distance error on the right is larger, but the located black dot is in the upper right of the trajectory map, which is consistent with... Figure 8 The approximate position of the black dot on the left indicates that when the signal is weak, the positioning error is large, but the general direction is accurate. Therefore, the STA can be guided to move towards the black dot.
[0196] Furthermore, in order to further determine the accuracy of the direction of AP, in this embodiment of the application, the entire RSSI data is segmented and processed. Each group of three adjacent data points is used as a group. The least squares method of nonlinear programming, which is the same as in step 5, is used to calculate the AP position of each group of data. The mean of the calculation results of all groups of data is used as the direction position of AP. STA moves from the current position to the direction position of AP. During the movement, a new segment of data will be collected. At this time, the loop returns to step 3, and finally the position coordinates of AP are calculated.
[0197] Therefore, by adopting the above method, the nonlinear programming positioning method proposed in this application solves the problem of randomness in the returned results. This method introduces nonlinear constraints on the basis of the least squares method. Since the least squares method obtains the estimated value of the position of the node to be determined by minimizing the sum of squares of the error matrix, there will be multiple estimated values. This method will randomly return one of the results, and the random positioning results lead to very low positioning accuracy. Therefore, nonlinear constraints are introduced on this basis, so that the returned result must satisfy the sum of squares of the original equation, which can filter out more accurate results.
[0198] Moreover, the improved CHAN signal attenuation model avoids the technical drawback of the traditional signal attenuation model, where the distance calculation formula is an exponential function when calculating the distance between the signal transmitting device (or transmitting signal) and the signal receiving device (or receiving signal). Therefore, when the RSSI is large, the calculated distance is far greater than the actual distance. Through experiments, the proportional coefficient relationship of the distance when the RSSI is weak was calculated, and a linear transformation was used to adjust the distance, which improved the accuracy of the positioning results and the coverage of the algorithm.
[0199] Furthermore, the device positioning method proposed in this application embodiment achieves accurate positioning when the signal is weak. That is, when the signal is weak (the distance between the STA and the AP is far), even if the distance is corrected, it is impossible to accurately position the AP. At this time, a method of guiding the STA to move is adopted to guide the STA from its current position to the direction of the AP. During the movement, RSSI data with a relatively strong signal will be collected again. At this time, the position of the AP is recalculated, which can greatly improve the accuracy of AP positioning.
[0200] In one alternative implementation, based on the device positioning method steps of S301 to S303 described above, refer to... Figure 9As shown, this is a logical schematic diagram of a device positioning method provided in an embodiment of this application. After the server obtains multiple communication network status parameter sets (e.g., Stat.Num.1, Stat.Num.2, ..., Stat.Num.N) collected by the signal receiving device during its movement, it can determine multiple distance intervals (e.g., d1, d2, ..., dN) between the signal receiving device and the signal transmitting device based on the RSSI (which can be RSSI.1, RSSI.2, ..., RSSI.N) contained in each of the multiple communication network status parameter sets, as well as the preset correspondence between RSSI and distance intervals. Thus, based on the multiple distance intervals (i.e., d1, d2, ..., dN) and the nonlinear constraints corresponding to the multiple distance intervals, the target position coordinates of the signal transmitting device are obtained.
[0201] In summary, in the device positioning method provided in this application, since there is a preset correspondence between RSSI and distance intervals, after obtaining the RSSIs contained in each of the multiple communication network state parameter sets, multiple distance intervals between the signal receiving device and the signal transmitting device can be determined based on the obtained multiple RSSIs. In this way, when calculating the distance interval, there is no need to use the attenuation factor, which is greatly affected by the scene environment in related technologies, thereby improving the accuracy of distance interval calculation. Furthermore, based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals, the target position coordinates of the signal transmitting device are obtained, effectively ensuring the uniqueness of the obtained target position coordinates of the signal transmitting device. Obviously, this method avoids the technical drawback of randomly selecting a position coordinate from multiple obtained position coordinates as the target position coordinates in related technologies, thereby improving the accuracy of positioning the signal transmitting device (i.e., communication device).
[0202] Furthermore, based on the same technical concept, embodiments of this application provide a device positioning apparatus for implementing the above-described method flow of embodiments of this application. See also... Figure 10 As shown, the device positioning apparatus includes: an acquisition module 1001, a determination module 1002, and a positioning module 1003, wherein:
[0203] The acquisition module 1001 is used to acquire multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device during the movement process; wherein, each communication network status parameter set represents: the network communication quality between the signal transmitting device and the signal receiving device at the corresponding time;
[0204] The determining module 1002 is used to determine multiple distance intervals between the signal receiving device and the signal transmitting device based on the Received Signal Indication Strength (RSSI) contained in each of the multiple communication network status parameter sets, and the preset correspondence between RSSI and distance intervals.
[0205] The positioning module 1003 is used to obtain the target position coordinates of the signal transmitting device based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals; wherein, the nonlinear constraints characterize the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving devices corresponding to each of the multiple distance intervals.
[0206] In an optional embodiment, when acquiring multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device during its movement, the acquisition module 1001 is specifically used for:
[0207] When it is determined that the signal receiving device and the signal transmitting device have established network communication, the signal receiving device is instructed to move.
[0208] The signal receiving device acquires a set of multiple communication network status parameters of the signal transmitting device at preset time intervals.
[0209] In an optional embodiment, when determining multiple distance intervals between a signal receiving device and a signal transmitting device based on the RSSIs contained in each of multiple communication network state parameter sets, and the preset correspondence between RSSIs and distance intervals, the determining module 1002 is specifically used for:
[0210] The RSSIs contained in each of the multiple communication network state parameter sets are filtered to obtain multiple filtered RSSIs.
[0211] Based on the filtered RSSIs and their corresponding relationships, multiple distance intervals between the signal receiving device and the signal transmitting device are determined.
[0212] In an optional embodiment, when determining multiple distance intervals between the signal receiving device and the signal transmitting device based on multiple filtered RSSIs and their corresponding relationships, the determining module 1002 is specifically used for:
[0213] For each set of communication network state parameters, perform the following operations:
[0214] The first communication network state parameter set is parsed to obtain the operating frequency, antenna gain, and transmit power of the signal transmitting device at the corresponding historical moment in the first communication network state parameter set; wherein, the first communication network state parameter set is any one of multiple communication network state parameter sets;
[0215] Based on the corresponding relationship, the propagation path loss is determined according to the antenna gain and transmit power, as well as the RSSI after centralized filtering of the first communication network state parameters; wherein, the propagation path loss characterizes the fading of the signal emitted by the signal transmitting device.
[0216] Based on propagation path loss and operating frequency, the distance between the signal receiving device and the signal transmitting device is obtained.
[0217] In an optional embodiment, when determining the distance interval between the signal receiving device and the signal transmitting device based on propagation path loss and operating frequency, the determining module 1002 is specifically used for:
[0218] If the filtered RSSI is less than the first set RSSI threshold, the distance between the signal receiving device and the signal transmitting device is obtained based on the propagation path loss, the operating frequency, and the preset distance correction factor.
[0219] In an optional embodiment, when obtaining the target position coordinates of the signal transmitting device based on multiple distance intervals and the nonlinear constraints corresponding to the multiple distance intervals, the positioning module 1003 is specifically used for:
[0220] If the filtered RSSIs corresponding to multiple distance intervals satisfy the preset RSSI sequence conditions, then the reference position coordinates of the signal receiving devices corresponding to the multiple distance intervals are obtained; wherein, the RSSI sequence conditions include: the number of consecutive RSSIs not less than the second set RSSI threshold contained in the corresponding RSSI sequence meets the preset RSSI number requirement;
[0221] Based on multiple distance intervals and multiple reference position coordinates, the target position coordinates that satisfy the nonlinear constraint conditions are obtained.
[0222] In an optional embodiment, the positioning module 1003 is further configured to:
[0223] If the RSSIs corresponding to multiple distance intervals after filtering do not meet the RSSI sequence conditions, then the mean position coordinates of the signal transmitting device are determined based on the multiple distance intervals and multiple reference position coordinates; where the mean position coordinates represent the position and orientation of the signal transmitting device.
[0224] The indicator signal receiving device moves in the direction of the position represented by the mean position coordinates until an RSSI sequence that satisfies the RSSI sequence condition exists.
[0225] In an optional embodiment, when determining the average position coordinates of the signal transmitting device based on multiple distance intervals and multiple reference position coordinates, the positioning module 1003 is specifically used for:
[0226] According to the preset distance interval grouping rules, multiple distance intervals are divided into at least two distance interval groups;
[0227] Based on at least two distance interval groups and nonlinear constraints, and at least one reference position coordinate corresponding to each of the at least two distance interval groups, candidate position coordinates of at least two signal transmitting devices are obtained.
[0228] Based on the obtained coordinates of at least two candidate locations, the mean location coordinates of the signal transmitting device are determined.
[0229] Based on the same technical concept, embodiments of this application also provide an electronic device that can implement the device positioning method flow provided in the above embodiments of this application. In one embodiment, the electronic device may be a server, a terminal device, or other electronic equipment. Figure 11 As shown, the electronic device may include:
[0230] At least one processor 1101 and a memory 1102 connected to at least one processor 1101. In this embodiment, the specific connection medium between the processor 1101 and the memory 1102 is not limited. Figure 11 The example shown is the connection between processor 1101 and memory 1102 via bus 1100. Bus 1100 is... Figure 11 The connections between other components are shown in thick lines only and are not intended to be limiting. Bus 1100 can be divided into address bus, data bus, control bus, etc., for ease of representation. Figure 11 The term 1101 is represented by a single thick line, but this does not imply that there is only one bus or one type of bus. Alternatively, the processor 1101 may also be referred to as a controller; there is no restriction on the name.
[0231] In this embodiment, memory 1102 stores instructions executable by at least one processor 1101. By executing the instructions stored in memory 1102, at least one processor 1101 can execute a device positioning method described above. Processor 1101 can implement... Figure 10 The functions of each module in the device shown.
[0232] The processor 1101 is the control center of the device. It can connect to various parts of the control device through various interfaces and lines. By running or executing instructions stored in memory 1102 and calling data stored in memory 1102, the processor can perform various functions and process data, thereby monitoring the device as a whole.
[0233] In one possible design, processor 1101 may include one or more processing units. Processor 1101 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may also not be integrated into processor 1101. In some embodiments, processor 1101 and memory 1102 may be implemented on the same chip; in some embodiments, they may also be implemented on separate chips.
[0234] The processor 1101 can be a general-purpose processor, such as a CPU, digital signal processor, application-specific integrated circuit, field-programmable gate array or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of a device positioning method disclosed in the embodiments of this application can be directly manifested as execution by a hardware processor, or execution by a combination of hardware and software modules within the processor.
[0235] Memory 1102, as a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. Memory 1102 may include at least one type of storage medium, such as flash memory, hard disk, multimedia card, card-type memory, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic memory, magnetic disk, optical disk, etc. Memory 1102 can be any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited thereto. In the embodiments of this application, memory 1102 can also be a circuit or any other device capable of implementing storage functions for storing program instructions and / or data.
[0236] By designing and programming the processor 1101, the code corresponding to the device positioning method described in the foregoing embodiments can be embedded into the chip, thereby enabling the chip to execute the code during operation. Figure 3 The steps of a device positioning method according to the illustrated embodiment are described below. How to design and program the processor 1101 is a technique well-known to those skilled in the art and will not be elaborated upon here.
[0237] Based on the same inventive concept, embodiments of this application also provide a storage medium storing computer instructions that, when executed on a computer, cause the computer to perform a device positioning method described above.
[0238] In some possible implementations, this application also provides a device positioning method that can be implemented as a program product including program code, which, when the program product is run on a device, causes the control device to perform the steps of a device positioning method according to various exemplary embodiments of this application as described above.
[0239] It should be noted that although several units or sub-units of the device have been mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to embodiments of this application, the features and functions of two or more units described above can be embodied in one unit. Conversely, the features and functions of one unit described above can be further divided and embodied by multiple units.
[0240] Furthermore, although the operations of the method of this application are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all the operations shown must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.
[0241] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0242] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a server, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0243] Program code for performing the operations of this application can be written using any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can be executed entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0244] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0245] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A method for positioning equipment, characterized in that, include: The signal receiving device acquires multiple sets of communication network status parameters of the signal transmitting device during its movement; each set of communication network status parameters represents the network communication quality between the signal transmitting device and the signal receiving device at a corresponding moment. Based on the Received Signal Indication Strength (RSSI) contained in each of the multiple communication network state parameter sets, and the preset correspondence between RSSI and distance intervals, multiple distance intervals between the signal receiving device and the signal transmitting device are determined. Based on the plurality of distance intervals and the nonlinear constraints corresponding to the plurality of distance intervals, the target position coordinates of the signal transmitting device are obtained; wherein, the nonlinear constraints characterize the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving device corresponding to each of the plurality of distance intervals.
2. The method as described in claim 1, characterized in that, The acquisition of multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device during movement includes: When it is determined that the signal receiving device has established network communication with the signal transmitting device, the signal receiving device is instructed to move. The signal receiving device acquires a set of multiple communication network status parameters of the signal transmitting device at preset time intervals.
3. The method as described in claim 1, characterized in that, The step of determining multiple distance intervals between the signal receiving device and the signal transmitting device based on the RSSIs contained in each of the multiple communication network state parameter sets, and the preset correspondence between RSSIs and distance intervals, includes: The RSSIs contained in each of the multiple communication network state parameter sets are filtered to obtain multiple filtered RSSIs. Based on the multiple RSSIs after filtering and the corresponding relationship, multiple distance intervals between the signal receiving device and the signal transmitting device are determined.
4. The method as described in claim 3, characterized in that, The step of determining multiple distance intervals between the signal receiving device and the signal transmitting device based on the filtered multiple RSSIs and the corresponding relationship includes: For each of the multiple sets of communication network state parameters, perform the following operations: The first communication network state parameter set is parsed to obtain the operating frequency, antenna gain, and transmit power of the signal transmitting device at a historical moment corresponding to the first communication network state parameter set; wherein, the first communication network state parameter set is any one of the plurality of communication network state parameter sets; Based on the aforementioned correspondence, the propagation path loss is determined according to the antenna gain, the transmit power, and the RSSI after centralized filtering of the first communication network state parameters; wherein, the propagation path loss characterizes the fading of the signal emitted by the signal transmitting device. Based on the propagation path loss and the operating frequency, the distance between the signal receiving device and the signal transmitting device is obtained.
5. The method as described in claim 4, characterized in that, The step of obtaining the distance interval between the signal receiving device and the signal transmitting device based on the propagation path loss and the operating frequency includes: If the filtered RSSI is less than the first set RSSI threshold, the distance interval between the signal receiving device and the signal transmitting device is obtained based on the propagation path loss, the operating frequency, and the preset distance correction factor.
6. The method according to any one of claims 1-5, characterized in that, The step of obtaining the target position coordinates of the signal transmitting device based on the plurality of distance intervals and the nonlinear constraints corresponding to the plurality of distance intervals includes: If the filtered RSSI corresponding to each of the plurality of distance intervals satisfies a preset RSSI sequence condition, then the reference position coordinates of the signal receiving device corresponding to each of the plurality of distance intervals are obtained; wherein, the RSSI sequence condition includes: the number of consecutive RSSIs not less than a second preset RSSI threshold contained in the corresponding RSSI sequence meets a preset RSSI number requirement; Based on the multiple distance intervals and the obtained multiple reference position coordinates, the target position coordinates that satisfy the nonlinear constraint conditions are obtained. or, If the filtered RSSI corresponding to each of the plurality of distance intervals does not satisfy the RSSI sequence condition, then the mean position coordinates of the signal transmitting device are determined based on the plurality of distance intervals and the plurality of reference position coordinates; wherein, the mean position coordinates represent the position orientation of the signal transmitting device; The signal receiving device is instructed to move in the direction represented by the mean position coordinates until an RSSI sequence that satisfies the RSSI sequence condition exists.
7. The method as described in claim 6, characterized in that, Determining the mean position coordinates of the signal transmitting device based on the plurality of distance intervals and the plurality of reference position coordinates includes: According to the preset distance interval grouping rules, the multiple distance intervals are divided into at least two distance interval groups; Based on the at least two distance interval groups and the nonlinear constraint conditions, and at least one reference position coordinate corresponding to each of the at least two distance interval groups, at least two candidate position coordinates of the signal transmitting device are obtained; Based on the obtained coordinates of at least two candidate locations, the mean location coordinates of the signal transmitting device are determined.
8. A device positioning apparatus, characterized in that, include: The acquisition module is used to acquire multiple communication network status parameter sets of the signal transmitting device collected by the signal receiving device during its movement; wherein each communication network status parameter set represents the network communication quality between the signal transmitting device and the signal receiving device at the corresponding time. The determination module is used to determine multiple distance intervals between the signal receiving device and the signal transmitting device based on the Received Signal Indication Strength (RSSI) included in each of the multiple communication network state parameter sets, and the preset correspondence between RSSI and distance intervals. The positioning module is used to obtain the target position coordinates of the signal transmitting device based on the plurality of distance intervals and the nonlinear constraints corresponding to the plurality of distance intervals; wherein the nonlinear constraints characterize the positional relationship between the target position coordinates and the reference position coordinates of the signal receiving device corresponding to each of the plurality of distance intervals.
9. An electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1-7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1-7.
Citation Information
Patent Citations
Automatic seamless context sharing across multiple devices
CN104782220A
Indoor terminal positioning method and related device
CN110493715A