Classifying RFID tag reads to increase confidence of tag inventory

By receiving and processing data frames in the RFID system, generating linearized power values ​​and evaluating their summed values, the problem of determining the location of items in complex environments is solved, achieving higher identification accuracy and system reliability.

CN119337901APending Publication Date: 2025-01-21UNITED PARCEL SERVICE OF AMERICAN INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410971721.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-07-19
Filing Date
2024-07-19
Publication Date
2025-01-21

AI Technical Summary

Technical Problem

When tracking items using RFID technology, especially in large-scale, multi-antenna configurations and highly reflective environments, it is difficult to determine the location of a particular item with acceptable confidence.

Method used

Data frames are received by computing hardware, linearized power values ​​are generated, and summed to evaluate the RFID tag read data. The summed power value is evaluated against the target predicate to determine if it meets a threshold, triggering the appropriate action.

Benefits of technology

Improves the accuracy and reliability of identifying and locating RFID tags in complex environments, reduces false positive read results, and enhances system performance with highly reflective materials and high power levels.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119337901A_ABST
    Figure CN119337901A_ABST
Patent Text Reader

Abstract

In general, various embodiments of the present disclosure provide methods, systems, computer-readable media, and the like, for providing an improvement in evaluation of read data collected from a radio frequency identification (RFID) tag. In various embodiments, a method is provided that includes receiving a data frame, the data frame including read data collected from an RFID tag over a time period, the RFID tag responsive to receiving an RF signal transmitted from an antenna in communication with a reader, and the read data including a received signal strength indicator (RSSI) value; generating a linearized power value for each RSSI value to form a set of linearized power values; summing the set of linearized power values to generate a summed power value for the data frame; evaluating the summed power value to determine that the summed power value conforms to the target predicate; and in response, causing an operation regarding completion of the RFID tag.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims priority to U.S. Provisional Patent Application No. 63 / 527,756, filed on July 19, 2023, the entire disclosure of which is incorporated herein by reference. Technical Field

[0002] The present disclosure generally relates to systems and corresponding methods that provide improved evaluation of read data collected from radio frequency identification tags. Background Art

[0003] With the development of machine-readable devices such as radio frequency identification (RFID) transponders (also known as "tags"), the technology of tracking and identifying items has also advanced. For example, in manufacturing, warehousing and / or transportation environments, items may be associated with RFID tags to track the items and provide relevant information about the items, such as model or serial number, location, price, shipper, consignee, consignee address, etc. In many cases, the items associated with the RFID tags are interrogated by RFID readers multiple times during the production, warehousing and / or transportation process in order to track and understand their location. However, there are still many technical challenges in accurately tracking the production, warehousing and / or transportation of items using RFID technology. For example, in environments with large areas, relatively close to the RFID tag reading area and close or overlapping coverage, and / or in environments with transition points where there are some changes in RFID tag reading rate / strength, or in low-cost multi-antenna configurations at very close ranges, there are many technical challenges in using RFID technology. Therefore, there is a need in the art to improve systems and corresponding methods using RFID technology to determine that a specific item is located at a given location with an acceptable confidence level. Therefore, various embodiments disclosed herein address such needs. Summary of the invention

[0004] Generally speaking, various embodiments of the present disclosure provide methods, apparatus, systems, computing devices, computing entities, etc., for providing improvements in the evaluation of read data collected from radio frequency identification tags. In various aspects of the present disclosure, a method is provided, the method comprising: receiving, by computing hardware, a data frame, wherein the data frame includes read data collected from an RFID tag over a period of time, the read data being collected from the RFID tag in response to receiving a radio frequency (RF) signal transmitted from an antenna in communication with a reader, and the read data including a plurality of received signal strength indicator (RSSI) values; generating, by computing hardware, a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; summing, by computing hardware, the set of linearized power values ​​to generate a summed power value for the data frame; evaluating, by computing hardware, the summed power value of the data frame and one or more other summed power values ​​of one or more other data frames to determine that the summed power value and the one or more other summed power values ​​satisfy a target predicate; and causing an operation to be performed with respect to the RFID tag in response to determining that the summed power value and the one or more other summed power values ​​satisfy the target predicate. For example, the one or more other data frames may be one or more previous data frames including read data previously collected from the RFID tag.

[0005] In some aspects, the target predicate defines a set of rules for evaluating whether the summed power value and one or more other summed power values ​​meet a threshold. In some aspects, the operation includes changing a setting of the reader regarding processing additional read data collected from the RFID tag. For example, changing the setting involves changing the setting of the reader to a single target mode to enable interruption of the reading of the RFID tag. In some aspects, generating a linearized power value for each RSSI value in the plurality of RSSI values ​​includes normalizing the RSSI value based at least in part on a power value of an RF signal transmitted from an antenna.

[0006] In other aspects of the present disclosure, a system is provided, the system comprising a computer-readable medium storing instructions and a processing device communicatively coupled to the computer-readable medium. The processing device is used to execute the instructions, thereby completing operations including: receiving a plurality of data frames, wherein: each of the plurality of data frames comprises read data collected from a plurality of RFID tags within a time period, the read data is collected from the plurality of RFID tags in response to receiving an RF signal sent from an antenna communicating with a reader, and the read data comprises a plurality of RSSI values; for each of the plurality of data frames: generating a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; and for each of the plurality of tags represented in the data frame, generating a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; and for each of the plurality of tags represented in the data frame, generating a linearized power value for each of the plurality of RF tags; ID tag: grouping the linearized power values ​​found in the linearized power value set for the RFID tag into a linearized power value group; and summing the linearized power value group to generate a summed power value for the RFID tag and the data frame; evaluating the summed power value of each of the plurality of data frames for a specific RFID tag in the plurality of RFID tags to determine that the summed power value of each of the plurality of data frames of the specific RFID tag meets the target predicate; and in response to determining that the summed power value of each of the plurality of data frames of the specific RFID tag meets the target preset value, causing an operation to be completed with respect to the specific RFID tag. For example, the plurality of data frames includes a sequence of data frames that appear within a period of time.

[0007] In some aspects, the target predicate defines a set of rules for evaluating whether a summed power value of each of a plurality of data frames for a particular RFID tag satisfies a threshold value. In some aspects, the operations include generating an indication of a location of the particular RFID tag for display on a user interface. In some aspects, generating a linearized power value for each of the plurality of RSSI values ​​further includes normalizing the RSSI values ​​based at least in part on a power value of an RF signal transmitted from an antenna.

[0008] In some aspects, the system is a mobile device including a reader and an antenna, and the mobile device travels through an area where a plurality of RFID tags are located. Herein, for example, the operation includes generating an indication on a user interface provided on a screen of the mobile device to display whether the mobile device is pointed in the direction of the location of a specific RFID tag. In another example, the operation includes generating an indication on a user interface provided on a screen of the mobile device to display whether the mobile device is within a certain distance of a specific RFID tag.

[0009] In other aspects of the present disclosure, a computer-readable medium storing computer-executable instructions is provided. When the computer-executable instructions are executed by computing hardware, the computing hardware is configured to perform operations including: receiving a first data frame and a second data frame, wherein: the first data frame includes first read data collected from an RFID tag in a first time period, the first read data is collected from the RFID tag in response to receiving a first radio frequency (RF) signal sent from a first antenna that communicates with a reader, and the first read data includes a first plurality of RSSI values; the second data frame includes second read data collected from the RFID tag in a second time period, the second read data is collected from the RFID tag in response to receiving a second radio frequency signal sent from a second antenna that communicates with the reader, and the second read data includes a second plurality of RSSI values; generating a first linearized power value for each RSSI value in the first plurality of RSSI values ​​to form a set of first linearized power values; summing the set of first linearized power values ​​to generate a first plurality of RSSI values; a summed power value; generating a second linearized power value for each RSSI value in a second plurality of RSSI values ​​to form a set of second linearized power values; summing the set of second linearized power values ​​to generate a second summed power value; evaluating the first summed power value and one or more other first summed power values ​​generated from other first read data collected from the RFID tag at the first antenna and the second summed power value and one or more other second summed power values ​​generated from other second read data collected from the RFID tag at the second antenna to determine that the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​satisfy a target predicate; and in response to determining that the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​satisfy the target predicate, causing an operation to be performed with respect to the RFID tag.

[0010] For example, the first antenna is located at a first location, the second antenna is located at a second location different from the first location, and the operation includes updating the inventory record to indicate that the RFID tag is moved from the first location to the second location. In another example, the first antenna is located at a first location, the second antenna is located at a second location different from the first location, and the operation includes providing an indication on a user interface that the RFID tag is moved from the first location to the second location.

[0011] In some aspects, the target predicate defines a set of rules for evaluating whether the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​satisfy a threshold. In other aspects, the target predicate defines a set of rules for evaluating whether the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​represent a decrease in power collected for the RFID tag at the first antenna and an increase in power collected for the RFID tag at the second antenna. In some aspects, generating the first linearized power value involves normalizing each of the first plurality of RSSI values ​​based at least in part on a first power value of a first radio frequency signal transmitted from the first antenna, and generating the second linearized power value further involves normalizing each of the second plurality of RSSI values ​​based at least in part on a second power value of a second radio frequency signal transmitted from the second antenna. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] This specification will refer to the accompanying drawings, which are not necessarily drawn to scale, and in which:

[0013] Figure 1 Describes example configurations of radio frequency systems in which various embodiments of the present disclosure are practiced;

[0014] Figure 2 An example of a process for evaluating return RF signals from one or more RFID tags according to various embodiments of the present disclosure is described;

[0015] Figure 3A , Figure 3B and Figure 3C Examples of graphical representations of linearized power data generated according to various embodiments of the present disclosure are provided;

[0016] Figure 4 An example of a process for linearizing one or more power values ​​found in read data received from one or more RFID tags according to various embodiments of the present disclosure is described;

[0017] Figure 5 An example of a process for evaluating linearized values ​​of one or more RFID tags with respect to one or more predicates according to various embodiments of the present disclosure is described;

[0018] Figure 6 describes an example of a system architecture used in accordance with various embodiments of the present disclosure; and

