Channel estimation for finding RFID tags

Channel estimation is used to accurately locate RFID tags by mapping unique communication channel fingerprints to tag locations, overcoming scattering and interference challenges in RFID systems.

JP2026510944APending Publication Date: 2026-04-10AUTOMATION INC(US)
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-18
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

Scattering, fading, and interference degrade the communication channel between RFID tags and sensors, making it difficult to accurately locate RFID tags based on received signal strength indicator (RSSI) or angle of arrival (AOA) measurements.

Method used

Utilizing channel estimation as a fingerprint to identify communication channels, which are unique and static based on sensor, carrier frequency, and sensor beamforming sector, and mapping these estimates to tag locations using lookup tables for accurate RFID tag location.

Benefits of technology

Enables efficient, scalable, and distributed identification and location of RFID tags by correlating channel estimates with known locations, improving accuracy and speed compared to traditional AOA or RSSI methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026510944000001_ABST
    Figure 2026510944000001_ABST
Patent Text Reader

Abstract

When a Radio Frequency Identification (RFID) tag reader queries an RFID tag, the reader or an appliance connected to the reader derives a channel estimate from the tag's response to the reader's query. The channel estimate represents the communication channel between the reader and the tag, or more precisely, between the reader and the tag's location. This channel estimate acts as a fingerprint or signature for the communication channel between the reader and the tag's location. If the tag's environment is relatively static, the channel estimate should be relatively stable even if the tag moves. The reader or appliance creates a library of tag locations indexed by the channel estimates for each tag within the reader's range. When the reader receives a response from a tag at an unknown location, the reader or appliance calculates a corresponding channel estimate and uses that estimate to find the nearest location in the library of tag locations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Cross - Reference to Related Applications This application claims the benefit of priority of U.S. Patent Application No. 63 / 603,892, filed on November 29, 2023, and U.S. Patent Application No. 63 / 490,836, filed on March 17, 2023, under 35 U.S.C. § 119(e). Each of these applications is hereby incorporated by reference in its entirety for all purposes.

Background Art

[0002] Radio Frequency Identification (RFID) tags, or tags, are low - cost devices that can be attached to objects and provide, among other commercial and medical uses, expectations for automatic tracking, positioning, sales checkout, and inventory counting of objects. RFID tags are classified as passive, semi - active, and active, and can be wirelessly interrogated by an RFID tag reader (also called a reader, interrogator, or sensor) and transmit a wireless radio frequency (RF) response to the reader. Each response can include information stored in the RFID tag, such as an Electronic Product Code (EPC), tag identification number, and other alphanumeric sequences. Other information may be included in the response. Since each EPC is unique, it can be used to identify the tag that sent a particular response.

[0003] Passive RFID tags do not have batteries and are therefore typically less expensive than semi-active and active RFID tags. Passive RFID tags are powered by an unmodulated continuous wave (cw) RF signal from an RFID tag reader. This cw RF signal powers the passive RFID tag's circuitry and precedes queries or commands from the RFID tag reader in the form of a modulated RF signal. The passive RFID tag receives and demodulates the modulated RF signal and responds to the RFID tag reader by modulating and backscattering a portion of the modulated RF signal. This modulated backscattered RF signal is the response of the passive RFID tag and is at the same carrier frequency as the RF signal from the RFID tag reader. The response from the passive RFID tag is detected by the RFID tag reader and is typically several orders of magnitude weaker than the RF signal from the RFID tag reader.

[0004] Each cycle in which a sensor transmits a continuous-wave RF signal to a tag at a given carrier frequency and the sensor receives a reply from the tag at the same carrier frequency is called a hop. A sensor can transmit one or more commands or queries during a hop. A single sensor can also periodically repeat hops at different carrier frequencies until all tags within range have been read. For ultra-high frequency (UHF) passive RFID tags, the carrier frequency is typically within the 865-868 MHz (Europe) or 902-928 MHz (North America) band. A sensor can periodically query tags within range to monitor inventory of objects attached to the tags, for example.

[0005] Sensors can also be used to estimate the location of a tag in two or three dimensions using one of several techniques. For example, a sensor may measure the amplitude or power of a tag's response, in addition to a unique modulation (e.g., encoding an EPC) that identifies which tag is responding to a query. If the sensor has an antenna array, it may sense the angle of arrival (AOA) of the tag's response, in addition to or instead of the received signal strength indicator (RSSI) or other measurements of the detected signal power or amplitude. A computer, controller, or appliance connected to the sensor can use the RSSI and / or AOA to estimate the location of the tag in two or three dimensions. If the appliance knows or assumes the location of the tag in one dimension (e.g., height), the appliance can estimate the location of the tag in three dimensions from a single AOA estimate (e.g., by calculating the position where the AOA intersects a plane at a given height). [Overview of the project]

[0006] In practice, scattering, fading, interference, and other effects degrade the communication channel or link between the tag and the sensor, making it more difficult to accurately locate RFID tags based on RSSI or AOA. However, these effects can be leveraged to quickly and accurately locate RFID tags based on the detection of a single response by a single sensor. This is because scattering, fading, interference, and other effects are functions of tag position, tag orientation, sensor position, carrier frequency, and sensor antenna configuration (e.g., sensor beamforming sector, or simply sector), and therefore affect each communication channel differently. These effects can be characterized for each communication channel by a channel estimate parameterized by the sensor, carrier frequency, sensor beamforming sector, query signal amplitude, and / or other degrees of freedom associated with the query signal.

[0007] If each channel estimate is unique, and the communication channels are relatively static and independent of the characteristics of individual tags, the channel estimate can be used as a fingerprint to identify the corresponding communication channel. Furthermore, if the endpoint location of each communication channel, i.e., the sensor and tag locations, are known, the channel estimates can be mapped to those locations. In other words, for each sensor, a unique channel estimate for each set of parameters can be assigned to the location of each tag within the sensor's range.

[0008] The sensor and / or an appliance or controller connected to the sensor may store channel estimates, parameters associated with the channel estimates, noise characteristics associated with the communication channel and / or parameters, electronic product codes (EPCs) or other tag identifiers, and optionally, tag locations in one or more lookup tables (LUTs) or other data stores, wherein the channel estimates and associated parameters act as keys or indices for the slots in the LUT that store the tag locations. Each time the sensor detects a response from a tag, the sensor (and / or an appliance communicably connected to the sensor) derives a channel estimate from the detected response to the communication channel between the sensor and the tag, and uses the channel estimate to look up the corresponding tag location in the LUT. If the LUT does not contain identical entries, the sensor (or appliance) may estimate the tag location from the nearest entry or entry in the LUT. Deriving a channel estimate based on a single response detected by a single sensor and looking up the corresponding location in the LUT may be sufficiently accurate for most purposes (and may be faster and more accurate than locating a tag from AOA or RSSI measurements based on a single response detected by a single sensor).

[0009] Sensors and appliances can also function in an efficient, scalable, and distributed manner to identify and locate RFID tags. In this approach, each sensor stores a LUT containing a channel estimate and the electronic product code (EPC) or other identifiers for tags within a range, while the appliance stores a LUT with locations indexed by the EPC. When a sensor receives a response from a tag, it calculates a current channel estimate based on the response, carrier frequency, etc. The sensor compares the current channel estimate for the tag (EPC) to the most recent channel estimate stored in the LUT for that EPC. If the current channel estimate matches the most recent channel estimate (e.g., within an acceptable threshold), the sensor reports that the tag has not moved to the appliance, which then retrieves and returns the tag's most recent location, for example, from its LUT. If the current and most recent channel estimates do not match, or if the sensor's LUT does not store a channel estimate for the tag, the sensor reports that the tag has moved to the appliance or is new to the appliance. In this case, the sensor may also report the tag's EPC by the nearest channel estimate in the sensor's LUT and / or AOA, RSSI, or other information derived from the tag's response to the appliance. The appliance can use this information to estimate the location of the (new) tag.

[0010] A sensor (or an appliance or controller connected to the sensor) may store the mean or mean channel estimate, all channel estimates, and / or noise characteristics (e.g., standard deviation between channel estimates) for a given set of parameters (tag / sensor pair) for each communication channel within range. If the location of the corresponding tag is known, the appliance can map this channel estimate information to the tag's x, y, and z coordinates. If the tag's location is unknown, the appliance can estimate the tag's location using methods such as AOA combined with outlier detection. The LUT for each sensor may store other information, such as the mean or series of channel estimates and the standard deviation of channel estimates for a selection of tags, where each channel estimate corresponds to the tag's xyz position.

[0011] As long as the environment does not change, channel estimation / location mapping generally remains valid even if the tag originally used to generate the channel estimation moves. As a result, it is possible to record a channel estimation for any tag at a known location and orientation at a given time, and then use that channel estimation to find different tags at the same location and orientation at different times (e.g., earlier or later). It also means that the appliance can record a channel estimation for a tag at an unknown location, and then estimate the tag's location based on other information such as AOA measurements, images, or the channel estimation of the tag at a known location, and later assign the channel estimation to the location estimation.

[0012] A method for locating an RFID tag based on a channel estimate can be performed as follows: An RFID tag reader detects a response from a first RFID tag. This response is used to form a first channel estimate representing the communication channel between the RFID tag reader and the first RFID tag at the carrier frequency of the response from the first RFID tag. The location of the first RFID tag is determined, for example, based on an AOA derived from the response or an image of the first RFID tag and an object or person captured by a camera. The location of the first RFID tag may also be associated with the first channel estimate based on the electronic product code (EPC) encoded in the response from the first RFID tag. The RFID tag reader detects a response from a second RFID tag. (If desired, the first RFID tag may move after the RFID tag reader detects a response from the first RFID tag and before it detects a response from the second RFID tag.) This response is used to form a second channel estimate representing the communication channel between the RFID tag reader and the second RFID tag. The first and second channel estimates are compared, and this comparison is used, along with the location of the first RFID tag, to estimate the location of the second RFID tag. (If desired, the sensor may perform multiple measurements of the first channel estimate and, independently, the second channel estimate, and average them to reduce noise.)

[0013] Comparing the first and second channel estimates may involve finding the Euclidean distance (in a complex multidimensional channel estimate space) between the first and second channel estimates. This Euclidean distance can be compared to a predetermined threshold, and if the Euclidean distance falls below the threshold, the first and second channel estimates are close enough to each other that the positions of the first and second RFID tags are highly correlated (i.e., the first and second RFID tags are close to each other in real space).

[0014] The location of the first RFID tag can be stored in a lookup table (LUT), or in another data store indexed by the first channel estimate, or by the EPC of the first RFID tag, in which case estimating the location of the second RFID tag involves obtaining the location of the first RFID tag from the LUT based on a comparison. The LUT can also store the locations of other RFID tags indexed by channel estimates. For example, the LUT can store the location and (third) channel estimate of a third RFID tag. The third channel estimate is based on the response from the third RFID tag detected by the RFID tag reader and represents the communication channel between the RFID tag reader and the third RFID tag. This can be compared with other channel estimates in the LUT. The comparison of these channel estimates can be used to determine that the location of the second RFID tag is closer to the location of the first RFID tag than the location of the third RFID tag.

[0015] The present invention's system for locating radio frequency identification (RFID) tags may include one or more RFID tag readers (also known as tag readers, readers, or sensors) and an appliance (also known as a central controller or query controller) operably connected to the readers. During operation, the RFID tag reader detects a response from a first RFID tag, forms a first channel estimation based on the response from the first RFID tag, detects a response from a second RFID tag, forms a second channel estimation based on the response from the second RFID tag, and compares the first and second channel estimations. The appliance estimates the location of the first RFID tag based on the response from the first RFID tag, receives the comparison of the first and second channel estimations, and estimates the location of the second RFID tag at least partially based on the comparison and the location of the first RFID tag. The response from the first RFID tag codes the electronic product code (EPC) of the first RFID tag, and the RFID tag reader can store the first channel estimation associated with the EPC of the first RFID tag in a lookup table.

[0016] The RFID tag reader may include an antenna array having n antenna elements, where n is an integer greater than 1, and a processor is operably connected to the antenna array. The antenna elements in the antenna array sense radiation from the first and second RFID tags. The processor also generates a complex number for each antenna element representing the phase and amplitude of the response detected by that antenna element.

[0017] The appliance can estimate the position of a first RFID tag based on the angle of arrival of the response from the first RFID tag in the RFID tag reader. Alternatively, the appliance can estimate the position of a first RFID tag based on the correlation between the position of an object or person appearing in an image and the first RFID tag.

[0018] An RFID tag reader can compare the second channel estimate with the first channel estimate by finding the Euclidean distance between the first and second channel estimates. The RFID tag reader can then compare the Euclidean distance with a predetermined threshold.

[0019] The appliance may include memory and a processor operablely connected to the memory. During operation, the memory can store the location of a first RFID tag in a lookup table indexed by a first channel estimate. The processor can also retrieve the location of the first RFID tag from the lookup table based on a comparison of a second channel estimate with the first channel estimate.

