The disclosure relates to Wireless Local Area Network (WLAN) technology, particularly to a method and device for selecting a positioning access point (AP).
A terminal may move freely in a WLAN and may be positioned on different occasions. For example, a patient may be positioned in medical examination, a target customer may be positioned in a shopping mall, and the storage location of goods may be positioned in intelligent warehousing. WLAN positioning may be applied in some areas outside the covering of the satellite navigation system such as Global Positioning System (GPS) and the Beidou navigation system, and provide support in many application fields.
One or more access points (APs) may be deployed in a wireless local area network (WLAN), and a terminal may access the WLAN through an AP associated with the terminal. By using WLAN technology, terminal positioning may be performed in a WLAN. For example, one way for positioning a terminal may be triangular positioning. In triangular positioning, an AP for positioning a terminal may be selected from multiple APs in a WLAN, the selected AP may be termed as a “positioning AP”, the distance from the positioning AP to the terminal may be calculated, and the position of the terminal may be determined based on the coordinates of the positioning AP and the calculated distance. Examples in the disclosure will focus on how to select a positioning AP. The method for selecting a positioning AP according to the disclosure may not only be applicable to the case of performing terminal positioning using the triangular positioning, but also applicable to other terminal positioning techniques.
At block 201, a positioning server may acquire at least one candidate AP set from an initial AP set, wherein each of the at least one candidate AP set may include a preset number of APs enclosing a terminal to be positioned.
At block 202, the positioning server may select a target AP set from the at least one candidate AP set, wherein, a distance from each of the AP included in the target AP set to the terminal is less than a preset threshold, and may determine the preset number of APs in the target AP set as positioning APs for positioning the terminal.
According to the method for selecting a positioning AP as illustrated in
In block 201, at least one candidate AP set including a preset number of APs may be acquired from the initial AP set. For example, when the preset number is three, three positioning APs are used in triangular positioning. As illustrated in
In the three AP sets, J1 and J2 may be selected as candidate AP sets, but J3 may not be selected. This is because as a candidate AP set, it should enclose the terminal to be positioned.
The term “enclose” means that, when APs in an AP set are sequentially connected to form a polygon, the terminal to be positioned is located within the polygon. As illustrated in
At block 202, a target AP set may be selected from the at least one candidate AP set acquired in block 201, wherein an AP in the target AP set may be used as a positioning AP, and a distance from the target AP set to the terminal is less than a preset threshold. The preset threshold may indicate that a candidate AP set is selected as close to the terminal to be positioned as possible. Referring to
Since the distance from the positioning AP to the terminal is to be measured in triangular positioning, and according to the principle of signal attenuation, the distance measuring may be more accurate when the positioning AP is relatively closer to the terminal, a candidate AP set may be selected as close to the terminal 11 as possible. According to the examples of the disclosure, a threshold which represents a distance closer to the terminal 11 may be preset. Based on the preset threshold, an AP set relatively farther from the terminal 11 may be excluded from the at least one candidate AP set acquired in block 201, such that a candidate AP set closer to the terminal 11 may be obtained as a target AP set among the at least one candidate AP set. The target AP set may be, for example, a candidate AP set closest to the terminal 11, or a candidate AP set which is still closer to the terminal 11 although not being the closest.
By processes in blocks 201 and 202, a target AP set including a preset number of positioning APs may be obtained. The positioning APs in the target AP set may enclose the terminal to be positioned and be closer to the terminal to be positioned, such that the positioning calculation result may be more accurate for the terminal to be positioned.
The process of selecting a positioning AP as illustrated in
The coordinates of each of the APs deployed in the WLAN are known on the positioning server. For example, after the APs are deployed, the coordinates of each of the APs may be stored onto the positioning server. The positioning server may acquire an initial position of the terminal to be positioned, wherein the initial position may be roughly estimated according to an AP associated with the terminal to be positioned. For example, when the terminal to be positioned associates with an AP, the AP may record information (such as terminal identification) about the terminal to be positioned and transmit the information to an upper layer device such as an access controller (AC). For example, the AP may upload the information about the terminal to be positioned onto the AC so that the AC may learn which AP is associated with the terminal to be positioned. The AC may also transmit the information about the AP associated with the terminal to be positioned to the positioning server. Since the coordinates of each of the APs are known to the positioning server, and each of the APs has certain coverage, and a terminal may associate with an AP only when the terminal is in the coverage of the AP, thus the initial position of the terminal to be positioned may be roughly estimated.
Since the coordinates of each of the APs and the initial position of the terminal to be positioned have been known, the positioning server may perform the process as illustrated in
In examples of the disclosure, the positioning server may select a positioning AP by executing machine executable instructions. For example, the positioning server may be mounted with positioning monitor software. The positioning monitor software may acquire the coordinates of each of the APs in a monitor network and the initial position of the terminal to be positioned, and perform the process in
At block 401, a line segment set including a plurality of line segments may be acquired, wherein each of the line segments is formed by connecting every two APs in an initial AP set.
At block 402, at least one line segment subset may be selected from the line segment set, wherein line segments in each line segment subset may be connected to form a N-polygon, and the N is equal to a preset number defined for positioning APs.
At block 403, a line segment subset which forms a N-polygon enclosing the terminal to be positioned may be selected from the line segment subsets, wherein the AP set corresponding to the selected line segment subset is determined as a candidate AP set.
At block 404, the candidate AP set closest to the terminal to be positioned may be selected as a target AP set, wherein APs in the target AP set are used as positioning APs.
In block 401, suppose that the positioning server operates positioning monitor software, the positioning monitor software may load the coordinates of APs, wherein the APs may be APs deployed in the WLAN which the terminal to be positioned accesses, and may be APs in the initial AP set (e.g., part or all of APs in the initial AP set). Referring to
In the examples of the disclosure, the positioning server may acquire multiple line segments by connecting every two of the above seven APs according to the loaded AP coordinates. As illustrated in
In yet another example, some overlong line segments may be excluded from the line segment set illustrated in
The length threshold represents a desired maximum distance between two APs and may be determined according to the coordinates of the APs in the two-dimensional positioning environment. And it may achieve better positioning effect to use the APs between which mutual distance is less than the length threshold for terminal positioning. If the length of a line segment is equal to or greater than the length threshold, it may be removed from the line segment set. For example, in
In block 402, at least one line segment subset may be selected from the line segment set obtained in block 401, and line segments in the line segment subset may be connected to form a quadrilateral, that is, the line segment subset includes four APs. For example, referring to
For example, a line segment subset which may form a convex quadrilateral may be selected from the line segment set acquired in block 401 in the following way. Firstly, two line segments which may form a quadrilateral may be selected. For example, any two line segments in the line segment set may be selected, wherein both ends of each line segment may correspond to two APs. Then the two line segments may be determined whether to share the same end point. If they do not share the same end point, it indicates that the two line segments may form a quadrilateral. As illustrated in
In block 403, the positioning server may further, from the three convex quadrilaterals of AP 1-AP 2-AP 3-AP 4, AP 1-AP 2-AP 4-AP 5 and AP 2-AP 3-AP 4-AP 5, select a convex quadrilateral enclosing the terminal 51 to be positioned, that is, select a line segment subset in which line segments may be connected to form a convex quadrilateral enclosing the terminal 51. If a line segment subset satisfies the above requirement for forming a convex quadrilateral enclosing the terminal, then the AP set corresponding to the line segment subset may be used as a candidate AP set. For example, as illustrated in
In this block, the positioning server may determine whether the convex N-polygon (e.g. convex quadrilateral) acquired in block 402 may enclose the terminal 51 by the cross multiply algorithm in the vector calculation. The principle of the cross multiply algorithm is given as follows. Each side aj (j=0, 1, . . . , N-1) of a convex N-polygon may be sequentially configured as a vector Vj in a clockwise (or counterclockwise) direction. For each vertex Nj of the convex N-polygon, a vector Qj may be configured from the vertex Nj to the decision point O (for example, the terminal 51). Then the cross product of the two vectors Vj and Qj with respect to each vertex Nj may be obtained as a vector product Cj. If the vector product Cj for each vertex Nj indicates the same direction in the left-hand coordinate system or the right-hand coordinate system, the decision point 0 may be determined enclosed by the convex N-polygon. Other determination techniques may be also adopted besides the above cross multiply algorithm.
In block 404, the positioning server may further select a target AP set from the candidate AP sets enclosing the terminal 51 acquired in block 403, and APs in the target AP set may be used as positioning APs for positioning a terminal. For example, a candidate AP set closest to the terminal to be positioned may be selected as a target AP set. For example, as illustrated in
For example, it may be determined which of the two candidate AP sets [AP 1, AP 2, AP 3, AP 4] and [AP 1, AP 2, AP 4, AP 5] acquired in block 403 is closer to the terminal 51 in the following way. Taking the AP set illustrated in
In other examples, the distance from an AP set to the terminal may be calculated and evaluated in other ways. The AP set closest to the terminal to be positioned is set as a target AP set in the examples of the disclosure. Or the AP set relatively closer (not closest) to the terminal to be positioned may be used for positioning the terminal (in such a case, although the positioning precision may be not so good as the AP set closest to the terminal, the positioning result is acceptable).
In yet another example, a candidate AP set in which each AP has a similar distance to the terminal to be positioned may be used as a target AP set. For example, there are two candidate AP sets D1 and D2, each of which includes three APs enclosing the terminal to be positioned. And wherein, the three APs in the D1 have a similar distance to the terminal to be positioned, and the three APs in the D2 have a greater distance differential to the terminal to be positioned (for example, two APs are closer to the terminal, and the remaining one AP is a little far from the terminal). Then D1 may be selected as a target AP set since the D1 has a better positioning effect than D2. The above distance evaluation may be to calculate the mean square deviation of the distances from each of the candidate AP sets to the terminal to be positioned, and select the candidate AP set having the smallest mean square deviation as a target AP set. And the calculation of the mean square deviation may adopt a common way, thus the description is omitted here.
In the examples of the disclosure, the terminal to be positioned and the APs may locate on the same positioning plane. For example, assume multiple APs are deployed in each floor of a multi-floored building, if a terminal on the third floor is to be positioned, the APs and the terminal to be positioned in a 2-dimensional positioning environment described in the previous examples (such as
In another example of the disclosure, the positioning server may in advance calculate which positioning APs may be selected for a terminal located in a preset region, and store the calculating result, that is, the correspondence between the preset region and the target AP set. Thus, when receiving a positioning request for a terminal located in a certain region, the positioning server may quickly find positioning APs corresponding to the terminal according to the stored calculation result, thus improving the positioning efficiency.
For example, referring to
AP set corresponding to the determined grid may be found by looking up the stored correspondence and the positioning APs in the target AP set may be used to position the terminal, thus quickening the positioning process.
According to the method for selecting a positioning AP in the above example, a device for selecting a positioning AP may be logically divided into modules as illustrated in
The selecting module 1001 may acquire at least one candidate AP set from an initial AP set, wherein each of the at least one candidate AP set may include a preset number of APs enclosing the terminal to be positioned.
The AP determining module 1002 may select a target AP set from the at least one candidate AP set, wherein a distance from each of the APs in the target AP set to the terminal is less than a preset threshold, and the AP determining module 1002 may determine the preset number of APs included in the target AP set as positioning APs for positioning a terminal.
In the device for selecting a positioning AP illustrated in
The line segment acquiring unit 1101 may acquire a line segment set including multiple line segments, wherein each of the line segments is formed by connecting every two APs in the initial AP set.
The line segment selecting unit 1102 may select at least one line segment subset from the line segment set. If the line segments in each of the at least one line segment subset may connect to form a N-polygon and the N-polygon may enclose the terminal to be positioned, the AP set corresponding to each line segment subset may be determined as the candidate AP set, and the N is equal to the preset number.
In another example, the line segment acquiring unit 1101 may further remove a line segment of a length equal to or greater than a length threshold from the above line segment set.
In yet another example, as illustrated in
The first distance measuring unit 1103 may calculate, for each candidate AP set, the distances between each AP of the candidate AP set and the terminal to be positioned.
The first selection unit 1104 may select a candidate AP set closest to the terminal to be positioned as a target AP set based on the calculated distances.
Or in yet another example, as illustrated in
The second distance measuring unit 1105 may calculate, with respect to each of the candidate AP sets, the mean square deviation of the distance between the candidate AP set and the terminal to be positioned.
The second selection unit 1106 may select a candidate AP set having the smallest mean square deviation as a target AP set.
For simplicity of description, the specific operating process of the above-mentioned device and units may refer to the description about corresponding process in the above method examples, thus omitted here.
The device and method in the examples of the disclosure are merely illustrative, and may also adopt other ways. For example, the device described above is merely illustrative, and the function units of the device are only a logical function division, and may also adopt other division techniques. For example, some units or components may be combined or integrated into another system, or some features may be omitted or not implemented. Besides, the illustrated or described direct or indirect coupling or communication connection may be through some communication interfaces, and the indirect coupling or communication connection between devices or units may be electrical, mechanical or in other form.
The units illustrated as separate components may be or may be not physically separate, and the component displayed as a unit may be or may be not a physical unit, that is, may be located in one place or distributed to multiple network units. Part or all of units may be selected to achieve the objective of the disclosure according to practical needs.
Further, the functional units in the examples of the disclosure may be integrated into one processing unit, or be separate physical units, or two or more units may be integrated into one unit.
If the functions in the device or method are implemented in software functional units and sold or used as an integrated product, these functions may be stored into a machine readable storage medium. Based on such understanding, the substantial part of the technical solution according to the disclosure, which make contributions to the prior art, or other part may be embodied in a software product. The software product may be stored into a storage medium, comprising instructions to cause a computer device (personal computer (PC), server or network device) to execute part or all of blocks in the method according to each of the examples in the disclosure. The above mentioned storage medium may include USB flash disk, mobile hard disk drive, read-only memory (ROM), random access memory (RAM), magnetic disk or optic disk or other storage medium which may store program codes.
The foregoing examples are merely illustrative but not intended to limit the disclosure, and any modifications, equivalent substitutions, adaptations, thereof made without departing from the spirit and scope of the disclosure shall be encompassed in the claimed scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
201510114888.6 | Mar 2015 | CN | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2016/076365 | 3/15/2016 | WO | 00 |