[0019] Figure 7 Examples of computing hardware used in accordance with various embodiments of the present disclosure are described. DETAILED DESCRIPTION

[0020] With the development of machine-readable devices (such as RFID transponders, etc.), the tracking and identification technology of items is also improving. For example, in a manufacturing, warehousing and / or transportation environment, an item may be associated with an RFID transponder to track the item and provide relevant information about the item, such as model or serial number, location, price, shipper, consignee, consignee address, etc. In many cases, when the item passes through the manufacturing, warehousing and / or transportation process, the item tagged with an RFID transponder (i.e., associated with an RFID transponder) will be interrogated by its RFID transponder multiple times during the production, warehousing and / or transportation process.

[0021] RFID transponders (also called "tags") can be active or passive, with respect to the tag's power source and the information the tag sends to the reader. An RFID reader or interrogator retrieves the information stored on the tag via a return RF signal picked up by the reader's antenna. Typically, an RFID reader is able to read multiple tags within its (e.g., antenna's) reading field. However, when using a fixed or mobile reader, a technical challenge is to orient the reader and / or RFID tag so that the RFID tag can be read when it is within the reader's reading field. This is particularly true if the item associated with the tag involves content and / or is used in a highly reflective environment such as liquids or metallic materials, as these materials may attenuate the RF signal emitted by the reader and / or the return RF signal emitted by the RFID tag.

[0022] A solution often adopted to address this technical challenge is to increase the transmit power to compensate for the attenuated RF signal. However, this solution can lead to further technical challenges because the RF system may operate in a "leakage" mode, because at high power levels, the RF signal will leak out of the intended reading field. This is even a greater technical challenge in systems involving one or more readers using multiple antennas, because the high transmit power can cause the antennas to interfere with each other and read RFID tags located in adjacent reading fields. This makes it difficult for the RF system to determine with an acceptable level of confidence that a specific item is located in a given reading field.

[0023] Accordingly, various embodiments of the present disclosure overcome the above technical challenges and other challenges described herein. Specifically, various embodiments of the present disclosure relate to a radio frequency system that generates linearized power data, which represents read data received from one or more RFID tags, and operates according to the linearized power data. The reader can interrogate the RFID tag by causing the antenna to transmit an RF signal at a certain power level (e.g., a numerical value) within the reading field where the RFID tag is located. The RFID tag can receive the RF signal and respond by sending a return RF signal including the read data. Here, the read data includes data stored in the memory of the RFID tag and other data. For example, the read data includes an indication that the RFID tag has responded / has been read (such as an identifier), an RSSI value (the RSSI value represents a measurement of the power of the return RF signal received from the RFID tag when the reader interrogates), a phase angle (the phase angle identifies the degree of deviation of the frequency band of the return RF signal), etc.

[0024] The read data collected by the reader within a given time period (e.g., one second, two seconds, four seconds, etc.) may represent several reads of the RFID tag by the reader. For example, the read data collected by the reader within one second includes approximately twenty or more reads of the RFID tag, as well as multiple reads of other RFID tags located in the reading field. Therefore, the read data includes several indications that the RFID tag has responded / has been read, which can be used to observe the read rate, RSSI value, phase angle, etc. for the RFID tag. In a traditional setting, the RF system can use these observations to make judgments, for example, to determine that some RFID tags are in the reading field, some RFID tags have left the reading field, and some RFID tags are closer to the antenna than other RFID tags.

[0025] As previously mentioned, a common technical challenge is that RFID tags may be associated with or used in environments with reflective materials that attenuate RF signals when the tag is within the reading field of a reader (e.g., its antenna), resulting in "shadowing" of the RFID tag. For example, RFID tags may be placed on items stored in a warehouse that has a large number of metal shelves for storing items. In this case, the metal shelves may attenuate the RF signals emitted from the antenna placed in the warehouse, and the reader uses the RF signals to interrogate the RFID tags on the items stored on the shelves for inventory counting.

[0026] To address this challenge, the RF system can be configured to cause the antenna to transmit the RF signal at a high transmit power to compensate for the attenuation of the signal. However, this solution can lead to further technical challenges because the RF system may operate in a "leakage" mode because at high power levels, the RF signal will leak outside the predetermined reading field. This can result in a false positive read result of an RFID tag being read on an antenna used to interrogate an RFID tag in a certain area, when the RFID tag is not actually in this area. In addition, the combination of reflective materials and high power levels can cause the read data to include "jumpy" data values, that is, the read data may include data values ​​that fluctuate widely within a short period of time. For example, the read data may include a read rate and / or RSSI value that fluctuates widely within a short period of time. Such fluctuations make it difficult for the RF system to identify with an acceptable confidence level that the RFID tag is actually present in the reading field.

[0027] In various embodiments, the radio frequency system generates data frames from the read data collected from the RFID tag. More specifically, the radio frequency system divides the read data into data frames according to time periods. For example, the radio frequency system divides the read data into data frames, and the data frames include the read data collected from the RFID tag in 50 milliseconds, 100 milliseconds, 200 milliseconds, etc. For a specific example, the radio frequency system divides a 1 second block of read data collected from the RFID tag into 20 50 millisecond data frames.

[0028] Once the RF system divides the read data into data frames, the RF system generates a linearized power value for the power data found in the read data of each data frame. Specifically, in various embodiments, the RF system generates a linearized power value for each RSSI value found in each data frame of the RFID tag to form a set of linearized power values ​​for the data frame. In some embodiments, the RF system generates a set of linearized power values ​​based at least in part on the RSSI value and the power value of the antenna transmitting the RF signal to query the RFID tag to normalize the linearized power value. In addition, the RF system can also sum the set of linearized power values ​​of the RFID tag to generate a summed power value for the RFID tag for each data frame. Therefore, the RF system converts the power data (e.g., RSSI value) on the data frame into a smoother data set, which is more conducive to determining the RFID tag, for example, determining whether the RFID tag is actually located within the reading field.

[0029] In various embodiments, a radio frequency system (or some other system) uses one or more predicates to evaluate summed power values ​​of one or more data frames. For example, a predicate may define a set of rules (e.g., one or more rules) for identifying an RFID tag or a collection of RFID tags that exhibit a particular property, behavior, characteristic, feature, etc. Thus, the radio frequency system may determine whether one or more summed power values ​​of one or more data frames meet the target predicate. If so, the radio frequency system operates accordingly (e.g., an initialization process). For example, an RFID tag may be in close proximity to an antenna, and the read data is saturating the reader. That is, the RFID tag may be in close proximity to the antenna, such that the RFID tag responds to the RF signal transmitted by the antenna in a rapid manner, such that a majority or a majority of the read data collected by the antenna is attributed to the RFID tag relative to other RFID tags located in the antenna's read field. The radio frequency system evaluates the summed power values ​​of multiple data frames of the RFID tag (e.g., for a series of data frames over a period of time), and determines, based on the set of rules defined by the target predicate, whether the linearized power values ​​of the multiple data frames indicate that the RFID tag is saturating the reader with read data. As an example, a target predicate may define a set of rules indicating that if each linearized power value of an RFID tag over a plurality of data frames satisfies a threshold power value (eg, a trend in linearized power values), then the RFID tag is saturating the reader with read data.

[0030] If the RFID tag meets the predicate (e.g., is "true"), the radio frequency system operates to address the problem of the RFID tag saturating the reader with read data. For example, the reader is configured in a dual target mode with the session set to 0 to optimize the read data collected from the RFID tags within the read field. Here, the radio frequency system can address the problem of saturating the reader with read data by setting the target read of the RFID tags to a single target mode with the session set to 1, 2, or 3, and completing an interrupt when reading the RFID tag. As a result, the RFID tag is temporarily quiet for a specific period of time, or remains quiet as long as the RFID tag remains within the read field of the antenna. As a result, the RFID tag no longer saturates the reader with read data, and the radio frequency system can more easily and / or better evaluate other RFID tags located within the read field.

[0031] In various embodiments, a radio frequency system is used to generate linearized power data, the linearized power data representing read data received from a plurality of RFID tags, and the radio frequency system operates based on the linearized power data of the plurality of RFID tags relative to each other. The radio frequency system collects read data, the read data including data of a plurality of RFID tags that have responded / have been read within a read field of an antenna. The radio frequency system divides the read data into a plurality of data frames, and generates a linearized power value for the power data in the plurality of data frames. For example, the radio frequency system generates a linearized power value for each RSSI value found in a data frame.

[0032] The radio frequency system groups the linearized power values ​​for each data frame into subgroups of linearized power values ​​for each RFID tag represented in the data frame. The radio frequency system then sums each subgroup of linearized power values ​​for each data frame to generate a summed power value for each RFID tag represented in the data frame. Thus, the radio frequency system can convert the power data for different RFID tags on the data frame into a smoother data set, which is more conducive to determining different RFID tags and determining the relationship between different RFID tags.

[0033] In various embodiments, a radio frequency system (or some other system) uses the summed power values ​​generated by different RFID tags for one or more data frames to determine whether one or more RFID tags meet the target predicate. If so, the radio frequency system operates accordingly (e.g., an initialization process). For example, the radio frequency system involves a mobile device that serves as a reader and an antenna. Here, an individual using a mobile device may be interested in traveling (e.g., walking) through an area of ​​items with RFID tags attached and locating a specific item (e.g., locating an RFID tag attached to a specific item). The item may involve highly reflective materials, or this area may involve an environment in which highly reflective materials are present. In addition, this area may be quite large. Therefore, when locating an RFID tag attached to a specific item, the individual wishes to use a high power level radio frequency signal to eliminate any attenuation caused by the highly reflective materials encountered by the radio frequency signal and to cover a relatively large read field.

[0034] As previously described, the combination of reflective materials and high power levels can present technical challenges because the combination of reflective materials and high power levels can cause the read data to include "jumping" data values. This makes it difficult for a mobile device to use the read data to locate an attached RFID tag on a particular item as an individual traverses the area. Therefore, a mobile device configured according to various embodiments of the present disclosure can address this technical challenge by generating linearized power data from read data collected from multiple RFID tags located in the area, and operating based on the linearized power data to locate an attached RFID tag on a particular item.

[0035] For example, a mobile device (e.g., a reader thereof) may use one or more predicates that involve evaluating the summed power values ​​of different RFID tags over one or more data frames to guide the individual to an RFID tag attached to a particular item as the individual passes through the area. Here, via the mobile device, the individual may identify an RFID tag that the individual is interested in locating. A first predicate involves evaluating (e.g., comparing) the linearized power values ​​of the RFID tag attached to the item for one or more data frames (e.g., its trend), and the mobile device uses the first predicate to determine whether the mobile device is currently pointing in the direction of the RFID tag attached to the particular item. Accordingly, the mobile device may use the first predicate to guide (e.g., point) the individual to approach the particular item in the correct (e.g., accurate) direction as the individual is passing through the area. For example, the first predicate may define a set of rules that are used to evaluate the summed power values ​​of different RFID tags relative to each other to determine whether the mobile device is currently pointing in the correct direction of the RFID tag attached to the particular item. The mobile device provides some type of indication to the individual to identify when the mobile device is pointing in the direction that the individual should cross the area, such as displaying an arrow on the user interface of the mobile device, displaying a certain color when the mobile device is pointing in the correct direction, providing a certain sound when the mobile device is pointing in the correct direction, etc.

[0036] The second predicate involves evaluating the strength of the linearized power value of the RFID tag attached to the specific item for one or more data frames, and the mobile device uses the second predicate to determine when the mobile device is close to the specific item. For example, the second predicate defines a set of rules, and the set of rules is used to evaluate whether the linearized power value meets a threshold (e.g., meets a threshold power value) on one or more data frames (e.g., its trend). If satisfied, the second predicate resolves to "true" to determine that the mobile device is close to (e.g., within a certain distance) the RFID tag attached to the specific item. Accordingly, the mobile device can provide some type of indication to the individual that he or she is close to the RFID tag attached to the specific item, such as displaying the proximity distance to the RFID tag on the user interface, displaying a certain color when the device is close to the RFID tag, providing a certain sound when the device is close to the RFID tag, etc. Therefore, a radio frequency system (e.g., a mobile device) configured according to various embodiments of the present disclosure can help improve the ability of the radio frequency system to locate a specific RFID tag in a group of RFID tags, especially when the group of RFID tags involves items and / or is in an environment associated with highly reflective materials.

[0037] In various embodiments, the radio frequency system is configured to generate linearized power data, the linearized power data representing read data collected from one or more RFID tags via multiple antennas covering different read fields, and operate according to the linearized power data of the one or more RFID tags. For example, the radio frequency system may receive a first data frame and a second data frame. The first data frame includes read data collected at a first time period at a first antenna, and the second data frame includes read data collected at a second time period at a second antenna. The first antenna has an intended read field covering a first area, and the second antenna has an intended read field covering a second different area. Here, the first and second time periods cover different time periods, and the first data frame and the second data frame include read data collected from the RFID tag at the first antenna and the second antenna, respectively. For example, when the RFID tag moves from the first area to the second area, read data has been collected at the first antenna and the second antenna.

[0038] However, as previously mentioned, when the first and / or second antenna transmits an RF signal at a high power level, a technical challenge that may be faced is that the RF signal may "bleed" to an area outside the predetermined reading field of the first and / or second antenna. For example, the RF signal transmitted by the first antenna may leak into the predetermined reading field of the second antenna. Similarly, the RF signal transmitted by the second antenna may leak into the predetermined reading field of the first antenna. Therefore, after the RFID tag leaves the first area and enters the second area, the first antenna collects the read data of the RFID tag, resulting in a false positive read result (false positive read) in which the RFID tag appears in the first area (e.g., the predetermined reading field of the first antenna). Similarly, when the RFID tag is still in the first area and before the RFID tag enters the second area, the second antenna collects the read data of the RFID tag, resulting in a false positive read result in which the RFID tag appears in the second area (e.g., the predetermined reading field of the second antenna).

[0039] A radio frequency system configured according to various embodiments of the present disclosure can help address this technical challenge. In various embodiments, the radio frequency system is configured to generate linearized power data, the linearized power data representing read data collected from the RFID tag at the first and second antennas, and operate the RFID tag based on the linearized power data corresponding to the first and second antennas. For example, the radio frequency system generates a first linearized power value for each RSSI value found in the first data frame to form a set of first linearized power values, and sums the set of first linearized power values ​​to generate a first summed power value. In addition, the radio frequency system generates a second linearized power value for each RSSI value found in the second data frame to form a set of second linearized power values, and sums the set of second linearized power values ​​to generate a second summed power value. The radio frequency system evaluates the first summed power value and the second summed power value to determine that the RFID tag meets one or more target predicates. Then, the radio frequency system operates in response to the RFID tag meeting one or more target preset values.

[0040] For example, the radio frequency system evaluates the first and second summed power values ​​to determine whether the RFID tag meets a target predicate related to the RFID tag moving from the first area to the second area. As an example, the target predicate can define a set of rules, and the set of rules involves evaluating the first and second summed power values ​​(e.g., their trends) to determine whether the first summed power value meets a first threshold (e.g., is below the first threshold) and whether the second summed power value meets a second threshold (e.g., is above the second threshold), thereby indicating that the RFID tag has moved from the first area to the second area.

[0041] In some embodiments, the radio frequency system provides an indication that the RFID tag has moved from a first area to a second area. For example, the radio frequency system generates an indication of the movement for display on a user interface. Alternatively or in addition, the radio frequency system can initiate a process based at least in part on this movement, such as updating inventory to reflect the movement of items with attached RFID tags from the first area to the second area, causing the items to be loaded onto a trailer for transporting the items to a third area, causing the automatic sorting system in the second area to sort the items, etc. Therefore, the radio frequency system configured according to various embodiments of the present disclosure helps to better identify the movement of RFID tags (and corresponding items) when using radio frequency signals transmitted in a high power range. More details of various aspects of different embodiments of the present disclosure are now provided.

[0042] Configuration example of RF system

[0043] Figure 1An example configuration of a radio frequency system 100 is described for tracking items located within different areas 110, 120 in a production facility. For example, the radio frequency system 100 involves interrogating RFID tags 116, 126 attached to different items as they are transported to different areas 110, 120 of the production facility in order to identify the inventory of items located in any particular area 110, 120 at any particular time.

[0044] The radio frequency system 100 includes antennas 115, 125 positioned in each of the different areas 110, 120, and the antennas 115, 125 are configured to cover a predetermined reading field of the different areas 110, 120. In addition, the radio frequency system 100 includes a reader 130, which controls the antennas 115, 125 to interrogate the RFID tags 116, 126 located within the corresponding predetermined reading field. For example, the reader 130 provides instructions regarding the power level used by the antennas 115, 125 when transmitting RF signals to interrogate the RFID tags 116, 126.

[0045] The antennas 115, 125 transmit RF signals to the RFID tags 116, 126 and receive return RF signals from the RFID tags 116, 126 attached to the items found in the different areas 110, 120. For example, each RFID tag 116, 126 contains an integrated circuit 117, 127 that is coupled to the antenna to transmit data, such as data identifying the RFID tag 116, 126 and / or the corresponding item. In addition, each RFID tag 116, 126 contains a memory 118, 128 for storing data transmitted by the RFID tag 116, 126 when it is activated and / or interrogated using an RF signal transmitted in the form of electromagnetic energy using the antenna 115, 125.

[0046] In some cases, the radio frequency system 100 provides search criteria to the reader 130 to limit the RFID tags 116, 126 and / or corresponding items that the reader 130 searches for in the different areas 110, 120. The search criteria can be used as a filter for interrogating the RFID tags 116, 126 of interest. Accordingly, the radio frequency system 100 provides the reader 130 with search criteria that relate to different types of data of the RFID tags 116, 126 and / or corresponding items, such as an item identifier, an item description, an item quantity, an RFID tag identifier, a production process, a customer identifier, an item recipient identifier, etc.

[0047] The reader 130 transmits and receives RF signals in the form of electromagnetic energy via the antennas 115, 125 to communicate with the RFID tags 116, 126 in the different areas 110, 120. When the RFID tags 116, 126 receive the electromagnetic energy, the integrated circuits 117, 127 of the tags 116, 126 modulate the electromagnetic energy, and the tags 116, 126 transmit return RF signals to the reader 130. The return RF signals may contain read data, such as identifiers of the tags 116, 126, strength of the signal, return phase angles, and / or any other data stored on the memories 118, 128 of the RFID tags 116, 126. In turn, the reader 130 may provide the read data to the RF system 100.

[0048] The RF system 100 uses the read data to perform various tasks involving items associated with the RFID tags 116, 126. For example, the RF system 100 determines that a first level inventory of items is located in the first area 110 and a second level inventory of items is located in the second area 120. The RF system 100 then initiates a process to move a portion of the inventory of items from the first area 110 to the second area 120 so that enough items are located in the second area 110 for further processing (e.g., manufacturing, sorting, packaging, and shipping, etc.).

[0049] As previously described, items associated with RFID tags 116, 126 may include highly reflective materials that attenuate the RF signals used by RFID tags 116, 126 and reader 130. Alternatively, the environment itself may include highly reflective materials that attenuate RF signals. As a result, the RF system 100 may set the transmit power of the antennas 115, 125 very high to compensate for the attenuation of the RF signals. However, this may cause the antennas 115, 125 to interfere with each other and read RFID tags 116, 126 in adjacent areas 110, 120. As a result, it is difficult for the RF system 100 to positively confirm that a particular item is located in a particular area 110, 120.

[0050] However, the RF system 100 configured according to various embodiments of the present disclosure can help address (e.g., improve) this technical challenge as well as other challenges. In a particular embodiment, the RF system 100 utilizes an evaluate RFID tag module 200. The evaluate RFID tag module 200 evaluates a return RF signal received from one or more RFID tags 116, 126, involving linearizing a power value (e.g., an RSSI value) provided in read data found in the return RF signal and evaluating the linearized power value according to one or more predicates to determine whether the linearized power value represents a significant event to warrant the RF system 100 (or some other system) to operate the RFID tags 116, 126.

[0051] For example, the evaluate RFID tag module 200 evaluates the return RF signal received from a particular RFID tag 116, 126. By linearizing the RSSI value provided in the return RF signal read data and evaluating the linearized RSSI value using a predicate, the evaluate RFID tag module 200 can determine that the particular RFID tag 116, 126 is oversaturating the reader 130 (e.g., responding to the return RF signal too frequently). The RF system 100 responds to the oversaturation by changing the session mode of the RFID tag 116, 126 so that the tag 116, 126 no longer responds or responds at a lower rate. Accordingly, in various embodiments, the evaluate RFID tag module 200 linearizes the RSSI value to generate a linearized power value and evaluates the linearized power value using a predicate, and the evaluate RFID tag module 200 can help the RF system 100 identify when the RFID tag 116, 126 is oversaturating the reader 130 better than the RF system 100 can achieve by relying solely on the read data found in the return RF signal.

[0052] In certain embodiments, the evaluate RFID tag module 200 executes (e.g., calls) the linearization module 400 to generate linearized power values ​​from RSSI values ​​found in the read data. As further discussed herein, the linearization module 400 generates the linearized power values ​​based on the RSSI values ​​and groups the linearized power values ​​according to the RFID tags 116, 126 and / or antennas 115, 125. In addition, the linearization module 400 sums the linearized power values ​​to provide a summed power value, which can better describe the behavior, properties, characteristics, features, etc. of the RFID tags.

[0053] Alternatively or additionally, the evaluate RFID tag module 200 executes (e.g., calls) the evaluate predicate module 500 to evaluate one or more linearized power values ​​of the one or more RFID tags 116, 126 according to one or more target predicates. As further discussed herein, the evaluate predicate module 500 can evaluate the linearized power values ​​of the one or more RFID tags 116, 126 to determine whether the linearized power values ​​match the one or more target predicates. If so, the evaluate predicate module 500 provides data to the RF system 100 or some other system indicating that the linearized power values ​​for the one or more RFID tags 116, 126 match the predicates. Accordingly, the RF system 100 or some other system then uses the data to complete one or more operations with respect to the one or more RFID tags 116, 126, such as providing an indication (e.g., electronic verification) to a production system to update an inventory record to reflect that a particular item associated with the RFID tag 116, 126 is currently stored in a particular area of ​​the facility.

[0054] Please note, Figure 1 Example configurations of the RF system 100 according to various embodiments of the present disclosure are provided. However, the configuration of the RF system 100 may vary according to the embodiment. For example, the configuration of the RF system 100 may be in the form of a mobile device, such as a device that can be moved from one location to another in a facility, or a handheld mobile device that a person carries while traveling (e.g., walking) through the facility. More details of the evaluation RFID tag module 200, the linearization module 400, and the predicate evaluation module 500 according to various embodiments are now provided.

[0055] Evaluating RFID Tag Modules

[0056] Reference now Figure 2 , Figure 2 Further details are provided for evaluating return RF signals received from one or more RFID tags 116, 126 by the evaluation RFID tag module 200 according to various embodiments. Accordingly, Figure 2 The flowchart shown in corresponds to operations performed by computing hardware such as found in RF system 100 described herein when such computing hardware performs operations to evaluate RFID tag module 200.

[0057] This process involves the evaluation RFID tag module 200 generating a data frame in operation 210. For example, the evaluation RFID tag module 200 receives read data collected via one or more return RF signals, and the one or more return RF signals are from one or more RFID tags 116, 126 at antennas 115, 125 or multiple antennas 115, 125. In some embodiments, the evaluation RFID tag module 200 receives this read data in almost real time while the reader 130 is collecting the read data. Alternatively or additionally, the evaluation RFID tag module 200 receives this read data after the reader 130 has collected the read data for a period of time. For example, the evaluation RFID tag module 200 receives this read data after the data has been collected in batches for a period of time (e.g., two seconds, five seconds, ten seconds, etc.).

[0058] In various embodiments, the evaluation RFID tag module 200 generates a data frame from the read data based on two parameters. The first parameter is the frame size. The frame size indicates the amount of read data that constitutes the data frame. For example, the frame size indicates that the data frame includes read data collected within a time of twenty-five milliseconds, fifty milliseconds, one hundred milliseconds, etc. The second parameter is the frame interval. The frame interval indicates how often the evaluation RFID tag module 200 generates a data frame from the read data. For example, the frame interval indicates that the evaluation RFID tag module 200 generates a data frame from the read data every two seconds.

[0059] In certain embodiments, these two parameters may be used to adjust the responsiveness of the evaluation RFID tag module 200. For example, the frame size may be set to a relatively low value to suppress "jumpiness" in the read results of different RFID tags 116, 126, which can result in erroneous reads and / or over-reads of the tags 116, 126. However, a relatively low frame size can result in missed reads of one or more RFID tags 116, 126. The frame interval helps to counteract this effect by allowing a collection of data frames of a particular RFID tag 116, 126 to be evaluated, even if a read is missed in a particular data frame, the collection of data frames covering a particular length of time in which the particular RFID tag 116, 126 may have been read.

[0060] The data frame may include various types of data. For example, the data frame includes the identifiers of one or more RFID tags 116, 126 read during the time covered by the data frame. In addition, each data frame includes an RSSI value associated with the return RF signal received from one or more RFID tags 116, 126. Depending on the size of the frame, in some cases, the RFID tags 116, 126 may be read multiple times during the time period represented by the data frame. The number and time of responses of the RFID tags 116, 126 generally depend on whether the signal transmitted by the antenna 115, 125 successfully reaches the tag 116, 126 and activates it, as well as the signal successfully returned by the tag 116, 126. For example, a specific RFID tag 116, 126 may be in close proximity to the antenna 115, 125 and have a very fast response time (e.g., 0.4 milliseconds). Therefore, the radio frequency system 100 may read a specific RFID tag 116, 126 several times during a data frame including read data collected within a time period of fifty milliseconds, one hundred milliseconds, two hundred milliseconds, etc. In addition, the distance between the RFID tags 116 and 126 and the antennas 115 and 125 is very close and / or the angle is ideal, so the upper limit of the number of responses can be reached in a short time.

[0061] In operation 215, the evaluate RFID tag module 200 processes the data frame to generate one or more linearized power values ​​from the RSSI values ​​found in the data frame. In a particular embodiment, the evaluate RFID tag module 200 performs this particular operation by executing (e.g., calling) the linearization module 400. The linearization module 400 generates a linearized power value for each RSSI value found in the data frame. In addition, the linearization module 400 groups the linearized power values ​​by RFID tag 116, 126, antenna 115, 125 (e.g., "collection point"), and / or a combination thereof. In addition, the linearization module 400 sums the linearized power values ​​for each RFID tag 116, 126, antenna 115, 125, and / or a combination thereof to generate a summed power value for the RFID tag 116, 126, antenna 115, 125, and / or a combination thereof.

[0062] For example, if the data frame includes read data collected at multiple antennas 115, 125, the linearization module 400 generates a summed power value for each RFID tag 116, 126 represented in the data frame at each antenna 115, 125 that reads the tags 116, 126. More specifically, if the data frame includes read data for ten RFID tags 116, 126 collected at two different antennas 115, 125, the linearization module 400 generates twenty summed power values, two summed power values ​​for each RFID tag 116, 126, with one summed power value representing one of the two different antennas 115, 125, provided that all ten RFID tags 116, 126 were read at both antennas 115, 125 during the period of collecting the read data represented by the data frame.

[0063] Thus, in various embodiments, the evaluate RFID tag module 200 continuously processes data frames in the read data over a period of time, resulting in a rolling data set of power values, providing a time series of RF environments (e.g., trends in RF environments) at nearly every point in time for each RFID tag 116, 126 at each antenna 115, 125. In addition, the evaluate RFID tag module 200 provides a rolling data set for different RFID tags 116, 126 in a linearized form, providing power data (e.g., numerical values) in a format that is more conducive to evaluating the behavior, attributes, characteristics, features, etc. of the RFID tags 116, 126. Figure 3A An example of a graphical representation of such a rolling data set is shown.Rolling data set 300 includes power values ​​linearized over 250 millisecond data frames that are collected continuously over a period of time.

[0064] In operation 220, the evaluate RFID tag module 200 determines whether to evaluate the summed power value of the data frame according to one or more target predicates. By way of example, when an item (e.g., a finished product) is transported within a facility, the facility may wish to accurately track it. Here, the items may be associated with RFID tags 116, 126 and stored in different locations throughout the facility. The antennas 115, 125 are placed in different locations to interrogate the RFID tags 116, 126 as the items are transported within the facility, collect corresponding read data, and transmit the read data to the reader 130.

[0065] The facility defines a predicate that involves evaluating the summed power values ​​of the RFID tags 116, 126 over a set of data frames covering a certain period of time (e.g., two minutes, five minutes, thirty minutes, etc.). The purpose of the predicate is to determine whether a particular item has been transported from a first location in the facility to a different second location in the facility. In other words, the purpose of the predicate is to track the inventory of items as they are transported through the facility. The device may be interested in evaluating the summed power values ​​of the RFID tags 116, 126 every thirty minutes.

[0066] Therefore, the evaluate RFID tags module 200 determines whether the data frame includes a summed power value for a particular tag 116, 126 that has not been evaluated via the predicate within the past thirty minutes (e.g., whether the time since the particular RFID tag 116, 126 was last evaluated via the predicate satisfies the thirty minute threshold). If so, the evaluate RFID tags module 200 determines that the summed power value for the particular RFID tag 116, 126 is to be evaluated according to the predicate.

[0067] After determining that the data frame needs to be evaluated, the evaluate RFID tag module 200 evaluates the data frame against one or more target predicates in operation 225. In certain embodiments, the evaluate RFID tag module 200 performs this particular operation by executing (e.g., calling) the evaluate predicate module 500. The evaluate predicate module 500 evaluates the data frame according to the one or more target predicates. For example, the evaluate predicate module 500 evaluates whether the rolling data set of linearized power values ​​300 of the RFID tags 116, 126 collected at a particular antenna 115, 125 satisfies Figure 3B As another example, Figure 3C As shown, the evaluation predicate module 500 evaluates whether a rolling data set of linearized power values ​​300 of RFID tags 116 , 126 collected at a particular antenna 115 , 125 satisfies a threshold 310 for a certain period of time (a number of consecutive frames) 315 .

[0068] If the evaluate predicate module 500 determines that one or more RFID tags 116, 126 represented in the data frame satisfy the predicate, then the evaluate predicate module 500 provides data to one or more slave units to indicate this. Generally speaking, a "slave unit" is a device or system that then uses the data received from the evaluate predicate module 500 to initiate, process, cause, etc., an operation to resolve the frame data. For example, a "slave unit" is an inventory system that updates inventory records based at least in part on this data to reflect that an item has been moved from a first location in a facility to a second location in the facility.

[0069] At this point, the evaluate RFID tag module 200 may return to operation 210 and generate another data frame from the read data received by the evaluate RFID tag module 200. The evaluate RFID tag module 200 then processes the data frame in the same manner just discussed. Additional details of the linearization module 400 and the evaluate predicate module 500 are provided herein.

[0070] Linearization module

[0071] Now please refer to Figure 4 , provides additional details about various embodiments of the linearization module 400, which is used to linearize one or more RSSI values ​​found in a data frame representing read data collected from one or more RFID tags. Accordingly, when the computing hardware executes the linearization module 400, Figure 4 The flowchart shown in corresponds to operations performed by computing hardware such as found in the RF system 100 described herein.

[0072] This process involves the linearization module 400 linearizing the RSSI values ​​found in the data frame in operation 410 to form a set of linearized power values. The RSSI values ​​provide a measurement of the strength of the RF signal received from the RFID tag 116, 126 at the antenna 115, 125. The closer the RFID tag 116, 126 is to the antenna 115, 125, the stronger the RSSI value received from the reading of the RFID tag 116, 126 at the antenna 115, 125. Traditionally, RSSI values ​​are often used to locate the RFID tag 116, 126. However, as previously mentioned, the combination of reflective materials and high power level RF signals can cause the read data to contain "jumpy" RSSI values, that is, the RSSI values ​​fluctuate widely within a short period of time. In addition, other environmental factors may also cause RSSI values ​​to "jump", such as how people, devices, etc. move / operate the RFID tag 116, 126, the distance of the RFID tag 116, 126 from the antenna 115, 125, or even the channel used. Therefore, conventional approaches may face technical challenges in using RSSI values ​​for various purposes (eg, using RSSI values ​​to locate certain RFID tags 116, 126 at specific locations).

[0073] In various embodiments, the linearization module 400 solves this problem by linearizing the RSSI values ​​found in the data frame. The RSSI values ​​are expressed in decibel-milliwatts (dBm). Decibel-milliwatts represents a power level of decibels (dB) relative to one milliwatt (mW). Power in dBm can be expressed as Therefore, decibel-milliwatts represent RSSI values ​​logarithmically. A common reason for using dB is because dB provides a simple linear measurement for a single reading. However, dB is not always ideal for situations where actions specific to repeated observations may be taken. Linearization module 400 converts RSSI values ​​to linearized values, helping to smooth out "jumps" seen in RSSI values.

[0074] In certain embodiments, the linearization module 400 also normalizes the RSSI values ​​based on the power level of the RF signals transmitted by the antennas 115, 125. In a multi-antenna environment, normalizing the RSSI values ​​can provide the benefit of allowing operations to be performed for the tendency of items with RFID tags 116, 126 to move from the reading field of the first antenna 115 to the reading field of the second antenna 125, to be placed in the middle, etc.

[0075] As an example, the linearization module 400 generates a linearized power value from the RSSI value using the formula:

[0076]

[0077] Where P dBmreturned is the RSSI value, P dBmoutput is the power level of the RF signal transmitted by antennas 115 , 125 .

[0078] In operation 415, the linearization module 400 populates the frame dictionary with the set of linearized power values. For example, the frame dictionary may be stored in some type of storage medium found in the RF system 100 or some other system. In certain embodiments, the linearization module 400 performs this operation so that the set of normalized power values ​​for the data frame is available for further processing by the linearization module 400 or some other module, device, system, etc. In addition, the linearization module 400 may populate the frame dictionary with an identifier for identifying the RFID tag 116, 126 associated with the linearized power value and / or an identifier for identifying the antenna 115, 125 associated with the linearized power value.

[0079] In operation 420, the linearization module 400 may group the set of linearization power values ​​by RFID tag 116, 126 to form linearization power value groups, each group being associated with a particular RFID tag 116, 126. For example, the linearization module 400 groups the set of linearization power values ​​within the frame dictionary by RFID tag 116, 126 into linearization power value groups.

[0080] Alternatively or additionally, the linearization module 400 may group the set of linearization power values ​​by antenna 115, 125 in operation 425. For example, the linearization module 400 groups the set of linearization power values ​​within the frame dictionary by antenna 115, 125 into linearization power value groups.

[0081] In some embodiments, the linearization module 400 groups the set of linearized power values ​​for the RFID tags 116, 126 into a linearized power value group for each RFID tag 116, 126, and then groups each linearized power value group into linearized power value subgroups by antenna 115, 125. Thus, the frame dictionary subdivides the set of linearized power values ​​into linearized power value groups by RFID tags 116, 126, and each linearized power value group is subdivided into linearized power value subgroups by antenna 115, 125.

[0082] In operation 430, the linearization module 400 generates one or more summed power values. For example, the linearization module 400 generates the summed power value for the data frame by summing the linearized power values ​​for the data frame. Alternatively or additionally, the linearization module 400 generates the summed power value for each linearized power value group associated with a particular RFID tag 116, 126 by summing together the linearized power values ​​found in each linearized power value group. Alternatively or additionally, the linearization module 400 generates the summed power value for each linearized power value group associated with a particular antenna 115, 125 by summing together the linearized power values ​​found in each linearized power value group. Alternatively or additionally, the linearization module 400 generates the summed power value for each subgroup of linearized power values ​​associated with a particular RFID tag 116, 126 and antenna 115, 125 by summing together the linearized power values ​​found in each subgroup of linearized power values.

[0083] Thus, the linearization module 400 is configured to generate one or more summed power values ​​based at least in part on the use of the one or more summed power values. For example, the linearization module 400 is configured to generate one or more summed power values ​​based at least in part on a predicate for evaluating the one or more summed power values. As an example, a facility may have developed a predicate for evaluating the summed power values ​​to identify when an RFID tag (and its associated item) has moved from a first location at the facility to a second location. In this example, the linearization module 400 is configured to generate a summed power value for each subset of linearized power values ​​associated with a particular RFID tag 116, 126 and antenna 115 so that the summed power values ​​of the particular RFID tag 116, 126 can be evaluated according to the predicate to determine that the RFID tag (and its associated item) has moved from a first location at the facility to a second location. In some embodiments, the linearization module 300 stores the generated summed power values ​​in a frame dictionary.

[0084] Evaluate Predicate Module

[0085] Now please refer to Figure 5 , provides additional details about various embodiments of the evaluation predicate module 500, which is used to evaluate the linearized power values ​​(e.g., summed linearized power values) of one or more RFID tags 116, 126, antennas 115, 125, and / or combinations thereof according to one or more target predicates. Accordingly, when the computing hardware executes the evaluation predicate module 500, Figure 5 The flowchart shown in corresponds to operations performed by computing hardware such as found in the RF system 100 described herein.

[0086] In general, a "predicate" can be thought of as a function that evaluates a set of parameters and returns an answer, such as a Boolean value. A predicate can define a set of rules (e.g., one or more rules) that detail how to evaluate the set of parameters to answer whether the predicate resolves to "true". As an example, the predicate involves evaluating the summed power values ​​of twenty consecutive data frames read by the RFID tags 116, 126 at the antennas 115, 125 (e.g., evaluating the trend of the summed power values) to determine whether the summed power value of each data frame (or the average summed power value of the twenty data frames) meets a threshold. If so (e.g., the predicate resolves to "true"), it is determined that the read data of the RFID tags 116, 126 saturates the antennas 115, 125 and the corresponding reader 130. The radio frequency system 100 then operates to resolve the saturation problem, such as completing an interruption in reading the RFID tags 116, 126 for a period of time.

[0087] This process involves the evaluation predicate module 500 evaluating the data frame according to one or more target predicates in operation 510. The evaluation predicate module 500 initially identifies the target predicate to be used to evaluate the data frame. In some embodiments, the evaluation predicate module 500 is provided with data for identifying the target predicate. For example, the evaluation RFID tag module 200 provides the evaluation predicate module 500 with data for identifying the target predicate. In other embodiments, the evaluation predicate module 500 can identify the target predicate by querying the data source of the predicate and identifying those predicates applicable to the data frame. For example, one or more predicates are defined for a specific set of antennas 115, 125 used within a facility so as to read RFID tags 116, 126 placed on items as the items move within the facility. Herein, the evaluation predicate module 500 determines that the data frame originates from read data collected at one of the antennas 115, 125, whereby the predicate is applicable to the data frame (e.g., the predicate is a "target" predicate for the data frame).

[0088] In addition, the evaluation predicate module 500 retrieves other data frames that may be applicable to evaluating the current data frame according to one or more target predicates. For example, the evaluation predicate module 500 can retrieve data frames collected in the past time period from the data frame dictionary. In addition, the evaluation predicate module 500 may apply judgment criteria (one or more query parameters) when retrieving specific data (e.g., a specific summed power value) from past data frames, such as retrieving criteria for summed power values ​​applicable to one or more specific RFID tags 116, 126, one or more specific antennas 115, 125, one or more specific combinations of RFID tags 116, 126 and antennas 115, 125, etc.

[0089] The evaluate predicate module 500 evaluates the data frame against one or more target predicates, in conjunction with other data frames (if applicable), and determines whether any of the one or more target predicates matches the data frame (e.g., resolves to "true") in operation 515. If not, the evaluate predicate module 500 exits directly in operation 520. However, if any of the one or more predicates do match, the evaluate predicate module 500 sends some type of data to one or more slave units, which then perform some operations in operation 525 to resolve the match of the data frame.

[0090] For example, when an individual travels (e.g., walks) through a facility, the slave unit can be a mobile device used by the individual in locating the RFID tags 116, 126. Herein, the evaluation predicate module 500 is located on the mobile device, and the target predicate involves evaluating the summed power values ​​provided in one or more data frames of the RFID tags 116, 126 to determine whether the individual is traveling in the correct direction of the RFID tags 116, 126. The data provided by the evaluation predicate module 500 to the mobile device indicates whether the mobile device is currently pointing in the correct direction toward the location of the RFID tags 116, 126. In turn, the mobile device processes the data and provides an indication to the individual whether the mobile device is pointing in the correct direction so that the individual can adjust his or her direction of travel if necessary. For example, the mobile device displays a direction indication (e.g., an arrow) on the user interface of the mobile device, causes a visual indication to be provided (e.g., causes a green light to be illuminated), causes a specific audio to be provided (e.g., causes a specific "beep" sound to be emitted), etc.

[0091] In another example, the slave element may be the RF system 100 itself. The target predicate involves evaluating the summed power values ​​provided in one or more data frames for the RFID tags 116, 126 represented in the data frames to determine whether any of the RFID tags 116, 126 is saturating the antenna 115, 125 and the corresponding reader 130 with the read data that forms part of the RF system 100. The evaluate predicate module 500 provides the radio frequency system 100 with data indicating that one or more RFID tags 116, 126 are saturating the antenna 115, 125 with the read data. The radio frequency system 100 then operates with respect to the one or more RFID tags 116, 126, causing the reader 130 to target the RFID tags 116, 126, causing an interruption in the collection of read data from the RFID tags 116, 126.

[0092] In yet another example, the slave unit may be another system independent of the RF system 100, such as an inventory system, etc., which is used to track items manufactured in a factory as the items are moved to different locations in the factory. The target predicate involves evaluating the data frame and other data frames (if applicable) to determine whether a particular item has been moved from a first location in the facility to a second location. For example, the target predicate evaluates the data frame and the data frame representing read data collected for the plurality of RFID tags 116, 126 at the plurality of antennas 115, 125 to determine whether the summed power value at the plurality of antennas 115, 125 indicates that a significant event has occurred for the particular RFID tag 116, 126, indicating that the corresponding item has been moved from a first location in the facility to a second location.

[0093] As an example, a plurality of data frames represent read data collected at a first antenna 115, 125 at a first location and a second antenna 115, 125 at a second location, and a predicate involves evaluating the summed power values ​​(e.g., the trend thereof) of a particular RFID tag 116, 126 over the plurality of data frames to determine whether the summed power values ​​exhibit a significant deviation at the first and second antennas 115, 125 (e.g., the summed power value at the first antenna 115, 125 reaches a peak and then drops, and the summed power value at the second antenna 115, 125 appears and then reaches a peak), which indicates that the particular RFID tag 116, 126 and the corresponding item have moved from the first location to the second location. The evaluation predicate module 500 provides data indicating this to the inventory system so that the inventory system can then update the inventory record to show that the item has moved from the first location to the second location. Thus, the evaluation predicate module 500 can perform evaluations based on various types of predicates and provide data to various types of slave units.

[0094] Technology Platform Examples

[0095] Embodiments of the present disclosure may be implemented in a variety of ways, including as a computer program product for a protected artifact. Such a computer program product may include one or more software components, including, for example, software objects, methods, data structures, etc. The software components may be written in any of a variety of programming languages. An example programming language may be a low-level programming language, such as an assembly language associated with a specific hardware architecture and / or operating system platform. Software components containing assembly language instructions need to be converted into executable machine code by an assembler before the hardware architecture and / or platform is executed. Another example programming language is a high-level programming language that can be ported across multiple architectures. Software components containing high-level programming language instructions need to be converted into an intermediate representation by an interpreter or compiler before execution.

[0096] Other examples of programming languages ​​include, but are not limited to, macro languages, shell or command languages, job control languages, scripting languages, database query or search languages, and / or report writing languages. In one or more example embodiments, a software component containing instructions of one of the aforementioned programming language examples may be executed directly by an operating system or other software component without first being converted to another form. Software components may be stored as files or other data storage structures. Software components of similar type or related functions may be stored together, for example, in a particular directory, folder, or library. Software components may be static (e.g., pre-established or fixed) or dynamic (e.g., created or modified at execution time).

[0097] A computer program product may include a computer-readable storage medium storing an application, program, program module, script, source code, program code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, etc. (also referred to herein as executable instructions, instructions for execution, computer program product, program code, and / or similar terms used interchangeably herein). Such computer-readable storage media include all non-transitory computer-readable media (including volatile and non-volatile media). A computer program product does not include temporary media.

[0098] In some embodiments, the non-volatile computer-readable storage medium may include a floppy disk, a floppy disk, a hard disk, a solid-state storage (SSS) (e.g., a solid-state drive (SSD), a solid-state card (SSC), a solid-state module (SSM)), an enterprise flash drive, a magnetic tape, or any other non-temporary magnetic medium, etc. The non-volatile computer-readable storage medium may also include a punch card, a paper tape, an optical marker sheet (or any other physical medium with a hole pattern or other optically recognizable marker), a compact disc read-only memory (CD-ROM), a compact disc rewritable (CD-RW), a digital versatile disc (DVD), a Blu-ray disc (BD), any other non-temporary optical medium, etc. Such non-volatile computer-readable storage media also include a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory (e.g., a serial flash memory, a NAND flash memory, a NOR flash memory, etc.), a multimedia memory card (MMC), a secure digital (SD) memory card, a SmartMedia card, a CompactFlash (CF) card, a memory stick, etc. In addition, the non-volatile computer-readable storage medium may also include conductive-bridging random access memory (CBRAM), phase-change random access memory (PRAM), ferroelectric random access memory (FeRAM), non-volatile random access memory (NVRAM), magnetoresistive random access memory (MRAM), resistive random access memory (RRAM), Silicon-Oxide-Nitride-Oxide-Silicon memory (SONOS), floating junction gate random access memory (FJGRAM), Millipede memory, racetrack memory, etc.

[0099] In some embodiments, the volatile computer-readable storage medium may include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), fast page mode dynamic random access memory (FPMDRAM), extended data output dynamic random access memory (EDODRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), double data rate type 2 synchronous dynamic random access memory (DDR2SDRAM), double data rate type 3 synchronous dynamic random access memory (DDR3SDRAM), Rambus dynamic random access memory (RDRAM), twin transistor RAM (Twin Transistor RAM; TTRAM), thyristor RAM (Thyristor RAM; T-RAM), zero capacitor RAM (Zero-capacitor; Z-RAM), Rambus in-line memory module (RIMM), dual in-line memory module (DIMM), single in-line memory module (SIMM), video random access memory (VRAM), cache memory (including various levels), flash memory, register memory, etc. It is to be understood that when describing various embodiments using computer-readable storage media, other types of computer-readable storage media may be used instead of or in addition to the above-mentioned computer-readable storage media.

