Novel RFID positioning system based on cubic spline interpolation and its use method
By using cubic spline interpolation method in the RFID positioning system for nonlinear interpolation, the RSSI value of the virtual reference tag is obtained, which solves the problem of low positioning accuracy in complex environments of the existing RFID positioning system, and achieves higher positioning accuracy and lower positioning errors.
Patent Information
- Application Number
- CN201910927124.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-01-15
- Publication Date
- 2025-03-28
- Estimated Expiration
- 2040-01-15
AI Technical Summary
In complex indoor environments, the existing RFID positioning system has large positioning errors and low positioning accuracy due to factors such as obstacle interference and object movement.
A novel RFID positioning system based on cubic spline interpolation is adopted, and the RSSI value of the virtual reference tag is obtained through a nonlinear interpolation method, and the cubic spline interpolation method is used to approximate the adjacent nodes by cubic polynomial, and smoothness is ensured at the connections of each node.
It improves the positioning accuracy of the RFID system, reduces positioning errors, and can achieve autonomous positioning of target tags in complex indoor environments.
Smart Images

Figure CN110888107B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of wireless positioning, and in particular relates to a novel RFID positioning system based on cubic spline interpolation and a use method thereof. Background Art
[0002] RFID (Radio Frequency Identification) technology, also known as wireless radio frequency identification, is a communication technology that can identify specific targets and read and write related data through radio signals without establishing mechanical or optical contact between the identification system and the specific target. At present, radio frequency identification technology has been widely used in production, logistics, transportation and other application fields, and has broad application prospects in unmanned automatic management fields such as positioning tracking and automatic scanning. In particular, as the concept of "Internet of Things" (IoT) has attracted widespread attention in the industry, as an advanced productivity, the widespread application of RFID technology has greatly promoted the improvement of production efficiency and the user experience of the application.
[0003] Radio frequency identification systems generally include RFID readers, RFID tags, antennas, and middleware. The communication between RFID readers and RFID tags is achieved through electromagnetic wave transmission and reception. RFID readers can quickly scan and read the information of multiple RFID tags within the signal coverage range. Within the signal coverage range, the signal reflected by the RFID tag can penetrate non-metallic or non-transparent materials such as paper, wood, plastic, and even walls for penetrating communication. The penetration is strong, and the data content transmitted by RFID can be encrypted to ensure the security of the data transmission process. At present, in the research and application of RFID positioning methods, it is mainly through the deployment of a large number of reference tags and RFID readers, collecting RSSI information of the tags to be located, and calculating the position based on traditional signal propagation models and triangulation positioning methods.
[0004] In the RFID-based positioning system, increasing the deployment density of reference tags can improve the positioning accuracy to a certain extent. However, too many reference tags will cause signal interference. The VIRE (Virtual Reference Elimination) algorithm introduces the concept of virtual tags. According to the RSSI value and distance information of the real reference tag, the linear interpolation method is used to obtain the relationship between the RSSI value and distance of the virtual reference tag. However, in the actual environment, the indoor environment is complex, and there are interference from obstacles and the influence of factors such as object movement. The signals measured in practice include reflection, diffraction, and scattering signals, so that the RSSI value of the tag and the distance are not a simple linear relationship, resulting in large positioning errors and low positioning accuracy of the system. Summary of the invention
[0005] In view of the above shortcomings, the present invention provides a novel RFID positioning system and method based on cubic spline interpolation, which obtains the RSSI value of the virtual reference tag through a nonlinear interpolation method, improves the positioning accuracy of the RFID system, and reduces the positioning error.
[0006] The present invention is achieved by adopting the following technical solutions:
[0007] A novel RFID positioning system based on cubic spline interpolation includes a plurality of reference tags, a plurality of tags to be positioned, a main reader, a plurality of sub-readers, a microprocessor, a memory, a cubic spline interpolation processor, an input module, an output module, and a display; the input module, the microprocessor, the output module, and the display are connected in sequence through circuits; the memory and the cubic spline interpolation processor are independently connected to the microprocessor through circuits; the main reader, the sub-reader, and the input module are connected to each other through wireless communication; the main reader is connected to a number selection module, the number selection module is used to randomly select a plurality of reference tags from the reference tags, and the principle of the number selection module is to first mark each reference tag with a corresponding positive integer, and then randomly select different positive integers, thereby randomly selecting the reference tag marked by it.
[0008] Furthermore, the main reader and the sub-reader are both fixed readers, and are distributed at the boundary position or the center position of the measurement area of the novel RFID positioning system based on cubic spline interpolation.
[0009] Furthermore, the reference tags are evenly spaced and distributed within the measurement area of the novel RFID positioning system based on cubic spline interpolation.
[0010] The method for using the novel RFID positioning system based on cubic spline interpolation comprises the following steps:
[0011] Step S1: In the measurement area, R readers are set, one of which is the main reader, and K reference tags are set. The tag to be located is marked as i, a threshold Th is set, and an RFID positioning system model is determined; R and K are positive integers;
[0012] Step S2: grouping the K reference tags into groups of 9 adjacent tags and another group of tags if the number is less than 9. Each reference tag stores a corresponding position fingerprint, which includes the position coordinates, group number, and group number of the corresponding reference tag.
[0013] Step S3: The main reader randomly selects a number of reference tags from each reference tag group divided after step S2, then reads the position coordinates, group number, and group number of the selected reference tags and obtains the RSSI value of the selected reference tags, and sends the above-mentioned read and obtained information data to the input module, which is then sent to the microprocessor by the input module. At the same time, the main reader sends the group number and group number of the selected reference tag to each secondary reader, and each secondary reader respectively obtains the RSSI value of the selected reference tag and sends it to the input module, which is then sent to the microprocessor by the input module. The microprocessor forms a matrix U with the RSSI values of the reference tags. k The group number and the group number of the corresponding reference tag are stored in the memory, where U k =[u k1 u k2 u k3 … u kr ], where u kr is the RSSI value of the kth reference tag read at the rth reader; then the main reader and the secondary reader obtain the RSSI value of the tag to be located i and send it to the microprocessor to form a matrix T i Stored in memory, where T i =[t i1 t i2 t i3 … t ir ], t ir is the RSSI value read by the tag i to be located at the rth reader;
[0014] Step S4: the microprocessor calculates the Euclidean distance E between the tag i to be located and the reference tag selected in step S3 on each reader, determines the four neighbor reference tags of the tag i to be located, and marks the four neighbor reference tags of the tag i to be located as i1, i2, i3, i4;
[0015] Step S5: The microprocessor calculates the divergence factor of the tag i to be located according to formula (1) and determines whether it is within the threshold Th. If the divergence factor of the tag i to be located is less than the threshold Th, the current divergence factor is recorded and the process proceeds to step S7. If the divergence factor of the tag i to be located is greater than the threshold Th, the process proceeds to step S6. Formula (1) is as follows:
[0016]
[0017] Among them, t ir is the RSSI value read by the tag i to be located at the rth reader; u ikr is the RSSI value of the kth neighbor reference tag of the pending tag i read at the rth reader;
[0018] Step S6: the area formed by the selected four neighbor reference tags is further divided into n×n small grids, where n is a positive integer; the center of each small grid corresponds to a virtual reference tag, the position coordinates and RSSI values of the four neighbor reference tags are sent to the cubic spline interpolation processor, the RSSI value of each virtual reference tag at the center of the grid is calculated using the cubic spline interpolation method, and then the position coordinates and RSSI value of each virtual reference tag are sent to the microprocessor. Starting from step S4 again, the Euclidean distance E between the RSSI value of the tag i to be located and the virtual reference tag on each reader is calculated, the four neighbor reference tags of the tag to be located are determined, and the four neighbor reference tags of the tag to be located are marked as i1, i2, i3, i4, and then step S5 is performed;
[0019] Step S7: The microprocessor calculates the coordinates of the tag to be located according to formula (2) and stores them in the historical coordinates, and determines whether the number of historical coordinates is equal to 3. If the number of historical coordinates is equal to 3, the coordinate position of the tag to be located is calculated according to formula (3), and transmitted to the display through the output module, and the coordinate position of the tag to be located is displayed on the display; if the number of historical coordinates is not equal to 3, the process returns to step S2 and the process is repeated according to the steps.
[0020] The formula (2) is as follows:
[0021]
[0022] Among them, (x n * ,y n * ) is the location coordinate of the nth pending tag i, (x k ,y k ) is the position coordinate of the kth neighbor reference label of the pending label, ω 1k is the weight factor 1, as shown in the following formula:
[0023]
[0024] Among them, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader;
[0025] The formula (3) is as follows:
[0026]
[0027] Among them, (x i * ,yi * ) is the final positioning coordinate of the pending tag i, (x n * ,y n * ) is the nth positioning position coordinate of the nth pending label i, ω 2n is the weight factor 2, as shown in the following formula:
[0028]
[0029] Among them, div n (i) is the RSSI divergence factor of the nth pending tag i.
[0030] Furthermore, in step S1, the threshold value Th is preferably set to 0.31 to 0.45.
[0031] Furthermore, in step S3, the number of reference tags randomly selected by the main reader from each reference tag group divided after step S2 is two-thirds of the number of reference tags in each reference tag group. If there is a decimal, the number of randomly selected reference tags is rounded down.
[0032] Further, the Euclidean distance E in step S4 is calculated by formula (4), and the formula (4) is as follows:
[0033] Where E is the Euclidean distance between the tag to be located i and the reference tag selected in step S3 on each reader, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader.
[0034] Compared with the prior art, this technical solution has the following beneficial effects:
[0035] The present invention is improved on the basis of the VIRE algorithm, and a novel RFID positioning algorithm based on cubic spline interpolation is applied. The RSSI value of the virtual reference tag is obtained by a nonlinear interpolation method, and a cubic polynomial is used to approximate between adjacent nodes by using the cubic spline interpolation method, and the connection between each node is guaranteed to be smooth. At the same time, when determining the neighbor reference tag of the tag to be positioned, in order to reduce the data collection amount of the reader, the area to be measured is evenly divided into a plurality of area blocks, and two-thirds of the reference tags are randomly selected from each area block to obtain their RSSI values. On the one hand, the present invention uses the divergence factor of the tag to be positioned to represent the proximity between the tag to be positioned and the reference tag, and the smaller the divergence factor, the closer they are. On the other hand, in combination with the RSSI divergence factor of the tag to be determined, a weight factor 2 is defined, and the final position of the tag to be determined is obtained by multiplying the three positioning results by the corresponding weight value, thereby overcoming the problem that the RFID positioning method is affected by factors such as the interference of obstacles and the movement of objects in an actual environment, resulting in a large positioning error and low positioning accuracy of the system, thereby improving the positioning accuracy of the system, reducing the positioning error, and can be widely used in complex indoor environments to achieve autonomous positioning of target tags. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] Figure 1 This is a flow chart of the novel RFID positioning system based on cubic spline interpolation described in Example 1.
[0037] Figure 2 It is a schematic diagram of the positions of the reference tag, the tag to be located and the reader described in this embodiment 1.
[0038] Figure 3 This is a schematic diagram of component connections of the novel RFID positioning system based on cubic spline interpolation described in Example 1.
[0039] Figure 4 It is a schematic diagram of the positions of the reference tag, the tag to be located and the reader described in this embodiment 2.
[0040] Figure 5 This is a schematic diagram of the positions of the reference tag, the tag to be located and the reader described in Example 3. DETAILED DESCRIPTION
[0041] The present invention is further described by the following examples, but is not intended to be limiting of the present invention. Specific experimental conditions and methods not specified in the following examples are conventional methods commonly known to those skilled in the art.
[0042] Embodiment 1:
[0043] A novel RFID positioning system based on cubic spline interpolation includes a plurality of reference tags, a plurality of tags to be positioned, a main reader, a plurality of sub-readers, a microprocessor, a memory, a cubic spline interpolation processor, an input module, an output module, and a display; the input module, the microprocessor, the output module, and the display are connected in sequence through circuits; the memory and the cubic spline interpolation processor are independently connected to the microprocessor through circuits; the main reader, the sub-reader, and the input module are connected to each other through wireless communication; the main reader is connected to a number selection module, and the number selection module is used to randomly select a plurality of reference tags from the reference tags.
[0044] The method for using the novel RFID positioning system based on cubic spline interpolation described in this embodiment includes the following steps:
[0045] Step S1: Figure 2 As shown in the figure, a 6m×5m indoor environment is used as the measurement area, 3 secondary readers and one main reader are deployed, and 30 reference tags are deployed in a 6×5 grid. The tags to be located are randomly placed, the threshold Th is set to 0.35, and the RF carrier operating frequency is 2.4GH. Z , determine the RFID positioning system model; the four readers are deployed at the boundaries of the indoor environment, and each reader can detect all tags, including reference tags and tags to be located. The RSSI values of the reference tags and the tags with positioning are in dBm; the position of the tag i to be located is as follows Figure 2 As shown, the RSSI value of the randomly selected reference tag is compared;
[0046] Step S2: Set the 30 reference labels as Figure 2 As shown, the reference tags are grouped in a manner of 9 adjacent tags as a group, and those less than 9 tags as another group. Each reference tag stores a corresponding position fingerprint, and the position fingerprint includes the position coordinates, group number, and group number of the corresponding reference tag.
[0047] Step S3: The main reader randomly selects reference tags from each reference tag group divided after step S2, and the number of randomly selected reference tags in each reference tag group is two-thirds of the number of reference tags in each reference tag group. If there is a decimal, the number of randomly selected reference tags is obtained by rounding down. Then the main reader reads the position coordinates, group number, and group number of the selected reference tag and obtains the RSSI value of the selected reference tag, and sends the above-read and obtained information data to the input module, which is then sent to the microprocessor by the input module. At the same time, the main reader sends the group number and group number of the selected reference tag to each sub-reader, and each sub-reader respectively obtains the RSSI value of the selected reference tag and sends it to the input module, which is then sent to the microprocessor by the input module. The microprocessor forms a matrix U with the RSSI values of the reference tags. k The group number and the group number of the corresponding reference tag are stored in the memory, where U k =[u k1 u k2 u k3 … u kr ], where u kr is the RSSI value of the kth reference tag read at the rth reader, k is a positive integer between 1 and 30, and r is 4; then the main reader and the secondary reader obtain the RSSI value of the tag to be located i and send it to the microprocessor to form a matrix T i Stored in memory, T i =[-65.50-63.52-43.67-53.74];
[0048] Step S4: The microprocessor calculates the Euclidean distance E between the tag to be located i and the reference tag selected in step S3 on each reader, determines the four neighbor reference tags of the tag to be located i, and marks the four neighbor reference tags of the tag to be located i as i1, i2, i3, and i4. After calculation, Figure 2 As shown in , the four neighbor reference labels of the label i to be located are the reference labels framed by the solid rectangular frame; the above-mentioned Euclidean distance E is calculated by formula (4), and the formula (4) is as follows:
[0049] Where E is the Euclidean distance between the tag to be located i and the reference tag selected in step S3 on each reader, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader;
[0050] Step S5: The microprocessor calculates the divergence factor of the tag i to be located according to formula (1), and obtains div(i) = [0.4757 0.0261 0.2784 0.7377]. If the divergence factor of the tag i to be located is greater than the threshold Th, then go to step S6; the formula (1) is as follows:
[0051]
[0052] Among them, t ir is the RSSI value read by the tag i to be located at the rth reader; u ikr is the RSSI value of the kth neighbor reference tag of the pending tag i read at the rth reader;
[0053] Step S6: The area composed of the selected four neighbor reference tags is further divided into 3×3 small grids; the center of each small grid corresponds to a virtual reference tag, and the position coordinates and RSSI values of the four neighbor reference tags are sent to the cubic spline interpolation processor, and the RSSI value of each virtual reference tag at the center of the grid is calculated using the cubic spline interpolation method. The RSSI value of the virtual reference tag is
[0054]
[0055] Then, the position coordinates and RSSI value of each virtual reference tag are sent to the microprocessor and the process starts again from step S4 to calculate the Euclidean distance E between the RSSI value of the tag to be located i and the virtual reference tag on each reader, and the four neighbor reference tags of the tag to be located are determined, and the four neighbor reference tags of the tag to be located are marked as i1, i2, i3, and i4. Then, according to step S5, the divergence factor of the tag to be located is calculated to be div(i)=[0.3113 0.06890.2794 0.2714]. If all the divergence factors are less than the threshold value Th, the process goes to step S7.
[0056] Step S7: The microprocessor calculates the coordinates of the tag to be located according to formula (2) and stores them in the historical coordinates, and determines whether the number of historical coordinates is equal to 3. If the number of historical coordinates is equal to 3, the coordinate position of the tag to be located is calculated according to formula (3), and transmitted to the display through the output module, and the coordinate position of the tag to be located is displayed on the display; if the number of historical coordinates is not equal to 3, the process returns to step S2 and the process is repeated according to the steps.
[0057] The formula (2) is as follows:
[0058]
[0059] Among them, (x n* ,y n * ) is the location coordinate of the nth pending tag i, (x k ,y k ) is the position coordinate of the kth neighbor reference label of the pending label, ω 1k is the weight factor 1, as shown in the following formula:
[0060]
[0061] Among them, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader;
[0062] The formula (3) is as follows:
[0063]
[0064] Among them, (x i * ,y i * ) is the final positioning coordinate of the pending tag i, (x n * ,y n * ) is the nth positioning position coordinate of the nth pending label i, ω 2n is the weight factor 2, as shown in the following formula:
[0065]
[0066] Among them, div n (i) is the RSSI divergence factor of the nth pending tag i.
[0067] Embodiment 2:
[0068] A novel RFID positioning system based on cubic spline interpolation includes a plurality of reference tags, a plurality of tags to be positioned, a main reader, a plurality of sub-readers, a microprocessor, a memory, a cubic spline interpolation processor, an input module, an output module, and a display; the input module, the microprocessor, the output module, and the display are connected in sequence through circuits; the memory and the cubic spline interpolation processor are independently connected to the microprocessor through circuits; the main reader, the sub-reader, and the input module are connected to each other through wireless communication; the main reader is connected to a number selection module, and the number selection module is used to randomly select a plurality of reference tags from the reference tags.
[0069] The method for using the novel RFID positioning system based on cubic spline interpolation described in this embodiment includes the following steps:
[0070] Step S1: Figure 4 As shown in the figure, a 7m×6m indoor environment is used as the measurement area, 4 secondary readers and one main reader are deployed, and 42 reference tags are deployed in a 7×6 grid. The tags to be located are randomly placed, the threshold Th is set to 0.31, and the RF carrier operating frequency is 2.4GH. Z , determine the RFID positioning system model; the four secondary readers are deployed at the boundaries of the indoor environment, the main reader is deployed at the center of the indoor environment, and each reader can detect all tags, including reference tags and tags to be located, and the RSSI values of the reference tags and the positioning tags are in dBm; the position of the tag i to be located is as follows Figure 4 As shown, the RSSI value of the randomly selected reference tag is compared;
[0071] Step S2: The 42 reference labels are Figure 4 As shown, the reference tags are grouped in a manner of 9 adjacent tags as a group, and those less than 9 tags as another group. Each reference tag stores a corresponding position fingerprint, and the position fingerprint includes the position coordinates, group number, and group number of the corresponding reference tag.
[0072] Step S3: The main reader randomly selects reference tags from each reference tag group divided after step S2, and the number of randomly selected reference tags in each reference tag group is two-thirds of the number of reference tags in each reference tag group. If there is a decimal, the number of randomly selected reference tags is obtained by rounding down. Then the main reader reads the position coordinates, group number, and group number of the selected reference tag and obtains the RSSI value of the selected reference tag, and sends the above-read and obtained information data to the input module, which is then sent to the microprocessor by the input module. At the same time, the main reader sends the group number and group number of the selected reference tag to each sub-reader, and each sub-reader respectively obtains the RSSI value of the selected reference tag and sends it to the input module, which is then sent to the microprocessor by the input module. The microprocessor forms a matrix U with the RSSI values of the reference tags. k The group number and the group number of the corresponding reference tag are stored in the memory, where U k =[u k1 u k2 u k3 … u kr ], where u kr is the RSSI value of the kth reference tag read at the rth reader, k is a positive integer between 1 and 42, and r is 5; then the main reader and the secondary reader obtain the RSSI value of the tag to be located i and send it to the microprocessor to form a matrix Ti Stored in memory, T i =[-55.31 -56.51 -57.28 -57.70 -44.89];
[0073] Step S4: The microprocessor calculates the Euclidean distance E between the tag to be located i and the reference tag selected in step S3 on each reader, determines the four neighbor reference tags of the tag to be located i, and marks the four neighbor reference tags of the tag to be located i as i1, i2, i3, and i4. After calculation, Figure 4 As shown in , the four neighbor reference labels of the label i to be located are the reference labels framed by the solid rectangular frame; the above-mentioned Euclidean distance E is calculated by formula (4), and the formula (4) is as follows:
[0074] Where E is the Euclidean distance between the tag to be located i and the reference tag selected in step S3 on each reader, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir The RSSI values read by the tag i to be located at the rth reader are:
[0075]
[0076] Step S5: The microprocessor calculates the divergence factor of the tag i to be located according to formula (1), and obtains div(i) = [0.0763 0.1204 0.3786 0.3987 0.0729]. If the divergence factor of the tag i to be located is greater than the threshold Th, then go to step S6; the formula (1) is as follows:
[0077]
[0078] Among them, t ir is the RSSI value read by the tag i to be located at the rth reader; u ikr is the RSSI value of the kth neighbor reference tag of the pending tag i read at the rth reader;
[0079] Step S6: The area composed of the selected four neighbor reference tags is further divided into 3×3 small grids; the center of each small grid corresponds to a virtual reference tag, and the position coordinates and RSSI values of the four neighbor reference tags are sent to the cubic spline interpolation processor, and the RSSI value of each virtual reference tag at the center of the grid is calculated using the cubic spline interpolation method. The RSSI value of the virtual reference tag is
[0080]
[0081] Then, the position coordinates and RSSI value of each virtual reference tag are sent to the microprocessor and the process starts again from step S4 to calculate the Euclidean distance E between the RSSI value of the tag to be located i and the virtual reference tag on each reader, and the four neighbor reference tags of the tag to be located are determined, and the four neighbor reference tags of the tag to be located are marked as i1, i2, i3, and i4. Then, according to step S5, the divergence factor of the tag to be located is calculated to be div(i)=[0.1318 0.04890.3059 0.1210 0.1212]. If all the divergence factors are less than the threshold value Th, the process goes to step S7.
[0082] Step S7: The microprocessor calculates the coordinates of the tag to be located according to formula (2) and stores them in the historical coordinates, and determines whether the number of historical coordinates is equal to 3. If the number of historical coordinates is equal to 3, the coordinate position of the tag to be located is calculated according to formula (3), and transmitted to the display through the output module, and the coordinate position of the tag to be located is displayed on the display; if the number of historical coordinates is not equal to 3, the process returns to step S2 and the process is repeated according to the steps.
[0083] The formula (2) is as follows:
[0084]
[0085] Among them, (x n * ,y n * ) is the location coordinate of the nth pending tag i, (x k ,y k ) is the position coordinate of the kth neighbor reference label of the pending label, ω 1k is the weight factor 1, as shown in the following formula:
[0086]
[0087] Among them, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader;
[0088] The formula (3) is as follows:
[0089]
[0090] Among them, (x i * ,y i * ) is the final positioning coordinate of the pending tag i, (x n *,y n * ) is the nth positioning position coordinate of the nth pending label i, ω 2n is the weight factor 2, as shown in the following formula:
[0091]
[0092] Among them, div n (i) is the RSSI divergence factor of the nth pending tag i.
[0093] Embodiment 3:
[0094] A novel RFID positioning system based on cubic spline interpolation includes a plurality of reference tags, a plurality of tags to be positioned, a main reader, a plurality of sub-readers, a microprocessor, a memory, a cubic spline interpolation processor, an input module, an output module, and a display; the input module, the microprocessor, the output module, and the display are connected in sequence through circuits; the memory and the cubic spline interpolation processor are independently connected to the microprocessor through circuits; the main reader, the sub-reader, and the input module are connected to each other through wireless communication; the main reader is connected to a number selection module, and the number selection module is used to randomly select a plurality of reference tags from the reference tags.
[0095] The method for using the novel RFID positioning system based on cubic spline interpolation described in this embodiment includes the following steps:
[0096] Step S1: Figure 5 As shown in the figure, a 6m×5m indoor environment is used as the measurement area, 3 secondary readers and one main reader are deployed, and 30 reference tags are deployed in a 6×5 grid. The tags to be located are randomly placed, the threshold Th is set to 0.45, and the RF carrier operating frequency is 2.4GH. Z , determine the RFID positioning system model; the four readers are deployed at the boundaries of the indoor environment, and each reader can detect all tags, including reference tags and tags to be located. The RSSI values of the reference tags and the tags with positioning are in dBm; the position of the tag i to be located is as follows Figure 5 As shown, the RSSI value of the randomly selected reference tag is compared;
[0097] Step S2: Set the 30 reference labels as Figure 5 As shown, the reference tags are grouped in a manner of 9 adjacent tags as a group, and those less than 9 tags as another group. Each reference tag stores a corresponding position fingerprint, and the position fingerprint includes the position coordinates, group number, and group number of the corresponding reference tag.
[0098] Step S3: The main reader randomly selects reference tags from each reference tag group divided after step S2, and the number of randomly selected reference tags in each reference tag group is two-thirds of the number of reference tags in each reference tag group. If there is a decimal, the number of randomly selected reference tags is obtained by rounding down. Then the main reader reads the position coordinates, group number, and group number of the selected reference tag and obtains the RSSI value of the selected reference tag, and sends the above-read and obtained information data to the input module, which is then sent to the microprocessor by the input module. At the same time, the main reader sends the group number and group number of the selected reference tag to each sub-reader, and each sub-reader respectively obtains the RSSI value of the selected reference tag and sends it to the input module, which is then sent to the microprocessor by the input module. The microprocessor forms a matrix U with the RSSI values of the reference tags. k The group number and the group number of the corresponding reference tag are stored in the memory, where U k =[u k1 u k2 u k3 … u kr ], where u kr is the RSSI value of the kth reference tag read at the rth reader, k is a positive integer between 1 and 30, and r is 4; then the main reader and the secondary reader obtain the RSSI value of the tag to be located i and send it to the microprocessor to form a matrix T i Stored in memory, T i =[-65.76-63.81-42.53-53.89];
[0099] Step S4: The microprocessor calculates the Euclidean distance E between the tag to be located i and the reference tag selected in step S3 on each reader, determines the four neighbor reference tags of the tag to be located i, and marks the four neighbor reference tags of the tag to be located i as i1, i2, i3, and i4. After calculation, Figure 5 As shown in , the four neighbor reference tags of the tag i to be located are the reference tags framed by the rectangular frame; the above-mentioned Euclidean distance E is calculated by formula (4), and the formula (4) is as follows:
[0100] Where E is the Euclidean distance between the tag to be located i and the reference tag selected in step S3 on each reader, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader;
[0101] Step S5: The microprocessor calculates the divergence factor of the tag i to be located according to formula (1), and obtains div(i) = [0.5032 0.0531 0.4081 0.7143]. If the divergence factor of the tag i to be located is greater than the threshold Th, then go to step S6; the formula (1) is as follows:
[0102]
[0103]
[0104] Among them, t ir is the RSSI value read by the tag i to be located at the rth reader; u ikr is the RSSI value of the kth neighbor reference tag of the pending tag i read at the rth reader;
[0105] Step S6: The area composed of the selected four neighbor reference tags is further divided into 3×3 small grids; the center of each small grid corresponds to a virtual reference tag, and the position coordinates and RSSI values of the four neighbor reference tags are sent to the cubic spline interpolation processor, and the RSSI value of each virtual reference tag at the center of the grid is calculated using the cubic spline interpolation method. The RSSI value of the virtual reference tag is
[0106]
[0107] Then, the position coordinates and RSSI value of each virtual reference tag are sent to the microprocessor and the process starts again from step S4 to calculate the Euclidean distance E between the RSSI value of the tag to be located i and the virtual reference tag on each reader, and the four neighbor reference tags of the tag to be located are determined, and the four neighbor reference tags of the tag to be located are marked as i1, i2, i3, and i4. Then, according to step S5, the divergence factor of the tag to be located is calculated to be div(i)=[0.3324 0.04280.2941 0.2874]. If all the divergence factors are less than the threshold value Th, the process goes to step S7.
[0108] Step S7: The microprocessor calculates the coordinates of the tag to be located according to formula (2) and stores them in the historical coordinates, and determines whether the number of historical coordinates is equal to 3. If the number of historical coordinates is equal to 3, the coordinate position of the tag to be located is calculated according to formula (3), and transmitted to the display through the output module, and the coordinate position of the tag to be located is displayed on the display; if the number of historical coordinates is not equal to 3, the process returns to step S2 and the process is repeated according to the steps.
[0109] The formula (2) is as follows:
[0110]
[0111] Among them, (x n * ,y n * ) is the location coordinate of the nth pending tag i, (x k ,y k ) is the position coordinate of the kth neighbor reference label of the pending label, ω 1k is the weight factor 1, as shown in the following formula:
[0112]
[0113] Among them, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader;
[0114] The formula (3) is as follows:
[0115]
[0116] Among them, (x i * ,y i * ) is the final positioning coordinate of the pending tag i, (x n * ,y n * ) is the nth positioning position coordinate of the nth pending label i, ω 2n is the weight factor 2, as shown in the following formula:
[0117]
[0118] Among them, div n (i) is the RSSI divergence factor of the nth pending tag i.
[0119] In addition, it should be understood that although the present specification is described according to implementation modes, not every implementation mode contains only one independent technical solution. This description of the specification is only for the sake of clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment may also be appropriately combined to form other implementation modes that can be understood by those skilled in the art.
Claims
1. A method for using a novel RFID positioning system based on cubic spline interpolation, characterized in that: The novel RFID positioning system based on cubic spline interpolation includes a plurality of reference tags, a plurality of tags to be positioned, a main reader, a plurality of sub-readers, a microprocessor, a memory, a cubic spline interpolation processor, an input module, an output module, and a display; the input module, the microprocessor, the output module, and the display are connected in sequence through circuits; the memory and the cubic spline interpolation processor are independently connected to the microprocessor through circuits; the main reader, the sub-reader, and the input module are connected to each other through wireless communication; the main reader is connected to a number selection module, and the number selection module is used to randomly select a plurality of reference tags from the reference tags; The method for using the novel RFID positioning system based on cubic spline interpolation comprises the following steps: Step S1: In the measurement area, R readers are set, one of which is the main reader, and K reference tags are set. The tag to be located is marked as i, a threshold Th is set, and an RFID positioning system model is determined; R and K are positive integers; Step S2: grouping the K reference tags into groups of 9 adjacent tags and another group of tags if the number is less than 9. Each reference tag stores a corresponding position fingerprint, which includes the position coordinates, group number, and group number of the corresponding reference tag. Step S3: The main reader randomly selects a number of reference tags from each reference tag group divided after step S2, then reads the position coordinates, group number, and group number of the selected reference tags and obtains the RSSI value of the selected reference tags, and sends the above-mentioned read and obtained information data to the input module, which is then sent to the microprocessor by the input module. At the same time, the main reader sends the group number and group number of the selected reference tag to each secondary reader, and each secondary reader respectively obtains the RSSI value of the selected reference tag and sends it to the input module, which is then sent to the microprocessor by the input module. The microprocessor forms a matrix U with the RSSI values of the reference tags. k The group number and the group number of the corresponding reference tag are stored in the memory, where U k =[u k1 u k2 u k3 …u kr ], where u kr is the RSSI value of the kth reference tag read at the rth reader; then the main reader and the secondary reader obtain the RSSI value of the tag to be located i and send it to the microprocessor to form a matrix T i Stored in memory, where T i =[t i1 t i2 t i3 ...t ir ], t ir is the RSSI value read by the tag i to be located at the rth reader; Step S4: the microprocessor calculates the Euclidean distance E between the tag i to be located and the reference tag selected in step S3 on each reader, determines the four neighbor reference tags of the tag i to be located, and marks the four neighbor reference tags of the tag i to be located as i1, i2, i3, i4; Step S5: The microprocessor calculates the divergence factor of the tag i to be located according to formula (1) and determines whether it is within the threshold Th. If the divergence factor of the tag i to be located is less than the threshold Th, the current divergence factor is recorded and the process proceeds to step S7. If the divergence factor of the tag i to be located is greater than the threshold Th, the process proceeds to step S6. Formula (1) is as follows: Among them, t ir is the RSSI value read by the tag i to be located at the rth reader; u ikr is the RSSI value of the kth neighbor reference tag of the pending tag i read at the rth reader; Step S6: the area formed by the selected four neighbor reference tags is further divided into n×n small grids, where n is a positive integer; the center of each small grid corresponds to a virtual reference tag, the position coordinates and RSSI values of the four neighbor reference tags are sent to the cubic spline interpolation processor, the RSSI value of each virtual reference tag at the center of the grid is calculated using the cubic spline interpolation method, and then the position coordinates and RSSI value of each virtual reference tag are sent to the microprocessor. Starting from step S4 again, the Euclidean distance E between the RSSI value of the tag i to be located and the virtual reference tag on each reader is calculated, the four neighbor reference tags of the tag to be located are determined, and the four neighbor reference tags of the tag to be located are marked as i1, i2, i3, i4, and then step S5 is performed; Step S7: The microprocessor calculates the coordinates of the tag to be located according to formula (2) and stores them in the historical coordinates, and determines whether the number of historical coordinates is equal to 3. If the number of historical coordinates is equal to 3, the coordinate position of the tag to be located is calculated according to formula (3), and transmitted to the display through the output module, and the coordinate position of the tag to be located is displayed on the display; if the number of historical coordinates is not equal to 3, the process returns to step S2 and the process is repeated according to the steps. The formula (2) is as follows: Among them, (x n * ,y n * ) is the location coordinate of the nth pending tag i, (x k ,y k ) is the position coordinate of the kth neighbor reference label of the pending label, ω 1k is the weight factor 1, as shown in the following formula: Among them, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader; The formula (3) is as follows: Among them, (x i * ,y i * ) is the final positioning coordinate of the pending tag i, (x n * ,y n * ) is the nth positioning position coordinate of the nth pending label i, ω 2n is the weight factor 2, as shown in the following formula: Among them, div n (i) is the RSSI divergence factor of the nth pending tag i.
2. The method for using the novel RFID positioning system based on cubic spline interpolation according to claim 1 is characterized in that: The main reader and the sub-reader are both fixed readers and are distributed at the boundary position or the center position of the measurement area of the novel RFID positioning system based on cubic spline interpolation.
3. The method for using the novel RFID positioning system based on cubic spline interpolation according to claim 1 is characterized in that: The reference tags are distributed at equal intervals within the measurement area of the novel RFID positioning system based on cubic spline interpolation.
4. The method for using the novel RFID positioning system based on cubic spline interpolation according to claim 1 is characterized in that: In step S1, the threshold value Th is preferably set to 0.31 to 0.
45.
5. The method for using the novel RFID positioning system based on cubic spline interpolation according to claim 1 is characterized in that: In step S3, the number of reference tags randomly selected by the main reader from each reference tag group divided after step S2 is two-thirds of the number of reference tags in each reference tag group. If there is a decimal, the number of randomly selected reference tags is rounded down.
6. The method for using the novel RFID positioning system based on cubic spline interpolation according to claim 1, characterized in that: The Euclidean distance E in step S4 is calculated by formula (4), which is as follows: Where E is the Euclidean distance between the tag to be located i and the reference tag selected in step S3 on each reader, u kr is the RSSI value of the kth reference tag read at the rth reader, t ir is the RSSI value read by the tag i to be located at the rth reader.
Citation Information
Patent Citations
Novel RFID positioning system based on cubic spline interpolation
CN211375036U