[0020] The RFID tag reader can also detect a response from a third RFID tag, form a third channel estimation based on the response from the third RFID tag, and perform a comparison of the second and third channel estimations. In such embodiments, the appliance can estimate the location of the third RFID tag based on the response from the third RFID tag, store the location of the third RFID tag in a lookup table indexed by the third channel estimation, and determine, based on the comparison of the second and third channel estimations, that the location of the second RFID tag is closer to the location of the first RFID tag than the location of the third RFID tag.

[0021] Another embodiment of the present technology includes a method for locating an RFID tag, which involves an RFID tag reader detecting a response from the RFID tag at a first carrier frequency and a first beamforming sector. The RFID tag reader forms a channel estimate based on the response from the RFID tag and compares it to a channel estimate previously determined based on the response detected by the RFID tag reader using the first beamforming sector and / or at the first carrier frequency. The RFID tag reader and / or appliance estimates the location of the RFID tag based on a previously determined location associated with one of the previously determined channel estimates.

[0022] A previously determined channel estimate may be associated with an RFID tag, in which case comparing the channel estimate to the previously determined channel estimate involves retrieving the previously determined channel estimate from the RFID tag reader's memory based on the RFID tag identifier (e.g., EPC) encoded in the response. The RFID tag reader compares the channel estimate to the previously determined channel estimate. If the channel estimate falls within a predetermined threshold of one of the previously determined channel estimates, the RFID tag reader and / or appliance estimates the RFID tag's location to be a previously determined location associated with one of the previously determined channel estimates. The RFID tag reader can store the previously determined location associated with the previously determined channel estimate in its memory, indexed, for example, by the previously determined channel estimate and / or by the RFID tag's electronic product code.

[0023] Another inventive method for locating a (first) RFID tag includes an RFID tag reader detecting responses from each RFID tag at multiple carrier frequencies and forming respective channel estimates for each RFID tag at multiple carrier frequencies. The RFID tag reader or an appliance connected to the RFID tag reader stores in memory the respective locations of the RFID tags indexed by their respective channel estimates. The RFID tag reader detects a response from the first RFID tag at a first carrier frequency of multiple carrier frequencies and forms a first channel estimate for the first RFID tag at the first carrier frequency, at least in part, based on the response from the first RFID tag at the first carrier frequency. The RFID tag reader and / or appliance determines the channel estimate closest to the first channel estimate from among the respective channel estimates stored in memory, estimates the location of the first RFID tag to be the location corresponding to the closest channel estimate, and retrieves the location corresponding to the closest channel estimate from memory.

[0024] Other embodiments of this technology include methods for detecting motion using RFID tags. One such method includes using an RFID tag reader to detect a first response from an RFID tag at a first time point. Based on the first response, the RFID tag reader forms a first channel estimate for the communication channel between the RFID tag and the RFID tag reader. At a second time point following the first time point, the RFID tag reader detects a second response from the RFID tag and forms a second channel estimate for the communication channel between the RFID tag and the RFID tag reader based on the second response. The RFID tag reader or an appliance connected to the RFID tag reader determines that the second channel estimate differs from the first channel estimate by a predetermined amount indicating that the motion has affected the communication channel. This motion can be the movement of an RFID tag, a person, and / or an object other than an RFID tag. If the RFID tag moves, the RFID tag reader and / or appliance can determine the first and second estimated locations of the RFID tag based on the first and second channel estimates, respectively.

[0025] Another inventive method for detecting motion includes detecting a change in the communication channels between the first and second RFID tags and the RFID tag reader, and determining, based on the change in the communication channels, that motion has occurred in a region encompassing at least a portion of the communication channels. Detecting a change in the communication channel(s) may include detecting a change in the relative phase of the radio frequency radiation received by the antenna element of the RFID tag reader from the first or second RFID tag. In response to determining that motion has occurred, the RFID tag reader may form channel estimates for the other RFID tags and / or switch operating modes.

[0026] Yet another embodiment includes a system for locating an RFID tag using an RFID tag reader and a controller. The RFID tag reader determines a channel estimate value of a communication channel between the RFID tag reader and the RFID tag, performs a comparison between the channel estimate value and a previously determined channel estimate value for the RFID tag, and determines whether the RFID tag has moved after the RFID tag reader determined the previously determined channel estimate value. A controller operably connected to the RFID tag reader receives an identifier of the RFID tag (e.g., an EPC) and an indication of whether the RFID tag has moved from the RFID tag reader, and estimates the position of the RFID tag based on the identifier and the indication. The controller can store in memory previously determined positions for a plurality of RFID tags indexed by the identifiers of the plurality of RFID tags.

[0027] Yet another embodiment includes a method for locating a first RFID tag as follows. The RFID tag reader determines a channel estimate value of a communication channel between the RFID tag reader and the first RFID tag and makes a comparison between the channel estimate value and a previously determined channel estimate value for the first RFID tag. If the channel estimate value is within a threshold of the previously determined channel estimate value, the RFID tag reader and / or an appliance operably connected to the RFID tag reader estimates the position of the first RFID tag to be the previously estimated position of the first RFID tag. Also, if the channel estimate value is beyond the threshold from the previously determined channel estimate value, the RFID tag reader and / or the appliance can determine that the channel estimate value is within a threshold of a previously determined channel estimate value for a second RFID tag and identify that the position of the first RFID tag is the previously estimated position of the second RFID tag.

[0028] All combinations of the foregoing concepts, as well as additional concepts discussed in more detail below (assuming such concepts are not mutually inconsistent), are considered to be part of the subject matter of the invention disclosed herein. In particular, all combinations of the subject matter recited in the claims, which appear at the end of this disclosure, are considered to be part of the subject matter of the invention disclosed herein. Terms explicitly used herein, which may also appear in any disclosure incorporated by reference, should be given the meaning that most closely matches the particular concepts disclosed herein. Brief Description of the Drawings

[0029] One of ordinary skill in the art will understand that the drawings are primarily for illustrative purposes and are not intended to limit the scope of the subject matter of the invention described herein. The drawings are not necessarily to scale, and in some instances, various aspects of the subject matter of the invention disclosed herein may be shown exaggerated or enlarged within the drawings to facilitate understanding of different features. In the drawings, like reference characters generally mean like features (e.g., functionally similar and / or structurally similar components).

Brief Description of the Drawings

[0030] [Figure 1A] FIG. 1A depicts an environment such as a store or warehouse, depicting a communication channel between an RFID tag and several RFID tag readers within an RFID tag location identification system. [Figure 1B] FIG. 1B shows an RFID tag reader suitable for use in the RFID environment of FIG. 1A. [Figure 1C] FIG. 1C illustrates an appliance suitable for controlling an RFID tag reader in the RFID environment of FIG. 1A. [Figure 2] FIG. 2 shows a process for deriving channel estimate values for pairs of RFID tags and RFID tag readers and using the channel estimate values to find other RFID tags. [Figure 3A]Figure 3A shows the signature creation / formation mode of an RFID tag location system that uses channel estimates to locate RFID tags. [Figure 3B] Figure 3B shows the signature utilization / consumption modes of an RFID tag location system that uses channel estimates to locate RFID tags. [Figure 4A] Figure 4A illustrates the process for inputting channel estimates and angle of arrival (AOA) derived from RFID tag responses into a lookup table (LUT), determining whether the tag has moved using the detected channel estimates and electronic product codes (EPCs), and reporting the EPC, AOA, and motion detection based on a comparison of the detected channel estimates with the channel estimates stored in the LUT. [Figure 4B] Figure 4B shows the process for estimating the tag's location based on the EPC, AOA, and detected behavior reported using the process in Figure 4A. [Figure 5A] Figure 5A shows how the sensor can detect changes in the tag's channel estimate caused by the tag's movement. [Figure 5B] Figure 5B shows how multiple sensors can distinguish between changes in channel estimates caused by environmental changes and changes in channel estimates caused by tag movement. [Figure 6] Figure 6 is a box plot of signature (channel estimation) distance against physical distance of RFID tags measured with different parameters (sensor, carrier frequency, and beamforming sector). [Modes for carrying out the invention]

[0031] Channel estimation models the effect of propagation along the communication channel between an RFID tag or between the tag and an RFID tag reader or sensor on a signal at a particular carrier frequency. In other words, if the communication channel acts as a filter, channel estimation can be thought of as the transfer function of the communication channel. Channel estimation between an antenna element and a tag can be represented as a single complex number. Channel estimation between antenna arrays with multiple antenna elements can be represented as an array of complex numbers, with one complex number per antenna element, due to the physical separation between the antenna elements. For a sensor with a 4-element array, channel estimation can be represented as four complex numbers.

[0032] The real and imaginary parts of the complex numbers associated with different antenna elements represent the relative amplitude and phase of the signals detected by those different antenna elements, respectively. A change in the communication channel can generate both amplitude and phase changes, although the amplitude change tends to be nearly identical for each antenna element in the sensor. Noise can make it difficult to detect relative amplitude changes. Conversely, phase changes tend to differ for each transmit (Tx) and receive (Rx) channel (antenna element) and are less susceptible to noise. Therefore, sensors with multiple antenna elements (Rx streams) can typically detect changes in the communication channel due to motion more reliably than sensors or receivers with only one antenna element (Rx stream), as described below.

[0033] The channel estimate for each sensor / tag pair is mapped or assigned to the tag's EPC and / or location, and can be correlated with the channel estimates of other tags communicating with the same sensor. A strong correlation (e.g., within a given proportion of 1) indicates that tags associated with different channel estimates are at the same location or close to the same location. This means that the channel estimate of a tag at a known location can be used to quickly and accurately estimate the location of other tags based on the channel estimates of those other tags, as will be explained in more detail below.

[0034] Using channel estimation to locate RFID tags offers several advantages over other RFID tag location techniques, including insensitivity to implementation issues in data path processing that lead to channel estimation. These issues may include, but are not limited to, errors in the array manifold for angle of arrival determination, quantization errors, etc. (e.g., a mismatch between the antenna model used to form the array manifold and the actual physical antenna). Channel estimation-based RFID location techniques should be more resilient to errors or defects in factory calibration, as well as quiescent processes that cause defects or other problems in the signal path to the communication channel. They can also tolerate errors inherent in the RFID tag itself, as long as those errors manifest in a consistent, detectable manner and adequately characterize the channel estimation. Channel estimation for RFID tag / RFID tag reader pair

[0035] Figure 1A depicts an RFID tag location system 100 that uses channel estimation to locate passive RFID tags 101a-101k (collectively, RFID tags 101) or tags within an environment 10 such as a retail store or warehouse. The RFID tag location system 100 includes RFID tag readers 150a-150g (collectively, RFID tag readers 150), also called readers or sensors, which send query signals to the tags 101 and detect replies from the tags 101; a query controller or appliance 140 connected to the sensors 150 (e.g., via a wireless or wired connection); and optional cameras 130a-130c (collectively, cameras 130), which can be used to determine the location of the tags in order to map channel estimations to specific locations within the environment 10. The sensors 150 determine channel estimations based on the replies and use them to determine whether the tags have moved. Sensor 150 reports to appliance 140 information such as the EPC of the tags, whether they have moved, and / or other information such as the angle of arrival and quality indicators. Appliance 140 uses this information to estimate the location of tag 101. (Appliance 140 may also be configured to determine channel estimations and use them to find tag 101.) RFID tags 101 are attached to objects (not shown) in the environment 10. These objects may be items for sale such as articles of clothing, fixtures or fittings 120a-120c (collectively, fixtures 120) such as tables, shelves, walls, or doors, or people such as employees, customers, or other visitors. The environment 10 may be enclosed by walls 110, 112, ceiling, and floor, any of which may reflect or scatter RF signals from RFID tag reader 150 and / or RFID tag 101.

[0036] People, equipment 120, and other objects can block, attenuate, and / or scatter the RF signals transmitted by the RFID tag reader 150 and the passive RFID tags 101. These pieces of equipment 120 may include shelves, racks, cabinets, etc., which can be used to hold objects to which at least some of the RFID tags 101 are attached. (Also, at least some of these pieces of equipment 120 may have reference RFID tags 101 on them, for example, reference RFID tags 101 whose location is known and which can be used to locate the RFID tags 101 at an unknown location.) For example, some pieces of equipment 120 may consist of metal shelves that hold one or more items for sale (not shown in Figure 1A) tagged with RFID tags 101. In some configurations, the pieces of equipment 120 may be arranged in rows, with aisles separating the rows to allow access to all objects tagged with RFID tags 101.