[0100] Various embodiments of the present disclosure may also be implemented as methods, apparatuses, systems, computing devices, computing entities, etc. Thus, various embodiments of the present disclosure may take the form of data structures, apparatuses, systems, computing devices, computing entities, etc., to execute instructions stored on a computer-readable storage medium to complete certain steps or operations. Therefore, various embodiments of the present disclosure may also take the form of complete hardware, complete computer program products, and / or a combination of computer program products and hardware to complete certain steps or operations.

[0101] Various embodiments of the present disclosure will be described herein with reference to block diagrams and flow charts. Therefore, each frame of the block diagram and flow chart can be implemented in the form of a computer program product, a complete hardware embodiment, a combination of hardware and computer program products, and / or a device, system, computing device, computing entity, etc. that carries out instructions, operations, steps, and similar words (e.g., executable instructions, instructions for execution, program codes, etc.) on a computer-readable storage medium for execution. For example, the retrieval, loading, and execution of code can be completed sequentially so that an instruction is retrieved, loaded, and executed each time. In certain embodiments, retrieval, loading, and / or execution can be completed in parallel so that multiple instructions are retrieved, loaded, and / or executed simultaneously. Therefore, such an embodiment can produce a specially configured machine to complete the steps or operations specified in the block diagram and flow chart. Accordingly, block diagrams and flow charts support various combinations of embodiments for completing specified instructions, operations, or steps.

