Wireless anchor for asset tracking
By using anchor beacons and reader devices in IoT systems, combining signal strength and environmental information, the problem of degradation of asset tracking tag position recognition accuracy in IoT environments is solved, and efficient position determination in different environments is achieved .
Patent Information
- Application Number
- CN202380040244.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-06-02
- Filing Date
- 2023-05-26
- Publication Date
- 2024-12-13
AI Technical Summary
In the Internet of Things (IoT) environment, especially in warehouses, hospitals, etc., when using GPS or WiFi systems, loss of signal or offline transmitters may lead to a decrease in the location recognition capability of asset tracking tags, making it difficult to achieve accurate location updates.
By placing anchor beacons in the system operation area, the reader device detects the anchor beacon signal and combines signal strength and calibration data, the position of the reader device is estimated, thereby identifying the location of the asset tracking tag. The system includes anchor beacon, reader device and processor, using beacon signal strength and environmental information for position determination.
Improve the accuracy of position identification of asset tracking tags, reduce the impact of signal loss or interference on position determination, and ensure accurate positioning capabilities in different environments.
Smart Images

Figure CN119137602A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of the filing date and priority of U.S. Patent Application No. 17 / 830,510, filed on June 2, 2022, the entire disclosure of which is incorporated herein by reference. Background Art
[0003] The Internet of Things (IoT) is the network interconnection of physical objects (such as products, packages, vehicles, buildings, etc.) embedded with electronic components for network connection. The embedded components enable objects to detect other objects, be detected by other objects, collect data, and / or send data. In some examples, the embedded components may include tags or markers attached to the physical objects. These tags or markers may be passive or active. The network interconnection capabilities can be used to track the location of physical objects. In many cases, objects can move at different points in time, such as packages or equipment moving from a truck to a loading dock to a warehouse, or medical equipment moving between different rooms (or floors) in a hospital. In these types of situations, it may be challenging to determine the location of the object with appropriate accuracy, including updating the location when the location changes. In addition, systems using GPS or WiFi may suffer from signal loss or transmitter offline, which may reduce the ability to correctly identify the location of the object. Summary of the invention
[0004] Aspects of the present disclosure provide enhanced location accuracy of objects via the use of anchor beacons within the operating area of the system. Anchor beacons can be placed at various locations in and around rooms, storage areas, loading docks, etc., and their relative or exact locations are known. For example, a given anchor beacon may be placed in one corner of a conference room, and the system may know the corner where the anchor beacon is located or may know the room where the anchor beacon is located. By employing anchor beacons, the system may more easily identify the locations of reader devices and asset tracking tags within the system based on the known locations of the anchor beacons.
[0005] According to one aspect, a method for locating an asset tracking tag includes: detecting, by a reader device, one or more beacon signals from at least one anchor beacon, each of the detected beacon signals including anchor beacon identification information, each of the detected beacon signals being associated with a received signal strength when received at the reader device, the anchor beacon identification information being associated with a physical location of the anchor beacon; estimating, by one or more processors, a location of the reader device based on the received signal strength of the one or more beacon signals and the physical location of at least one anchor beacon from the anchor beacon identification information; detecting, by the reader device, one or more signals from the asset tracking tag; and identifying, by the one or more processors, a location of the asset tracking tag based on the estimated location of the reader device and the signal strength information of each of the one or more detected signals from the asset tracking tag.
[0006] Estimating the location of the reader device may include comparing a received signal strength of one of the one or more beacon signals and a physical location of at least one anchor beacon to stored calibration data. Comparing the received signal strength of one of the one or more beacon signals and a physical location of at least one anchor beacon to stored calibration data may include performing a second comparison for another received signal strength from a different anchor beacon. The calibration data may include at least one of environmental information of the operating area or electromagnetic signature information of the operating area.
[0007] The method may also include obtaining, by the reader device, reader environment information associated with a surrounding environment of the reader device, and each of the detected beacon signals may also include anchor beacon environment information associated with a surrounding environment of at least one anchor beacon. Estimating the location of the reader device may include comparing the reader environment information to the anchor beacon environment information. One or more signals from the asset tracking tag may include asset tracking tag environment information associated with a surrounding environment of the asset tracking tag.
[0008] Identifying the location of the asset tracking tag may also be based on the asset tag environmental information and the reader environmental information. Identifying the location of the asset tracking tag may include identifying at least one of a room or a floor where the asset tracking tag is located. Identifying at least one of a room or a floor where the asset tracking tag is located may include determining whether the asset tag environmental information and the reader environmental information are consistent.
[0009] According to another aspect, a system is configured to locate an asset tracking tag. The system includes at least one anchor beacon; at least one reader device; a memory configured to store location information of one or more of at least one anchor beacon, at least one reader device, or at least one asset tracking tag. The system also includes one or more processors operably coupled to the memory, the one or more processors configured to: obtain one or more beacon signals from at least one anchor beacon, each of the obtained beacon signals including anchor beacon identification information, each of the obtained beacon signals being associated with a received signal strength when received at at least one reader device, the anchor beacon identification information being associated with a physical location of the anchor beacon; estimate the location of at least one reader device based on the received signal strength of the one or more beacon signals and the physical location of at least one anchor beacon from the anchor beacon identification information; obtain one or more signals from at least one asset tracking tag; and identify, by the one or more processors, the location of at least one asset tracking tag based on the estimated location of the at least one reader device and the signal strength information of each of the one or more obtained signals from the at least one asset tracking tag. The at least one anchor beacon may be stationary at the physical location. The one or more processors may be one or more processors of the at least one reader device.
[0010] Alternatively or additionally to any of the above, the system may further include a central server, and the one or more processors may be one or more processors of the central server. The central server may be configured to send at least one of the location of the at least one reader device or the location of the at least one asset tracking tag to the client device. The at least one anchor beacon may be a plurality of anchor beacons, the at least one reader device may be a plurality of reader devices, and the at least one asset tracking tag may be a plurality of asset tracking tags. Each of the plurality of anchor beacons may be located in a different room or floor within the operating area of the system.
[0011] Alternatively or additionally, for any of the above, the memory may be further configured to store calibration data, and the estimation of the location of the reader device may further include comparing the received signal strength of one of the one or more beacon signals and the physical location of the at least one anchor beacon with the stored calibration data. The at least one anchor beacon, the at least one reader device, and the at least one asset tracking tag may be configured to collect environmental information, and the estimation of the location of the reader device may include comparing the environmental information of the at least one reader device with the environmental information of the at least one anchor beacon. The at least one reader device may be stationary or mobile. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG. 1A illustrates various examples for positioning of an object in accordance with aspects of the present technique.
[0013] 1B is a functional diagram of an example tracking system according to aspects of the present disclosure.
[0014] 2 is a schematic diagram of an example network according to aspects of the present disclosure.
[0015] 3 is a functional diagram of the example network of FIG. 2 according to aspects of the present disclosure.
[0016] 4A-4B illustrate example scenarios according to aspects of the present disclosure.
[0017] FIG. 5 illustrates an example method according to aspects of the present disclosure. DETAILED DESCRIPTION
[0018] Example System
[0019] The accurate location of an object may be important for a variety of reasons, including knowing where supplies or equipment are stored and whether additional materials need to be ordered. In a warehouse setting, once arriving at the warehouse, pallets of goods may be moved to different locations depending on storage constraints, when the goods need to be shipped, and where the goods are going. In a commercial or hospital setting, equipment may be stored in one location (e.g., a storeroom), placed in different rooms for use, and then moved when needed, such as moving a hospital bed from one room to another.
[0020] Object localization can be challenging because different storage areas, rooms, floors, etc. may have different wireless transmission properties. This may be affected by signal reflections (e.g., multipath signals) caused by walls or objects in the area. Additionally, there may be noise or interference from wireless signals of other types of communication devices using the same or overlapping signal spectrum.
[0021] FIG. 1A shows examples of different objects in various environments. As shown in the left image of the figure, there may be packages or equipment on a pallet in a warehouse. The pallet may have been detached from a freight truck, as shown in the "In Transit" image in the middle of the figure. The pallet can be moved to one or more different locations within the warehouse, such as by a forklift as shown in the left image. The right image in the figure shows a situation where medical equipment (e.g., wheelchairs) and supplies in boxes can be stored in a supply room of a hospital.
[0022] In all of these cases - in a warehouse, on a freight truck, or at a hospital, the object of interest may be moved around. This can be different aisles or rooms in a warehouse, different rooms (or even different floors) in a hospital, or different parts of a truck's cargo container. In the latter case, the cargo may have been displaced during transportation, or may have been repositioned when different packages are delivered to different locations. For an office manager, warehouse manager, nurse, or caregiver, knowing where the object of interest is currently located, rather than where they are assumed to be initially placed, is a valuable piece of information. Ideally, such a person should be able to easily present the current location of a given object on their client computing device (such as a laptop, mobile phone, or smart watch (or other wearable computing device)).
[0023] FIG. 1B is a functional diagram of an example tracking system 100. The tracking system 100 may include a plurality of tracking devices, such as tracking tags 102 and 104, one or more anchor beacons 105, and a reader 106. As discussed further below, a server computing device 108 may also be part of the tracking system 100. Each tracking tag may include one or more sensors, an identifier chip (such as for radio frequency (RF) identification), and / or a transmitting device (such as an RF module configured to transmit information using a selected frequency band and transmission protocol). The tracking tag may be passive, such as a tag configured to activate or be powered by ambient energy, or active, such as a tag configured to include a battery or coupled to another power source. A given tracking tag may be placed on or otherwise attached to or inserted into an item to be tracked, such as a package, a piece of equipment, a vehicle, a warehouse section, a room, etc. While tracking tag 102 may be associated with an asset such as a package, equipment, or vehicle (e.g., a forklift or an autonomous fulfillment robot that can retrieve packages from different locations in a warehouse), tracking tag 104 may be a beacon tag configured to send beacon information from an aisle in a warehouse or from a specific room in a hospital. Different customers may have different accuracy and "liveliness" requirements. For example, one customer may only want to know aisle-level accuracy every day (e.g., before the warehouse closes for the night), while another customer (such as a hospital nurse) may need to know which room a piece of equipment is in every hour so that it can be accessed if a patient needs it.
[0024] A given asset tracking tag 102 or beacon tracking tag 104 may transmit a signal via an antenna (such as using a transmitting device) to communicate data. The data may be formatted according to a selected protocol and include one or more sensed characteristics of a given tracking tag or its environment. For example, the sensed characteristics may be the temperature, location, motion, battery condition, trip / item condition, and / or other detectable characteristics of the tracking device or its environment. The transmitting device may transmit such information via radio frequency transmission in a selected frequency band using a standard or proprietary protocol. For example, the transmitting device may employ Bluetooth™ (e.g., Bluetooth Low Energy (BLE)) or 802.11 protocols in the 2.4 GHz and / or 5 GHz frequency bands. In some examples, each anchor beacon and each asset tracking tag uses Bluetooth™ or BLE protocols.
[0025] One or more anchor beacons 105 are present at fixed and known physical locations within the operating range of the system, such as within a geographic area of a warehouse, an office building or office park, a hospital complex, etc. For example, when each anchor beacon 105 is set up, its physical location (e.g., room 301 on the third floor of a hospital, or box 22 on shelf 3 in aisle 26 of a warehouse) is recorded and stored in a spreadsheet or other database in the memory of the system. The anchor beacon can transmit signals via an antenna (such as using a transmitting device) to communicate data. The data can be formatted according to a selected protocol and include one or more sensed characteristics of a given anchor beacon or its environment. For example, the sensed characteristics can be temperature, location, motion, battery condition, trip / item condition, and / or other detectable characteristics of the anchor beacon or its surroundings (e.g., the room in the warehouse where the anchor beacon is located or the environment in which it is positioned). The transmitting device can transmit such information via radio frequency transmission in a selected frequency band using a standard or proprietary protocol. For example, the transmitting device may employ Bluetooth™ (eg, Bluetooth Low Energy (BLE)) or 802.11 protocols in the 2.4 GHz and / or 5 GHz bands. In some examples, each anchor beacon uses Bluetooth™ or BLE protocols.
[0026] The reader 106 may be a computing device configured to detect signals emitted by a plurality of tracking tags 102 and 104 and one or more anchor beacons 105, and then store and / or transmit data associated with the tracking tags. Although only one reader is shown in FIG. 1B , the system may employ multiple readers. The reader 106 may include one or more processors 110, a memory 112, and other components typically present in a general-purpose computing device. The reader 106 includes a communication module 118 having an antenna and a processing portion (not shown), and the communication module 118 may include a bandpass filter for a frequency band of interest, an analog-to-digital (A / D) converter, and a signal processing module for evaluating information in a received signal. The processing portion may also convert the received signal to a baseband signal before or after the A / D conversion. The communication module 118 may include a separate receiver submodule and a transmitter submodule, or an integrated transceiver configured to receive signals from the tracking tags 102, 104, and / or anchor beacons 105 according to the protocol used by these devices. The communication module 118 may also be configured to communicate with a server computing device 108. The reader 106 may be stationary or mobile (eg, on a hospital cart or on an employee's mobile device).
[0027] The one or more processors 110 may be a commercially available CPU or microcontroller. Alternatively, the one or more processors may be a dedicated device, such as an ASIC or other hardware-based processor, such as a field programmable gate array (FPGA). Although FIG. 1B functionally shows the processor, memory, and other elements of the reader 106 as being within the same box, the processor, computing device, or memory may actually include multiple processors, computing devices, or memories that may or may not be stored within the same physical housing. For example, the memory may be a hard drive, a removable USB drive, or other storage medium located in a housing different from the housing of the reader 106. Therefore, references to a processor or computing device will be understood to include references to a collection of processors or computing devices or memories that may or may not operate in parallel.
[0028] The memory 112 stores information accessible by one or more processors 110, including instructions 114 and data 116 that can be executed or otherwise used by the processor 110. The data can include sensing characteristics from any tag 102 and / or 104 received by the reader 106. The memory 112 can be of any type capable of storing information accessible by the processor, including computing device readable media or other media that stores data that can be read with the aid of an electronic device, such as a hard drive, memory card, ROM, RAM, DVD or other optical disk, and other writable and read-only memory. The systems and methods can include different combinations of the foregoing, whereby different portions of the instructions and data are stored on different types of media.
[0029] Data 116 may be retrieved, stored, or modified by processor 110 according to instructions 114. For example, data may be stored in a computing device register, in a relational database as a table with multiple different fields and records, in an XML document, or in a flat file, although the claimed subject matter is not limited to any particular data structure. The data may also be formatted in any computing device readable format.
[0030] Instructions 114 may be a collection of any instructions to be executed by a processor directly (such as machine code) or indirectly (such as a script). For example, instructions may be stored as computing device code on a computing device readable medium. In this regard, the terms "instructions" and "programs" may be used interchangeably herein. Instructions may be stored in an object code format for direct processing by a processor, or in any other computing device language, including scripts or collections of independent source code modules that are interpreted on demand or pre-compiled. The functions, methods, and routines of instructions are explained in more detail below.
[0031] In some embodiments, the tracking system 100 may also include a central server, such as one or more server computing devices 108 accessible by the one or more processors 110 of the reader 106. In some embodiments, one or more tracking devices in the tracking system 100, such as the tracking tags 104 and the anchor beacon 105, may be configured to obtain data and communicate the data directly to the server computing device 108. The server computing device 108 may include one or more processors 120, a memory 122, and other components typically found in general-purpose computing devices. The one or more processors 120 may be of the same or similar type as the one or more processors 110, and the memory 122 may be of the same or similar type as the memory 112. The memory 122 stores information accessible by the one or more processors 120, including instructions 124 and data 126 that may be executed or otherwise used by the processor 120. The data 126 and the instructions 124 may be of the same or similar type as the data 116 and the instructions 114, respectively. The server computing device includes a communication module 128 that may be configured to communicate with the communication modules 118 of one or more readers 106, and with the anchor beacon 105 and / or tracking tag 104, according to the protocol used by these devices. As with the communication module 118, the communication module 128 may include separate receiver and transmitter submodules, or an integrated transceiver.
[0032] After detecting the signals of one or more tracking tags 102 or 104 and one or more anchor beacons 105, the reader 106 can use the communication module 118 to send data from the tracking tags and anchor beacons to the server computing device 108 through an existing connection or through a network. The data can be received continuously in a series of payloads (e.g., data packets), at one or more set intervals, or temporarily whenever a tracking tag transmits. Therefore, when there are multiple tracking tags and / or anchor beacons, the data is effectively received as multiple separate data streams. A given payload (which may include one or more data packets) may include measurements taken at one or more time intervals, each of which may have a corresponding timestamp. In one scenario, the reader 106 may include a transceiver including both a receiver and a transmitter, which is configured to receive signals from the tags 102 and 104 and the anchor beacon 105, and also send and receive information with the server computing device 108.
[0033] The server computing device 108 may be configured to track characteristics of the tracking tag for one or more alerts based on a plurality of conditions. The plurality of conditions may include at least one condition for each characteristic, such as a minimum value, a maximum value, a threshold value, a duration, and / or a geo-fence. The conditions may be predetermined or set based on user input. For example, a first alert may be set when (1) the temperature is greater than a threshold temperature (e.g., 0°C to 10°C) for 30 minutes and (2) the tracking device is in travel, which may indicate an overheating of a cooling package or storage compartment. A second alert may be set when (1) no motion is detected within 10 minutes, (2) 2 of 3 locations are in a geo-fence, and (3) the tracking device is in travel, which may indicate that the package is out for delivery. A third alert may be set when (1) a threshold amount of light is detected from inside the package and (2) the tracking device is in travel, which may indicate accidental opening or tampering of the package. A fourth alarm may be set when (1) a threshold amount of light is detected from inside the package and (2) 2 of the 3 locations are within the destination geofence, which may indicate that the package was opened after delivery or receipt. Many other alarm conditions and tracking scenarios are possible, and the above examples are not intended to be limiting.
[0034] Tracking system 100 may optionally include an application that can be installed on one or more client computing devices. Using the application, the client computing device can access data from reader 106 and / or central server 108 through a network and corresponding communication modules of the reader and / or central server.
[0035] 2 and 3 are schematic and functional diagrams, respectively, of an example system 200 including a plurality of client computing devices 220, 230, 240 and a storage system 250 connected via a network 260. The system 200 also includes a tracking system 100 including tracking tags 102, 104, anchor beacons 105 and readers 106, and a server computing device 108. Although only a few tags, anchor beacons, and computing devices are depicted for simplicity, a typical system may include significantly more tags, anchor beacons, and computing devices.
[0036] Using a client computing device, a user (such as user 222, 232, or 242) can view the location data on a display (such as display 224, 234, 244 of the corresponding computing device 220, 230, 240). As shown in FIG3, each client computing device 220, 230, 240 can be a personal computing device intended for use by the corresponding user and has all components commonly used in conjunction with a personal computing device, including one or more processors (central processing units (CPUs)), memory (e.g., RAM and internal hard drives) to store data and instructions, a display such as display 224, 234, 244 (e.g., a monitor with a screen, touch screen, head-mounted display, smart watch display, projector, television, or other device operable to display information), and user input devices 226, 236, 246 (e.g., one or more of a mouse, keyboard, touch screen, and / or microphone). The client computing device may also include speakers, a network interface device, and all components for connecting these elements to each other.
[0037] Although client computing devices 220, 230, and 240 may each comprise a full-size personal computing device, they may alternatively comprise a mobile computing device capable of wirelessly exchanging data with a server over a network such as the Internet. By way of example only, client computing device 220 may be a mobile phone or device such as a wireless-enabled PDA, a tablet PC, a wearable computing device or system (e.g., a smart watch or head-mounted display, or a netbook capable of obtaining information via the Internet or other network). As examples, a user may input information using a small keyboard, a keypad, a microphone, using visual signals (gestures) with a camera or other sensor, or a touch screen.
[0038] FIG. 4A shows an example 400 of a system with multiple tracking tags arranged in various locations of a building (e.g., a hospital). In this example, there may be multiple rooms 402, such as patient rooms, along one side of a corridor 404. There is a storage room 406 on the opposite side of the corridor 404, such as for accommodating equipment or supplies, and another room 408, which may be a conference room, a common area, a rehabilitation facility, etc. One or more anchor beacons 410 may be located in each room including the corridor. Each anchor beacon 410 is configured to transmit a beacon signal 412 (e.g., an RF signal in a selected frequency band according to a specific communication protocol). As an example, the beacon signal 412 may be a Bluetooth™ or BLE signal that is transmitted periodically (such as every few seconds, every few minutes, or more or less frequently). Alternatively, a signal may be transmitted when a specific condition or event has occurred (such as when a threshold temperature and / or humidity has been detected, or when a signal from one or more reader devices is detected). Although the beacon signal 412 may appear to be directional, this is not necessarily the case, and the signal may be sent omnidirectionally, for example, from an anchor beacon 410 located on a ceiling, a pillar, or a floor. In some embodiments, the anchor beacon 410 may be configured to transmit an RF signal with information associated with its environment (e.g., temperature, humidity, etc.).
[0039] In addition to anchor beacons 410, there may be asset tags 414 on various items (e.g., a box of supplies as shown in storage room 406 or a wheelchair as shown in room 402A). Each asset is also configured to transmit an RF signal with information associated with that asset (e.g., temperature, motion information, item details, and / or other detectable characteristics of a tracking device or its environment) in the manner described above. Readers 416 may be found at various locations in the building, such as in patient rooms, storage rooms, hallways, or other locations. Note that even when transmitting omnidirectionally, the signal from a given anchor beacon or asset tag may be attenuated in a non-uniform manner due to the presence of obstacles such as walls, furniture, floors / ceilings, equipment, etc.
[0040] FIG. 4B shows another example 420 of a system with multiple anchor beacons positioned along different aisles in a warehouse setting. In this example, there are multiple aisles 422A-422D, but there may be more (or fewer) aisles, and the aisles may be arranged in other configurations than those shown. Here, anchor beacons 424 are located in different places in the aisles, such as along aisle end caps, along the ceiling (or floor), in shelves, storage cabinets, cabinets, or other places along the aisles, etc. Similar to FIG. 4A, tracking tags 426 are placed on or otherwise associated with different assets, such as equipped pallets or forklifts that retry items from their locations in the warehouse. As described above, anchor beacons and asset tracking tags are configured to send signals that can be detected by one or more readers 428.
[0041] Example Method
[0042] In addition to the aspects described above and shown in the figures, various operations will now be described.It should be understood that the following operations do not have to be performed in the exact order described below.
[0043] According to one aspect of the present technology, a system is configured to determine the location of an item with a tracking tag (e.g., tag 102 as shown in FIG. 1B ). In order to track the items, the system may need to track the location of the tag on each item, on a package containing multiple items, on a pallet storing multiple packages, and the like. As discussed herein, the system uses beacon transmissions received from one or more tracking tags 104 and one or more anchor beacons 105 for location determination, which are detected by one or more readers 106. Since the location of the anchor beacons 105 is fixed and known within the system, the reader 106 or the server computing device 108 can utilize the anchor beacons for location determination. In an embodiment where the reader 106 is mobile, the location of the reader can be determined based on transmissions from one or more of the anchor beacons 105. Then, knowing the location of the reader, the system can easily identify where different assets are located via signals received by the reader from corresponding asset tracking tags. This can occur in indoor environments, such as warehouses, trailers of freight trucks, rooms in hospitals, and the like. However, in other cases, detection can occur outdoors or in partially enclosed structures.
[0044] In one example, each beacon tracking tag 104 and anchor beacon 105 transmits a beacon signal or information signal at regular or defined intervals. The interval may be every few seconds, every few minutes, or more or less. The beacon signal transmission may be received by one or more readers 106 of the system. The reader may be stationary or mobile. The tracking tag transmission includes data such as a tracking tag identifier or other identification information and the signal strength (e.g., initial signal strength or transmit power) when transmitted by the tracking tag. The identifier or other identification information is specific to each tracking tag (such as a unique equipment serial number (ESN) or a mobile equipment identifier (MEID) number), thereby allowing identification of each individual tracking tag within the system. Similarly, the anchor beacon transmission includes data such as an anchor beacon identifier or identification information and the signal strength (e.g., initial signal strength or transmit power) when transmitted by the anchor beacon. The identifier or identification information is specific to each anchor beacon (e.g., ESN or MEID number), allowing identification of each individual anchor beacon within the system. Additionally, because the location of the anchor beacon within the system is fixed and known, the identifier or identification information allows the system to identify the location of the anchor beacon associated with each anchor beacon transmission.
[0045] Upon receiving a beacon signal transmission from a tracking tag or anchor beacon, the reader may timestamp the signal (since the transmission of the beacon (e.g., one or more data packets) may not include any transmission timestamp) and detect the received signal strength. The timestamp corresponds to the time at which the signal was received at the reader, and the received signal strength is the power level at which the signal was received at the reader. In one scenario, the reader may process the information locally, but in other scenarios, the reader transmits the signal information to another device, such as a central server. The reader transmission includes data such as an identifier associated with the tracking tag or anchor beacon that transmitted each beacon, the initial signal strength, a timestamp, and the detected received signal strength from the transmissions received from both the anchor beacon and the tracking tag. The reader may also transmit an identifier or other identification information associated with the reader. When a signal is received, the reader may record an estimate of its own location. Alternatively or additionally, other environmental information (e.g., temperature, humidity, or changes thereto) may be recorded when a signal is received from a tracking tag. The environmental information obtained relates to the conditions of the surrounding or ambient environment from the reader (e.g., the environment of the part of the room or warehouse that the reader is currently located in). All of this information can be sent to a central server. In some embodiments, the reader is stationary and may or may not record or send this additional information (e.g., an estimate of its own location, environmental information from its surrounding environment).
[0046] The central server processes the data from the reader to first perform a position determination for the reader (or the reader may process the data locally). In one embodiment, the central server may do so by, for example, calculating the distance between the anchor beacon and the reader based on the received signal strength (and / or the difference between the received signal strength relative to its initial signal strength) over at least one time step, where the distance is a function of the received signal strength. The central server may utilize data from multiple readers containing the same beacon tracking tag identifier (i.e., corresponding to the same tracking tag and / or associated item). The central server may repeat the distance calculation for the received signal strength at at least one timestamp received from the multiple readers. The central server may then perform a position determination based on the calculated relative distance between each reader and the beacon tracking tag.
[0047] In another embodiment, the central server may perform a position determination of the reader based on a comparison of the received signal strength with calibration data. The calibration data contains previously calculated estimated received signal strength values corresponding to locations within the operating range of the system relative to one or more anchor beacons of the system. The estimated received signal value may be determined by, for example, calculating an estimated received signal strength value based on the distance between the anchor beacon and the location, wherein the estimated received signal strength value is a function of the distance and the anchor beacon location is known. Additionally, the calibration data may include and take into account environmental information (e.g., temperature, humidity, etc.) and a map of the operating area of the system. The calibration data may be used to simulate different types of environments in order to estimate the signal strength in each room. In some embodiments, the central server may take into account environmental information by comparing information received from tracking tags, readers, or both with known environmental conditions in the operating area of the system, and determine locations within the operating area of the system where the information received is consistent with the known conditions. The system may assign a higher probability (e.g., increase the probability value) that the tag and / or reader is at a determined location based on the consistency of the environmental conditions. Such a determination may additionally be used for room or floor location determination discussed in more detail below.
[0048] In some embodiments, additional system calibration can be performed within the operating range of the system. For example, mobile readers and asset tracking tags can be moved throughout the operating range and communicate with stationary anchor beacons and readers, allowing fine-tuning of calibration data. In one example, calibration within the operating range can allow the calibration data to take into account objects and obstacles within the system (e.g., floors, walls, windows, and / or objects within a room). In another example, calibration within the operating range allows electromagnetic (EM) signatures at different locations to be measured. The EM signature of a location may cause the received beacon signal to differ from the previously estimated signal strength contained in the calibration data. Calibration completed within the operating range allows the calibration data to take into account the EM signatures present within the operating range and to update the calibration data using the EM signatures present within the operating range. Such calibration is particularly advantageous in locations with stationary or periodic equipment that generates EM radiation. For example, in a hospital environment, equipment suitable for performing computed tomography (CT) scans may generate a large amount of EM radiation when in use. Similarly, equipment used in radiation oncology facilities such as linear accelerators and remote afterloaders may also generate EM radiation that affects the received signal strength. In some embodiments, such calibration may occur both while the equipment is operating and while it is not operating.
[0049] After receiving data including a first received signal strength from a given anchor beacon from a first reader, the central server may compare the first received signal strength with the calibration data. Based on the comparison, the central server determines the distance between the first reader and the given anchor beacon at a first timestamp. The central server may repeat the comparison of the second received signal strength from the second anchor beacon at the first timestamp corresponding to the same reader. The central server may repeat the comparison with additional received signal strengths from additional anchor beacons at the first timestamp corresponding to the same reader, such as according to a multi-lateration process. For example, the multi-lateration process may include location-specific information, such as a location map, including, for example, obstacles and anchor beacon locations, and characteristics of each room included in the location map. Characteristics may include measured values, such as temperature. In some cases, the multi-lateration process may utilize a probabilistic method described in more detail below. The central server may then perform a location determination with increased accuracy based on the comparison between each anchor beacon and the reader. The comparison may be repeated at additional timestamps.
[0050] In one aspect, the system can approximate the log-likelihood of a given reader being in each "cell" of a grid that can be virtually imposed on that location (e.g., one floor of a building). This can employ a Bayesian approach based on a linear mapping of received signal strength to distance. Refinement can be via position filtering so that the location of the beacon is probabilistically related to its previously estimated location (e.g., using a Kalman filter). This enables enhanced location determination of the reader, and ultimately tracking of tags associated with various other objects (assets).
[0051] On the other hand, beacon-reader calibration allows the system to build a probabilistic model around the error tolerance of noisy received signal strength readings (from beacon to reader). Receiver filtering can be performed, which allows the system to combat noisy signals by dynamically weighting / removing readings outside the expected range. Then, an iterative Gauss-Newton method for nonlinear least squares (NLLS) can be used to find the best position prediction as a function of the remaining readings from the reader.
[0052] In this method, a priori information about the device based on manufacturer tolerances can be used to perform Bayesian estimation, where the likelihood is identified via data collected off-site. Bayesian estimation can also incorporate and consider possible transmissions through walls, floors, and other obstacles that may be present within the operating range of the system. Information about these obstacles can be used for estimation. This leads to a posterior distribution (e.g., p (distance | observed rssi), the relationship between the noisy received signal strength (RSSI) reading and the distance of each receiver (reader)). Receiver (reader) dynamic filtering can involve median-mean filtering across time windows for each reader-anchor beacon pair to filter out noisy values. It can also include threshold processing for known / acceptable anchor beacon-reader distance measurements. For example, each time the inference is run, the system can filter out distance measurements that are unrealistic and / or vary greatly in time (e.g., 100 meters from one measurement to the next in 0.5 seconds). This can provide another layer of robustness against noise (e.g., due to temporarily moving forklifts, people walking around with electronic devices, etc.).
[0053] The NLLS method can be framed as an optimization task, where the system seeks to minimize the error over all observed data points. For example:
[0054]
[0055] where rssi_distance is the noise distance from the reader to the anchor beacon, are the static (known) coordinates of the anchor beacon (or other receiver during testing), and are the unknown reader coordinates. The system finds x that minimizes the above error. The problem can be linearized so that a Gauss-Newton iterative method can be employed by Taylor series expansion of the error term. The process can be iterated until convergence is reached (e.g., the norm of the difference between successive estimates of x is below a selected threshold) or a maximum number of iterations is reached. The maximum number of iterations can be selected based on the trade-off between activity and accuracy required by each client (e.g., room-level accuracy versus aisle or shelf-level accuracy).
[0056] According to one aspect, location tracking can be performed as follows. In a single prediction window (e.g., between 1-20 minutes), if the number of packets received for a single transmission rate (e.g., packets per transmission) is less than a threshold such as a minimum sample count (the minimum number of packets received to perform an evaluation, such as at least 3-7 packets), the received signal strength value for that transmission rate is ignored. If it is greater than the minimum sample count, the system aggregates the RSSI values using an aggregation function to generate a single smoothed RSSI value. The aggregation function can be, for example, a MAX function that returns the maximum value from a set of RSSI values.
[0057] An algorithm includes the following operations. First, data corresponding to a given prediction window for a single beacon is obtained. The RSSI values for each transmission rate are then aggregated separately using the method described above. The aggregated RSSI values are then used to obtain a distance estimate for a given reader to each anchor beacon. An initial estimate of the reader location is then obtained by a grid search process using distance estimates (see below). The initial estimate can then be fed into the NLLS method as a starting estimate. The NLLS method uses this initial estimate and the distance estimate to further optimize the reader location prediction.
[0058] Distance estimation can be done according to a machine learning algorithm, where the goal is to estimate the distance of the beacon from each reader using RSSI values for different transmission rates. For each transmission rate, a separate regression algorithm is trained. For example, for tx=-20, a regression model can be trained using RSSI values for the tx=-20 transmission rate, where the RSSI value is the predictor variable and the distance is the target variable. The method takes into account the priority of the transmission rate. For example, the following is an example priority order: -20>-16>-12>-8>-4>0>2>4. The above priority order indicates that the regression model for tx=-20 is better than the regression model for tx=-16, and so on. The basic principle of such a priority order is that the spread of RSSI for tx=-20 for a given distance interval can be narrower than that for RSSI for tx=4. In a given prediction window, only one regression model for a single tx can be used to estimate the distance. The regression model can be selected based on the above priority. Therefore, in a given prediction window, if an aggregate RSSI value of tx=-20 is available, the regression model for tx=-20 will be used to make the prediction, otherwise the system tries to use the regression model for tx=-16, and so on.
[0059] Once the system has estimated the distance from the reader to the anchor beacon, the next stage is to find the point in continuous space that best fits these distance estimates. For a grid search, the system can divide the 3D space into 1m × 1m × 1m cubes (or larger or smaller cubes) based on the size of the location of interest. Each cube is represented by its centroid, and the error for each cube is calculated using equation (1) as described above.
[0060] Finally, once the locations of the various readers are determined, these locations may be stored in a database such as database 250 of FIG. 2 . As the readers and central server obtain more recent information (e.g., data packets received from anchor beacons), the locations of the readers in the database may be updated accordingly. In some cases, when a reader is first placed at a location, a user may enter its location information XY coordinates relative to the origin of the building and the height relative to the floor where the reader is located. Such XY coordinates may be converted to latitude / longitude (with or without height or other elevation information, such as floor or level).
[0061] After determining the reader location, the central server can then make a location determination for the tracking tag that sent the message (or the reader can process the data locally). The central server can make this determination in the same manner as described above in the determination of the reader location, and add the known reader location. For example, the central server can make a location determination for the tracking tag based on a comparison of the received signal strength with the calibration data. After determining the reader location, the calibration data is updated with the reader location so that the calibration data can now be used to determine the location of the tracking tag. The updated calibration data contains an estimated received signal strength value, which corresponds to the location of the reader previously determined at a given time step within the operating range of the system relative to one or more anchor beacons of the system and its location. The estimated received signal value can be determined by, for example, calculating an estimated received signal strength value based on the distance between the reader and the location, where the estimated received signal strength value is a function of the distance and the reader location is known. Additionally, the calibration data includes and takes into account information such as temperature, humidity, and a map of the operating area of the system.
[0062] After receiving data including a first received signal strength from a tracking tag from a first reader, the central server may compare the first received signal strength to the calibration data. Based on the comparison, the central server determines the distance between the tracking tag and the reader at the first timestamp. The central server may repeat the comparison with a second received signal strength from a second reader, the location of which has been determined at the first timestamp corresponding to the same reader. The central server may repeat the comparison with additional received signal strengths from additional readers, the locations of which have been determined at the first timestamp corresponding to the same tracking tag, such as according to the multilateral process detailed above. The central server may also implement Bayesian methods, including the probabilistic models, NLLS methods, etc. detailed above in the determination of the location of the tracking tag.
[0063] In some embodiments, the tracking tag location determination may only need to be room and / or floor specific. The granularity can be determined based on different factors, including the customer's choice, the type of goods or products being tracked, information about the location itself, etc. In such an embodiment, the central server only needs to determine whether the received signal strength is above a threshold. The threshold is determined as a function of signal attenuation, where the threshold represents the lowest possible received signal value for a beacon in a room on a specific floor. This room and / or floor specific determination can also be used for reader location determination. For example, if the reader receives a beacon signal from a tracking tag or anchor beacon whose received signal strength is below the threshold, the central server will determine that the reader is not in the same room and / or floor as the anchor beacon or tracking tag. Conversely, if the received signal strength is above the threshold, the central server will determine that the reader is in the same room and / or floor as the anchor beacon or tracking tag. When the signal corresponds to an anchor beacon whose room and floor location is known, the central server can determine the room and floor location of the reader based on a comparison of the received signal strength with the threshold. Once the central server determines the room and floor location of the reader, the central server can determine the room and floor location of the tracking tag in the same manner. This determination may be repeated for multiple readers and tracking tags of the system.
[0064] In addition, this room and / or floor determination can be used alone or in combination with the above-described location determination. In embodiments where the room and / or floor determination is used in combination with the above-described location determination, it can be used to further filter out unlikely locations. For example, if it is determined that the reader or tracking tag is in a particular room or floor, the central server can update the calibration data to reflect such a determination (e.g., assigning a higher probability of the reader or tag being in a particular room, 80-95% or higher), and allow for a more accurate location determination. In some embodiments, determining whether the tracking tag and reader are in the same room, on the same floor, or both can include a comparison of environmental information. For example, the central server can compare environmental information received from the tracking tag, reader, or both with known environmental conditions in the system's operating area or with environmental conditions detected by a stationary anchor beacon, and determine locations within the system's operating area where the received information is consistent with the known conditions. The system can assign a higher probability (e.g., increase the probability) that the tag and / or reader is in a determined location based on the consistency of the environmental conditions. For example, if an environmental condition detected by a tracking tag is consistent with a first reader but inconsistent with a second reader, the central server can determine that the tracking tag is not in the same room or floor as the second reader and increase the probability that the tracking tag is in the same room or floor as the first reader. For example, a condition can be determined to be consistent when the values of the condition are within approximately 5%-15% of each other, or for temperature, within 2°-4° of each other. According to another example, consistency of the condition can be determined if the difference between the values is below a threshold difference associated with a given condition. The same process can be applied to the reader and the first anchor beacon and the second anchor beacon. This determination is particularly advantageous in operating systems with temperature controlled portions (e.g., refrigerated trucks, food storage facilities).
[0065] In some embodiments, the central server can use proximity data in location determination, including determining whether the tracking tag and the reader are in the same room, on the same floor, or both. Proximity data can be generated by a reader or tracking tag that interacts with a mobile or stationary device (e.g., a laptop computer, a desktop computer, a stationary medical device, etc.) known to be in a specific room or floor. Proximity data can be generated when the tracking tag or reader is within a specific distance (e.g., 1-4 meters, or more or less) of the device. In some embodiments, proximity data can be generated as a result of the interaction of one or more ultrasonic speakers and one or more microphones of the tracking tag and / or reader with one or more ultrasonic speakers and one or more microphones of the device. The range of the ultrasonic speaker and microphone may be limited to a specific room because ultrasonic waves are significantly attenuated, but the walls and / or floors of the room allow verification of the positioning of the tracking tag and / or reader within the same room and floor.
[0066] In some embodiments, proximity data can be used in conjunction with the above methods. For example, if a tracking tag or reader is determined to be in a particular room and / or floor based on the proximity data, the multilateral method is updated with this determination and its calculation area is limited to the particular room and / or floor. In one case, if partial multilateral method is performed, which indicates that a signal should be present in a room where there is no signal, the target object is actually at another location or there is an obstacle in the room that prevents the target object from being detected. If other targets are found in this case, the probability that the target object is in the room can be reduced.
[0067] In view of the above, FIG. 5 illustrates an exemplary method 500 for locating an asset tracking tag. At box 502, the method includes detecting, by a reader device, one or more beacon signals from at least one anchor beacon, each of the detected beacon signals including anchor beacon identification information, each of the detected beacon signals being associated with a received signal strength when received at the reader device. The anchor beacon identification information is associated with a physical location of the anchor beacon. At box 504, the method includes estimating, by one or more processors, a location of the reader device based on the received signal strength of the one or more beacon signals and the physical location of at least one anchor beacon from the anchor beacon identification information. At box 506, the method includes detecting, by a reader device, one or more signals from an asset tracking tag. And at box 508, the method includes identifying, by one or more processors, a location of the asset tracking tag based on the estimated location of the reader device and the signal strength information of each of the one or more detected signals from the asset tracking tag.
[0068] Unless otherwise stated, the foregoing alternative examples are not mutually exclusive, but may be implemented in various combinations to achieve unique advantages. Since these and other variations and combinations of the features discussed above can be utilized without departing from the subject matter defined by the claims, the foregoing description of the embodiments should be made by way of illustration rather than by way of limitation of the subject matter defined by the claims. In addition, the provision of the examples described herein and the terms "such as", "including", etc. should not be interpreted as limiting the subject matter of the claims to specific examples; on the contrary, these examples are intended to illustrate only one of many possible embodiments. In addition, the same reference numerals in different figures may identify the same or similar elements.
Claims
1. A method for locating an asset tracking tag, the method comprising: detecting, by the reader device, one or more beacon signals from at least one anchor beacon, each of the detected beacon signals comprising anchor beacon identification information, each of the detected beacon signals being associated with a received signal strength when received at the reader device, the anchor beacon identification information being associated with a physical location of the anchor beacon; estimating, by the one or more processors, a location of the reader device based on received signal strengths of the one or more beacon signals and a physical location of the at least one anchor beacon from the anchor beacon identification information; detecting, by a reader device, one or more signals from the asset tracking tag; as well as A location of the asset tracking tag is identified, by the one or more processors, based on the estimated location of the reader device and signal strength information for each of the one or more detected signals from the asset tracking tag.
2. The method according to claim 1, wherein: Estimating the location of the reader device includes comparing a received signal strength of one of the one or more beacon signals and a physical location of the at least one anchor beacon to stored calibration data.
3. The method according to claim 2, wherein: Comparing the received signal strength of one of the one or more beacon signals and the physical location of the at least one anchor beacon to the stored calibration data includes performing a second comparison for another received signal strength from a different anchor beacon.
4. The method according to claim 2, wherein: The calibration data includes at least one of environmental information of the operating area or electromagnetic signature information of the operating area.
5. The method according to claim 1, further comprising: obtaining, by the reader device, reader environment information associated with a surrounding environment of the reader device; Each of the detected beacon signals further includes anchor beacon environment information associated with the surrounding environment of the at least one anchor beacon.
6. The method according to claim 5, wherein: Estimating the location of the reader device includes comparing the reader environment information to the anchor beacon environment information.
7. The method according to claim 5, wherein: The one or more signals from the asset tracking tag include asset tracking tag environmental information associated with a surrounding environment of the asset tracking tag.
8. The method according to claim 7, wherein: Identifying the location of the asset tracking tag is also based on the asset tag context information and the reader context information.
9. The method according to claim 8, wherein: Identifying the location of the asset tracking tag includes identifying at least one of a room or a floor where the asset tracking tag is located.
10. The method according to claim 8, wherein: Identifying at least one of the room or the floor of the asset tracking tag includes determining whether the asset tag context information and the reader context information are consistent.
11. A system configured to locate at least one asset tracking tag, the system comprising: at least one anchor beacon; at least one reader device; a memory configured to store location information for one or more of the at least one anchor beacon, the at least one reader device, or the at least one asset tracking tag; as well as One or more processors operably coupled to the memory, the one or more processors configured to: obtaining one or more beacon signals from the at least one anchor beacon, each of the obtained beacon signals comprising anchor beacon identification information, each of the obtained beacon signals being associated with a received signal strength when received at the at least one reader device, the anchor beacon identification information being associated with a physical location of the anchor beacon; estimating a location of the at least one reader device based on received signal strengths of the one or more beacon signals and a physical location of the at least one anchor beacon from the anchor beacon identification information; obtaining one or more signals from the at least one asset tracking tag; as well as A location of the at least one asset tracking tag is identified, by the one or more processors, based on the estimated location of the at least one reader device and signal strength information for each of the one or more obtained signals from the at least one asset tracking tag.
12. The system according to claim 11, wherein: The at least one anchor beacon is stationary at a physical location.
13. The system according to claim 11, wherein: The one or more processors are one or more processors of the at least one reader device.
14. The system of claim 11, further comprising: Central server; The one or more processors are one or more processors of a central server.
15. The system of claim 14, wherein: The central server is configured to transmit at least one of the location of the at least one reader device or the position of the at least one asset tracking tag to the client device.
16. The system according to claim 11, wherein: The at least one anchor beacon is a plurality of anchor beacons, the at least one reader device is a plurality of reader devices, and the at least one asset tracking tag is a plurality of asset tracking tags.
17. The system of claim 16, wherein: Each of the plurality of anchor beacons is located in a different room or floor within the operating area of the system.
18. The system of claim 11, wherein: The memory is further configured to store calibration data, and the estimation of the location of the reader device comprises a comparison of a received signal strength of one of the one or more beacon signals and a physical location of the at least one anchor beacon with the stored calibration data.
19. The system of claim 11, wherein: The at least one anchor beacon, the at least one reader device, and the at least one asset tracking tag are configured to collect environmental information, and an estimate of the location of the reader device includes a comparison of the environmental information of the at least one reader device with the environmental information of the at least one anchor beacon.
20. The system of claim 11, wherein: The at least one reader device is stationary or mobile.