[0037] Tag 101 itself can also interfere with RFID tag measurements. Tags 101 stacked on top of each other or placed close to each other (e.g., within 1, 2, 5, or 10 cm of each other) can be activated by query signals from nearby readers 150 and / or reduce each other's ability to respond to query signals. While not bound by any particular theory, this degradation of RFID tag performance can be caused by tag detuning, tag shadowing, and / or re-radiation cancellation. Tag detuning within an RFID tag is caused by power loss due to impedance mismatch resulting from coupling (connection) between the RFID tag's antenna and integrated circuit (IC) to nearby RFID tags. Without being bound by a particular theory, tag shadowing and re-radiation cancellation can be caused by interference between backscattered RF waves from other RFID tags and incident query signals from readers. These effects can be difficult to model and predict, considering the numerous ways in which RFID tags can be stacked or placed and can interact with each other, operating on different length scales. These issues stem from how passive RFID tags operate. For further details on these issues and ways to mitigate them, see, for example, International Application PCT / US2023 / 061645, titled "Stateful Inventory for Monitoring RFID Tags," filed on 31 January 2023. This is incorporated herein by reference in its entirety for all purposes.

[0038] The RFID tag readers 150 are preferably installed in the RFID environment 10 such that all RFID tags 101 in the environment can communicate with at least one of the RFID tag readers 150. In a typical installation, the RFID tag readers 150 are mounted on the ceiling or suspended from the ceiling. If the ceiling is a drop ceiling or secondary ceiling, the RFID tag readers 150 may be suspended from a ceiling panel, mounted on a ceiling panel, or positioned between a ceiling panel and a structural ceiling, as disclosed in International Application No. PCT / US2022 / 081761, filed December 16, 2022, entitled “Antenna Arrays and Signal Processing for RFID Tag Readers”. In addition, or instead, one or more of the RFID tag readers 150 may be mounted on a wall 110 or 112 or on a fixed fixture 120.

[0039] Camera 130 captures images of at least a portion of the environment 10, and of people and objects within the environment 10. Camera 130 is communicably connected to appliance 140, which receives and processes images from camera 130 and receives tag response data from RFID tag reader 150. If necessary, appliance 140 can use the images from camera 130 and the data from RFID tag reader 150 to trigger tag reading by reader 150 and / or locate RFID tags 101 and associate them with people and / or objects in the environment. Appliance 140 can also determine a route from a person's location to a specific RFID tag 101 / object, for example, if a person is looking for an object or if an object should be moved from its current location. Appliance 140 can recognize people from images or from RFID tags 101, smartphones, or other wireless devices carried by people, and based on the movement of people accompanied by objects, can trigger the sale of objects or other inventory changes.

[0040] The RFID tag readers 150 may communicate with each other and / or with the appliance 140 via a wireless or wired (e.g., Ethernet) connection. The appliance 140 may be a dedicated computing device adapted to communicate with the RFID tag readers 150 and issue recognizable commands to the RFID tag readers 150, or a appropriately programmed computer, laptop, or smartphone. The appliance 140 can also receive signals from the RFID tag readers 150. For example, the appliance 140 may instruct the RFID tag readers 150 to stock all RFID tags 101 (and attached items) in the environment 10, or to determine the location of one or more RFID tags 101 (and attached items) in the environment 10. Appliance 140 can also instruct RFID tag reader 150 to query RFID tag 101 on a schedule, as described, for example, in International Application No. PCT / US2022 / 026198, entitled “RFID Tag Readers Switchable between Interrogator and Listener Modes,” which is incorporated herein by reference in its entirety for all purposes. RFID tag reader 150 can transmit raw or processed data representing the RFID tag's response to appliance 140, which uses this data to identify and / or locate RFID tag 101 and / or the object to which it is attached, as described below.

[0041] Each RFID tag reader 150 includes an antenna array, such as a four-element square antenna array, which transmits a signal to the RFID tag 101 and receives a response from the RFID tag 101. The RFID tag reader 150 switches or hops between different frequency channels (carrier frequencies) within the band, for example, 865–868 MHz (Europe) or 902–928 MHz (North America). These antenna arrays can also be used to direct the transmitted signal and / or received sensitivity pattern to different angles of arrival (AOA). The RFID tag reader 150 also detects the response from the RFID tag 101 using its antenna array.

[0042] As these signals and responses propagate between the RFID tag reader 150 and the RFID tag 101, they may experience attenuation (fading), interference, scattering, and / or other effects. This distortion may vary with the carrier frequency and tends not to change over time, ignoring changes due to the movement of people (and objects carried by people) around the environment 10. If the fade between a particular RFID reader 150 and a particular RFID tag 101 is too high, or if equipment 120, people, or objects block the path between them, the RFID tag 101 may not detect the signal from its RFID tag reader 150, and / or the RFID tag reader 150 may not detect the response from its RFID tag 101.

[0043] Figure 1A shows the round-trip propagation paths through which signals and responses continue between a portion of the leader 150 and the tag 101 (transmitter and receiver). These paths are referred to as communication channels 15 or communication links. Each communication channel 15 corresponds to a specific pair of physical endpoints (a specific leader location and a specific tag location) and may be characterized by channel state information or channel estimation that describes how signals propagate along the communication channel 15 at a specific carrier frequency. For example, communication channels 15a-a and 15b-a are between tag 101a and leaders 150a and 150b, respectively. Figure 1A illustrates some of the effects experienced by signals propagating through different communication channels, including multipath (communication channel 15a-b between sensor 150a and tag 101b), scattering (communication channel 15a-c between sensor 150a and tag 101c), and fading or attenuation (communication channel 15a-d between sensor 150a and tag 101d).

[0044] Each channel estimate represents the combined effects at a particular carrier frequency between the tag and reader defining the endpoint of the corresponding communication channel 15, including multipath, scattering, fading, and power attenuation due to distance, as well as the antenna response of that tag and reader. (Noise, sensor calibration errors, and algorithmic defects (e.g., channel estimation errors) may also affect the decoding of the response, but tend not to degrade the communication channel 15 itself.) Each channel estimate can also account for distortion, filtering, amplification, attenuation, and other effects caused by components within the communication channel, including filters, amplifiers, analog-to-digital converters (ADCs), and antennas within the sensor. Channel estimates can also vary depending on the transmission parameters of the query signal and the sensor's antenna array, including the origin sensor, carrier frequency, and beamforming sector, and can therefore be indexed or stored in the LUT according to these parameters. Other parameters that affect channel estimates include environmental parameters, including the proximity of the tag to other tags, which can be measured or estimated using computer vision techniques.

[0045] If environment 10 includes different types of RFID tags 101, for example, RFID tags having different shapes, sizes, antennas, and / or tolerances, the communication channel and channel estimation may also vary depending on the type of RFID tag 101. The RFID tag reader 150 can identify the type of RFID tag 101 from the EPC, or other information encoded in the tag's response, or by querying the tag. For example, the RFID tag reader 150 can query the RFID tag 101 for appropriate identification information. The RFID tag reader 150 can use the RFID tag's response to identify the RFID tag 101 (or its type) and derive a channel estimation of the communication channel between the RFID tag reader 150 and the RFID tag 101. The RFID tag reader 150 can also parameterize the channel estimation by the query signal, the carrier frequencies of the query signal and response, and the sensor 150 radiating the beamforming sector of the RFID tag reader 150.

[0046] Since the RFID tag reader 150 and the RFID tag 101 occupy different positions, each communication channel is unique. The uniqueness of each communication channel is derived from the relative angle at which the signal strikes different elements of the receiving antenna array. If tag 101 moves, the communication channel between tag 101 and sensor 150, and therefore each channel estimate, changes. However, as long as the environment 10 does not change, the channel estimate between a given pair of positions for a given set of parameters (e.g., sensor, beamforming sector, signal / response carrier frequency, and tag orientation relative to the sensor) should not change. This means that, at a given position parameterized by RFID tag type, beamforming sector, and signal / response carrier frequency, the channel estimate of the communication channel between the stationary sensor 150 and tag 101 should remain valid for the tag's position and orientation, even if tag 101 moves. Since the sensor 150 is fixed, the channel estimation of a particular sensor 150 operating at a specific carrier frequency and beamforming sector can be mapped to the position and orientation of a particular tag 101, which can be determined from other sources including video or still images acquired by the camera 130, other measurements by the AOA or RFID tag reader 150, or prior knowledge.

[0047] Each sensor 150 (or appliance 140) can store tag locations indexed by channel estimation and parameters (e.g., carrier frequency, beamforming sector, and optionally tag type) in a lookup table (LUT) or other data store. Each sensor 150 (or appliance 140) can use the stored information to estimate the location of other RFID tags 101 from the stored channel estimation. When sensor 150 receives a response from a tag 101 whose location is unknown (e.g., a new tag 101 or a moved tag 101), sensor 150 (or appliance 140) derives a channel estimation for that tag 101 based on the response and uses the channel estimation to find the nearest location in the LUT. If multiple sensors 150 find the same tag 101, appliance 140 can augment, weight, and / or average these location estimations to make them more accurate.

[0048] When sensor 150 detects a response from tag 101, sensor 150 (or appliance 140) calculates a channel estimate based on the tag's response, which is the modulated backscatter portion of the continuous wave portion of the hop transmitted by sensor 150. Sensor 150 compares the channel estimate from the tag's reply to the most recent channel estimate for the same tag 101. If the current channel estimate is close enough to the most recent channel estimate (e.g., within a threshold distance in the channel estimate space), sensor 150 estimates that tag 101 is in the same position as before. If the tag's current channel estimate is not close enough to the most recent channel estimate (e.g., beyond a threshold distance), or if the sensor's LUT does not contain a channel estimate for tag 101, sensor 150 uses other channel estimates in the LUT with the same parameter set to find the closest matching channel estimate. The closest channel estimate is the channel estimate in the LUT that has the shortest Euclidean distance in the channel estimate space to the current channel estimate, optionally within a threshold distance or percentage. This nearest matching channel estimate corresponds to the xyz position which can be obtained to determine the tag's location. If sensor 140 does not identify a suitable nearest channel estimate, sensor 150 or appliance 140 may estimate the tag's location using AOA, RSSI, or another location estimation technique.

[0049] Since channel estimates generally show correlation across carrier frequencies, sensor 150 can also compare the current channel estimate with channel estimates stored at different carrier frequencies. When averaging or collecting statistics for channel estimates, sensor 150 can leverage the correlation to achieve a larger average (curve fitting) or interpolate between carrier frequencies to extend the channel estimates to carrier frequencies with fewer tag reads. In other words, sensor 150 can extend the parameter set beyond what is (fully) measured.

[0050] The channel estimate incorporates the antenna response at the endpoint of the communication channel (i.e., the sensor's antenna array and the tag's antenna). If either antenna has a response that varies with the polarization of the incident RF signal, rotating or reorienting the tag 101 relative to the sensor may alter the channel estimate. More specifically, if the sensor's antenna array lacks circular polarization symmetry (i.e., responds differently to orthogonally polarized linear signals), the sensor's channel estimate may change depending on the orientation of the tag as the antenna backscatters linear or elliptically polarized radiation. This is because rotating the tag 101 relative to the sensor's antenna array changes the projection of the polarization state of the backscattered radiation onto the antenna polarization, potentially altering the amplitude of the response detected by the antenna array. RFID Tag Reader Architecture

[0051] Figure 1B illustrates the reader 150 in more detail, including components that can be enabled or disabled when the reader 150 is in query mode or receive mode. The reader 150 comprises an RF antenna array and front end 156, a processor 152, an RF calibration and tuning block 154, a hop generator 160, and a hop receiver 170. The RF antenna array and front end 156 may include one or more antenna elements (e.g., arranged in a multi-element antenna array), amplifiers, filters, and / or other analog RF components to transmit RFID query signals 151 and receive tag responses 153 and (optionally) RFID query signals from other readers. The processor 152 may be implemented as a microcontroller, application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), or other suitable device, and controls the operation of the reader 150, including steering the reader's antenna array, if desired. It can store information in memory (not shown), retrieve information from there, store a lookup table (LUT) described later, and communicate with appliance 140 via a network connection (not shown), such as an Ethernet connection. If the reader 150 is configured to operate in query mode and receive mode, the processor 152 switches the reader 150 between query mode and receive mode, the hop generator 160 is disabled or turned off in receive mode and enabled or turned on in query mode, while the hop receiver 170 is enabled or turned on in both modes. The RF calibration and tuning block 154 performs RF calibration and tuning functions.

[0052] The hop generator 160 generates a query signal 151 that the reader 150 transmits to the RFID tag 101. The hop generator 160 can also optionally generate commands or communication signals intended for other readers 150, for example, on a dedicated reader communication channel or in a specific preamble or payload. This comprises a digital command generator 162 that generates digital queries, commands, and / or other information transmitted by the query signal 151, and RF electronics 164 for converting the digital signals from the command generator 162 into analog signals suitable for transmission by the antenna array of the front end 156. The RF electronics 164 may include a digital-to-analog converter (DAC) that converts the digital signals into baseband analog signals, a mixer and local oscillator for mixing the baseband analog signals up to an intermediate frequency for broadcast, and filters and / or pulse shapers for removing sidebands and / or spurs.