[0102] System architecture example

[0103] Figure 6 600 is a block diagram of a system architecture 600 that may be used with various embodiments of the present disclosure described in detail herein. Figure 6 As can be seen in the figure, the system architecture 600 includes an RF system 100, which includes one or more readers 130 and one or more RF servers 610. The reader 130 can communicate with one or more antennas 115, 125, and the one or more antennas 115, 125 receive read data from various RFID tags 116, 126 (not shown).

[0104] The RF server 610 can communicate with one or more data repositories (repositors) 620 via one or more networks 615. For example, the data repository 620 is used to store one or more data frame dictionaries detailed herein. In addition, the data repository 620 can be used to store predicates detailed herein. Although the reader 130, the RF server 610, and the repository 620 are shown as separate components, in various embodiments, these components 130, 610, 620 may include a single reader, server, and / or repository, multiple readers, servers, and / or repositories, one or more cloud-based readers, servers, and / or repositories, or any other suitable configuration.

[0105] The RF server 610 may also communicate with one or more slave elements 640, such as devices, systems, etc., via one or more networks 615. The RF server 610 communicates with the slave elements 640 to provide data based at least in part on evaluating one or more data frames representing read data collected from one or more RFID tags 116, 126 according to one or more predicates. As described in detail herein, the slave elements operate based at least in part on the data received from the RF server 610.

