RF point of sale and delivery method and system using communication with remote computer and having features to read a large number of RF tags
RE047599 ยท 2019-09-10
Assignee
Inventors
- Michael Dearing (Spring Green, WI, US)
- Gediminas Vidugiris (Fitchburg, WI, US)
- William A. Linton (Madison, WI, US)
- John Linton (San Carlos, CA, US)
- Julia E. Krueger (Deerfield, WI, US)
Cpc classification
G06Q20/18
PHYSICS
F25D2700/08
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
G06Q20/204
PHYSICS
G06Q10/08
PHYSICS
G07F9/026
PHYSICS
G06Q20/208
PHYSICS
G06Q10/087
PHYSICS
F25D2500/06
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
G06K7/10336
PHYSICS
G07F9/02
PHYSICS
G07G1/0045
PHYSICS
International classification
G06K7/10
PHYSICS
G07F9/02
PHYSICS
Abstract
A method and system for providing point-of-sale and point-of-delivery and/or distribution of products in a restricted access unit near the customer. The method and system utilize products equipped with radio frequency tags and reduce the effects of energy sharing, shadowing, and nulls. In one embodiment, a plurality of RF tagged products are placed within a refrigerator, cabinet, or other micro-warehouse that has a door or opening that can detect access to the micro-warehouse. .[.In one embodiment, one or more antennas are positioned within the door. Each antenna may have a transmission line of sight and be configured to emit a signal at predefined frequencies. Each antenna generates an electromagnetic field within the micro-warehouse. In one embodiment, the products are positioned in one or more bins, compartments, or similar devices located within the micro-warehouse such that at least two of the plurality of products are spaced a distance from each other to reduce energy sharing. The electromagnetic field is moved or altered within the micro-warehouse through the use of reflectors, devices that move the antennas, or other mechanisms..].
Claims
.[.1. An RFID cabinet for monitoring items having an RFID tag, the cabinet comprising: a cabinet comprising a back, a first side, a second side, a third side, a bottom and at least one locking door; an RFID detector for monitoring each item placed within the cabinet and for identifying the data embedded on an RFID tag located on items placed within the cabinet; and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the locking door, wherein the computer is configured to receive an input that identifies a user, and wherein the computer is configured to at a plurality of times record data read from the RFID tags by the RFID detector..].
.[.2. The RFID cabinet of claim 1, wherein the cabinet is manufactured of a material so that an RFID field produced by the RFID detector is within the interior of the RFID cabinet..].
.[.3. The RFID cabinet of claim 1, wherein the RFID detector scans each item placed within the cabinet, such that the RFID cabinet may determine if an item is removed from the interior of the RFID cabinet..].
.[.4. The RFID cabinet of claim 1, wherein the computer has a connection chosen from a group comprising Internet and wireless..].
.[.5. The RFID cabinet of claim 1, wherein the input that identifies a user is chosen from a group comprising a password, an RFID badge, voice recognition, a mag card, or biometrics..].
.[.6. The RFID cabinet of claim 1, wherein the RFID detecting device is coupled to a network, through the computer, wherein a database provides inventory of each of the items placed within the cabinet..].
.[.7. The RFID cabinet of claim 6, wherein an inventory control module software enables the RFID detecting device to scan items in the cabinet and to generate a message regarding items taken..].
.[.8. The RFID cabinet of claim 1, wherein the means for accessing the RFID cabinet comprises an RFID badge, wherein the locking door of the RFID cabinet unlocks in response to the RFID badge coming into proximity..].
.[.9. The RFID cabinet of claim 1, wherein there is a strong enough field within the cabinet such that all items can be read using the RFID detector..].
.[.10. A method for removing items having an RFID tag from an RFID cabinet, the method comprising: providing a cabinet having an RFID detector for monitoring each item placed within the cabinet and for identifying the data embedded on an RFID tag located on each item placed within the cabinet and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the locking door; reading an input that identifies a user; receiving the input that identifies a user at the computer; unlocking the door to the RFID cabinet if the user is allowed access; and at a plurality of times scanning all the items in the RFID cabinet to determine if any items have been removed by the user..].
.[.11. The method of claim 10, further comprising disabling the RFID detector when the door to the RFID cabinet is open..].
.[.12. A method for scanning items having an RFID tag in an RFID cabinet, the method comprising: providing a cabinet having an RFID detector for monitoring each item placed within the cabinet and for identifying the data embedded on an RFID tag located on each item placed within the cabinet and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the locking door, and wherein the computer is configured to receive an input that identifies a user allows access to the RFID cabinet; reading the RFID tag associated with an item using an RFID field from the RFID detector; and recording the resulting information in a database..].
.[.13. The method of claim 12, further comprising sounding an alert if certain conditions programmed within the memory of the computer are satisfied..].
.[.14. An RFID cabinet for monitoring items having an RFID tag, the cabinet comprising: a cabinet comprising a back, a first side, a second side, a top, a bottom and at least one locking front door; an RFID detector for monitoring each item placed within the cabinet and for identifying the data embedded on an RFID tag located on items placed within the cabinet, the RFID detector located within the interior of the RFID cabinet; and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the locking front door, wherein the computer is configured to receive an input that identifies a user, and wherein the computer is configured to periodically record data read from the RFID tags by the RFID detector..].
.[.15. The RFID cabinet of claim 14, wherein the cabinet is manufactured of a material that confines an RFID field produced by the RFID detector within the interior of the RFID cabinet..].
.[.16. The RFID cabinet of claim 14, wherein the RFID detector scans each item placed within the cabinet in a time period, such that the RFID cabinet may determine if an item is removed from the interior of the RFID cabinet..].
.[.17. The RFID cabinet of claim 16, wherein the time period is a predetermined amount of time..].
.[.18. The RFID cabinet of claim 14, wherein the computer has a connection chosen from a group comprising Internet and wireless..].
.[.19. The RFID cabinet of claim 14, wherein the input that identifies a user is chosen from a group comprising a password, an RFID badge, a bar code, voice recognition, a mag card, or biometrics..].
.[.20. The RFID cabinet of claim 14, wherein the RFID detecting device is coupled to a network, through the computer, wherein a database provides inventory of each of the items placed within the cabinet..].
.[.21. The RFID cabinet of claim 20, wherein an inventory control module software enables the RFID detecting device to scan items in the cabinet and to generate a message regarding items taken..].
.[.22. The RFID cabinet of claim 14, wherein the means for accessing the RFID cabinet comprises an RFID badge, wherein the locking front door of the RFID cabinet unlocks in response to the RFID badge coming into proximity..].
.[.23. The RFID cabinet of claim 14, wherein the material provides a shield sufficient to allow a strong enough field within the cabinet such that all items can be read using the RFID detector..].
.[.24. A method for removing items having an RFID tag from an RFID cabinet, the method comprising: providing a cabinet having an RFID detector for monitoring each item placed within the cabinet and for identifying the data embedded on an RFID tag located on each item placed within the cabinet, the RFID detector located within the interior of the RFID cabinet and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the locking front door; reading an input that identifies a user; receiving the input that identifies a user at the computer; unlocking the door to the RFID cabinet if the user is allowed access; and at least periodically scanning all the items in the RFID cabinet to determine if any items have been removed by the user..].
.[.25. The method of claim 24, further comprising disabling the RFID detector when the door to the RFID cabinet is open..].
.[.26. A method for scanning items having an RFID tag in an RFID cabinet, the method comprising: providing a cabinet having an RFID detector monitoring each item placed within the cabinet and for identifying the data embedded on an RFID tag located on each item placed within the cabinet, the RFID detector located within the interior of the RFID cabinet and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the locking front door, and wherein the computer is configured to receive an input that identifies a user allows access to the RFID cabinet; reading the RFID tag associated with an item using an RFID field from the RFID detector; and recording the resulting information in a database..].
.[.27. The method of claim 26, further comprising sounding an alert if certain conditions programmed within the memory of the computer are satisfied..].
.Iadd.28. A radio frequency identification (RFID) cabinet for monitoring items having an RFID tag, the RFID cabinet comprising: a back, a first side, a second side, a third side, a bottom and at least one lockable door; an RFID detector for monitoring each item placed within the cabinet and for reading data embedded on an RFID tag located on the items placed within the cabinet; and a computer coupled to the RFID cabinet, wherein the computer is configured to control unlocking and locking of the lockable door, wherein the computer is configured to receive an input that identifies a user, and wherein the computer is configured to at more than one time scan the cabinet and record data read from the RFID tags by the RFID detector..Iaddend.
.Iadd.29. The RFID cabinet of claim 28, wherein the RFID detector is configured to scan any item placed within the cabinet, such that the RFID cabinet may determine if an item is removed from the interior of the RFID cabinet..Iaddend.
.Iadd.30. The RFID cabinet of claim 28, wherein the computer has a connection chosen from a group comprising Internet and wireless..Iaddend.
.Iadd.31. The RFID cabinet of claim 28, wherein a RFID detecting device is coupled to a network, through the computer, wherein a database provides inventory of each of the items placed within the cabinet..Iaddend.
.Iadd.32. The RFID cabinet of claim 31, wherein an inventory control module software is configured to enable the RFID detecting device to scan items in the cabinet and to generate a message regarding items taken..Iaddend.
.Iadd.33. The RFID cabinet of claim 28, wherein the RFID detector is configured to scan any item placed within the cabinet, such that the RFID cabinet may determine if an item is added from the interior of the RFID cabinet..Iaddend.
.Iadd.34. The RFID cabinet of claim 28, wherein the RFID detector is configured to scan each item placed within the cabinet, such that the RFID cabinet may determine an amount of time an item has been in the interior of the RFID cabinet..Iaddend.
.Iadd.35. The RFID cabinet of claim 28, wherein the RFID detector is configured to scan each item placed within the cabinet, such that the RFID cabinet may determine a temperature history for an item while in the interior of the RFID cabinet..Iaddend.
.Iadd.36. The RFID cabinet of claim 28, wherein the RFID detector is configured to scan each item placed within the cabinet, such that the RFID cabinet may determine an expiration time for an item in the RFID cabinet..Iaddend.
.Iadd.37. The RFID cabinet of claim 30, wherein the computer communicates with an enterprise computer..Iaddend.
.Iadd.38. The RFID cabinet of claim 35 wherein an enterprise computer is configured to run enterprise resource planning (ERP), customer relation management (CRM), manufacturing, and/or other business process programs..Iaddend.
.Iadd.39. The RFID cabinet of claim 28, wherein the cabinet is a refrigerator..Iaddend.
.Iadd.40. The RFID cabinet of claim 28, wherein the cabinet is a freezer..Iaddend.
.Iadd.41. A method for removing items having an radio frequency identification (RFID) tag from an RFID cabinet, the method comprising: providing a cabinet having an RFID detector for monitoring each item placed within the cabinet and for reading data embedded on an RFID tag located on each item placed within the cabinet and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the lockable door; reading an input that identifies a user; receiving the input that identifies a user at the computer; unlocking the door to the RFID cabinet if the user is allowed access; and at more than one time scanning all the items in the RFID cabinet to determine if any items have been removed by the user; wherein the scanning corresponds to closing of the lockable door..Iaddend.
.Iadd.42. A method for scanning items having an radio frequency identification (RFID) tag in an RFID cabinet, the method comprising: providing a cabinet having an RFID detector for monitoring each item placed within the cabinet and for reading data embedded on an RFID tag located on each item placed within the cabinet and a computer coupled to the RFID cabinet, wherein the computer controls unlocking and locking of the lockable door, and wherein the computer is configured to receive an input that identifies a user allowed access to the RFID cabinet; reading the RFID tag associated with an item using an RFID field from the RFID detector; and recording the resulting information in a database wherein said information is selected from identity of items removed from the RFID cabinet, identity of items added to the RFID cabinet, amount of time an item has been in the interior of the RFID cabinet, a temperature history of an item while in the interior of the RFID cabinet and expiration of an item in the RFID cabinet..Iaddend.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) In the drawings:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
DETAILED DESCRIPTION
(26) Before embodiments of the invention are explained in detail, it is to be understood that the invention is not limited in its application to the details of the construction and the arrangements of the components set forth in the following description or illustrated in the drawings. The invention is capable of still other embodiments and of being practiced or being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting.
(27)
(28) As best seen by reference to
(29) The registration module 31 (
(30) The order history module 32 provides a history of orders for each MW 36 and product preferences for each MW 36. The account set-up module provides administrative screens for payment authorization, user information, and similar information. The stock request module 34 controls inventory replenishment based on usage and on specific customer requests and similar information.
(31) The server 27 also accesses a commerce engine 35 that uses information received from a client (or MW) to generate orders that are delivered to a fulfillment infrastructure (not shown). The fulfillment infrastructure produces products to be distributed using the system and method of the invention. The information may be used by a manufacturing infrastructure and marketing, customer relation management (CRM), billing, and other systems and functions (all not shown). For example, the invention may be used in the distribution of life science research products such as enzymes, assays, cloning vectors, competent cells, and the like. (Of course, a wide variety of non-biological products could be distributed using the invention.) The information provided by the server 27 is used in the manufacturing infrastructure to ensure proper production of products according to the demand for such products. As noted above, the server 27 may be coupled to a plurality of clients or MWs. An exemplary client in the form of the MW 36 is shown in
(32) The MW 36 may take the form of a refrigerated cabinet, a freezer, or other storage container. A secured storeroom, similar location, or other defined area could also be outfitted with a client controller and other components, as described herein, and be used to store products. In the embodiment shown, the MW 36 includes a door 37. While it is preferred, it is not required that the MW 36 have a door. Devices (such as light curtains) that sense when access to the interior of the MW is being attempted may also be used. As noted, in another embodiment, the system may utilize a defined area to enclose the tagged products rather than a cabinet. The defined area uses an access point (not shown) to serve as its entryway. The products within the area are fitted with identification tags and specifically positioned in the area to be read by a RF inventory interrogator (such as a controller 45 and antenna array (discussed below)). Product scans begin when a sensor (such as, e.g., a proximity sensor) senses a user passing through the access point. The access point is controlled by a processor, such as the client controller 45, and is able to control doors, portals, alarms, or other mechanisms to restrict access to the area and products.
(33) As shown, the MW 36 may also include an electric actuated lock 39, a proximity sensor 40, and a user feedback or, more generally, an output device that may take the form of an audio device or light 41. Other output devices such as a voice synthesis device, a display screen, and the like may also be used. The MW 36 is configured with an antenna array 43. The antenna array 43 is coupled to the client controller 45. In one embodiment, the invention may include an antenna array with six vertically or circularly polarized antennas. The antenna array 43 is a RF receive and transmit system that communicates with transponder devices or tags (discussed in greater detail below). In one embodiment, each tag is a passive tag and powered by energy from the antenna array 43.
(34) The MW 36 may include a specialized badge or card reader 47 (generically a key reader) in the form of a magnetic card swipe device, an antenna, a fingerprint reader, or similar device. The reader 47 is coupled to the client controller 45 via a communication link 49. The MW 36 may also include internal and ambient temperature sensors 55 and 56. The temperature sensors 55 and 56 are coupled to the client controller 45 to provide temperature information to the client controller. Additional information may be provided to the client controller through optional input devices. The location of the MW 36 may be monitored by a global positioning system (GPS) device (not shown) plus inertial frame recognition for fine measurement and for interpolation between GPS satellite acquisitions. Motion and shock of transport may be monitored with an accelerometer (not shown). The voltage, current, and other characteristics of electrical supply lines may be monitored and provided to the client controller 45 by a power-line-monitoring device (also not shown). The on/off duty cycle of the current supplied to the refrigeration compressor can be used, with the internal and ambient temperatures, to indicate the relative health of the compressor. Additional input devices, such as cameras, microphones, sensors, etc., could be coupled to the client controller to monitor environmental and other conditions.
(35) A smartcard reader (not shown) may also be coupled to the controller 45. A smartcard, in addition to identifying the customer for admittance purposes, can contain a preloaded monetary equivalent that can be debited at the time of door closure for any products taken during the door open session.
(36) The client controller 45 includes software to carry out several functions that are discussed in greater detail below. If desired, the client controller 45 may be a consumer grade device, such as a Palm Pilot personal digital assistant, Packet PC device, or a personal computer, modified according to the teachings herein. Depending on the hardware used, the client controller 45 may be configured with a graphical user interface (GUT) to facilitate interaction between the system 25 and its users.
(37) The client controller 45 includes software (discussed below) which may interrogate the RF tagged products within the MW 36. The interrogation process involves sending signals from antennas and receiving signals from passive, transponder RFID tags. Preferably, interrogation is accomplished in such a way as to eliminate or reduce interference problems that are typically associated with reading RF signals from multiple devices. The system 25 could also be implemented with active tags (not shown), although presently available active tags need to be improved so as to perform in the temperatures that the embodiments of a system for distribution of life science research products are expected to operate within and at roughly the same cost and power consumption.
(38) In one embodiment of the system 25, one or more RFID access badges 75 (
(39) As best seen by reference to
(40) Once all the products 90 have been fitted with unique RFID tags 95, the products may be shipped in the carton 80 to a designated MW such as the MW 36. The carton 80 is packed according to a fulfillment request that is based on either an initial order from a customer (not shown) or MW specific business rules followed by the server 27. The carton 80 may be fitted with RFID access badge 75 or the RFID access badge 75 may be shipped separately to the location of the MW of interest. If fitted with an RFID access badge 75, the carton 80 may be shipped by a delivery service contracted to deliver the package to the MW 36. Once the carton is delivered, the recipient or user may use the RFID access badge 75 to open the door 37 of the MW 36 by passing RFID access badge 75 in front of the reader 47. Client controller 45 reads the digital signature of the RFID access badge 75 and confirms reading of the code by actuating a user feedback device such as a voice synthesis module or the light 41. Since, the server 27 provides a locally based user list to the client controller 45, the client controller 45 oversees authentication of the digital code read from the RFID access badge 75. Client controller 45 checks the authenticity of the read code by matching the code to the user list. Client controller 45 may then optionally read the temperature sensors 55 and 56 and transmit temperature information to the server 26. If used, the temperature sensors 55 and 56 are preferably read on a periodic basis, with the temperature information being transmitted to the server 26 each time the temperature is read. Client controller 45 can also be programmed to transmit temperature data if the internal temperature falls beneath or above a predetermined range. In many instances, it will be important to ensure that the temperature of the MW is within an appropriate range to store the products 90. If the temperature of the MW 36 is within an appropriate range, and the user is authenticated, the client controller 45 then actuates the lock 39 to open the door 37 (of course, the MW need not be equipped with the lock 39). If the temperature of the MW 36 is not within an appropriate range, then access to the MW 36 may be prevented by maintaining the lock 39 in a closed state. This allows a refrigeration unit (not shown) associated with the MW 36 to cool the interior space of the MW 36 to a desired temperature before ambient air is allowed into the MW 36 by opening of the door. This also provides for product 90 integrity during a power failure.
(41) Once the door 37 opens (which may be sensed by the proximity sensor 40), or access to the interior of the MW 36 is gained, a communication session between the MW 36 and server 27, which may be segmented based on appropriate events to optimize user response and network usage, begins. Having full access to the MW 36, the employee of a carrier or logistic service (such as UPS, Airborne Express, etc.) who delivered the carton 80 now proceeds to place the individual items 90 into the MW 36. Once the carton of products 80 is empty, the delivery employee then closes the door 37, and removes the carton, if necessary. The proximity sensor 40 senses the closing of the door 37. The client controller 45 senses the status of the sensor. Preferably, the lock 39 (if used) resets automatically after being unlocked for a predetermined time, for example five (5) seconds. The user has that predetermined time to open the door. Power to the antenna array 43 is disabled once the door 37 opens. When the door 37 closes or access is prohibited, a scan of the products 90 placed within the MW 36 is performed. Upon completing the scan, the client controller 45 sends a change-in-inventory message 100 to the commerce server 27. To ensure integrity of the inventory change billed to the customer, the client controller 45 employs an integrity algorithm when the MW 36 is scanned. The algorithm is based on statistical information, historical information, and other factors including RF algorithms and delay data.
(42) As will be explained further below, it was found, for one embodiment, that to accurately determine the number of tagged items in a MW 36 (i.e., to provide acceptable integrity in the system), it is best to scan the tagged items multiple times. Further, in the embodiment where the MW takes the form of a freezer, refrigerator, or other cabinet, achieving integrity generally requires choosing a superset of tagged items from all scans as well as noting the set that represents the majority set (over 50%) of the scans, the number of scans in non-cloaked mode (which may be an empirical number, found to be ten for the MW 36 illustrated in
(43) The MW 36 may be accessed by a customer at the MW location using a separate RFID badge 75 (or other identifying badge or key) shipped directly to that customer. Alternatively, and as noted above, the reader 47 may be configured as a smartcard, a magnetic card swipe device, a barcode device, a fingerprint reader, or some similar device that controls access to the MW 36. Regardless of its exact configuration, the reader preferably reads the badge or key, compares the ID information contained in the key with the list of authorized users stored in the client controller 45, and if the user's key matches one of those authorized, the client controller 45 acknowledges authorization by generating an output such as by lighting the light 41. The list of authorized users is sent to the client controller 45 and updated as needed by the server 26. The server 26 may be configured with the capability to authenticate a user's key as well. Once authentication takes place, the client controller 45 then opens the door 37 allowing the customer or user to access the interior of the MW 36. The customer then removes one or more products 90 from the interior of the MW 36 and then closes the door 37. Once the door is closed, client controller 45 scans the products 90 in the MW 36 and sends an inventory message identifying the missing or added products 90 to the server 27. The server 27 compares the previous inventory prior to opening to the current inventory. From the comparison, the server 27 determines the missing or added items in the MW 36. The inventory information is then communicated to the commerce engine 35, which preferably stores the information for future use for both marketing and inventory functions. Receipts for the used products can then be sent via electronic mail or printed and shipped via regular mail to the customer at the MW location. Invoicing can also occur using other electronic and nonelectronic communication mechanisms.
(44) The inventory message can be used for other purposes as well. For example, the inventory message includes information regarding individual products 90. Therefore, the amount of time a particular product 90 spends in any MW 36 may be recorded by the server, as well as the product's temperature history. If time is recorded, it is also possible to compare the amount of time any particular product 90 spends in a MW 36 to a shelf life or acceptable usable life for that product. Temperature history can also be stored and compared to other data. If the shelf life is passed, then an expiration message, such as a pick list, may be generated and sent to the MW 36 or an electronic mail address of a user of the system to inform the user that certain products should be removed from the MW 36 and not used. Temperature history and time sent by the MW 36 to the server 27 may also be used to calculate a storage-degree-day value to for each product 90 in the MW 36. This value may, in turn, be used to make an activity projection and expiry threshold for the subject products 90. The administrator of the MW 36 may then use this information to remove expired products from the MW 36.
(45) In yet another implementation, the inventory message may be used to determine the type of products 90 in the MW 36. If any of the products present within the MW 36 are subject to a recall by the manufacturer, the MW 36 may be placed in a lock down condition, whereby access to the MW 36 is denied until an administrator or other authorized individual removes the recalled product or otherwise addresses the situation. In addition to its use to protect against the use of recalled products, the lock down feature is useful for controlling the distribution of potentially spoiled or degraded products and other products where exacting product specifications and quality controls are desired, such as pharmaceutical products and controlled substances.
(46)
(47) In the embodiment shown, information received from tagged items 90 within each MW 36 is sent to the web cluster 112, particularly the server 27, in an XML format. The XML formatted messages are transferred from the server 27 to the middleware server 114, which hosts XML middleware 120 (
(48)
(49) The freezer 232 can be constructed using a standard freezer modified and equipped as described herein. For example, the door 236 may be constructed from a door provided with a standard freezer. Insulation in the standard door is removed or otherwise formed or positioned and various components needed to scan RF tags on products stored within freezer 230 (e.g., in the drawers 242 in the cabinets 240) are added. The freezer 230 may be equipped with a strip (not shown) of RF reflective material positioned around the perimeter of opening 234 to prevent or reduce the escape or leakage of RF energy.
(50) As best seen by reference to
(51) The presence of shelves 238, cabinets 240, drawers 242, products, and tags may affect the electromagnetic field within the freezer 230. While most of the items just mentioned are preferably made from substantially RF transparent material, they nevertheless can block or diminish the strength of RF signals. Furthermore, the tags on the products and the products themselves are not made from RF transparent material and they may block or otherwise interfere with other tags receiving RF signals. These phenomena can be variously known as shadowing. The effects of shadowing may be reduced by positioning tagged products in the cabinets 240 and drawers 242, bin 244, or in other compartments, receptacles, or devices that can help provide separation.
(52) The waves from each antenna and reflections off of the interior surfaces of the freezer 230 interact to create an electromagnetic field with many nulls (areas where waves combine to cancel each other such that there is insufficient energy to energize passive RF tags). The effects of nulls may be reduced by moving the field within the interior of the freezer 230 at a speed and with a pattern such that any nulls generated change position over time. Alternatively, this can also be done by changing the geometry of one or more reflective surfaces in the RF cavity, such as with an acute sawtooth pattern, or by adjusting the power to minimize internal reflected power, or by selection or variation of antenna power and frequency. In some cases, more than one of these alternatives is used. Preferably, reflectors such as the reflector 670 (
(53) Before discussing embodiments of the invention in greater detail, some premises of their design, particularly the designs shown in
(54)
(55) Instead of drawers and cabinets, bins or similar items with separators could be placed directly on the shelves or surfaces within the freezer 230. In addition, in some applications, the impact of energy sharing may be reduced through the selection of frequency, RF power, and transponder design (mainly size) such that products can be placed in a random or haphazard manner within the freezer 230.
(56)
(57) The processor 400 reads and writes data to a memory 414. The processor 400 also controls a display 416, which is used to communicate with users of the freezer 230. The display 416 may be a simple lighted logo display which when lit indicates authorization of access to the freezer 230 and when unlit or lit in another color indicates denial of access to the freezer 230. A proximity sensor, e.g., the sensor 420, may be positioned on the door 236 or around the opening 234 to provide information to the processor 400 regarding whether the door 236 is opened or closed or the area comprising the MW has been accessed. Information relevant to operation of the freezer 230 and protection of the products therein, such as temperature, power status, and the like (sometimes referred to as operational status, heartbeat, or health information), is received over one or more input lines represented by communication link 422 from temperature, power, and positioning sensors, which are represented by the box 424. Communication between the processor 400 and the servers 26 and 27 (or server cluster 112) may be accomplished using a variety of technologies and hardware.
(58)
(59) Operational status (health) and related information of the relevant MW is received from a MW temperature sensor 605 and an ambient temperature sensor 606. A battery monitor 608 monitors power supplied to the processor 400. A current switch 609 is used to monitor the on/off duty cycle of the current supplied to the refrigeration compressor (not shown) in the freezer 230. Information from the switch 609 as well as information from the internal and ambient temperature sensors 605 and 606 can be used to determine the relative health of the compressor.
(60) The processor 400 is connected to a power failure/lockdown circuit 610. The power failure lockdown circuit 610 is coupled to the supply circuit 601 and works in conjunction with an alarm circuit 612. If power is cut off to the processor 400, the power failure lockdown circuit 610 causes the alarm circuit 612 to generate an audio signal in order to alert users to the power failure condition. In addition, the lockdown/powerfail circuit locks the lock 613 (
(61) In the embodiment shown in
(62) The processor 400 sends control signals to an electromagnetic lock (if used) on line 617, which is coupled to an electromagnetic actuator 619 in the lock 613. Information regarding the stability of the freezer 230 is provided by an accelerometer 621. The accelerometer 621 can detect vibration or other motion caused by a variety of situations such as improper positioning of the freezer 230 or an attempt to tamper or otherwise obtain access to the freezer 230 by breaking the door 236 or lock 613 (if used).
(63) The processor 400 may control an output light such as a logo light 624, which may be used to display the brand name of the manufacturer of the products placed within the applicable MW 36. The processor 400 may also provide output indicative of granting or denying access to the freezer 230 to a user through green LED 626 and red LED 628. Audio output, such as processor failure or similar status information, is delivered to an audio circuit 630. The processor 400 also receives inputs from an implementation of a badge or key reader in the form of reader 636. A reader suitable for use in the invention is a Visonics Key Reader, available from Visonics Inc.
(64) Communication between the processor 400 and other devices such the server cluster 112 may be accomplished using a dual universal asynchronous receive transmit (UART) integrated circuit 638. For example, the circuit 638 may communicate with the wireless system 425. The circuit 638 may also communicate with a GPS system (not shown) through an interface circuit 640. Communication between the processor 400 and the controller 412 occurs through two lines 642 and 644. The controller 400 may also communicate to a maintenance computer through a connector interface circuit 650.
(65)
(66)
(67) Having described much of the mechanical and hardware aspects of embodiments of the invention, additional details of the software will be further described. As noted above, in general, the controller 256 activates the antenna array 261. The antennas 262-267 emit signals that energize the tags 272 on the products within the freezer 230. Each tag 272 emits an identifying signal. The identifying signals from the tags 272 are received by the antennas 262-267 and delivered to the controller 256.
(68) As may be apparent, the energization of multiple tags in a relatively small, defined volume (e.g., the RF cavity defined by the interior walls of the freezer 230) causes the tags 272 to simultaneously or nearly simultaneously emit identifying signals. The signals interfere with each other such that identifying any individual signal from any one specific tag 272 is difficult, and in some cases nearly impossible. In order to read numerous tags 272, a cloaking system can be used. In general, cloaking refers to shutting down or otherwise disabling transmission of the tag once it has been energized and identified by an interrogator (for example, controller 256). While cloaking is generally known, the inventors developed the specific use of the cloaking techniques described herein, including the specifications for minimum and maximum cloak time, and the cloak time distribution, with respect to RF cavity temperature.
(69) The controller 256 executes inventory control software. In the embodiment described, the software carries out six basic steps. First, the controller 256 is initialized. Second, a baseline scan is performed. Third, access to the freezer 230 or relevant micro-warehouse is controlled based upon sensing the presence of and determining the validity of a user passkey using the badge or key reader 258 or similar device. Fourth, the operational status or health of the micro-warehouse is checked. Fifth, the inventory level of products is checked after a user has accessed the micro-warehouse (as sensed, for example, by closing of the freezer door 236). Lastly, information gathered by the controller 256 is communicated to the server cluster 112.
(70) A more specific definition of the procedures performed by the inventory control software is set out in Table 1.
(71) TABLE-US-00001 TABLE 1 Scan A single request for a list of inventory identifiers (Inventory IDs) (i.e., identifying codes stored in the tags) with no duplicates. The scan continues until: (a) a specified time limit has been reached, (b) a specified rate of IDs per second is exceeded, or (c) a specified limit of interval time between tag reads has been reached. There are two modes of execution, 1. cloaked, and 2. uncloaked. Run A series of one or more Scans continued either until (a) a specified number of Scans has been reached, (b) a specified time limit has been reached, (c) a specified integrity level has been reached, or (d) an event (such as an RF power failure) has occurred which terminates a scan, Each of (a)-(d) is a mode of execution, and one or more modes can be requested. A run is terminated on the first occurrence of a mode. Each Scan is separated by a specified time interval. Inventory ID A 6-byte, binary hexadecimal string, unique to 2.sup.44 values. The Inventory CD identifies a tagged product in a micro-warehouse. Integrity Level A percentage expressed as 0.90. Inventory List A single list of all Inventory IDs present in a micro-warehouse ReadTime The amount of time elapsed from the start of a Scan to the last tag being read. This time may also be a set and includes the time elapsed to the reading of each of any number of tags. ReadTemp The temperature of any one tag as reported by the tag during a Scan (assumes that system is implemented using tags that are capable of reporting their temperature). ScanTime Time limit for one Scan ScanInterval Time between tag ReadTimes in one Scan NumScans Number of Scans to perform in a Run ScanWaitTime Time to wait between Scans for de-cloaking ReadRate Rate of tags read per second during one Scan
(72) As noted in Table 1, the read time (or for the specific embodiment discussed, ReadTime) of a scan is the elapsed time from the start of a scan to the reading of any or all of the tags in the field generated by the antennas. The read time can be collected in either the non-cloaked or cloaked mode. The read time (which can also be a set of read times) can be sent to the server cluster 112 as part of each transaction that results from a scan. The read time can be used as a composite indicator of several operating parameters, such as temperature, product tag position in the RF cavity, RF interference in the cavity, etc. For instance, a gradual lengthening of the read time(s) for all tags in a RF cavity can correspond to an increase in interior temperature. It is possible to quantify a temperature change from the shift in a tag versus read time curve (such as the curve 725 shown in
(73) In one embodiment, the inventory control software includes three classes of runs: a base line run, an inventory run; and a background run. Definitions for Methods corresponding to these runs are set out in Table 2.
(74) TABLE-US-00002 TABLE 2 Method Function Baseline Run A run in cloaked or uncloaked mode to Output: IntegLvl, ReadTime, establish the starting inventory list. ReadTemp) Input: (NumScans, RunTime, IntegLvl, ScanInterval, ScanWaitTime, ScanTime, ReadRate) Inventory Run A run or runs in uncloaked (or cloaked) Output: (PlusInventoryList, mode to determine a new inventory list. MinusInventoryList, IntegLvl, Uses master inventory list established at ReadTime, ReadTemp) baseline, and returns the change in Input: (NumScans, RunTime, inventory between the master inventory IntegLvl, ScanInterval, list and the new inventory list as plus ScanWaitTime, ScanTime, delta inventory and minus delta ReadRate) inventory. Background Run A continuous series of scans in cloaked or Output: (PlusInventoryList, uncloaked mode until a termination event MinusInventoryList, IntegLvl, occurs, such as a user presenting a badge ReadTime, ReadTemp) or key to request entry. Input: (NumScans, RunTime, IntegLvl, ScanInterval, ScanWaitTime, ScanTime, ReadRate) Reveal Inventory Output: (MasterInventoryList)
Classes of Runs
(75) Baseline Run A run in cloaked mode to establish the starting inventory list. If IntegrityLevel is not specified, the actual read integrity level is returned, that is, the number of times the majority scan list occurs. Creates the first master inventory list, consisting of the superset of all inventory IDs read throughout the baseline scans. The read integrity is returned even when an input integrity level has been set.
(76) Inventory Run A run or runs in uncloaked (or cloaked) mode to determine changes to the inventory list. Uses the superset of all inventory run scans as the new list of inventory. Uses master inventory list (from baseline and/or background) or most recent temporary master inventory list, whichever is more recent, and returns change in inventory between master inventory list and new inventory list, as plus delta inventory and minus delta inventory. Creates new temporary master inventory list.
(77) Background Run A continuous series of scans in cloaked mode until a termination event occurs. Uses a superset of all scans as the inventory list. Creates new master inventory list.
(78) Reveal Inventory No scans. Returns most recent master inventory list.
(79) One useful feature of the embodiments described herein is that the manner in which the controller 256 controls the antenna array 261 may be adjusted. The adjustment may be accomplished by modifying certain software parameters, including those noted in Tables 1 and 2 (such as integrity level, read time, run time, wait time, scan interval, etc.) as circumstances change (for example, changes in temperature, tag type, RF cavity, etc.). As explained in additional detail below, these changes can be performed remotely by sending the changed parameters to the controller 256 from the server cluster 112.
(80) An overview of the operations performed by the inventory control software is set out in
(81) Once it is determined that a lockdown condition does not exist, the controller 256 performs a baseline run, queues (or places in a buffer) the inventory master value, and sets the lockdown flag to off, as shown at step 766. The controller 256 then executes a control idle loop (step 768) or, more broadly, a main processing loop. In the embodiment illustrated, the control idle loop includes five basic operations: a check diagnostic command operation (step 770), a poll user pass operation (step 772), a poll status operation (step 774), an update saved status operation (step 776), and a check alarm conditions operation (step 778). These steps are discussed in greater detail below. In summary, during these operations, the controller 256 determines whether the user has an authorized key and whether any alarm or other conditions are present. If any of the alarm or status conditions meet the requirements of a lockdown situation (as determined at step 780), the lockdown flag is set to on (step 782), information obtained about the inventory in and status of the MW 36 is sent to the server cluster 112 (step 784, background communication) and the control idle loop is executed again (as shown by loop 786).
(82) If a lockdown condition does not exist, the controller 256 determines whether a user has accessed the MW (step 788) as determined, for example, by the controller 256 sensing an opening and closing of the door 236. If a user has accessed the MW, an inventory run is requested and the information from the run is queued in a transaction buffer, as shown in block 792. The information gathered from the inventory run is then sent to the server cluster 112 (as shown at step 784). The controller 256 continues to execute the software until reset.
(83)
(84) As shown in
(85) As shown in
(86)
(87) As shown in
(88)
(89) The number of scans to be used in any run is variable and is set to ensure a predetermined integrity, which, in the ideal case, is 100% integrity of recorded inventory. In one embodiment of the invention, a plurality of scans is performed such that the specified integrity level is achieved based on experimental data. A superset or union of all the scan sets is then formed. For example, in order to achieve an integrity level of 50%, the number of identical scans must be the majority set. In one embodiment, experiments have shown that the number of scans, in non-cloaked mode, should be about ten and in cloaked mode, about three. Additionally, an order (a product removal or purchase transaction), based on inventory recorded before door opening and after door closure, can be aged or buffered, that is, held for processing, either in the controller or at the server, for some time until further transactions are recorded. If the additional scans from these further transactions reveal a product recorded as taken in the previous transaction, the erroneous transaction can be corrected before billing a customer. While it is possible for the system to miss a tagged item during a scan, testing of embodiments of the invention has not resulted in a situation where a scan indicated the presence of items not physically present in the relevant MW. In any case, anomalies in recorded inventory that are picked up in later scans can be used to correct the billing information. In actual use it is believed, and limited tests have shown, that this type of correction will be seldomly required. Further, the baseline run and the background run are not necessary in all applications, and can be selected to be used on any particular MW at the time of manufacture, field installation, or service interval.
(90) The tags 272 may be equipped with the ability to report their temperature during a scan. A function of the temperature information obtained from the tags 272 can be used to adjust the scan and scan wait times (defined in Table 1 as Scan and Scan Wait) to adjust for cloak time changes due to temperature in order to ensure inventory integrity during any run. All of the instances mentioned in the above paragraph refer to read time in cloaked mode.
(91) Once the controller 256 has scanned the tagged products in the MW 36 or freezer 230, a message containing information regarding the scan is sent to the server cluster 112. As shown in
(92) If no transactions are being processed or queued, the controller 256 determines whether it should synchronize the real-time clock 402 with a standard time reference (step 855). For example, if a certain amount of time has passed since the last synchronization has occurred, the real time clock 402 is synchronized again to compensate for any variations that might have occurred since the last synchronization. If no synchronization is needed, the background communication module is exited and control is returned to the control idle loop. If synchronization is required, the clock is updated (as shown at steps 856 and 857).
(93) If a transaction has been started or a transaction is queued, the controller 256 processes the next transaction or message to be communicated to the cluster 112 (as shown at step 860). Processing of the next transaction includes sending inventory, status, alarm, heartbeat, and passkey information to the server cluster 112. Once these transactions have been processed, the controller 256 processes input transactions for transmission to the server cluster 112 (step 862). Information such as updated passkey information, updated parameters, resets, lockdown information, software updates, status requests, and passkey lists are sent to the server cluster 112.
(94)
(95) Various events cause the controller 256 to perform certain functions. For the embodiment described, the condition of a power failure causes a power fail transaction to be queued (steps 890 and 892 in
(96) As can be seen from the above, the present invention provides an RF inventory and distribution system with features to diminish the effects of energy sharing, nulls, shadowing, and other effects that degrade integrity in recording inventory changes.
(97) Various features and advantages of the invention are set forth in the following claims.