[0053] The hop receiver 170 includes a receiver front end 172 connected to a command demodulator 174 and a tag response demodulator 176. Generally, the receiver front end 172 digitizes, downconverts, and estimates the phase of the RF signal detected by the antenna. There are various ways to configure the receiver front end 172, and in this embodiment, it receives analog common-mode and quadrature (I / Q) signals at higher frequencies (e.g., 40 MHz) and converts them to digital I / Q samples at baseband (e.g., 5 MHz).

[0054] In query mode, the front end 172 also cancels any self-interference caused by the query signal 151, for example, due to leakage within the receiver. Fortunately, since the crosstalk correlates with the query signal 151, the receiver front end 172 can generally cancel crosstalk between different antenna elements and the circuits connected to those antenna elements. This crosstalk can be further reduced or suppressed by further separating the antenna elements from each other, as described in International Application PCT / US2022 / 081761 filed December 16, 2022, which is incorporated herein by reference in its entirety for all purposes.

[0055] When leader 150 is in receive mode, it does not transmit query signals and does not perform self-interference cancellation. In receive mode, leader 150 detects channels on which other leaders 150 transmit query signals 151 and estimates the frequencies of those other query signals 151.

[0056] The command demodulator 174 is activated when leader 150 is in receive mode and demodulates commands from other leaders to recreate query signals at a command bitrate (e.g., 40kbps to 160kbps). The command demodulator 174 uses the command payload to determine what the query-mode leader is querying about tag 130 (e.g., modulation, preamble type, expected response type, etc.). For example, query-mode leader 150 might request tag 130 to send the first 64 bits of its EPC using Miller-2 modulation at a backscatter link frequency (BLF) of 320kHz with a standard preamble. The receive-mode leader 150 uses this information to decode the tag response 153. The command demodulator 174 is deactivated when leader 120 is in query mode.

[0057] The tag response demodulator 176 is activated in both query mode and receive mode to demodulate baseband tag response I / Q samples to create a tag response signal at the tag response bitrate. Appliance architecture

[0058] Figure 1C shows the appliance 140 in more detail. The controller appliance 140 may comprise one or more processors, non-volatile memory (for storing the LUTs described later), and other logical devices implemented as integrated circuits and driven by appropriate power supplies and other management electronics. These processors and logical devices may include individual components that perform individual functions and / or more general-purpose components, programmed to perform various functions by themselves or in cooperation with other components of the controller appliance 140. For example, the controller appliance 140 may comprise a central processor unit (CPU) 142 that runs an operating system (e.g., Alpine Linux OS) that manages the hardware and software resources of the controller appliance, and has communication interfaces indicated as Ethernet connections Eth0 and Eth1 connected to the reader 150, POS system, and / or other devices. The controller appliance's non-volatile memory can store the operating system, other firmware and software, and tag state information.

[0059] Figure 1C illustrates appliance 140 as a block diagram, where each block represents a different function or subfunction performed by appliance 140. To monitor and update tag status, controller appliance 320 comprises or implements an in-store message router 180, an RFID query controller (RFID-IC) 182, a location status manager 184, a tag status manager 186, and a retail backend application programming interface (API) 188. The in-store message router 180 queues and routes messages exchanged between reader 150 and RFID-IC 182 via Ethernet connections Eth0 and Eth1. RFID-IC 182 employs a segmented media access controller (MAC) design with a lower MAC layer implemented in reader 150 and a higher MAC layer implemented in RFID-IC 182 to process messages exchanged with reader 150. The lower MAC layer determines timestamps and parameters estimated from the backscatter response of the RFID tag, which are useful for determining the location of the tag. The upper MAC layer schedules hop transmissions and the general purpose of each hop. The lower MAC layer performs more time-critical functions, such as actually scheduling when to send commands and how to respond to replies within a hop. The positioning layer, comprising the RFID-IC and / or reader 150, calculates the position of the RFID tag in a 3D coordinate system (e.g., Cartesian coordinates with the origin at a known location within a store or room) from the data coming from the MAC and PHY layers. Messages from the reader 150 may also include data to be read from the RFID tag, including the RFID tag's EPC and other metadata.

[0060] The location status manager 184 and the tag status manager 182 track the location and status of RFID tags, respectively. The location status manager 184 receives the estimated location of the RFID tag from the RFID-IC 182 (for example, in a Cartesian coordinate frame with a corner of the store as the origin) and identifies the location of the RFID tag within the RFID environment (e.g., a room and a zone). Rooms and zones may be extracted from a 3D model of the store or space. In a retail RFID environment, rooms and zones may include pick-up areas, inventory storage rooms, sales floors, and fitting rooms, with sales floors further divided into entrance / exit zones and checkout zones. Based on the location changes detected by the reader 150, the location status manager 184 updates the location of each RFID tag in the inventory database 190, which may be hosted locally or off-site (e.g., in the cloud).

[0061] The tag status manager 186 manages the status of tags, including their location and availability. Several possible available statuses exist, including, but not limited to, (1) available, (2) old (optional), (3) ignored, (4) missing, and / or (5) sold. Other statuses may also exist. The tag status manager 186 transitions the RFID tags 101 between these statuses based on the tag's response (or lack thereof) to queries from the reader 150 containing information about the tag's location, and the status of the tags stored in the inventory database 190. For further details on tag status and status-based inventory management, see International Application PCT / US2023 / 061645, filed on 31 January 2023, which is incorporated herein by reference in its entirety.

[0062] The tag state manager 186 updates the tag state stored in the inventory database 190 and forwards both the tag state and estimated tag location to the retail backend light API 188, which implements backend functions for inventory, restocking, and product lookup. The retail backend light API 188 can implement these functions via a web application gateway 194 that implements a Hypertext Transfer Protocol (HTTP) proxy and redirects Representational State Transfer (REST) ​​requests to the appropriate backend server (not shown). The web application gateway 194 can also provide user authentication and provides static files used by the browser to render web pages.

[0063] Figure 1C also shows several optional components of appliance 140, including a raw tag server 192, a spatial server 193, a trivial file transfer protocol (TFTP) server 195, a multicast domain name service (mDNS) server 196, a Network Time Protocol (NTP) server 197, a Secure Shell (SSH) server 198, and a Secure Sockets Layer (SSL) certificate store 199. The spatial server 193 handles firmware lifecycle management and configuration of the sensor 150 and a Power-over-Ethernet (PoE++) switch (not shown) that connect appliance 140 to the sensor 150. The raw tag server 192 retrieves tag metadata for legacy APIs, such as those used by API clients for system debugging. Upon booting, the sensor 150 downloads executable images from the TFTP server 195. The mDNS server 196 allows appliance 140 to expose itself using the mDNS and DNS-SD protocols, for example, during debugging. The NTP server 197 connects to and synchronizes with a remote (e.g., internet-based) NTP server, providing NTP services to the sensor 150. The SSH server 198 is also used for debugging. Additionally, the SSL certificate store 199 authenticates the appliance 140 by hosting the server certificate used by the sensor 150 and the web server certificate used by the REST client. Generating and using channel estimation to locate RFID tags

[0064] Figure 2 illustrates a process 200 for locating an RFID tag using channel estimates in an RFID tag location system, as shown in Figure 1A. The sensor performs a series of hops (202) or cycles, querying tags in a store, warehouse, or other environment. Each hop includes transmitting a query signal from the sensor to the tag at a specific carrier frequency and detecting the tag's response at the sensor that transmitted the query signal and / or other sensors, for example, as disclosed in International Application No. PCT / US2022 / 026198, entitled “RFID Tag Readers Switchable between Interrogator and listener Modes,” which is incorporated herein by reference in its entirety. The sensor transmits both continuous-wave and modulated RF radiation, and the tag backscatters a portion of the continuous-wave RF radiation and modulates a portion of the backscattered RF radiation with its EPC and / or other information in response to commands transmitted by the sensor.

[0065] The sensor cycles through different parameters across a series of hops, including different in-band carrier frequencies (204 and 206) and antenna array beamforming sectors (not shown), until the system attempts to detect a response for each sensor / tag pair in the environment with one or more combinations of parameters (208). Depending on the available time and the query objective (e.g., to stock the tags or locate a particular tag or subset of tags), the sensor may cycle through all possible combinations of parameters or subsets of parameters (e.g., a particular sensor or carrier frequency) when querying a tag in a given environment. In practice, the system does not need to collect responses (or determine channel estimates) for each sensor / tag pair with all possible combinations of parameters.

[0066] If the sensor has previously read a tag, it can use the SELECT command to address that tag. Only that tag will respond to the sensor's signal at its EPC. Once a tag is selected, the sensor can sweep the entire set of transmit parameters (carrier frequency, beam sector, etc.) and generate channel estimates for each combination of transmit parameters in the set. The sensor inputs these channel estimates into a LUT, which may be indexed by the tag's EPC.

[0067] Each sensor (or instrument connected to a sensor) calculates or derives a channel estimate using different combinations of parameters based on the continuous wave portion of the detected response (210). Each channel estimate can be characterized as a transfer function H(k) that acts on an input or transmitted signal X(k) to produce an output or received signal Y(k). Y(k) = H(k)X(k) + Noise For RFID tags, the transmitted signal X(k) may be the continuous wave (CW) portion of the query signal sent to the tag by the sensor, and the received signal Y(k) may be the tag's response portion modulated by the tag's EPC. The sensor (or appliance) can perform these channel estimation calculations while the sensor is still performing hops or after the sensor has completed hops.

[0068] For example, a sensor can transmit CW radiation to a tag to power it. The sensor can then send a command or query to the sensor, followed by an additional CW radiation. The tag responds to the command or query by backscattering CW radiation modulated with a random 16-bit number. The sensor ultrasonically transmits this random 16-bit number to the tag in an acknowledgment (ACK), causing the tag to reply with an ACK response that codes for the tag's EPC and Additional Periodic Redundancy Check (CRC). The sensor can use the random 16-bit number and / or the ACK response to form a channel estimate. The ACK response is longer, allows for better averaging, and has a CRC to verify that the sensor correctly decoded the bits. The sensor can adapt the channel estimate when it receives the EPC bits (or symbols) to reduce or minimize the error associated with the channel estimate.

[0069] Each sensor retrieves a historical channel estimate, such as the last channel estimate or moving average channel estimate, stored in its LUT for the same EPC (212), and compares the current channel estimate for each tag (EPC) with the historical channel estimate. If the current and historical channel estimates match within an acceptable number of standard deviations (e.g., 4 standard deviations, 3 standard deviations, 2 standard deviations, 1 standard deviation, or a fraction of a standard deviation) (214), the sensor reports to the appliance that the tag has not moved (216). If the current and historical channel estimates do not match within an acceptable number of standard deviations, or if there is no historical channel estimate for the EPC in the sensor's LUT, the sensor identifies the current channel estimate and the historical channel estimate in the LUT closest to the corresponding EPC, and reports at least the corresponding EPC to the appliance (218).

[0070] For example, a sensor may measure the Euclidean distance between the current channel estimate and the channel estimate stored in the LUT within the channel estimation space, where a Euclidean distance of 0 means the two channel estimates are identical. The appliance can apply a threshold (e.g., based on the standard deviation between channel estimates for that communication channel) to determine whether the stored channel estimate is sufficiently close to the current channel estimate and report a match. If necessary, the sensor can use different thresholds in different regions of the channel estimation space, e.g., lower thresholds in high-density input regions (regions with rich signatures) and higher thresholds in low-density input regions (regions with insufficient signatures). In other words, the sensor can accept a worse match in regions with fewer channel estimates. Thresholds can be correlated empirically or theoretically with a desired spatial (e.g., xyz) performance and can be used to evaluate the quality or fidelity of the localization estimation.

[0071] To reiterate, for each tag response received, the sensor determines whether the corresponding tag has moved and the EPC corresponding to the tag's current channel estimation and (best) matching past channel estimations in the sensor's LUT. The sensor reports the motion indication and EPC to the appliance, estimates the tag location based on AOA, RSSI, or other information, and stores the tag location indexed by the EPC in its own LUT. (The appliance and sensor can input their respective LUTs asynchronously.) The appliance uses the motion and EPC information from the sensor to retrieve the corresponding tag location from its LUT, or calculates the tag location on the fly from AOA, or other information obtained by the sensor (224).

[0072] The appliance can estimate the location of a tag in an RFID environment based on AOA, RSSI, or other measurements from a sensor, images from a camera, or other information including user input (220). For example, the appliance can find each tag for which it has calculated a channel estimate using any appropriate technique, including correlation based on images acquired by a camera, triangulation or trilateration based on AOA or RSSI measurements from a sensor, or user measurements and data input. The appliance can find tags and derive channel estimates before, during, or after a sensor has performed a hop. The appliance and sensor can also find tags and derive channel estimates for different tags in different orders and in an iterative or interleaved manner as the tags enter and exit the environment, to the extent which may be set by the range of the sensor. The appliance stores the tag locations indexed by the EPC in a LUT or other local memory (222) for comparison (224) with the EPC received by the sensor from the sensor.