[0106] In addition, the RF server 610 communicates with one or more interface devices 630 via one or more networks 615. For example, the interface device 630 is a device associated with an individual interested in viewing the RFID tags 116, 126, antennas 115, 125, combinations thereof, etc. The RF server 610 provides one or more user interfaces for the interface device 630 to facilitate the individual to view the data frames. For example, via a browser application resident on the interface device 630, the RF server 610 provides one or more web pages through an accessible website.

[0107] The compliant reader 130 and / or RF server 610 implements the evaluation RFID tag module 200, linearization module 400, and predicate evaluation module 500 described herein. In addition, the reader 130 and / or RF server 610 provides one or more interfaces (e.g., one or more suitable application programming interfaces APIs, direct connections, etc.) that allow the RF system 100 to communicate with the slave unit 640.

[0108] It should be noted that the system architecture 600 shows only one configuration of the RF system 100, and there may be multiple configurations (over configuration). For example, the RF system 100 according to some embodiments may be a mobile device including a reader 130 and antennas 115, 125, which can be used to collect read data from RFID tags 116, 126. In addition, the mobile device may also include a memory for storing the evaluation RFID tag module 200, the linearization module 400 and / or the predicate evaluation module 500. In addition, the memory is also used to store the data frame dictionary and / or the predicate. In addition, the mobile device includes one or more processors that execute the modules 200, 400, 500.

[0109] Computing Hardware Examples

[0110] Figure 7 FIG. 6 is a schematic diagram of computing hardware 700 that can be used in system architecture 600. For example, computing hardware 700 can be Figure 6RF server 610, slave unit 640, and / or interface device 630 are shown. In certain embodiments, computing hardware 700 may be suitable for use as a computer in the context of system architecture 600 to facilitate generating and evaluating linearization data values ​​based at least in part on read data collected from RFID tags 116, 126.

[0111] In various embodiments, the computing hardware 700 is connected (e.g., networked) to other computing hardware in a local area network, an intranet, an extranet, and / or the Internet. The computing hardware 700 operates as a server, a client computer in a client-server network environment, a peer computer in a peer-to-peer (or distributed) network environment, and the like. For example, the computing hardware 7007 is a desktop personal computer (PC), a tablet computer, a set-top box (STB), a personal digital assistant (PDA), a cellular phone, a web appliance, a server, a network router, a switch or a bridge, or any other computing hardware capable of executing a set of instructions (sequentially or otherwise) that specify operations to be performed by the computing hardware. In addition, although the computing hardware 700 is Figure 7 Although shown as a single computing entity, the term "computing hardware" should also be taken to include any series of computing entities that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

[0112] The computing hardware 700 includes a processing device 702, a main memory 704 (e.g., read-only memory ROM, flash memory, dynamic random access memory DRAM, such as synchronous dynamic random access memory SDRAM or Rambus dynamic random access memory RDRAM, etc.), a static memory 706 (e.g., flash memory, static random access memory SRAM, etc.) and a data storage device 518, which communicate with each other via a bus 732.