[0073] Alternatively, the appliance can store tag locations indexed by channel estimation in its LUT and use the channel estimation derived by the sensor to look up tag locations corresponding to the current channel estimation. In this case, the appliance can narrow the search space in the LUT using query signal transmission parameters, including the query signal, carrier frequency, and the SID of the sensor that emitted the beamforming sector. Channel and location estimations should match if the replies used to generate channel and location estimations are for the same tag (i.e., encoding the same EPC), and the tag has not moved and the communication channel has not changed.

[0074] Theoretically, channel estimates for channels between different beamforming sectors within the same sensor and the same tag should be similar for nearby carrier frequencies, and similarly, nearby tags should have similar channel estimates for a given set of parameters, provided that multipath effects do not dominate the channel estimates. If multipath effects dominate the communication channel (i.e., the LOS signal is much weaker than the reflected or scattered signal), the correlation between channel estimates of tags may be poor, even for close proximity. If the channel estimates of a given tag at different carrier frequencies do not behave in a manner consistent with channels having a (more) strong LOS signal, they can be excluded from the LUT or given a lower weight.

[0075] Process 200, shown in Figure 2, can be performed as follows: Consider an RFID tag reader that detects a response from an RFID tag attached to a first item placed on a table at an unknown location at time t=0. At time t=1, a person reaches the first item, and a camera or other sensor detects the spatial (e.g., xyz) coordinates of the person's wrist as they pick up the item and move away. The camera may capture an image of the first item in the person's hand as the person walks away, and / or the RFID tag reader may sense that the first item is moving. By time t=2, the equipment connected to the camera and sensors attributes the first item to the person based on the data from the RFID tag reader and its correlation with the image of the person's movement and / or the trajectory of the first item. The appliance uses this correlation to position the first item at t=1, at or near the spatial coordinates of the person's wrist at time t=1. The appliance also maps the EPC of the channel estimate measured at t=0 to the spatial coordinates and stores the EPC and spatial coordinates in memory in a LUT. At time t=3, the RFID tag reader detects a response from the second item at approximately the same spatial coordinates. The sensor derives a channel estimate for the second item from its response and matches it (almost sufficiently) to the channel estimate derived for the first item. Based on this match, the sensor and appliance determine that the second item is at, or near, the spatial coordinates indexed by the LUT under the EPC derived for the first item.

[0076] The sensor can also follow the reverse order to estimate the tag's location from the channel estimate; that is, the sensor can measure the channel estimate of a tag at an unknown location, and then the appliance can determine the corresponding location based on the subsequently measured channel estimate of the tag at a known location. For example, the sensor can detect a response from a first tag at an unknown first location. The first tag may remain at the first location or move away from it. The same sensor then detects responses from one or more tags at known locations, which may include the first location or one or more locations close to the first location. The sensor derives a channel estimate of the response from the tags whose locations are known, and the appliance uses the channel estimate and the known locations to estimate the unknown location.

[0077] Measuring channel estimates before localizing the corresponding tag is particularly useful when the tag location is unknown. Consider situations where the tag localization system localizes the tag based on angle of arrival (AOA) measurements. AOA localization (especially if performed overnight, assuming the tag is stationary) benefits significantly from averaging over time, smoothing / characterization across carrier frequencies, and confirmation across measurements of the same tag from different sensors. Since it can take a relatively long time to obtain sufficient AOA measurements to confirm the tag's location under these circumstances, it makes sense to collect channel estimates of the tag before the tag's location is known, and then input the tag's location into the appliance's LUT once determined from the AOA measurements.

[0078] Similarly, it may be advantageous to collect channel estimates when the tag is not moving and the communication channel to the tag is not being interfered with. If a person moves the tag or moves near the tag, for example, this movement may change the communication channel between the tag and a nearby sensor. (This movement can be detected by measuring the change in the communication channel, as described below, or by using a camera or other device independent of the sensor.) After the tag stops moving and the person leaves the area, the sensor can capture the channel estimate of the communication channel to the tag to reduce or avoid fluctuations in channel estimates caused by the movement of the tag or person. Lookup table (LUT) for saving and retrieving channel estimations.

[0079] By storing channel estimates in a LUT or database table, the sensor can retrieve tag locations by channel estimates using fast and simple array indexing operations or database queries, instead of computationally more expensive and slower calculations or input / output operations (e.g., calculating location based on AOA or RSSI). The LUT can store a more sophisticated representation of the channel estimates, including the average of normalized channel estimates or noise characteristics for a given set of parameters. For example, if the channel estimates follow a modal distribution instead of a Gaussian distribution, or in addition to that, the LUT can store separate channel estimates or signatures for each modal group, as long as the RFID tag localization system can resolve the channel estimates to a single EPC (RFID tag) for each location. In this example, the LUT shows the EPC and spatial (xyz) location indexed by the channel estimates and a set of transmit parameters (here, carrier frequency and beamforming sector). [Table 1] Other LUT configurations are also possible. For example, one method involves placing a LUT for each sensor that stores channel estimates, EPC, and transmission parameters, and a LUT on the home appliance side that stores the EPC and estimated position, as explained in Figure 2.

[0080] When a LUT(LUT) is input, it can be used to quickly and accurately locate a tag at an unknown location. To do this, the sensor queries the tag at the unknown location. This tag could be a new tag, for example, because it has been moved, or an existing tag whose location is unknown. Based on the query signal parameters and the tag's response, the sensor (or appliance) derives a channel estimate of the communication channel between the sensor and the tag at the unknown location. Again, the tag generates a response by modulating and backscattering the continuous wave portion of the hops sent by the sensor. If a tag EPC is already stored in the LUT, the sensor can look up the tag's previous channel estimate by the tag EPC and compare the tag's current channel estimate to the previous channel estimate. If the current channel estimate and the previous channel estimate are the same (or within a Euclidean distance threshold) of each other, the sensor returns the location associated with the previous channel estimate because the sensor has determined that the tag has not moved. Otherwise, or if the tag EPC is not stored in the LUT, the sensor searches for the EPC corresponding to the closest stored channel estimate for the set of parameters used to query the tag (carrier frequency, beamforming sector, etc.). In other words, if the tag's current channel estimate does not match its latest channel estimate, the sensor determines that the tag has moved and is looking into the LUT using the channel estimate that is most similar to the current one, within the parameter set associated with the EPC's channel estimate (e.g., sector and carrier frequency). Signature creation / formation and signature utilization / consumption modes

[0081] Figures 3A and 3B illustrate signature generation / formation and signature utilization / consumption modes for an RFID tag location system that uses channel estimation to locate RFID tags in a retail store or other environment, respectively. Typically, the system operates in signature generation / formation mode when the environment is relatively quiet and tags, people, or objects are not moving (e.g., at night), and in signature utilization mode when the environment is busier and tags, people, or objects are more likely to be moving (e.g., during the day). In signature generation / formation mode, the goal is generally to generate the most accurate spatial location for each tag, while in signature utilization / consumption mode, the goal is generally to estimate the tag's location as quickly as possible.

[0082] In signature creation / formation mode, the sensor queries RFID tags, and the sensor and appliance derive channel estimates for each sensor / tag pair, find the tag, map the channel estimates to the EPC, and the EPC to the tag location, updating the LUT that stores the channel estimates, EPC, and tag location. The system operates in signature creation / formation mode periodically (e.g., every night) or as needed (e.g., when the environment is closed to people or when no movement is detected) to update the RFID tag inventory, improve location accuracy, and account for environmental changes caused by the movement of RFID tags and other objects. In signature utilization mode, the sensor queries tags at unknown locations and uses the stored channel estimates, EPC, and tag location to create a fast and accurate location estimate for the tag at the unknown location.

[0083] In the signature creation / formation mode shown in Figure 3A, the sensors measure and store responses from RFID tags in the environment (302) for, for example, 2 to 4 hours at a time. During this measurement period, all sensors attempt to read all RFID tags within range as many times as possible at as many different (in-band) carrier frequencies as possible. The number of reading attempts and measurements depends on the environment, the number of sensors, the number of tags, the reading speed, the modulation scheme, the carrier frequency, etc. Sensors may be unable to read some tags, for example, because these tags are out of range, or covered or shielded by other objects. Sensors may be able to read other tags in each attempt at each carrier frequency. Sensors may read other tags at some frequencies but not at other carrier frequencies. Similarly, each sensor may read some tags but not others.

[0084] The sensor and / or appliance stores channel estimates that may be periodically erased (e.g., nightly or weekly). For each measurement, the appliance or corresponding sensor estimates the AOA from the tag to the sensor (304). The appliance discards AOA estimates that are statistically outliers, unconfirmed values, noisy values, or physically unlikely or unrealistic values ​​(e.g., due to being at an elevation too close to an outside ceiling or azimuth angle) (306). For tags read by only one sensor, the appliance generates a position estimate from the AOA estimate, assuming the tag is at a fixed height (e.g., z=1) or the height is close to the tag, and the height may be known or determined by multiple sensors, RSSI, or carrier frequency and phase change (308), and aggregates the obtained position estimates for EPC selection and other analyses (310). If the tags are read by multiple sensors, the appliance can generate a three-dimensional position estimate for each tag by triangulating the AOA estimates from the multiple sensors (308).

[0085] The sensor also generates channel estimates or signatures, possibly for each tag, or perhaps only for a subset of tags, such as tags whose location is known, depending on the available processing time, processing power, and / or user preference (318). The sensor generates each signature by filtering or parameterizing the corresponding channel estimates by the carrier frequency of the query signal and / or other parameters used to generate the response. Each signature represents the communication channel between a particular sensor and a particular tag, or more precisely, the location of that tag when it responded to the sensor. Each sensor stores each signature and the corresponding EPC in local memory.

[0086] The appliance stores the tag locations indexed by the EPC in a local LUT or database (320). To map the EPC to the tag locations, the appliance can aggregate the tag location estimates and assign a confidence level to each location estimate (314). Each confidence level indicates the likelihood or probability that the corresponding location estimate is correct and can be based on the observed SNR or RSSI, number of measurements, EPC, or outliers, the relationship of the tag location to the equipment in the environment, the noise observed in each measurement, and / or the distance between the channel estimate (in a complex channel estimation space) and the corresponding location (in the actual space). The appliance selects the location estimate with the highest confidence level, or a location estimate with a confidence level exceeding a certain threshold, and assigns a matching EPC to the selected location (316). In some cases, the appliance selects a location estimate that is formed at or near a point on a grid extending over the area monitored by the sensor, or that fits. The appliance stores these EPCs and locations in memory, and the EPCs serve as keys in a LUT or database table of possible RFID tag locations.

[0087] Figure 3B illustrates the signature utilization mode. In signature utilization mode, the RFID tag location system reads a tag (EPC), continuously estimates its location, and returns location information, for example, to provide location information as a response when a salesperson or customer searches for a specific item in the environment. When a sensor determines a new channel estimate, it filters the channel estimates by sensor parameters and query signal carrier frequency and uses the results to query its LUT by signature (354). The query returns the EPC corresponding to the closest channel estimate, which the sensor sends to the appliance to look up the corresponding location in the appliance's LUT (356). If different sensors return different EPCs, the appliance may select the closest corresponding location, for example, by using a voting process to find the most common EPC returned by the sensor, or by averaging or interpolating the corresponding locations after perhaps weighting the locations based on the sensor's historical accuracy. If there is no channel estimate that sufficiently matches the sensor's LUT (e.g., within threshold Euclidean distance), the appliance may estimate the tag's location based on AOA, RSSI, or another suitable observable quantity.

[0088] If necessary, the appliance or sensor can estimate an AOA for each response (360) and use the AOA to estimate the tag's location at a fixed height (e.g., z=1 meter) (362). The appliance or sensor can, for example, select either the tag location from the LUT or the tag location from the estimated AOA as the most likely actual tag location, based on the estimated AOA, based on the normalized distance between the measured channel estimate and the nearest signature in the LUT (370). The appliance can also average or combine the tag locations from the LUT and AOA estimates to generate the tag location to provide for the tag (EPC location output). If the appliance can compute only a channel estimate or an AOA for a given response, it can use that data to estimate the tag location instead of using both the channel estimate and the estimated AOA. If the appliance has multiple channel estimates and / or AOA estimates for the same tag, it can use all the estimates to identify, confirm, or combine possible tag locations, or retain a preferred set of estimates and the corresponding tag locations. Furthermore, if the sensor and / or appliance determines that the channel estimation for a given tag is substantially the same as before, the sensor and / or appliance may skip the lookup process and simply report the previously determined location of the tag. Find RFID tags using channel estimation and AOA estimation

[0089] Figures 4A and 4B show more detailed diagrams of how the location of an RFID tag is estimated using both channel estimates / signatures and AOA estimates. Figure 4A shows the processing and aggregation of channel and AOA estimates by a single sensor. Figure 4B shows how the appliance can process and demonstrate EPC, AOA, quality metrics, and behavior estimates from multiple sensors. The appliance and sensors can perform these measurements and processing in signature utilization mode. Sensor measurements can be processed on / by the sensor that performed the measurement, or by the appliance or another processor connected to the sensor, as shown in Figure 4A. The appliance performs the aggregation and processing shown in Figure 4B.

[0090] As shown in Figure 4A, a single sensor measurement for a given RFID tag includes both the EPC for that RFID tag and an estimate of the communication channel from the sensor to that RFID tag (402). In signature creation / forming mode, the sensor uses the channel estimate to create or update a signature for its tag / sensor pair (410), which is stored by the EPC, antenna configuration / beamforming sector, query signal / response carrier frequency, and optionally the type of RFID tag (420). The sensor may normalize the channel estimate before storing it to account for gain and phase variations, and as a result, the gain and phase rotation reduce or minimize the mean-squared (RMS) error when matching the channel estimate for consecutive reads of the same tag (assuming the tag is not moving). The sensor correlates the incoming / current channel estimate for each EPC with past channel estimates for the same EPC stored in the sensor's LUT (412), and if the current channel estimate and past channel estimate do not match within a given threshold or percentage, the sensor may report that the tag has likely moved and provide the appliance (422) with the EPC of the tag whose past channel estimate most closely matches the current channel estimate of the EPC.

[0091] If the tag does not move, the system effectively creates, stores, and updates signatures for each location in the environment occupied (or occupied) by the RFID tag. The signatures (channel estimates) represent the communication channels between the sensor and the possible locations of the RFID tag, and are therefore clustered by the sensor ID (SID), as well as by the carrier frequency, beamforming sector, and other parameters (420). At the end of the signature creation / forming mode, and during the signature utilization / consumption mode, the appliance correlates the channel estimates with previously created and stored channel estimates (412).

[0092] The sensor also estimates the AOA of the tag response (414) and clusters the AOA for each tag (EPC) (416). The sensor may estimate the AOA for all responses or for only a subset of responses, for example, for responses where the channel estimate does not match any of the channel estimates stored in the sensor's LUT. The sensor sends these AOAs to the appliance to determine the tag location corresponding to the channel estimate, as described above. For example, the sensor may calculate a statistical distribution of the AOA estimates and group the AOA estimates based on that statistical distribution (for example, by clustering AOA estimates that are within a certain number of standard deviations from each other). The sensor may store the clusters of AOA estimates by EPC in memory or a database and provide them to the appliance to estimate the actual location of each tag (424).

[0093] In some cases, one sensor may query a given tag, and multiple sensors may detect a response to that query signal, as described in International Application PCT / US2022 / 026198, filed April 25, 2022, which is incorporated herein by reference in its entirety for all purposes. When a tag is stationary, the communication channels between the tag and its sensors should not change from query to query, and the channel estimation for each sensor / tag pair should remain constant. However, when a tag moves, all communication channels, and therefore all channel estimations, should change. Thus, simultaneous changes in multiple channel estimations allow the appliance to determine with (more) confidence that the tag has moved since it was last read. Conversely, if one channel estimation changes and others do not, the appliance may determine that the corresponding communication channels have changed, but the tag has not moved.

[0094] The sensor also estimates or determines quality metrics related to tag replies, signatures, and / or AOA estimates. These quality metrics may include, but are not limited to, variance, signal-to-noise ratio (SNR), read rate (how often the tag is read), RSSI, estimated elevation, AOA variance, channel estimated variance, whether the measurement or estimate is modal, whether the measurement or estimate is clustered, the level of agreement on estimates from different sensors, or boresite sectors that limit the volume of tags the sensor reads. The sensor can transmit these quality metrics to the appliance along with EPC, motion detection information, and AOA.

[0095] Figure 4B illustrates the tag location process performed by the appliance / query controller each time a sensor receives a tag response, providing the appliance with the corresponding EPC, motion detection information, quality metrics, and optional AOA. The appliance uses a cluster of AOA estimates from multiple sensors to estimate the location (xyz estimate) of each tag (452). If motion information from the sensors indicates that the tag has not moved, the appliance can simply retrieve and return the tag's last known location. If motion information indicates that the tag has moved or is new, the appliance calculates and returns the tag's location from the AOA associated with that tag's EPC, as measured by multiple sensors. (If sensors are far from the tag, or if insufficient sensors receive a response from the tag, the appliance can assign a given height to the tag and estimate the tag's spatial location based on only one or two AOAs.)

[0096] The appliance clusters these xyz location estimates for different EPCs and SIDs based on, for example, their physical proximity, their proximity in the channel estimation space, or statistics of their distribution (454), and stores them in a database or memory for later use (460). For example, if the desired tag location accuracy is 50 cm, the appliance can obtain location estimates separated by more than 2 m in separate clusters. The appliance stores clustered location estimates indexed by tags (EPCs) and / or sensors (SIDs).

[0097] The appliance also corroborates the spatial (e.g., xyz) location estimate from each sensor with spatial location estimates from other nearby sensors (e.g., the nearest SID) (456). Generally, the appliance may assign a higher confidence level to spatial location estimates that match or are close to those from other sensors. The appliance may also corroborate a spatial location estimate from a given sensor for a given tag with other older spatial location estimates from the same sensor for the same tag. The appliance may determine whether spatial location estimates match each other by calculating the variance of the spread of spatial location estimates or another measure, and may prefer the spatial location estimate with the lowest variance. The appliance returns a spatial location (xyz) estimate for each tag (EPC) and may also return the sensor SID that provides the best or most accurate estimate of the tag's location.

[0098] In addition to supporting spatial position estimation, the appliance can support motion detection by sensors (458). As shown in Figure 3A, each sensor provides the appliance with an indication of the probability that a given tag has moved. The appliance stores these motion detection indications from the EPC and sensors (e.g., SID) in memory or other data store (462) and supports them with the EPC and / or sensors. If motion detection indications from multiple sensors indicate that the tag has likely moved, the appliance can report that the tag has moved or is likely to have moved. If the tag is read by many sensors, but only one sensor indicates that the tag has moved, the appliance can report that the tag has not moved or is unlikely to have moved. If a single sensor reports that multiple tags have moved, but other sensors do not detect the movement of those tags (change in channel estimate), the appliance can determine that the tag has not moved, or that the communication channel associated with that sensor has changed, which is likely due to the movement of a person or object between that sensor and the tag. Similarly, if a group of sensors on one side of a tag detects the possibility of movement of that tag, but the sensors on the opposite side of the tag do not detect any movement, the appliance can determine that an object or person passed between the tag and the sensors that detected movement (a change in channel estimation).

[0099] The appliance can support motion detection indications (channel estimation changes) over time and space / sensors. For example, if a single sensor initially reports a high probability of motion and then subsequent readings do not report motion, the appliance may determine that the tag has not moved, especially if the tag's channel estimation returns to its original state. If different sensors report motion (channel estimation changes) for a given tag over time, the appliance may determine that the tag has moved and estimate its trajectory based on the sensor's estimated position and / or spatial position.

[0100] The appliance can also use EPC to select the best or most likely location of a tag from among the tag location estimates provided by multiple sensors. In other words, the appliance can use all available information about the tag's location, regardless of which sensor(s) reads the tag. For example, consider a sensor for a given tag that has poor or very unclear location estimates. The uncertainty can be caused by noisy channel estimates, high attenuation, or severe multipath in the communication channel. Despite the poor or very unclear location estimates and underlying channel estimates, the appliance determines that they are consistent with the most recent location and channel estimates and concludes that the tag is in the same location, regardless of which sensor estimates its location. Detecting (tag) movement using channel estimation

[0101] Sensors or appliances can also sense the movement of a tag or another object based on changes in channel estimation. For example, a sensor or appliance can determine whether a tag has moved based on changes in its signature (and / or AOA) over time. If the tag's signature changes dramatically and then back, the sensor or appliance may determine that the changed signature is due to a false measurement or temporary movement (e.g., the tag was picked up and returned to its original position) and discard the measurement. On the other hand, if the tag's signature (channel estimation) or estimated AOA indicates that the tag has moved several meters or more between readings, the sensor or appliance may determine that the tag has moved and update other systems, such as an inventory database or payment system, to trigger the movement for replenishment, sale, or loss prevention of the item attached to the tag. Similarly, an appliance may determine that a tag has moved if different sensors detect a change in the tag's signature, for example, caused by a change in the tag's range relative to those sensors.