[0113] The processing device 702 represents one or more general-purpose processing devices, such as a microprocessor, a central processing unit, etc. More specifically, the processing device 702 may be a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or a processor that implements other instruction sets, or a processor that implements a combination of instruction sets. The processing device 702 may also be one or more special-purpose processing devices, such as an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), a network processor, etc. The processing device 702 is used to execute the processing logic 726 to perform various operations, steps, etc. discussed herein.

[0114] The computing hardware 700 further includes a network interface device 708. The computing hardware 700 also includes a video display device 710 (e.g., a liquid crystal display LCD or a cathode ray tube CRT), an alphanumeric input device 712 (e.g., a keyboard), a cursor control device 714 (e.g., a mouse), and a signal generating device 716 (e.g., a speaker).

[0115] The data storage device 718 includes a non-transitory computer-accessible storage medium 730 (also referred to as a non-transitory computer-readable storage medium or a non-transitory computer-readable medium) on which one or more modules 722 (e.g., one or more sets of instructions in the form of software) are stored, such as the evaluate RFID tag module 200, the linearization module 400, and the evaluate predicate module 500 described herein. During execution of the computing hardware 700, the module 722 may also reside completely or at least partially within the main memory 704 and / or the processing device 702. In this case, the main memory 704 and the processing device 702 may also constitute a computer-accessible storage medium. The module 722 may further be transmitted or received over one or more networks 615 via the network interface device 708.

[0116] Although Figure 7The computer-accessible storage medium 730 is shown as a single medium, but the term "computer-accessible storage medium" should be understood to include a single medium or multiple media (e.g., a centralized or distributed database and / or associated caches and servers) that store one or more sets of instructions. The term "computer-accessible storage medium" should also be understood to include any medium that can store, encode, or carry a set of instructions executed by the computing hardware 700, and enable the computing hardware 700 to perform any one or more methods of the present disclosure. Therefore, the term "computer-accessible storage medium" should be correspondingly understood to include, but not limited to, solid-state memory, optical and magnetic media, etc.

[0117] System Operation

[0118] The logical operations described herein may be implemented (1) as a series of computer-implemented behaviors or one or more program modules running on a computer system and / or (2) as interconnected machine logic circuits or circuit modules within a computer system. The implementation may be selected based on the performance and other requirements of the computing system. Accordingly, the logical operations described herein refer to various states, operations, steps, structural devices, behaviors, or modules. These states, operations, steps, structural devices, behaviors, and modules may be implemented by software, firmware, dedicated digital logic, and any combination thereof. More or fewer operations may be performed than shown in the figures and described herein. These operations may also be performed in an order different from that described herein.

[0119] Embodiment 1: A method, comprising: receiving, by computing hardware, a data frame, wherein the data frame includes read data collected from an RFID tag over a period of time, the read data being collected from the RFID tag in response to receiving an RF signal transmitted from an antenna in communication with a reader, and the read data including a plurality of RSSI values; generating, by the computing hardware, a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; summing, by the computing hardware, the set of linearized power values ​​to generate a summed power value for the data frame; evaluating, by the computing hardware, the summed power value of the data frame and one or more other summed power values ​​of one or more other data frames to determine that the summed power value and the one or more other summed power values ​​satisfy a target predicate; and causing an operation to be performed with respect to the RFID tag in response to determining that the summed power value and the one or more other summed power values ​​satisfy the target predicate.

[0120] Embodiment 2: The method of embodiment 1, wherein the operation includes changing a setting of the reader related to processing additional read data collected from the RFID tag.

[0121] Embodiment 3: The method of embodiment 2, wherein changing the setting includes changing the setting of the reader to a single target mode to initiate interruption of the reading of the RFID tag.

[0122] Embodiment 4: The method according to any one of embodiments 1 to 3, wherein the target predicate defines a set of rules for evaluating whether the summed power value and one or more other summed power values ​​satisfy a threshold.

[0123] Embodiment 5: The method according to any one of embodiments 1 to 4, wherein the one or more other data frames are one or more previous data frames including read data collected from the RFID tag at a previous time.

[0124] Embodiment 6: The method according to any one of embodiments 1 to 5, wherein generating a linearized power value for each RSSI value in a plurality of RSSI values ​​comprises normalizing the RSSI value based at least in part on a power value of a radio frequency signal transmitted from an antenna.

[0125] Embodiment 7: A system, comprising: a computer-readable medium storing instructions; and a processing device communicatively coupled to the computer-readable medium, wherein the processing device is used to execute the instructions, thereby completing operations including: receiving a plurality of data frames, wherein each of the plurality of data frames comprises read data collected from a plurality of RFID tags within a time period, the read data being collected from the plurality of RFID tags in response to receiving a radio frequency signal transmitted from an antenna in communication with a reader, and the read data comprising a plurality of RSSI values; for each of the plurality of data frames: generating a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; The method comprises the steps of: combining; and for each RFID tag among the plurality of tags represented in the data frame: grouping the linearized power values ​​found in the set of linearized power values ​​for the RFID tags into a linearized power value group; and summing the linearized power value groups to generate a summed power value for the RFID tag and the data frame; evaluating the summed power value for each of the plurality of data frames for a specific RFID tag among the plurality of RFID tags to determine that the summed power value for each of the plurality of data frames for the specific RFID tag satisfies a target predicate; and in response to determining that the summed power value for each of the plurality of data frames for the specific RFID tag satisfies the target predicate, causing an operation to be performed with respect to the specific RFID tag.

[0126] Embodiment 8: The system according to embodiment 7, wherein the target predicate defines a set of rules, and the set of rules is used to evaluate whether the summed power value of at least one data frame in the plurality of data frames of a specific RFID tag meets a threshold.

[0127] Embodiment 9: The system according to embodiment 7 or 8, wherein the plurality of data frames comprises a sequence of data frames occurring within a time period.

[0128] Embodiment 10: The system of any one of Embodiments 7 to 9, wherein the operations include generating an indication of the location of a specific RFID tag for display on a user interface.

[0129] Embodiment 11: The system according to any one of embodiments 7 to 9, wherein the system is a mobile device including a reader and an antenna, and the mobile device travels through an area where a plurality of RFID tags are located.

[0130] Embodiment 12: The system according to embodiment 11, wherein the operation includes generating an indication for displaying on a user interface provided on a screen of the mobile device whether the mobile device is pointed in the direction of the location of the specific RFID tag.

[0131] Embodiment 13: The system of claim 11, wherein the operations include generating an indication for displaying on a user interface provided on a screen of the mobile device whether the mobile device is within a certain distance of a specific RFID tag.

[0132] Embodiment 14: The system of any one of embodiments 7 to 13, wherein generating a linearized power value for each RSSI value in the plurality of RSSI values ​​comprises normalizing the RSSI value based at least in part on a power value of a radio frequency signal transmitted from the antenna.