[0102] Furthermore, the appliance can corroborate motion detected by the sensor using measurements from other sensors and / or other data sources. A single sensor can be difficult to detect true motion (as opposed to false motion), especially if the tag is moving towards or away from the sensor (since the angle of arrival of the tag's response does not change). Several sensors can usually reliably detect tag movement, especially if the movement results in a relatively large change in the tag's position. If the tag's position over time from several sensors indicates that the tag is moving, the appliance can report the tag's movement and trajectory. The appliance or sensor can also wait a certain period (e.g., 15 seconds, 30 seconds, 1 minute, 5 minutes, etc.) to see if the tag's channel estimation snaps back to its more historical value, which may indicate that the communication channel was perturbed but the tag remained stationary. Changes in the tag's signature can also be correlated with motion detected using a camera to confirm that the tag is indeed moving.

[0103] A sensor that collects and averages channel estimates for each EPC can sense when a tag's channel estimate is out of family (e.g., far enough from its latest channel estimate in the channel estimate space to suggest the tag has moved). If a tag's channel estimate is out of family, the sensor can form a temporary second channel estimate and initiate the averaging / signature process for the corresponding new location. If the communication channel and channel estimate continue to change, for example, if the tag is moving and / or there is movement around the tag, the sensor can discard the new channel and location estimates. When operation stops, the communication channel and channel estimate should stabilize (or, if the tag has moved into an out-of-range area, the tag should disappear), in which case the sensor discards or purges the tag's temporary and / or legacy channel and location estimates.

[0104] Figure 5A shows how sensors 150e and 150f detect the movement of tag 101j in environment 100 of Figure 1A. This is based on changes in the channel estimates of communication channels 15e-j and 15e-f between sensors 150e and 150f and tag 101j. In this case, the tag moves between two locations (indicated by single-headed arrows and reference numbers 101j and 101j' for the start and end positions of the tag, respectively). Since the communication channels for sensor 150 are location-specific, the communication channels between sensors 150e and 150f change, and tag 101j changes from 15e-j and 15f-j to 15e-j' and 15f-j'. Tag 101j moves further away from sensor 150e, resulting in more attenuation (fading) and a longer delay in the communication channel 15e-j' between tag 101j and sensor 150e. This change in range between tag 101j and sensor 150e also alters the relative path difference between tag 101 and the sensor's antenna element, imparting a phase shift corresponding to the signal received by the antenna element. This phase shift (and fade) generates a corresponding change in the channel estimate. (Generally, this is a detectable change in the communication channel due to tag operation, manifesting as a relative phase shift between antenna elements. If the LUT preserves the tag's typical RSSI, which is a function of the beam steering sector, as it reflects the power received by the tag, then changes in amplitude / attenuation can also cause the sensor to revise its channel estimate.)

[0105] Simultaneously, tag 101j moves closer to sensor 150f, resulting in a phase change and less attenuation in the communication channel 15f-j' between tag 101j and sensor 150e, as well as a corresponding change in the channel estimate. Sensors 150e and 150f detect the corresponding change in the channel estimate of 101j. Other sensors within range of tag 101j, including sensors 150b, 150d, and 150g, may also detect the change in the channel estimate of tag 101j. Some sensors 150 may move into or out of range as tag 101j moves.

[0106] Sensors 150e and 150f each examine previous channel estimates for tag 101j using the EPC or other unique identifier coded in the tag's response. If the current channel estimate does not match the previous channel estimate (e.g., within a given threshold or percentage), sensors 150e and 150f determine that their channel estimates for tag 101j have changed. Sensors 150e and 150f use these updated channel estimates to derive a new location estimate for tag 101j by finding a match to the channel estimate of another tag and assuming that tag 101j is at the location of the other tag, or by using AOA, RSSI, or another appropriate method for estimating the tag's new location. Ideally, the new location estimates from sensors 150e and 150f will match each other within the error radius associated with the location estimation process. The new location estimates can be averaged to produce a more accurate location estimate for reporting to the user. If the new position estimates do not match each other (at least not within the error radius), appliance 140 may discard the potentially incorrect position estimate and / or estimate the position of tag 101j based on other data. Sensor 150 may retain the old (current) channel estimate for a given tag 101 while beginning to accumulate and average the new channel estimates for that tag 101, until appliance 140 instructs sensor 150 to discard the old channel estimate and replace it with a new channel estimate(s).

[0107] Figure 5B illustrates how sensor 150 can distinguish channel estimate changes caused by tag operation from channel estimate changes caused by environmental changes, such as the movement of a person or device 120. In Figure 5B, a new device 120d is placed between sensor 150f and tags 101g and 101j. This device 120d delays, attenuates, scatters, and / or blocks the RF signals propagating between sensor 150f and tags 101g and 101j. These effects alter the channel estimates of communication channels 15f-g and 15f-j between sensor 150f and tags 101g and 101j, respectively, suggesting that tags 101g and 101j have moved relative to sensor 150f. However, since the communication channels 15e-g and 15e-j between sensor 150e (and sensors 150d and 150g) and tags 101g and 101j have not changed, the channel estimates for these communication channels have not changed, suggesting that tags 101g and 101j have not moved, at least with respect to sensor 150e.

[0108] If sensor 150f is the only sensor that has changed the channel estimate for tags 101g and 101j, appliance 140 can determine that tags 101g and 101j have not moved and that the change in the channel estimate is caused by something else (in this case, the appearance of equipment 120d). In other words, appliance 140 can use channel estimates from different sensors 150 for the same tag 101 to confirm whether a particular change in the channel estimate indicates that tag 101 has moved. For example, appliance 140 can count the channel estimate as a vote that tag 101 has moved, with the smallest number of votes or percentage indicating movement. Appliance 140 can also estimate behavior based on changes in the RSSI or Euclidean distance (in the channel estimate space) between the current channel estimate(s) and past channel estimates.

[0109] Appliance 140 can also use information about the (fixed) position of the sensor 150 and information about multiple tags 101 to distinguish the movement of a tag from changes in the environment. For example, if all sensors 150 on different sides of tag 101 detect a change in the channel estimate associated with that tag 101 (e.g., Figure 5A), appliance 140 can estimate with greater confidence that tag 101 has moved or is moving. However, if sensors 150 on only one side of tag 101 detect a change in the channel estimate (e.g., Figure 5B), appliance 140 can estimate that the communication channel between those sensors 150 and tag 101 has changed, but tag 101 has not moved relative to the sensors 150. Furthermore, if appliance 150 determines that the channel estimates of sensor 150 and some tags 101 have changed (for example, Figure 5B), appliance 140 may infer that something else has changed the corresponding communication channel, depending on whether all of those tags 101 have moved or whether the channel estimates of any of those tags have changed to other sensors 150.

[0110] Generally, a sensor can read 30-40 tags in a short hop. If a sensor detects a change in most or all of the channel estimates for those tags from one hop to the next, it is likely that the movement has changed or the communication channel has changed. Similarly, if multiple sensors detect a change in the channel estimate for the same tag or group of tags, it is likely that the tag or group of tags has moved or that other action has disrupted the communication channel. In other words, if several sensors report a large perturbation to the appliance in the channel estimate for a given tag, the appliance can determine with greater confidence that the tag has moved.

[0111] Motion detection using multiple sensors helps distinguish motion from noise in a particular sensor or communication channel. The most problematic noise and interference sources tend to be thermal noise, self-noise from the sensor's transmitter, and potential interference from other sensors. Fortunately, noise tends to have small variance, while motion usually causes large perturbations to channel estimation. As a result, sensors average channel estimates across 128 symbols, especially in the case of ACK responses to tags, up to 21 dB (= 10 log 10 When providing a processing gain (128), the operation should be relatively easy to distinguish from noise. Furthermore, ACK should have a signal-to-noise ratio (E) per bit of >10dB. b / N o ) should have a periodic redundancy check (CRC) and code to reduce the possibility of decoding errors in the tag response. Instruct RFID tag queries based on detected movement.

[0112] Sensors can also query tags or switch operating modes based on or in response to changes in channel estimates detected by RFID tag readers (sensors). For example, consider a sensor or group of sensors that detects changes in channel estimates associated with tags in a specific area of ​​an RFID environment. The sensor(s) can estimate the movement of tags, people, and / or objects in that area, in particular when corroborated by measurements from a camera or other device that can detect the movement of tags, people, and / or objects or associated characteristics. In response to motion detection, the sensor(s) can perform a deeper scan of the affected area, for example, switching from operating in signature utilization / consumption mode to operating in signature generation / formation mode across the affected area until motion stops. The sensor(s) can make this switch in response to changes in channel estimates and / or commands from an appliance, which may issue commands in response to changes in channel estimates from other sensors or signals, such as a camera or other motion detector. During signature creation / formation mode, the sensor(s) can update the estimated channel and location of tags in the affected area. The sensor(s) can also detect new tags and, if present, determine which tags have been removed from the area.

[0113] Switching modes based on detected motion or changes in channel estimates allows for increased read speed of active tags without necessarily losing information about the communication channel or tags. By more frequently reading moving tags, or tags in areas subject to or affected by motion, the sensor can maintain more accurate channel and location estimates. At the same time, the sensor can refrain from reading tags in areas where no motion is occurring, as in areas where no motion is occurring, the tags in those areas should not move and the communication channel between the sensor and the tags should not change.

[0114] A sensor or group of sensors can also leverage the absence of motion to perform deep readings of an area without sufficient information about the tag or communication channel. If a sensor or group of sensors determines that no activity is occurring in a particular area (e.g., tag reading or a command from an appliance), it can perform a signature creation / formation mode scan of that area, as illustrated in Figure 3A. This can be useful in stores, warehouses, or other facilities where the area is rarely closed, never closed, or not closed for long enough to perform standard inventory. It is also useful in dynamic environments (e.g., environments where equipment moves) where waiting long enough for the environment to close to readjust the LUT may be inconvenient. By creating a signature for the tag while the area is idle or stationary, the sensor(s) effectively extend the available signature creation time.

[0115] If a sensor determines that a tag is moving or has moved, it can estimate the tag's trajectory or future location(s) and read those areas itself, or trigger other sensors, possibly via an appliance, to read those areas. For example, if a tag is on an employee's badge and a sensor detects the tag in a stockroom, the sensor can begin scanning the corridor connecting the stockroom to the sales floor, anticipating the employee's return to the sales floor. Similarly, if a sensor detects that a tag attached to a clothing item has moved to a fitting room, the sensor can trigger a read in the checkout area, anticipating that the customer has tried on and purchased the clothing item. Channel estimation-based beam steering

[0116] The sensor can also use channel estimates to direct the transmit (Tx) beam radiated by its antenna array to a specific tag or region, and by inverting the channel estimates of the positions stored in the LUT, the sensor can determine the beam parameters (sensor beamforming sector, carrier frequency, query signal amplitude, and / or other degrees of freedom) for directing the beam to that position. In other words, each communication channel is reciprocal, meaning that the channel estimate represents the best beam steering vector for the signal from the sensor to the corresponding tag position. In its simplest form, the beam steering vector is derived by inverting the phase, which is equivalent to taking the conjugate of the channel estimates. For example, if the first antenna element of the sensor has a phase of 40° relative to the second antenna element of the sensor for a given channel estimate, the sensor should apply a phase of -40° relative to the second antenna element to the first antenna element in order to steer the beam to the corresponding tag position. If necessary, the sensor can also adjust the gain (i.e., 1 / g for all m antenna elements). m By inverting the signal and then normalizing the amplitude, a target power level can be achieved to better combine the gains.

[0117] If the gain of the antenna array in that direction is sufficiently high, the sensor can transmit signals at lower amplitudes, reducing power consumption and potentially increasing or maximizing the signal-to-noise ratio (SINR) of detected responses. Reducing the signal amplitude also reduces the likelihood of activating tags at nearby locations, which can reduce the time it takes to query a tag at a desired location (the sensor does not need to deal with responses from other tags).

[0118] The sensor can also determine which locations in the environment lack channel estimates and direct the beam toward those locations. If the channel estimates change smoothly with location (e.g., as a function of the sensor beamforming sector), the sensor can predict the channel estimates for the missing locations from the LUT, invert the channel estimates, and determine transmit parameters for querying the missing locations. By transmitting potentially higher-power queries using these transmit parameters, the sensor can cause the tag to radiate a response of sufficient intensity for the sensor to detect. This can be useful for querying and locating tags that exist but do not produce a detectable response to broadcast queries, for example, due to interference or multipath effects in the communication channel. Accuracy of tag location by channel estimation

[0119] Figure 6 is a box plot of the Euclidean distance between channel estimates in channel estimation space, or signature distance pair, and the physical distance generated from the responses of tags in warehouse data. Each of the 32 boxes in Figure 6 represents a measurement made with the same parameters (sensor, carrier frequency, and beamforming sector). Each box was created by selecting a tag (EPC), calculating its signature and physical distance for each tag (EPC) within the same parameter group, and then repeating the calculation for each other tag (EPC) in the parameter group. Figure 6 shows that tags that are close to each other (in physical space) have similar signatures (normalized channel estimates): roughly, there is a linear relationship / correlation between the signature distance and physical distance of tags, up to a physical distance of approximately 3.5 meters. By limiting the signature matching distance, it is possible to limit or predict the quality of the estimated xyz position of tags.

[0120] Table 2 (below) shows the errors in meters for different quantiles of the estimated two-dimensional (2D) and three-dimensional (3D) tag locations. These errors were generated by comparing the estimated tag locations with their ground truth locations, which were derived using a reference tag or another mechanism that knew the tag's ground truth location. These known locations can be mapped to channel estimates in the LUT. These errors result in location errors when estimating tag locations based on the closest channel estimate. [Table 2] conclusion

[0121] While various embodiments of the invention have been described and illustrated herein, those skilled in the art will readily conceive of various other means and / or structures for carrying out the functions described herein and / or obtaining one or more of the results and / or benefits, and each of such variations and / or modifications will be considered to be within the scope of the embodiments of the invention described herein. More generally, those skilled in the art will readily understand that all parameters, dimensions, materials and configurations described herein are illustrative, and that actual parameters, dimensions, materials and / or configurations will depend on the specific use or of a few specific uses in which the teachings of the invention are used. Those skilled in the art will be able to recognize or confirm many equivalents of the specific embodiments of the invention described herein simply by using ordinary experimentation. Thus, it will be understood that the embodiments described herein are presented only as examples, and that embodiments of the invention may be practiced in ways other than those specifically described and claimed, within the scope of the appended claims and their equivalents. Embodiments of the invention of this disclosure cover each individual feature, system, article, material, kit and / or method described herein. In addition, any combination of two or more such features, systems, articles, materials, kits, and / or methods is included within the scope of the inventions of this disclosure, provided that such features, systems, articles, materials, kits, and / or methods are not inconsistent with each other.

[0122] Furthermore, various inventive concepts may be embodied in one or more methods, and embodiments thereof have been provided. The actions performed as part of a method may be ordered in any preferred manner. As a result, embodiments may be constructed in which the actions are performed in a different order than those exemplified, and this may include performing some of the actions simultaneously, even when they are shown as actions that follow the exemplary embodiments.

[0123] All definitions defined and used herein should be understood to govern dictionary definitions, definitions incorporated by reference in documents, and / or the common meanings of the defined terms.

[0124] As used herein and in the claims, the indefinite articles "a" and "an" should be understood to mean "at least one" unless explicitly stated otherwise.

[0125] As used herein and in the claims, the phrase “and / or” should be understood to mean “either or both” of the combined components, that is, components that are conjunctive in some cases and disjunctive in others. Multiple components listed in “and / or” should be interpreted as “one or more” of the same type, i.e., coordinating components. Other components may optionally exist in addition to those specifically identified by the “and / or” clause, whether related or not to the components specifically identified. Thus, as a non-restrictive example, a reference to “A and / or B” when used in conjunction with unrestrictive language such as “including” may refer to A only in one embodiment (optionally including components other than B), B only in another embodiment (optionally including components other than A), and both A and B in yet another embodiment (optionally including other components), and so on.

[0126] As used herein and in the claims, “or” should be understood to have the same meaning as “and / or” as defined above. For example, when separating items in a list, “or” or “and / or” should be interpreted as inclusive, i.e., including at least one of the number or list of components, but also including two or more, and optionally including additional items not on the list. Only terms that explicitly indicate the opposite, such as “one of,” “exactly one of,” or, when used in the claims, “consisting of,” refer to including exactly one component of the number or list of components. In general, as used herein, the term “or” should be interpreted only when preceded by an exclusive term, such as “either,” “one of,” “only one of,” or “exactly one of,” to indicate an exclusive choice (i.e., “one or the other, but not both”). “Consisting of essentially” should have the usual meaning as used in the field of patent law when used in the claims.

[0127] As used herein and in the claims, the phrase “at least one” with respect to a list of one or more components should be understood to mean at least one component selected from any one or more components in the list of components, but not necessarily including at least one of each component specifically enumerated in the list of components or all components, nor excluding any combination of components in the list of components. This definition also allows for the presence of components other than those specifically identified in the list of components to which the phrase “at least one” refers, regardless of whether they are related to the specifically identified components. Therefore, in non-limiting embodiments, "at least one of A and B" (or equivalently "at least one of A or B," or equivalently "at least one of A and / or B") may mean, in one embodiment, that B is absent (and optionally includes components other than B), that at least one optionally two or more A is included; in another embodiment, that A is absent (and optionally includes components other than A), that at least one optionally two or more B is included; and in yet another embodiment, that at least one optionally two or more A is included, and at least one optionally two or more B is included (and optionally other components).

[0128] In the claims and the above specification, all transitional phrases, such as “comprising,” “including,” “carrying,” “having,” “containing,” “involving,” “holding,” “composed of,” and similar phrases, are understood to be unrestrictive, meaning they include but are not limited to them. Only the transitional phrases “consisting of” and “consisting essentially of” are considered closed or semi-closed transitional phrases, respectively, as provided in Section 2111.03 of the U.S. Patent and Trademark Office's Patent Examination Procedure Manual.

Claims

1. A system for locating radio frequency identification (RFID) tags, It is an RFID tag reader, Detect a response from the first RFID tag, A first channel estimate is formed based on the response from the first RFID tag, and the first channel estimate represents the communication channel between the RFID tag reader and the first RFID tag. The system detects a response from a second RFID tag and forms a second channel estimate based on the response from the second RFID tag, the second channel estimate representing the communication channel between the RFID tag reader and the first RFID tag at the carrier frequency of the response from the first RFID tag, An RFID tag reader configured to perform a comparison between the second channel estimate and the first channel estimate, An appliance operably connected to the RFID tag reader, Based on the response from the first RFID tag, the location of the first RFID tag is estimated. The comparison between the second channel estimate and the first channel estimate is received from the RFID tag reader. An appliance configured to estimate the location of the second RFID tag based at least partially on the comparison and based on the location of the first RFID tag, and A system equipped with these features.

2. The RFID tag reader, An antenna array having n antenna elements, where n is an integer greater than 1, and configured to sense radiation from the first RFID tag, A processor operably connected to the antenna array, for each of the n antenna elements in the antenna array, generates a complex number representing the phase and amplitude of the response detected by that antenna element. The system according to claim 1, comprising:

3. The system according to claim 1, wherein the appliance is configured to estimate the position of the first RFID tag based on the angle of arrival of the response from the first RFID tag at the RFID tag reader.

4. The system according to claim 1, wherein the appliance is configured to estimate the position of the first RFID tag based on the correlation between the position of an object or person appearing in an image and the first RFID tag.

5. The system according to claim 1, wherein the RFID tag reader is configured to compare the second channel estimate with the first channel estimate by finding the Euclidean distance between the first channel estimate and the second channel estimate.

6. The system according to claim 5, wherein the RFID tag reader is configured to compare the Euclidean distance with a predetermined threshold.

7. The aforementioned appliance A memory that stores the location of the first RFID tag in a lookup table indexed by the first channel estimate, A processor operably connected to the memory for obtaining the location of the first RFID tag from the lookup table based on a comparison of the second channel estimate and the first channel estimate. The system according to claim 1, comprising:

8. The RFID tag reader is configured to detect a response from a third RFID tag, to form a third channel estimate representing the communication channel between the RFID tag reader and the third RFID tag based on the response from the third RFID tag, and to perform a comparison between the second channel estimate and the third channel estimate. The appliance is configured to estimate the location of the third RFID tag based on the response from the third RFID tag, store the location of the third RFID tag in a lookup table indexed by the third channel estimate, and determine, based on a comparison of the second channel estimate and the third channel estimate, that the location of the second RFID tag is closer to the location of the first RFID tag than the location of the third RFID tag. The system according to claim 7.

9. The system according to claim 1, wherein the response from the first RFID tag codes the electronic product code (EPC) of the first RFID tag, and the RFID tag reader is configured to store the first channel estimate associated with the EPC of the first RFID tag in a first lookup table.

10. A method for locating a radio frequency identification (RFID) tag, The RFID tag reader detects the response from the first RFID tag, Forming a first channel estimate based on the response from the first RFID tag, wherein the first channel estimate represents a communication channel between the RFID tag reader and the first RFID tag at the carrier frequency of the response from the first RFID tag. Based on the response from the first RFID tag, the location of the first RFID tag is estimated. The RFID tag reader detects a response from the second RFID tag, Forming a second channel estimate based on the response from the second RFID tag, wherein the second channel estimate represents the communication channel between the RFID tag reader and the second RFID tag at the carrier frequency of the response from the second RFID tag. Perform a comparison between the second channel estimate and the first channel estimate, Estimating the position of the second RFID tag based at least partially on the comparison and the position of the first RFID tag. Methods that include...

11. Detecting a response from the first RFID tag involves sensing radiation from the first RFID tag with each of the n antenna elements, where n is an integer greater than 1. Forming the first channel estimate includes generating a complex number for each of the n antenna elements that represents the phase and amplitude of the response detected by that antenna element. The method according to claim 10.

12. The method according to claim 10, wherein estimating the position of the first RFID tag includes determining the angle of arrival of the response from the first RFID tag using the RFID tag reader.

13. To estimate the location of the first RFID tag, The camera detects the image of the first RFID tag and an object or person, The position of the object or person is correlated with the first RFID tag. The method according to claim 10, including the method described in claim 10.

14. The method according to claim 10, wherein comparing the second channel estimate with the first channel estimate includes finding the Euclidean distance between the first channel estimate and the second channel estimate.

15. The method according to claim 14, further comprising comparing the second channel estimate with the first channel estimate by comparing the Euclidean distance with a predetermined threshold.

16. The method further includes storing the location of the first RFID tag in a lookup table indexed by the first channel estimate, Estimating the location of the second RFID tag includes obtaining the location of the first RFID tag from the lookup table based on the comparison. The method according to claim 10.

17. The RFID tag reader detects a response from the third RFID tag, The process involves forming a third channel estimate based on the response from the third RFID tag, wherein the third channel estimate represents the communication channel between the RFID tag reader and the third RFID tag. To estimate the location of the third RFID tag, The location of the third RFID tag is stored in the lookup table indexed by the third channel estimate, Perform a comparison between the second channel estimate and the third channel estimate, Based on a comparison of the second channel estimate with the third channel estimate, it is determined that the position of the second RFID tag is closer to the position of the first RFID tag than the position of the third RFID tag. The method according to claim 16, further comprising:

18. The response from the first RFID tag codes the electronic product code (EPC) of the first RFID tag. The method according to claim 10, further comprising associating the first channel estimate with the EPC of the first RFID tag in the first lookup table.

19. The method according to claim 10, further comprising moving the first RFID tag after detecting a response from the first RFID tag and before detecting a response from the second RFID tag.

20. The RFID tag reader detects a response from the third RFID tag, The process involves forming a third channel estimate based on the response from the third RFID tag, wherein the third channel estimate represents the communication channel between the RFID tag reader and the third RFID tag. Perform a comparison between the third channel estimate and the first channel estimate, The location of the third RFID tag is estimated, at least partially based on a comparison of the third channel estimate and the first channel estimate. The method according to claim 10, further comprising:

21. A method for locating a radio frequency identification (RFID) tag, The RFID tag reader detects a response from the RFID tag at a first carrier frequency and a first beamforming sector, Forming a channel estimate based on the response from the RFID tag, wherein the channel estimate represents the first carrier frequency and the communication channel between the RFID tag reader and the RFID tag in the first beamforming sector. Using the first beamforming sector and / or at the first carrier frequency, the channel estimate is compared with a previously determined channel estimate based on the response detected by the RFID tag reader, The location of the RFID tag is estimated based on a previously determined location associated with one of the previously determined channel estimates. Methods that include...

22. The method according to claim 21, wherein comparing the channel estimate with a previously determined channel estimate includes determining that the Euclidean distance between the channel estimate and one of the previously determined channel estimates is below a predetermined threshold, and estimating the location of the RFID tag includes estimating that the location of the RFID tag is the previously determined location.

23. The previously determined channel estimate is associated with the RFID tag, and the channel estimate is compared with the previously determined channel estimate. Based on the identifier of the RFID tag encoded in the response from the RFID tag, the previously determined channel estimate is obtained from the memory of the RFID tag reader, The channel estimate is compared with the channel estimate determined previously, In response to determining that the channel estimate falls within a predetermined threshold of one of the previously determined channel estimates, the location of the RFID tag is estimated to be the previously determined location associated with one of the previously determined channel estimates. The method according to claim 21, including the method described in claim 21.

24. The method according to claim 21, further comprising storing in the memory of the RFID tag reader a previously determined location associated with the previously determined channel estimate.

25. The method according to claim 24, wherein the previously determined location is indexed and stored by the previously determined channel estimate and / or the electronic product code of the RFID tag.

26. A method for locating a first radio frequency identification (RFID) tag, The RFID tag reader detects responses from RFID tags on each of multiple carrier frequencies, To form a channel estimate for the RFID tag at each of the aforementioned multiple carrier frequencies, The memory stores the respective locations of the RFID tags, which are indexed by the respective channel estimates. The RFID tag reader detects a response from the first RFID tag at the first carrier frequency of the plurality of carrier frequencies, A first channel estimate for the first RFID tag at the first carrier frequency is formed at least partially based on the response from the first RFID tag at the first carrier frequency, From among the respective channel estimates stored in the memory, determine the channel estimate that is closest to the first channel estimate. The position of the first RFID tag is estimated to be the position corresponding to the nearest estimated channel value, Obtaining the position corresponding to the nearest channel estimate from the memory. Methods that include...

27. A radio frequency identification (RFID) tag reader detects a first response from the RFID tag at a first point in time, Based on the first response, a first channel estimate is formed for the communication channel between the RFID tag and the RFID tag reader. The RFID tag reader detects a second response from the RFID tag at a second time point after the first time point, Based on the second response, a second channel estimate is formed for the communication channel between the RFID tag and the RFID tag reader. The determination that the second channel estimate differs from the first channel estimate by a predetermined amount, In response to determining that the second channel estimate differs from the first channel estimate by more than the predetermined amount, it is determined that the movement has affected the communication channel. Methods that include...

28. The method according to claim 27, wherein the movement is the movement of the RFID tag.

29. The method according to claim 27, wherein the movement is the movement of at least one of the RFID tag or an object other than a person.

30. Based on the first channel estimate, the first estimated position of the RFID tag is determined, Based on the second channel estimate, a second estimated position different from the first estimated position of the RFID tag is determined. The method according to claim 27, further comprising:

31. A method for detecting motion, The first involves detecting a change in the communication channel between the radio frequency identification (RFID) tag and the RFID tag reader, To detect a change in the communication channel between the second RFID tag and the RFID tag reader, Based on the change in the communication channel, it is determined that motion has occurred in a region encompassing at least a portion of the communication channel. Methods that include...

32. Detecting the change in the aforementioned communication channel The method according to claim 31, comprising detecting a change in the relative phase of radio frequency radiation received by the antenna element of the RFID tag reader from the first RFID tag.

33. The method according to claim 31, further comprising the RFID tag reader forming a channel estimation for at least one other RFID tag in response to determining that the aforementioned movement has occurred.

34. The method according to claim 31, further comprising switching the operating mode of the RFID tag reader in response to determining that the aforementioned movement has occurred.

35. A method for locating a first radio frequency identification (RFID) tag, The RFID tag reader determines the estimated channel value of the communication channel between the RFID tag reader and the first RFID tag, The RFID tag reader compares the estimated channel value with the previously determined channel value for the first RFID tag. In response to the channel estimate being within the threshold of previously determined channel estimates, the position of the first RFID tag is estimated to be the previously estimated position of the first RFID tag. In response to the channel estimate being greater than the threshold from the previously determined channel estimate, The determination that the channel estimate falls within the threshold of previously determined channel estimates for the second RFID tag, Identifying the position of the first RFID tag as the previously estimated position of the second RFID tag. Methods that include...

36. A system for locating radio frequency identification (RFID) tags, An RFID tag reader determines the channel estimate of the communication channel between the RFID tag reader and the RFID tag, compares the channel estimate with a previously determined channel estimate for the RFID tag, and determines whether the RFID tag has moved after the RFID tag reader has determined the previously determined channel estimate. A controller that is operably connected to an RFID tag reader, receives the identifier of the RFID tag and an indication of whether the RFID tag has moved away from the RFID tag reader, and estimates the location of the RFID tag based on the identifier and the indication. A system equipped with these features.

37. The system according to claim 36, wherein the identifier is the electronic product code (EPC) of the RFID tag.

38. The system according to claim 36, wherein the controller includes a memory for storing previously determined locations for a plurality of RFID tags indexed by the identifiers of the plurality of RFID tags.