[0133] Embodiment 15: A computer-readable medium storing computer-executable instructions, when computing hardware executes the instructions, configuring the computing hardware to perform operations including: receiving a first data frame and a second data frame, wherein: the first data frame includes first read data collected from an RFID tag in a first time period, the first read data is collected from the RFID tag in response to receiving a first RF signal sent from a first antenna in communication with a reader, and the first read data includes a first plurality of RSSI values; the second data frame includes second read data collected from the RFID tag in a second time period, the second read data is collected from the RFID tag in response to receiving a second RF signal sent from a second antenna in communication with the reader, and the second read data includes a second plurality of RSSI values; generating a first linearized power value for each RSSI value in the first plurality of RSSI values ​​to form a set of first linearized power values; calculating the set of first linearized power values The method comprises the steps of: generating a first summed power value and a second linearized power value for each of the second plurality of RSSI values ​​to form a set of second linearized power values; summing the set of second linearized power values ​​to generate a second summed power value; evaluating the first summed power value and one or more other first summed power values ​​generated from other first read data collected from the RFID tag at the first antenna, and the second summed power value and one or more other second summed power values ​​generated from other second read data collected from the RFID tag at the second antenna to determine that the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​all meet the target predicate; and in response to determining that the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​meet the target predicate, causing an operation to be performed with respect to the RFID tag.

[0134] Embodiment 16: The computer-readable medium of embodiment 15, wherein the first antenna is located at a first location and the second antenna is located at a second location different from the first location, and the operation includes updating the inventory record to indicate that the RFID tag is moved from the first location to the second location.

[0135] Embodiment 17: A computer-readable medium according to embodiment 15, wherein the first antenna is located at a first position and the second antenna is located at a second position different from the first position, and the operation includes providing an indication on the user interface that the RFID tag moves from the first position to the second position.

[0136] Embodiment 18: A computer-readable medium according to any one of embodiments 15 to 17, wherein the target predicate defines a set of rules for evaluating whether the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​meet a threshold.

[0137] Embodiment 19: A computer-readable medium according to any one of embodiments 15 to 17, wherein the target predicate defines a set of rules for evaluating whether a first summed power value and one or more other first summed power values ​​and a second summed power value and one or more other second summed power values ​​represent a decrease in power collected at the first antenna for the RFID tag and an increase in power collected at the second antenna for the RFID tag.

[0138] Embodiment 20: A computer-readable medium according to any one of embodiments 15 to 19, wherein generating a first linearized power value involves normalizing each RSSI value in a first plurality of RSSI values ​​based at least in part on a first power value of a first radio frequency signal transmitted from a first antenna, and generating a second linearized power value involves normalizing each RSSI value in a second plurality of RSSI values ​​based at least in part on a second power value of a second radio frequency signal transmitted from a second antenna.

[0139] in conclusion

[0140] Although this specification contains many details of specific aspects, these details should not be interpreted as limitations on any invention or the scope of what may be claimed, but rather as descriptions of specific features of specific embodiments of specific inventions. Certain features described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented separately or in any suitable sub-combination in multiple embodiments. In addition, although features may be described as functioning in certain combinations, and even initially claimed, in some cases, one or more features in the claimed combination may be deleted from the combination, and the claimed combination may be a sub-combination or a variation of a sub-combination.

[0141] Similarly, although operations are described in a particular order, this should not be construed as requiring that such operations be performed in the particular order or sequence described, or that all described operations be performed to achieve the desired results. In some cases, multitasking and parallel processing are advantageous. In addition, the separation of various components in the various embodiments described above should not be construed as requiring such separation in all embodiments, and the described program components (e.g., modules) and systems can be integrated into a single software product or packaged into multiple software products.

[0142] With the benefit of the teachings presented in the above description and the related drawings, many modifications and other embodiments of the present disclosure will occur to those skilled in the art to which the present disclosure belongs. Therefore, it should be understood that the present disclosure is not limited to the specific embodiments disclosed, and modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are used herein, they are used only in a general and descriptive sense and not for the purpose of limitation.

Claims

1. A method comprising: Through computing hardware, a data frame is received, where: The data frame includes read data collected from a radio frequency identification (RFID) tag within a period of time, The read data is collected from the RFID tag in response to receiving a radio frequency (RF) signal transmitted from an antenna in communication with the reader, and The read data includes a plurality of received signal strength indicator RSSI values; generating, by the computing hardware, a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; summing, by computing hardware, the set of linearized power values ​​to generate a summed power value for the data frame; evaluating, by computing hardware, the summed power value of the data frame and one or more other summed power values ​​of one or more other data frames to determine that the summed power value and the one or more other summed power values ​​satisfy a target predicate; and In response to determining that the summed power value and the one or more other summed power values ​​satisfy the target predicate, an operation is caused to be performed with respect to the RFID tag.

2. The method of claim 1, wherein the operation comprises changing a setting of a reader related to processing additional read data collected from the RFID tag.

3. The method of claim 2, wherein changing a setting comprises changing a setting of the reader to a single target mode to initiate interruption of reading of the RFID tag. 4 . The method of claim 1 , wherein the target predicate defines a set of rules for evaluating whether the summed power value and the one or more other summed power values ​​satisfy a threshold.

5. The method of claim 1, wherein the one or more other data frames are one or more previous data frames that include read data collected from the RFID tag at a previous time.

6. The method of claim 1, wherein generating a linearized power value for each of the plurality of RSSI values ​​comprises normalizing the RSSI values ​​based at least in part on a power value of an RF signal transmitted from an antenna.

7. A system comprising a computer-readable medium storing instructions; as well as A processing device communicatively coupled to the computer-readable medium, wherein the processing device is configured to execute the instructions to perform operations, the operations comprising: Receive multiple data frames, where: Each of the plurality of data frames includes read data collected from a plurality of RFID tags within a time period, The read data is collected from the plurality of RFID tags in response to receiving radio frequency signals transmitted from an antenna in communication with a reader, and The read data includes a plurality of received signal strength indicator RSSI values; For each data frame of the plurality of data frames: generating a linearized power value for each of the plurality of RSSI values ​​to form a set of linearized power values ​​for the data frame; and For each RFID tag among the plurality of tags represented in the data frame: grouping linearized power values ​​found in the set of linearized power values ​​for RFID tags into a linearized power value group; and summing the linearized power value groups to generate a summed power value for the RFID tag and the data frame; evaluating the summed power value of each of the plurality of data frames for a specific RFID tag among the plurality of RFID tags to determine that the summed power value of each of the plurality of data frames for the specific RFID tag satisfies the target predicate; and In response to determining that the summed power value of each of the plurality of data frames of the particular RFID tag satisfies the target predicate, an operation is caused to be performed with respect to the particular RFID tag.

8. The system of claim 7, wherein the operations include generating an indication of the location of the particular RFID tag for display on a user interface.

9. The system of claim 7, wherein the target predicate defines a set of rules for evaluating whether a summed power value of at least one data frame of the plurality of data frames of the specific RFID tag satisfies a threshold.

10. The system of claim 7, wherein the plurality of data frames comprises a sequence of data frames occurring within a time period.

11. The system of claim 7, wherein the system is a mobile device including the reader and the antenna, and the mobile device travels through an area where the plurality of RFID tags are located.

12. The system of claim 11, wherein the operation comprises generating an indication for displaying on a user interface provided on a screen of the mobile device whether the mobile device is pointed in the direction of the location of the specific RFID tag.

13. The system of claim 11, wherein the operation comprises generating an indication for displaying, on a user interface provided on a screen of the mobile device, whether the mobile device is within a certain distance of the specific RFID tag.

14. The system of claim 7, wherein generating a linearized power value for each of the plurality of RSSI values ​​comprises normalizing the RSSI values ​​based at least in part on a power value of an RF signal transmitted from the antenna.

15. A computer-readable medium storing computer-executable instructions, which, when executed by computing hardware, configure the computing hardware to perform operations comprising: A first data frame and a second data frame are received, wherein: The first data frame includes first read data collected from the radio frequency identification tag during a first time period, The first read data is collected from the radio frequency identification tag in response to receiving a first radio frequency signal transmitted from a first antenna in communication with a reader, The first read data includes a first plurality of received signal strength indicator RSSI values; The second data frame includes second read data collected from the RFID tag during a second time period, The second read data is collected from the radio frequency identification tag in response to receiving a second radio frequency signal transmitted from a second antenna in communication with the reader, and The second read data includes a second plurality of RSSI values; generating a first linearized power value for each RSSI value in the first plurality of RSSI values ​​to form a set of first linearized power values; summing the set of first linearized power values ​​to generate a first summed power value; generating a second linearized power value for each RSSI value in the second plurality of RSSI values ​​to form a set of second linearized power values; summing the set of second linearized power values ​​to generate a second summed power value; evaluating the first summed power value and one or more other first summed power values ​​generated from other first read data collected from the RFID tag at the first antenna and the second summed power value and one or more other second summed power values ​​generated from other second read data collected from the RFID tag at the second antenna to determine that the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​satisfy a target predicate; and In response to determining that the first summed power value and the one or more other first summed power values ​​and the second summed power value and the one or more other second summed power values ​​satisfy the target predicate, an operation is caused to be performed with respect to the RFID tag.

16. The computer-readable medium of claim 15, wherein the first antenna is located at a first location and the second antenna is located at a second location different from the first location, and the operations include updating an inventory record to indicate that the RFID tag was moved from the first location to the second location.

17. The computer-readable medium of claim 15, wherein: The first antenna is located at a first position, the second antenna is located at a second position different from the first position, and the operation includes providing an indication on the user interface that the RFID tag has moved from the first position to the second position.

18. The computer-readable medium of claim 15, wherein: The target predicate defines a set of rules for evaluating whether the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​satisfy a threshold.

19. The computer-readable medium of claim 15, wherein: The target predicate defines a set of rules for evaluating whether the first summed power value and one or more other first summed power values ​​and the second summed power value and one or more other second summed power values ​​represent a decrease in power collected at the first antenna for the RFID tag and an increase in power collected at the second antenna for the RFID tag.

20. The computer-readable medium of claim 15, wherein: Generating a first linearized power value involves normalizing each of the first plurality of RSSI values ​​based at least in part on a first power value of a first radio frequency signal transmitted from the first antenna, and generating a second linearized power value involves normalizing each of the second plurality of RSSI values ​​based at least in part on a second power value of a second radio frequency signal transmitted from the second antenna.